diff options
author | Redson <redson@riseup.net> | 2022-11-14 16:33:25 -0300 |
---|---|---|
committer | Redson <redson@riseup.net> | 2022-11-14 16:33:25 -0300 |
commit | be765f8d883697d2284343f9ee6c858987622857 (patch) | |
tree | 15a094e0cdc8ffdaea18f86c3eb27a2d4814c681 /launcher/ui | |
parent | 074b53eb6b71f948ff30aca601103672c5c4c812 (diff) | |
download | PrismLauncher-be765f8d883697d2284343f9ee6c858987622857.tar.gz PrismLauncher-be765f8d883697d2284343f9ee6c858987622857.tar.bz2 PrismLauncher-be765f8d883697d2284343f9ee6c858987622857.zip |
feat: Add empty menu
Signed-off-by: Redson <redson@riseup.net>
Diffstat (limited to 'launcher/ui')
-rw-r--r-- | launcher/ui/MainWindow.cpp | 26 | ||||
-rw-r--r-- | launcher/ui/MainWindow.h | 2 |
2 files changed, 28 insertions, 0 deletions
diff --git a/launcher/ui/MainWindow.cpp b/launcher/ui/MainWindow.cpp index 85b00b67..31d0f6c2 100644 --- a/launcher/ui/MainWindow.cpp +++ b/launcher/ui/MainWindow.cpp @@ -264,6 +264,8 @@ public: TranslatedAction actionLockToolbars; + TranslatedAction actionChangeTheme; + QVector<TranslatedToolButton *> all_toolbuttons; QWidget *centralWidget = nullptr; @@ -428,6 +430,11 @@ public: actionLockToolbars.setTextId(QT_TRANSLATE_NOOP("MainWindow", "Lock Toolbars")); actionLockToolbars->setCheckable(true); all_actions.append(&actionLockToolbars); + + actionChangeTheme = TranslatedAction(MainWindow); + actionChangeTheme->setObjectName(QStringLiteral("actionChangeTheme")); + actionChangeTheme.setTextId(QT_TRANSLATE_NOOP("MainWindow", "Themes")); + all_actions.append(&actionChangeTheme); } void createMainToolbar(QMainWindow *MainWindow) @@ -528,6 +535,8 @@ public: viewMenu = menuBar->addMenu(tr("&View")); viewMenu->setSeparatorsCollapsible(false); + viewMenu->addAction(actionChangeTheme); + viewMenu->addSeparator(); viewMenu->addAction(actionCAT); viewMenu->addSeparator(); @@ -822,6 +831,7 @@ public: createInstanceToolbar(MainWindow); MainWindow->updateToolsMenu(); + MainWindow->updateThemeMenu(); retranslateUi(MainWindow); @@ -1271,6 +1281,22 @@ void MainWindow::updateToolsMenu() ui->actionLaunchInstance->setMenu(launchMenu); } +void MainWindow::updateThemeMenu() +{ + QMenu *themeMenu = ui->actionChangeTheme->menu(); + + if (themeMenu) + { + themeMenu->clear(); + } + else + { + themeMenu = new QMenu(this); + } + + ui->actionChangeTheme->setMenu(themeMenu); +} + void MainWindow::repopulateAccountsMenu() { accountMenu->clear(); diff --git a/launcher/ui/MainWindow.h b/launcher/ui/MainWindow.h index f9d1f1c7..47e221b7 100644 --- a/launcher/ui/MainWindow.h +++ b/launcher/ui/MainWindow.h @@ -170,6 +170,8 @@ private slots: void updateToolsMenu(); + void updateThemeMenu(); + void instanceActivated(QModelIndex); void instanceChanged(const QModelIndex ¤t, const QModelIndex &previous); |