forked from qt-creator/qt-creator
VCS: Abstract multi-choice settings in editor config
Change-Id: Iafc089f5ad3796348ab9521b71b31cb645238292 Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
committed by
Orgad Shaneh
parent
9c96a1c4de
commit
f2cd459ec5
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user