diff --git a/src/widgets/dialogs/SettingsDialog.cpp b/src/widgets/dialogs/SettingsDialog.cpp index 3da4429a..8deaa830 100644 --- a/src/widgets/dialogs/SettingsDialog.cpp +++ b/src/widgets/dialogs/SettingsDialog.cpp @@ -157,32 +157,33 @@ void SettingsDialog::addTabs() this->ui_.tabContainer->setContentsMargins(0, 20, 0, 20); - this->addTab(new GeneralPage); + this->addTab(new GeneralPage, ":/settings/about.svg"); this->ui_.tabContainer->addSpacing(16); - this->addTab(new AccountsPage); + this->addTab(new AccountsPage, ":/settings/accounts.svg"); this->ui_.tabContainer->addSpacing(16); - this->addTab(new CommandPage); - this->addTab(new HighlightingPage); - this->addTab(new IgnoresPage); + this->addTab(new CommandPage, ":/settings/commands.svg"); + this->addTab(new HighlightingPage, ":/settings/notifications.svg"); + this->addTab(new IgnoresPage, ":/settings/ignore.svg"); this->ui_.tabContainer->addSpacing(16); - this->addTab(new KeyboardSettingsPage); - this->addTab(new ModerationPage); - this->addTab(new NotificationPage); - this->addTab(new ExternalToolsPage); + this->addTab(new KeyboardSettingsPage, ":/settings/keybinds.svg"); + this->addTab(new ModerationPage, ":/settings/moderation.svg"); + this->addTab(new NotificationPage, ":/settings/notification2.svg"); + this->addTab(new ExternalToolsPage, ":/settings/externaltools.svg"); this->ui_.tabContainer->addStretch(1); - this->addTab(new AboutPage, Qt::AlignBottom); + this->addTab(new AboutPage, ":/settings/about.svg", Qt::AlignBottom); } -void SettingsDialog::addTab(SettingsPage *page, Qt::Alignment alignment) +void SettingsDialog::addTab(SettingsPage *page, const QString &iconPath, + Qt::Alignment alignment) { - auto tab = new SettingsDialogTab(this, page, page->getIconResource()); + auto tab = new SettingsDialogTab(this, page, iconPath); page->setTab(tab); this->ui_.pageStack->addWidget(page); diff --git a/src/widgets/dialogs/SettingsDialog.hpp b/src/widgets/dialogs/SettingsDialog.hpp index 7495352d..6e282d13 100644 --- a/src/widgets/dialogs/SettingsDialog.hpp +++ b/src/widgets/dialogs/SettingsDialog.hpp @@ -49,8 +49,9 @@ private: void initUi(); void addTabs(); - void addTab(SettingsPage *page, Qt::Alignment alignment = Qt::AlignTop); - void selectTab(SettingsDialogTab *tab, bool byUser = true); + void addTab(SettingsPage *page, const QString &iconPath, + Qt::Alignment alignment = Qt::AlignTop); + void selectTab(SettingsDialogTab *tab, const bool byUser = true); void selectPage(SettingsPage *page); void selectTab(SettingsTabId id); SettingsDialogTab *tab(SettingsTabId id); diff --git a/src/widgets/settingspages/AboutPage.cpp b/src/widgets/settingspages/AboutPage.cpp index 5a7dcf53..1371bbee 100644 --- a/src/widgets/settingspages/AboutPage.cpp +++ b/src/widgets/settingspages/AboutPage.cpp @@ -18,7 +18,7 @@ namespace chatterino { AboutPage::AboutPage() - : SettingsPage("About", ":/settings/about.svg") + : SettingsPage("About") { LayoutCreator layoutCreator(this); diff --git a/src/widgets/settingspages/AccountsPage.cpp b/src/widgets/settingspages/AccountsPage.cpp index 94408553..1969e3fc 100644 --- a/src/widgets/settingspages/AccountsPage.cpp +++ b/src/widgets/settingspages/AccountsPage.cpp @@ -17,7 +17,7 @@ namespace chatterino { AccountsPage::AccountsPage() - : SettingsPage("Accounts", ":/settings/accounts.svg") + : SettingsPage("Accounts") { auto *app = getApp(); diff --git a/src/widgets/settingspages/CommandPage.cpp b/src/widgets/settingspages/CommandPage.cpp index c3470c4b..d565a10f 100644 --- a/src/widgets/settingspages/CommandPage.cpp +++ b/src/widgets/settingspages/CommandPage.cpp @@ -33,7 +33,7 @@ namespace { } // namespace CommandPage::CommandPage() - : SettingsPage("Commands", ":/settings/commands.svg") + : SettingsPage("Commands") { auto app = getApp(); diff --git a/src/widgets/settingspages/ExternalToolsPage.cpp b/src/widgets/settingspages/ExternalToolsPage.cpp index 57a8a496..f7aad15b 100644 --- a/src/widgets/settingspages/ExternalToolsPage.cpp +++ b/src/widgets/settingspages/ExternalToolsPage.cpp @@ -12,7 +12,7 @@ namespace chatterino { ExternalToolsPage::ExternalToolsPage() - : SettingsPage("External tools", ":/settings/externaltools.svg") + : SettingsPage("External tools") { LayoutCreator layoutCreator(this); auto layout = layoutCreator.setLayoutType(); diff --git a/src/widgets/settingspages/GeneralPage.cpp b/src/widgets/settingspages/GeneralPage.cpp index 68d5206b..38b3b4e3 100644 --- a/src/widgets/settingspages/GeneralPage.cpp +++ b/src/widgets/settingspages/GeneralPage.cpp @@ -237,7 +237,7 @@ bool SettingsLayout::filterElements(const QString &query) } GeneralPage::GeneralPage() - : SettingsPage("General", ":/settings/about.svg") + : SettingsPage("General") { auto y = new QVBoxLayout; auto scroll = new QScrollArea; diff --git a/src/widgets/settingspages/HighlightingPage.cpp b/src/widgets/settingspages/HighlightingPage.cpp index 7113ee33..05a71bd7 100644 --- a/src/widgets/settingspages/HighlightingPage.cpp +++ b/src/widgets/settingspages/HighlightingPage.cpp @@ -29,7 +29,7 @@ namespace chatterino { HighlightingPage::HighlightingPage() - : SettingsPage("Highlights", ":/settings/notifications.svg") + : SettingsPage("Highlights") { auto app = getApp(); LayoutCreator layoutCreator(this); diff --git a/src/widgets/settingspages/IgnoresPage.cpp b/src/widgets/settingspages/IgnoresPage.cpp index f1bed284..af36ecad 100644 --- a/src/widgets/settingspages/IgnoresPage.cpp +++ b/src/widgets/settingspages/IgnoresPage.cpp @@ -29,7 +29,7 @@ static void addUsersTab(IgnoresPage &page, LayoutCreator box, QStringListModel &model); IgnoresPage::IgnoresPage() - : SettingsPage("Ignores", ":/settings/ignore.svg") + : SettingsPage("Ignores") { LayoutCreator layoutCreator(this); auto layout = layoutCreator.setLayoutType(); diff --git a/src/widgets/settingspages/KeyboardSettingsPage.cpp b/src/widgets/settingspages/KeyboardSettingsPage.cpp index ee2502f2..0dd557a7 100644 --- a/src/widgets/settingspages/KeyboardSettingsPage.cpp +++ b/src/widgets/settingspages/KeyboardSettingsPage.cpp @@ -8,7 +8,7 @@ namespace chatterino { KeyboardSettingsPage::KeyboardSettingsPage() - : SettingsPage("Keybindings", ":/settings/keybinds.svg") + : SettingsPage("Keybindings") { auto layout = LayoutCreator(this).setLayoutType(); diff --git a/src/widgets/settingspages/ModerationPage.cpp b/src/widgets/settingspages/ModerationPage.cpp index 3d2050ba..88d8ac9e 100644 --- a/src/widgets/settingspages/ModerationPage.cpp +++ b/src/widgets/settingspages/ModerationPage.cpp @@ -73,7 +73,7 @@ QString fetchLogDirectorySize() } ModerationPage::ModerationPage() - : SettingsPage("Moderation", ":/settings/moderation.svg") + : SettingsPage("Moderation") { auto app = getApp(); LayoutCreator layoutCreator(this); diff --git a/src/widgets/settingspages/NotificationPage.cpp b/src/widgets/settingspages/NotificationPage.cpp index 06acf44d..968c34f5 100644 --- a/src/widgets/settingspages/NotificationPage.cpp +++ b/src/widgets/settingspages/NotificationPage.cpp @@ -21,7 +21,7 @@ namespace chatterino { NotificationPage::NotificationPage() - : SettingsPage("Notifications", ":/settings/notification2.svg") + : SettingsPage("Notifications") { LayoutCreator layoutCreator(this); auto layout = layoutCreator.emplace().withoutMargin(); diff --git a/src/widgets/settingspages/SettingsPage.cpp b/src/widgets/settingspages/SettingsPage.cpp index cbcc9019..40f6e049 100644 --- a/src/widgets/settingspages/SettingsPage.cpp +++ b/src/widgets/settingspages/SettingsPage.cpp @@ -64,9 +64,8 @@ bool filterItemsRec(QObject *object, const QString &query) return any; } -SettingsPage::SettingsPage(const QString &name, const QString &iconResource) +SettingsPage::SettingsPage(const QString &name) : name_(name) - , iconResource_(iconResource) { } @@ -81,11 +80,6 @@ const QString &SettingsPage::getName() return this->name_; } -const QString &SettingsPage::getIconResource() -{ - return this->iconResource_; -} - SettingsDialogTab *SettingsPage::tab() const { return this->tab_; diff --git a/src/widgets/settingspages/SettingsPage.hpp b/src/widgets/settingspages/SettingsPage.hpp index 0e92311f..eeb8b960 100644 --- a/src/widgets/settingspages/SettingsPage.hpp +++ b/src/widgets/settingspages/SettingsPage.hpp @@ -47,10 +47,9 @@ class SettingsPage : public QFrame Q_OBJECT public: - SettingsPage(const QString &name, const QString &iconResource); + SettingsPage(const QString &name); const QString &getName(); - const QString &getIconResource(); virtual bool filterElements(const QString &query); @@ -73,10 +72,7 @@ public: protected: QString name_; - QString iconResource_; - SettingsDialogTab *tab_; - pajlada::Signals::NoArgSignal onCancel_; std::vector managedConnections_; };