summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
authorOrgad Shaneh <orgad.shaneh@audiocodes.com>2019-11-23 22:57:03 +0200
committerOrgad Shaneh <orgads@gmail.com>2020-02-13 07:58:14 +0000
commitf2cd459ec5cfde59c8f27ef80c845560e8a7f0e1 (patch)
tree22247bef6132f73107c2659085edc978deb8bfd0 /src/plugins
parent9c96a1c4de382305ae66407df29bb47845afaac3 (diff)
downloadqt-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.cpp13
-rw-r--r--src/plugins/git/gitclient.cpp12
-rw-r--r--src/plugins/vcsbase/vcsbaseeditorconfig.cpp10
-rw-r--r--src/plugins/vcsbase/vcsbaseeditorconfig.h10
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);