diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2019-11-23 22:57:03 +0200 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2020-02-13 07:58:14 +0000 |
commit | f2cd459ec5cfde59c8f27ef80c845560e8a7f0e1 (patch) | |
tree | 22247bef6132f73107c2659085edc978deb8bfd0 /src/plugins | |
parent | 9c96a1c4de382305ae66407df29bb47845afaac3 (diff) | |
download | qt-creator-f2cd459ec5cfde59c8f27ef80c845560e8a7f0e1.tar.gz |
VCS: Abstract multi-choice settings in editor config
Change-Id: Iafc089f5ad3796348ab9521b71b31cb645238292
Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/bazaar/bazaarclient.cpp | 13 | ||||
-rw-r--r-- | src/plugins/git/gitclient.cpp | 12 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbaseeditorconfig.cpp | 10 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbaseeditorconfig.h | 10 |
4 files changed, 25 insertions, 20 deletions
diff --git a/src/plugins/bazaar/bazaarclient.cpp b/src/plugins/bazaar/bazaarclient.cpp index eaa3e42ee1..6fca62d459 100644 --- a/src/plugins/bazaar/bazaarclient.cpp +++ b/src/plugins/bazaar/bazaarclient.cpp @@ -91,12 +91,13 @@ public: tr("Show merged revisions.")), settings.boolPointer(BazaarSettings::logIncludeMergesKey)); - QList<ComboBoxItem> logChoices; - logChoices << ComboBoxItem(tr("Detailed"), QLatin1String("long")) - << ComboBoxItem(tr("Moderately Short"), QLatin1String("short")) - << ComboBoxItem(tr("One Line"), QLatin1String("line")) - << ComboBoxItem(tr("GNU Change Log"), QLatin1String("gnu-changelog")); - mapSetting(addComboBox(QStringList(QLatin1String("--log-format=%1")), logChoices), + const QList<ChoiceItem> logChoices = { + ChoiceItem(tr("Detailed"), QLatin1String("long")), + ChoiceItem(tr("Moderately Short"), QLatin1String("short")), + ChoiceItem(tr("One Line"), QLatin1String("line")), + ChoiceItem(tr("GNU Change Log"), QLatin1String("gnu-changelog")) + }; + mapSetting(addChoices(tr("Format"), { "--log-format=%1" }, logChoices), settings.stringPointer(BazaarSettings::logFormatKey)); } }; diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index eba618dd02..3a7c0f98a3 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -547,13 +547,13 @@ public: tr("Ignore whitespace only changes.")), settings.boolPointer(GitSettings::ignoreSpaceChangesInBlameKey)); - const QList<ComboBoxItem> logChoices = { - ComboBoxItem(tr("No Move Detection"), ""), - ComboBoxItem(tr("Detect Moves Within File"), "-M"), - ComboBoxItem(tr("Detect Moves Between Files"), "-M -C"), - ComboBoxItem(tr("Detect Moves and Copies Between Files"), "-M -C -C") + const QList<ChoiceItem> logChoices = { + ChoiceItem(tr("No Move Detection"), ""), + ChoiceItem(tr("Detect Moves Within File"), "-M"), + ChoiceItem(tr("Detect Moves Between Files"), "-M -C"), + ChoiceItem(tr("Detect Moves and Copies Between Files"), "-M -C -C") }; - mapSetting(addComboBox({}, logChoices), + mapSetting(addChoices(tr("Move detection"), {}, logChoices), settings.intPointer(GitSettings::blameMoveDetection)); addReloadButton(); diff --git a/src/plugins/vcsbase/vcsbaseeditorconfig.cpp b/src/plugins/vcsbase/vcsbaseeditorconfig.cpp index 1954c60feb..95a08f72ae 100644 --- a/src/plugins/vcsbase/vcsbaseeditorconfig.cpp +++ b/src/plugins/vcsbase/vcsbaseeditorconfig.cpp @@ -106,7 +106,7 @@ public: that should trigger the rerun of the VCS operation. */ -VcsBaseEditorConfig::ComboBoxItem::ComboBoxItem(const QString &text, const QVariant &val) : +VcsBaseEditorConfig::ChoiceItem::ChoiceItem(const QString &text, const QVariant &val) : displayText(text), value(val) { @@ -171,11 +171,13 @@ QAction *VcsBaseEditorConfig::addToggleButton(const QStringList &options, return action; } -QComboBox *VcsBaseEditorConfig::addComboBox(const QStringList &options, - const QList<ComboBoxItem> &items) +QComboBox *VcsBaseEditorConfig::addChoices(const QString &title, + const QStringList &options, + const QList<ChoiceItem> &items) { auto cb = new QComboBox; - foreach (const ComboBoxItem &item, items) + cb->setToolTip(title); + for (const ChoiceItem &item : items) cb->addItem(item.displayText, item.value); connect(cb, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &VcsBaseEditorConfig::argumentsChanged); diff --git a/src/plugins/vcsbase/vcsbaseeditorconfig.h b/src/plugins/vcsbase/vcsbaseeditorconfig.h index 31f62af4d0..9a8f4d493f 100644 --- a/src/plugins/vcsbase/vcsbaseeditorconfig.h +++ b/src/plugins/vcsbase/vcsbaseeditorconfig.h @@ -51,11 +51,11 @@ public: explicit VcsBaseEditorConfig(QToolBar *toolBar); ~VcsBaseEditorConfig() override; - class VCSBASE_EXPORT ComboBoxItem + class VCSBASE_EXPORT ChoiceItem { public: - ComboBoxItem() = default; - ComboBoxItem(const QString &text, const QVariant &val); + ChoiceItem() = default; + ChoiceItem(const QString &text, const QVariant &val); QString displayText; QVariant value; }; @@ -68,7 +68,9 @@ public: const QString &tooltip = QString()); QAction *addToggleButton(const QStringList &options, const QString &label, const QString &tooltip = QString()); - QComboBox *addComboBox(const QStringList &options, const QList<ComboBoxItem> &items); + QComboBox *addChoices(const QString &title, + const QStringList &options, + const QList<ChoiceItem> &items); void mapSetting(QAction *button, bool *setting); void mapSetting(QComboBox *comboBox, QString *setting); |