diff options
-rw-r--r-- | src/imports/platform/qquickplatformmenu.cpp | 48 | ||||
-rw-r--r-- | src/imports/platform/qquickplatformmenu_p.h | 10 | ||||
-rw-r--r-- | src/imports/platform/qquickplatformmenuitem.cpp | 42 | ||||
-rw-r--r-- | src/imports/platform/qquickplatformmenuitem_p.h | 10 | ||||
-rw-r--r-- | src/imports/platform/qquickplatformsystemtrayicon.cpp | 42 | ||||
-rw-r--r-- | src/imports/platform/qquickplatformsystemtrayicon_p.h | 10 | ||||
-rw-r--r-- | tests/auto/platform/data/tst_menuitem.qml | 31 | ||||
-rw-r--r-- | tests/auto/platform/data/tst_systemtrayicon.qml | 46 | ||||
-rw-r--r-- | tests/manual/systemtrayicon/systemtrayicon.qml | 2 |
9 files changed, 45 insertions, 196 deletions
diff --git a/src/imports/platform/qquickplatformmenu.cpp b/src/imports/platform/qquickplatformmenu.cpp index 8954d439..7219ef54 100644 --- a/src/imports/platform/qquickplatformmenu.cpp +++ b/src/imports/platform/qquickplatformmenu.cpp @@ -419,8 +419,7 @@ QQuickPlatformMenuItem *QQuickPlatformMenu::menuItem() const m_menuItem = new QQuickPlatformMenuItem(that); m_menuItem->setSubMenu(that); m_menuItem->setText(m_title); - m_menuItem->setIconName(iconName()); - m_menuItem->setIconSource(iconSource()); + m_menuItem->setIcon(icon()); m_menuItem->setVisible(m_visible); m_menuItem->setEnabled(m_enabled); m_menuItem->componentComplete(); @@ -542,51 +541,6 @@ void QQuickPlatformMenu::setTitle(const QString &title) } /*! - \qmlproperty url Qt.labs.platform::Menu::iconSource - \deprecated Use icon.source instead -*/ -QUrl QQuickPlatformMenu::iconSource() const -{ - return icon().source(); -} - -void QQuickPlatformMenu::setIconSource(const QUrl& source) -{ - QQuickPlatformIcon newIcon = icon(); - if (source == newIcon.source()) - return; - - if (m_menuItem) - m_menuItem->setIconSource(source); - - newIcon.setSource(source); - iconLoader()->setIcon(newIcon); - emit iconSourceChanged(); -} - -/*! - \qmlproperty string Qt.labs.platform::Menu::iconName - \deprecated Use icon.name instead -*/ -QString QQuickPlatformMenu::iconName() const -{ - return icon().name(); -} - -void QQuickPlatformMenu::setIconName(const QString& name) -{ - QQuickPlatformIcon newIcon = icon(); - if (name == newIcon.name()) - return; - - if (m_menuItem) - m_menuItem->setIconName(name); - - newIcon.setName(name); - iconLoader()->setIcon(newIcon); - emit iconNameChanged();} - -/*! \qmlproperty font Qt.labs.platform::Menu::font This property holds the menu's font. diff --git a/src/imports/platform/qquickplatformmenu_p.h b/src/imports/platform/qquickplatformmenu_p.h index eb18f66b..089e1f89 100644 --- a/src/imports/platform/qquickplatformmenu_p.h +++ b/src/imports/platform/qquickplatformmenu_p.h @@ -85,8 +85,6 @@ class QQuickPlatformMenu : public QObject, public QQmlParserStatus Q_PROPERTY(int minimumWidth READ minimumWidth WRITE setMinimumWidth NOTIFY minimumWidthChanged FINAL) Q_PROPERTY(QPlatformMenu::MenuType type READ type WRITE setType NOTIFY typeChanged FINAL) Q_PROPERTY(QString title READ title WRITE setTitle NOTIFY titleChanged FINAL) - Q_PROPERTY(QUrl iconSource READ iconSource WRITE setIconSource NOTIFY iconSourceChanged FINAL) - Q_PROPERTY(QString iconName READ iconName WRITE setIconName NOTIFY iconNameChanged FINAL) Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged FINAL) Q_PROPERTY(QQuickPlatformIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION 1) Q_ENUMS(QPlatformMenu::MenuType) @@ -130,12 +128,6 @@ public: QString title() const; void setTitle(const QString &title); - QUrl iconSource() const; - void setIconSource(const QUrl &source); - - QString iconName() const; - void setIconName(const QString &name); - QFont font() const; void setFont(const QFont &font); @@ -165,8 +157,6 @@ Q_SIGNALS: void parentMenuChanged(); void systemTrayIconChanged(); void titleChanged(); - void iconSourceChanged(); - void iconNameChanged(); void enabledChanged(); void visibleChanged(); void minimumWidthChanged(); diff --git a/src/imports/platform/qquickplatformmenuitem.cpp b/src/imports/platform/qquickplatformmenuitem.cpp index b63f7202..11cf98b4 100644 --- a/src/imports/platform/qquickplatformmenuitem.cpp +++ b/src/imports/platform/qquickplatformmenuitem.cpp @@ -61,7 +61,7 @@ QT_BEGIN_NAMESPACE \image qtlabsplatform-menu.png - A menu item consists of an \l {iconSource}{icon}, \l text, and \l shortcut. + A menu item consists of an \l icon, \l text, and \l shortcut. \code Menu { @@ -458,46 +458,6 @@ void QQuickPlatformMenuItem::setText(const QString &text) } /*! - \qmlproperty url Qt.labs.platform::MenuItem::iconSource - \deprecated Use icon.source instead -*/ -QUrl QQuickPlatformMenuItem::iconSource() const -{ - return icon().source(); -} - -void QQuickPlatformMenuItem::setIconSource(const QUrl& source) -{ - QQuickPlatformIcon newIcon = icon(); - if (source == newIcon.source()) - return; - - newIcon.setSource(source); - iconLoader()->setIcon(newIcon); - emit iconSourceChanged(); -} - -/*! - \qmlproperty string Qt.labs.platform::MenuItem::iconName - \deprecated Use icon.name instead -*/ -QString QQuickPlatformMenuItem::iconName() const -{ - return icon().name(); -} - -void QQuickPlatformMenuItem::setIconName(const QString& name) -{ - QQuickPlatformIcon newIcon = icon(); - if (name == newIcon.name()) - return; - - newIcon.setName(name); - iconLoader()->setIcon(newIcon); - emit iconNameChanged(); -} - -/*! \qmlproperty keysequence Qt.labs.platform::MenuItem::shortcut This property holds the menu item's shortcut. diff --git a/src/imports/platform/qquickplatformmenuitem_p.h b/src/imports/platform/qquickplatformmenuitem_p.h index e3d5258a..c1e6cc30 100644 --- a/src/imports/platform/qquickplatformmenuitem_p.h +++ b/src/imports/platform/qquickplatformmenuitem_p.h @@ -78,8 +78,6 @@ class QQuickPlatformMenuItem : public QObject, public QQmlParserStatus Q_PROPERTY(bool checked READ isChecked WRITE setChecked NOTIFY checkedChanged FINAL) Q_PROPERTY(QPlatformMenuItem::MenuRole role READ role WRITE setRole NOTIFY roleChanged FINAL) Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged FINAL) - Q_PROPERTY(QUrl iconSource READ iconSource WRITE setIconSource NOTIFY iconSourceChanged FINAL) - Q_PROPERTY(QString iconName READ iconName WRITE setIconName NOTIFY iconNameChanged FINAL) Q_PROPERTY(QVariant shortcut READ shortcut WRITE setShortcut NOTIFY shortcutChanged FINAL) Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged FINAL) Q_PROPERTY(QQuickPlatformIcon icon READ icon WRITE setIcon NOTIFY iconChanged FINAL REVISION 1) @@ -123,12 +121,6 @@ public: QString text() const; void setText(const QString &text); - QUrl iconSource() const; - void setIconSource(const QUrl &source); - - QString iconName() const; - void setIconName(const QString &name); - QVariant shortcut() const; void setShortcut(const QVariant& shortcut); @@ -155,8 +147,6 @@ Q_SIGNALS: void checkedChanged(); void roleChanged(); void textChanged(); - void iconSourceChanged(); - void iconNameChanged(); void shortcutChanged(); void fontChanged(); Q_REVISION(1) void iconChanged(); diff --git a/src/imports/platform/qquickplatformsystemtrayicon.cpp b/src/imports/platform/qquickplatformsystemtrayicon.cpp index 4a96b38f..1631e449 100644 --- a/src/imports/platform/qquickplatformsystemtrayicon.cpp +++ b/src/imports/platform/qquickplatformsystemtrayicon.cpp @@ -253,48 +253,6 @@ void QQuickPlatformSystemTrayIcon::setVisible(bool visible) } /*! - \qmlproperty url Qt.labs.platform::SystemTrayIcon::iconSource - \deprecated Use icon.source instead. - \sa icon -*/ -QUrl QQuickPlatformSystemTrayIcon::iconSource() const -{ - return icon().source(); -} - -void QQuickPlatformSystemTrayIcon::setIconSource(const QUrl& source) -{ - QQuickPlatformIcon newIcon = icon(); - if (source == newIcon.source()) - return; - - newIcon.setSource(source); - iconLoader()->setIcon(newIcon); - emit iconSourceChanged(); -} - -/*! - \qmlproperty string Qt.labs.platform::SystemTrayIcon::iconName - \deprecated Use icon.name instead. - \sa icon -*/ -QString QQuickPlatformSystemTrayIcon::iconName() const -{ - return icon().name(); -} - -void QQuickPlatformSystemTrayIcon::setIconName(const QString& name) -{ - QQuickPlatformIcon newIcon = icon(); - if (name == newIcon.name()) - return; - - newIcon.setName(name); - iconLoader()->setIcon(newIcon); - emit iconNameChanged(); -} - -/*! \qmlproperty string Qt.labs.platform::SystemTrayIcon::tooltip This property holds the tooltip of the system tray icon. diff --git a/src/imports/platform/qquickplatformsystemtrayicon_p.h b/src/imports/platform/qquickplatformsystemtrayicon_p.h index e43366cb..0216aee3 100644 --- a/src/imports/platform/qquickplatformsystemtrayicon_p.h +++ b/src/imports/platform/qquickplatformsystemtrayicon_p.h @@ -70,8 +70,6 @@ class QQuickPlatformSystemTrayIcon : public QObject, public QQmlParserStatus Q_PROPERTY(bool available READ isAvailable CONSTANT FINAL) Q_PROPERTY(bool supportsMessages READ supportsMessages CONSTANT FINAL) Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged FINAL) - Q_PROPERTY(QUrl iconSource READ iconSource WRITE setIconSource NOTIFY iconSourceChanged FINAL) - Q_PROPERTY(QString iconName READ iconName WRITE setIconName NOTIFY iconNameChanged FINAL) Q_PROPERTY(QString tooltip READ tooltip WRITE setTooltip NOTIFY tooltipChanged FINAL) Q_PROPERTY(QQuickPlatformMenu *menu READ menu WRITE setMenu NOTIFY menuChanged FINAL) Q_PROPERTY(QRect geometry READ geometry NOTIFY geometryChanged FINAL REVISION 1) @@ -90,12 +88,6 @@ public: bool isVisible() const; void setVisible(bool visible); - QUrl iconSource() const; - void setIconSource(const QUrl &source); - - QString iconName() const; - void setIconName(const QString &name); - QString tooltip() const; void setTooltip(const QString &tooltip); @@ -118,8 +110,6 @@ Q_SIGNALS: void activated(QPlatformSystemTrayIcon::ActivationReason reason); void messageClicked(); void visibleChanged(); - void iconSourceChanged(); - void iconNameChanged(); void tooltipChanged(); void menuChanged(); Q_REVISION(1) void geometryChanged(); diff --git a/tests/auto/platform/data/tst_menuitem.qml b/tests/auto/platform/data/tst_menuitem.qml index 29d369bc..316af97d 100644 --- a/tests/auto/platform/data/tst_menuitem.qml +++ b/tests/auto/platform/data/tst_menuitem.qml @@ -68,8 +68,9 @@ TestCase { } } - SignalSpy { - id: spy + Component { + id: signalSpyComponent + SignalSpy {} } function test_properties_data() { @@ -81,30 +82,32 @@ TestCase { {tag: "checked", signal: "checkedChanged", init: false, value: true}, {tag: "role", signal: "roleChanged", init: MenuItem.TextHeuristicRole, value: MenuItem.AboutRole}, {tag: "text", signal: "textChanged", init: "", value: "text"}, - {tag: "iconSource", signal: "iconSourceChanged", init: "", value: "qrc:/undo.png"}, - {tag: "iconName", signal: "iconNameChanged", init: "", value: "edit-undo"}, + {tag: "icon.source", signal: "iconChanged", init: "", value: "qrc:/undo.png"}, + {tag: "icon.name", signal: "iconChanged", init: "", value: "edit-undo"}, {tag: "shortcut", signal: "shortcutChanged", init: undefined, value: StandardKey.Undo} ] } function test_properties(data) { - var item = menuItem.createObject(testCase) + let item = createTemporaryObject(menuItem, testCase) verify(item) - spy.target = item - spy.signalName = data.signal + let groupedProperty = data.tag.indexOf(".") !== -1 + let spy = createTemporaryObject(signalSpyComponent, testCase, { + target: item, signalName: data.signal + }) + verify(spy) verify(spy.valid) - compare(item[data.tag], data.init) - item[data.tag] = data.value + let propertyName = groupedProperty ? data.tag.split('.')[1] : data.tag + let object = !groupedProperty ? item : item.icon + compare(object[propertyName], data.init) + object[propertyName] = data.value compare(spy.count, 1) - compare(item[data.tag], data.value) + compare(object[propertyName], data.value) - item[data.tag] = data.value + object[propertyName] = data.value compare(spy.count, 1) - - spy.clear() - item.destroy() } function test_role() { diff --git a/tests/auto/platform/data/tst_systemtrayicon.qml b/tests/auto/platform/data/tst_systemtrayicon.qml index ce7d8b8d..d7a63551 100644 --- a/tests/auto/platform/data/tst_systemtrayicon.qml +++ b/tests/auto/platform/data/tst_systemtrayicon.qml @@ -61,44 +61,48 @@ TestCase { name: "SystemTrayIcon" Component { - id: systemTrayIcon + id: systemTrayIconComponent // Check that icon.name can be used in this Qt.labs.platform version SystemTrayIcon { icon.name: "" } } - SignalSpy { - id: spy + Component { + id: signalSpyComponent + SignalSpy {} } function test_properties_data() { return [ {tag: "visible", signal: "visibleChanged", init: false, value: true}, - {tag: "iconSource", signal: "iconSourceChanged", init: "", value: "qrc:/tray.png"}, - {tag: "iconName", signal: "iconNameChanged", init: "", value: "icon-name"}, + {tag: "icon.source", signal: "iconChanged", init: "", value: "qrc:/tray.png"}, + {tag: "icon.name", signal: "iconChanged", init: "", value: "icon-name"}, {tag: "tooltip", signal: "tooltipChanged", init: "", value: "tooltip"}, ] } function test_properties(data) { - var icon = systemTrayIcon.createObject(testCase) + let icon = createTemporaryObject(systemTrayIconComponent, testCase) verify(icon) - spy.target = icon - spy.signalName = data.signal + let groupedProperty = data.tag.indexOf(".") !== -1 + let spy = createTemporaryObject(signalSpyComponent, testCase, { + target: icon, signalName: data.signal + }) + verify(spy) verify(spy.valid) - compare(icon[data.tag], data.init) - icon[data.tag] = data.value - compare(spy.count, 1) - compare(icon[data.tag], data.value) + let propertyName = groupedProperty ? data.tag.split('.')[1] : data.tag + let object = !groupedProperty ? icon : icon.icon + compare(object[propertyName], data.init) - icon[data.tag] = data.value + object[propertyName] = data.value compare(spy.count, 1) + compare(object[propertyName], data.value) - spy.clear() - icon.destroy() + object[propertyName] = data.value + compare(spy.count, 1) } function test_messageIcon() { @@ -119,17 +123,17 @@ TestCase { } function test_activated() { - var icon = systemTrayIcon.createObject(testCase) + let icon = createTemporaryObject(systemTrayIconComponent, testCase) verify(icon) - spy.target = icon - spy.signalName = "activated" + let spy = createTemporaryObject(signalSpyComponent, testCase, { + target: icon, signalName: "activated" + }) + verify(spy) + verify(spy.valid) icon.activated(SystemTrayIcon.Trigger) compare(spy.count, 1) compare(spy.signalArguments[0][0], SystemTrayIcon.Trigger) - - spy.clear() - icon.destroy() } } diff --git a/tests/manual/systemtrayicon/systemtrayicon.qml b/tests/manual/systemtrayicon/systemtrayicon.qml index a7e656d4..03855b44 100644 --- a/tests/manual/systemtrayicon/systemtrayicon.qml +++ b/tests/manual/systemtrayicon/systemtrayicon.qml @@ -75,7 +75,7 @@ ApplicationWindow { SystemTrayIcon { visible: true - iconSource: "qrc:/files/images/qt_logo_green_256.png" + icon.source: "qrc:/files/images/qt_logo_green_256.png" menu: Menu { MenuItem { |