diff options
author | hjk <hjk@qt.io> | 2020-01-15 14:32:19 +0100 |
---|---|---|
committer | hjk <hjk@qt.io> | 2020-01-17 09:20:31 +0000 |
commit | 43113470a45094d664a8580597d6e04c44a89e13 (patch) | |
tree | c4447dc5adfb731c65445d11db2668856933449e | |
parent | aac0f2a8f58f62f5b639b14301b56b57d1387a54 (diff) |
Vcs: Dissolve VcsBaseOptionsPage intermediate hierarchy level
It's effectively setting only three properties nowadays, not enough
to justify a case of reuse-by-inheritance anymore.
Change-Id: Ia0aedbd0dc460a70bed580a3402cf928c7221a77
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
-rw-r--r-- | src/plugins/clearcase/settingspage.cpp | 5 | ||||
-rw-r--r-- | src/plugins/clearcase/settingspage.h | 4 | ||||
-rw-r--r-- | src/plugins/cvs/settingspage.cpp | 1 | ||||
-rw-r--r-- | src/plugins/git/gerrit/gerritoptionspage.cpp | 5 | ||||
-rw-r--r-- | src/plugins/git/gerrit/gerritoptionspage.h | 5 | ||||
-rw-r--r-- | src/plugins/git/settingspage.cpp | 1 | ||||
-rw-r--r-- | src/plugins/mercurial/optionspage.cpp | 1 | ||||
-rw-r--r-- | src/plugins/perforce/settingspage.cpp | 3 | ||||
-rw-r--r-- | src/plugins/perforce/settingspage.h | 6 | ||||
-rw-r--r-- | src/plugins/subversion/settingspage.cpp | 1 | ||||
-rw-r--r-- | src/plugins/vcsbase/commonsettingspage.cpp | 6 | ||||
-rw-r--r-- | src/plugins/vcsbase/commonsettingspage.h | 5 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbaseoptionspage.cpp | 11 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbaseoptionspage.h | 9 |
14 files changed, 29 insertions, 34 deletions
diff --git a/src/plugins/clearcase/settingspage.cpp b/src/plugins/clearcase/settingspage.cpp index 66808b8d58..723aa2a8e4 100644 --- a/src/plugins/clearcase/settingspage.cpp +++ b/src/plugins/clearcase/settingspage.cpp @@ -32,6 +32,8 @@ #include <coreplugin/icore.h> +#include <vcsbase/vcsbaseconstants.h> + #include <utils/environment.h> #include <utils/hostosinfo.h> #include <utils/pathchooser.h> @@ -119,10 +121,11 @@ void SettingsPageWidget::apply() } ClearCaseSettingsPage::ClearCaseSettingsPage(QObject *parent) - : VcsBaseOptionsPage(parent) + : Core::IOptionsPage(parent) { setId(ClearCase::Constants::VCS_ID_CLEARCASE); setDisplayName(tr("ClearCase")); + setCategory(VcsBase::Constants::VCS_SETTINGS_CATEGORY); setWidgetCreator([] { return new SettingsPageWidget; }); } diff --git a/src/plugins/clearcase/settingspage.h b/src/plugins/clearcase/settingspage.h index 726798c5e6..ee1c3596d2 100644 --- a/src/plugins/clearcase/settingspage.h +++ b/src/plugins/clearcase/settingspage.h @@ -26,12 +26,12 @@ #pragma once -#include <vcsbase/vcsbaseoptionspage.h> +#include <coreplugin/dialogs/ioptionspage.h> namespace ClearCase { namespace Internal { -class ClearCaseSettingsPage : public VcsBase::VcsBaseOptionsPage +class ClearCaseSettingsPage final : public Core::IOptionsPage { public: explicit ClearCaseSettingsPage(QObject *parent); diff --git a/src/plugins/cvs/settingspage.cpp b/src/plugins/cvs/settingspage.cpp index 4914e53d82..ec89dbd9cf 100644 --- a/src/plugins/cvs/settingspage.cpp +++ b/src/plugins/cvs/settingspage.cpp @@ -92,6 +92,7 @@ SettingsPage::SettingsPage(Core::IVersionControl *control, QObject *parent) : { setId(VcsBase::Constants::VCS_ID_CVS); setDisplayName(SettingsPageWidget::tr("CVS")); + setCategory(VcsBase::Constants::VCS_SETTINGS_CATEGORY); setWidgetFactory([] { return new SettingsPageWidget; }); } diff --git a/src/plugins/git/gerrit/gerritoptionspage.cpp b/src/plugins/git/gerrit/gerritoptionspage.cpp index 730080d66f..21d273312c 100644 --- a/src/plugins/git/gerrit/gerritoptionspage.cpp +++ b/src/plugins/git/gerrit/gerritoptionspage.cpp @@ -30,6 +30,8 @@ #include <coreplugin/icore.h> #include <utils/pathchooser.h> +#include <vcsbase/vcsbaseconstants.h> + #include <QLineEdit> #include <QSpinBox> #include <QCheckBox> @@ -40,11 +42,12 @@ namespace Internal { GerritOptionsPage::GerritOptionsPage(const QSharedPointer<GerritParameters> &p, QObject *parent) - : VcsBase::VcsBaseOptionsPage(parent) + : Core::IOptionsPage(parent) , m_parameters(p) { setId("Gerrit"); setDisplayName(tr("Gerrit")); + setCategory(VcsBase::Constants::VCS_SETTINGS_CATEGORY); } GerritOptionsPage::~GerritOptionsPage() diff --git a/src/plugins/git/gerrit/gerritoptionspage.h b/src/plugins/git/gerrit/gerritoptionspage.h index ae2b4776cf..9388354ab1 100644 --- a/src/plugins/git/gerrit/gerritoptionspage.h +++ b/src/plugins/git/gerrit/gerritoptionspage.h @@ -25,9 +25,8 @@ #pragma once -#include <vcsbase/vcsbaseoptionspage.h> +#include <coreplugin/dialogs/ioptionspage.h> -#include <QWidget> #include <QSharedPointer> #include <QPointer> @@ -61,7 +60,7 @@ private: QCheckBox *m_httpsCheckBox; }; -class GerritOptionsPage : public VcsBase::VcsBaseOptionsPage +class GerritOptionsPage : public Core::IOptionsPage { Q_OBJECT diff --git a/src/plugins/git/settingspage.cpp b/src/plugins/git/settingspage.cpp index 6fbc3df22a..2e54beb2b9 100644 --- a/src/plugins/git/settingspage.cpp +++ b/src/plugins/git/settingspage.cpp @@ -128,6 +128,7 @@ SettingsPage::SettingsPage(Core::IVersionControl *control, QObject *parent) : { setId(VcsBase::Constants::VCS_ID_GIT); setDisplayName(SettingsPageWidget::tr("Git")); + setCategory(VcsBase::Constants::VCS_SETTINGS_CATEGORY); setWidgetFactory([] { return new SettingsPageWidget; }); } diff --git a/src/plugins/mercurial/optionspage.cpp b/src/plugins/mercurial/optionspage.cpp index 592e259636..a08ca7d4dc 100644 --- a/src/plugins/mercurial/optionspage.cpp +++ b/src/plugins/mercurial/optionspage.cpp @@ -87,6 +87,7 @@ OptionsPage::OptionsPage(Core::IVersionControl *control, QObject *parent) : { setId(VcsBase::Constants::VCS_ID_MERCURIAL); setDisplayName(OptionsPageWidget::tr("Mercurial")); + setCategory(VcsBase::Constants::VCS_SETTINGS_CATEGORY); setWidgetFactory([] { return new OptionsPageWidget; }); } diff --git a/src/plugins/perforce/settingspage.cpp b/src/plugins/perforce/settingspage.cpp index 933ea07b80..d8f15930f4 100644 --- a/src/plugins/perforce/settingspage.cpp +++ b/src/plugins/perforce/settingspage.cpp @@ -118,10 +118,11 @@ void SettingsPageWidget::setStatusError(const QString &t) } SettingsPage::SettingsPage(QObject *parent) - : VcsBaseOptionsPage(parent) + : Core::IOptionsPage(parent) { setId(VcsBase::Constants::VCS_ID_PERFORCE); setDisplayName(tr("Perforce")); + setCategory(VcsBase::Constants::VCS_SETTINGS_CATEGORY); } SettingsPage::~SettingsPage() diff --git a/src/plugins/perforce/settingspage.h b/src/plugins/perforce/settingspage.h index dbd5b64d7e..c3b5c6bb41 100644 --- a/src/plugins/perforce/settingspage.h +++ b/src/plugins/perforce/settingspage.h @@ -25,9 +25,7 @@ #pragma once -#include <QWidget> - -#include <vcsbase/vcsbaseoptionspage.h> +#include <coreplugin/dialogs/ioptionspage.h> #include "ui_settingspage.h" @@ -59,7 +57,7 @@ private: PerforceChecker *m_checker = nullptr; }; -class SettingsPage : public VcsBase::VcsBaseOptionsPage +class SettingsPage : public Core::IOptionsPage { Q_OBJECT diff --git a/src/plugins/subversion/settingspage.cpp b/src/plugins/subversion/settingspage.cpp index 225181f13a..1718e54182 100644 --- a/src/plugins/subversion/settingspage.cpp +++ b/src/plugins/subversion/settingspage.cpp @@ -101,6 +101,7 @@ SettingsPage::SettingsPage(Core::IVersionControl *control, QObject *parent) : { setId(VcsBase::Constants::VCS_ID_SUBVERSION); setDisplayName(SettingsPageWidget::tr("Subversion")); + setCategory(VcsBase::Constants::VCS_SETTINGS_CATEGORY); setWidgetFactory([] { return new SettingsPageWidget; }); } diff --git a/src/plugins/vcsbase/commonsettingspage.cpp b/src/plugins/vcsbase/commonsettingspage.cpp index ab907437bd..ebfd1fa008 100644 --- a/src/plugins/vcsbase/commonsettingspage.cpp +++ b/src/plugins/vcsbase/commonsettingspage.cpp @@ -103,12 +103,16 @@ void CommonSettingsWidget::updatePath() // --------------- VcsBaseSettingsPage CommonOptionsPage::CommonOptionsPage(QObject *parent) : - VcsBaseOptionsPage(parent) + Core::IOptionsPage(parent) { m_settings.fromSettings(Core::ICore::settings()); setId(Constants::VCS_COMMON_SETTINGS_ID); setDisplayName(QCoreApplication::translate("VcsBase", Constants::VCS_COMMON_SETTINGS_NAME)); + setCategory(Constants::VCS_SETTINGS_CATEGORY); + // The following act as blueprint for other pages in the same category: + setDisplayCategory(QCoreApplication::translate("VcsBase", "Version Control")); + setCategoryIconPath(":/vcsbase/images/settingscategory_vcs.png"); } QWidget *CommonOptionsPage::widget() diff --git a/src/plugins/vcsbase/commonsettingspage.h b/src/plugins/vcsbase/commonsettingspage.h index 5504856dc4..ffb859ed61 100644 --- a/src/plugins/vcsbase/commonsettingspage.h +++ b/src/plugins/vcsbase/commonsettingspage.h @@ -27,10 +27,9 @@ #include "commonvcssettings.h" -#include "vcsbaseoptionspage.h" +#include <coreplugin/dialogs/ioptionspage.h> #include <QPointer> -#include <QWidget> namespace VcsBase { namespace Internal { @@ -54,7 +53,7 @@ private: Ui::CommonSettingsPage *m_ui; }; -class CommonOptionsPage : public VcsBaseOptionsPage +class CommonOptionsPage final : public Core::IOptionsPage { Q_OBJECT diff --git a/src/plugins/vcsbase/vcsbaseoptionspage.cpp b/src/plugins/vcsbase/vcsbaseoptionspage.cpp index a1c825e5d7..73c9ebb232 100644 --- a/src/plugins/vcsbase/vcsbaseoptionspage.cpp +++ b/src/plugins/vcsbase/vcsbaseoptionspage.cpp @@ -44,20 +44,11 @@ namespace VcsBase { -VcsBaseOptionsPage::VcsBaseOptionsPage(QObject *parent) : Core::IOptionsPage(parent) -{ - setCategory(Constants::VCS_SETTINGS_CATEGORY); - setDisplayCategory(QCoreApplication::translate("VcsBase", "Version Control")); - setCategoryIconPath(":/vcsbase/images/settingscategory_vcs.png"); -} - -VcsBaseOptionsPage::~VcsBaseOptionsPage() = default; - VcsClientOptionsPageWidget::VcsClientOptionsPageWidget() = default; VcsClientOptionsPage::VcsClientOptionsPage(Core::IVersionControl *control, VcsBaseClientImpl *client, QObject *parent) : - VcsBaseOptionsPage(parent), + Core::IOptionsPage(parent), m_client(client) { QTC_CHECK(m_client); diff --git a/src/plugins/vcsbase/vcsbaseoptionspage.h b/src/plugins/vcsbase/vcsbaseoptionspage.h index d03037b8e5..53c11a8946 100644 --- a/src/plugins/vcsbase/vcsbaseoptionspage.h +++ b/src/plugins/vcsbase/vcsbaseoptionspage.h @@ -39,13 +39,6 @@ namespace Core { class IVersionControl; } namespace VcsBase { -class VCSBASE_EXPORT VcsBaseOptionsPage : public Core::IOptionsPage -{ -public: - explicit VcsBaseOptionsPage(QObject *parent = nullptr); - ~VcsBaseOptionsPage() override; -}; - class VcsBaseClientImpl; class VCSBASE_EXPORT VcsClientOptionsPageWidget : public Core::IOptionsPageWidget @@ -61,7 +54,7 @@ public: virtual VcsBaseClientSettings settings() const = 0; }; -class VCSBASE_EXPORT VcsClientOptionsPage : public VcsBaseOptionsPage +class VCSBASE_EXPORT VcsClientOptionsPage : public Core::IOptionsPage { Q_OBJECT |