diff options
author | Richard Moe Gustavsen <[email protected]> | 2024-05-29 16:04:21 +0200 |
---|---|---|
committer | Richard Moe Gustavsen <[email protected]> | 2024-05-30 15:28:48 +0200 |
commit | 562353a720f6d4aa8bec0819503f5ce3f2fe74fe (patch) | |
tree | 6c000ffe70bc5e0cca4d208264f1997c09c9d16f | |
parent | bb370edebafd79c9f2af0780251b89c617b6bd41 (diff) |
manual test, menus: use Popup.popupType
Now that Popup has a popupType API, use it in favor
of AA_DontUseNativeMenuWindows.
Change-Id: I6b666e9c36f5d8b95701ac6a94c29ac3d7a6d206
Reviewed-by: Mitch Curtis <[email protected]>
-rw-r--r-- | tests/manual/quickcontrols/menus/Main.qml | 16 | ||||
-rw-r--r-- | tests/manual/quickcontrols/menus/cppsettings.cpp | 31 | ||||
-rw-r--r-- | tests/manual/quickcontrols/menus/cppsettings.h | 12 |
3 files changed, 32 insertions, 27 deletions
diff --git a/tests/manual/quickcontrols/menus/Main.qml b/tests/manual/quickcontrols/menus/Main.qml index 9f3d7b9895..ac04ca5364 100644 --- a/tests/manual/quickcontrols/menus/Main.qml +++ b/tests/manual/quickcontrols/menus/Main.qml @@ -160,11 +160,17 @@ ApplicationWindow { ColumnLayout { anchors.fill: parent - Switch { - text: qsTr("Don't use native menu windows") - checked: CppSettings.dontUseNativeMenuWindows + RowLayout { + Label { + text: qsTr("Popup type") + } - onClicked: CppSettings.dontUseNativeMenuWindows = checked + ComboBox { + id: popupTypeCombo + model: ["Default", "Item", "Window", "Native"] + onCurrentIndexChanged: CppSettings.popupType = currentIndex + currentIndex: CppSettings.popupType + } } Row { @@ -314,6 +320,7 @@ ApplicationWindow { Menu { id: backgroundContextMenu objectName: "backgroundContextMenu" + popupType: popupTypeCombo.currentIndex function appendAction() { let action = actionComponent.createObject(null, { text: qsTr("Extra context menu item") }) @@ -380,6 +387,7 @@ ApplicationWindow { id: subMenu title: qsTr("Sub-menu") objectName: title + popupType: backgroundContextMenu.popupType function appendAction() { let action = actionComponent.createObject(null, { text: qsTr("Extra sub-menu item") }) diff --git a/tests/manual/quickcontrols/menus/cppsettings.cpp b/tests/manual/quickcontrols/menus/cppsettings.cpp index e06c59247f..589cea916b 100644 --- a/tests/manual/quickcontrols/menus/cppsettings.cpp +++ b/tests/manual/quickcontrols/menus/cppsettings.cpp @@ -9,26 +9,9 @@ CppSettings::CppSettings(QObject *parent) : QObject(parent), mSettings("QtProject", "menus") { - QCoreApplication::setAttribute(Qt::AA_DontUseNativeMenuWindows, dontUseNativeMenuWindows()); QCoreApplication::setAttribute(Qt::AA_DontUseNativeMenuBar, dontUseNativeMenuBar()); } -bool CppSettings::dontUseNativeMenuWindows() const -{ - return mSettings.value("dontUseNativeMenuWindows").toBool(); -} - -void CppSettings::setDontUseNativeMenuWindows(bool dontUseNativeMenuWindows) -{ - const bool oldValue = this->dontUseNativeMenuWindows(); - if (dontUseNativeMenuWindows == oldValue) - return; - - QCoreApplication::setAttribute(Qt::AA_DontUseNativeMenuWindows, dontUseNativeMenuWindows); - mSettings.setValue("dontUseNativeMenuWindows", dontUseNativeMenuWindows); - emit dontUseNativeMenuWindowsChanged(); -} - bool CppSettings::dontUseNativeMenuBar() const { return mSettings.value("dontUseNativeMenuBar").toBool(); @@ -44,3 +27,17 @@ void CppSettings::setDontUseNativeMenuBar(bool dontUseNativeMenuBar) mSettings.setValue("dontUseNativeMenuBar", dontUseNativeMenuBar); emit dontUseNativeMenuBarChanged(); } + +int CppSettings::popupType() const +{ + return mSettings.value("popupType").toInt(); +} + +void CppSettings::setPopupType(int newPopupType) +{ + const int oldValue = popupType(); + if (oldValue == newPopupType) + return; + mSettings.setValue("popupType", newPopupType); + emit popupTypeChanged(); +} diff --git a/tests/manual/quickcontrols/menus/cppsettings.h b/tests/manual/quickcontrols/menus/cppsettings.h index 158ed1b20d..b6af1f9f09 100644 --- a/tests/manual/quickcontrols/menus/cppsettings.h +++ b/tests/manual/quickcontrols/menus/cppsettings.h @@ -11,25 +11,25 @@ class CppSettings : public QObject { Q_OBJECT - Q_PROPERTY(bool dontUseNativeMenuWindows READ dontUseNativeMenuWindows WRITE setDontUseNativeMenuWindows - NOTIFY dontUseNativeMenuWindowsChanged FINAL) Q_PROPERTY(bool dontUseNativeMenuBar READ dontUseNativeMenuBar WRITE setDontUseNativeMenuBar NOTIFY dontUseNativeMenuBarChanged FINAL) + Q_PROPERTY(int popupType READ popupType WRITE setPopupType + NOTIFY popupTypeChanged FINAL) QML_ELEMENT QML_SINGLETON public: explicit CppSettings(QObject *parent = nullptr); - bool dontUseNativeMenuWindows() const; - void setDontUseNativeMenuWindows(bool dontUseNativeMenuWindows); - bool dontUseNativeMenuBar() const; void setDontUseNativeMenuBar(bool dontUseNativeMenuBar); + int popupType() const; + void setPopupType(int newPopupType); + signals: - void dontUseNativeMenuWindowsChanged(); void dontUseNativeMenuBarChanged(); + void popupTypeChanged(); private: QSettings mSettings; |