forked from qt-creator/qt-creator
ProjectExplorer: Add convenience functions to add parts of a kit aspect
No functional change intended. Change-Id: Iaea552dbae60a8f0a6423707276e9c6c1e80cf4f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -187,12 +187,9 @@ void KitAspect::makeReadOnly()
|
|||||||
la.comboBox->setEnabled(false);
|
la.comboBox->setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void KitAspect::addToInnerLayout(Layouting::Layout &parentItem)
|
void KitAspect::addToInnerLayout(Layouting::Layout &layout)
|
||||||
{
|
{
|
||||||
for (const Private::ListAspect &la : std::as_const(d->listAspects)) {
|
addListAspectsToLayout(layout);
|
||||||
addMutableAction(la.comboBox);
|
|
||||||
parentItem.addItem(la.comboBox);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void KitAspect::addListAspectSpec(const ListAspectSpec &listAspectSpec)
|
void KitAspect::addListAspectSpec(const ListAspectSpec &listAspectSpec)
|
||||||
@@ -228,7 +225,7 @@ QList<QComboBox *> KitAspect::comboBoxes() const
|
|||||||
return Utils::transform(d->listAspects, &Private::ListAspect::comboBox);
|
return Utils::transform(d->listAspects, &Private::ListAspect::comboBox);
|
||||||
}
|
}
|
||||||
|
|
||||||
void KitAspect::addToLayoutImpl(Layouting::Layout &layout)
|
void KitAspect::addLabelToLayout(Layouting::Layout &layout)
|
||||||
{
|
{
|
||||||
auto label = createSubWidget<QLabel>(d->factory->displayName() + ':');
|
auto label = createSubWidget<QLabel>(d->factory->displayName() + ':');
|
||||||
label->setToolTip(d->factory->description());
|
label->setToolTip(d->factory->description());
|
||||||
@@ -237,7 +234,18 @@ void KitAspect::addToLayoutImpl(Layouting::Layout &layout)
|
|||||||
});
|
});
|
||||||
|
|
||||||
layout.addItem(label);
|
layout.addItem(label);
|
||||||
addToInnerLayout(layout);
|
}
|
||||||
|
|
||||||
|
void KitAspect::addListAspectsToLayout(Layouting::Layout &layout)
|
||||||
|
{
|
||||||
|
for (const Private::ListAspect &la : std::as_const(d->listAspects)) {
|
||||||
|
addMutableAction(la.comboBox);
|
||||||
|
layout.addItem(la.comboBox);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void KitAspect::addManageButtonToLayout(Layouting::Layout &layout)
|
||||||
|
{
|
||||||
if (d->managingPageId.isValid()) {
|
if (d->managingPageId.isValid()) {
|
||||||
d->manageButton = createSubWidget<QPushButton>(msgManage());
|
d->manageButton = createSubWidget<QPushButton>(msgManage());
|
||||||
connect(d->manageButton, &QPushButton::clicked, [this] {
|
connect(d->manageButton, &QPushButton::clicked, [this] {
|
||||||
@@ -245,7 +253,15 @@ void KitAspect::addToLayoutImpl(Layouting::Layout &layout)
|
|||||||
});
|
});
|
||||||
layout.addItem(d->manageButton);
|
layout.addItem(d->manageButton);
|
||||||
}
|
}
|
||||||
layout.addItem(Layouting::br);
|
}
|
||||||
|
|
||||||
|
void KitAspect::addToLayoutImpl(Layouting::Layout &layout)
|
||||||
|
{
|
||||||
|
addLabelToLayout(layout);
|
||||||
|
addToInnerLayout(layout);
|
||||||
|
addManageButtonToLayout(layout);
|
||||||
|
|
||||||
|
layout.flush();
|
||||||
}
|
}
|
||||||
|
|
||||||
void KitAspect::addMutableAction(QWidget *child)
|
void KitAspect::addMutableAction(QWidget *child)
|
||||||
|
@@ -132,12 +132,16 @@ public:
|
|||||||
// For layouting purposes only.
|
// For layouting purposes only.
|
||||||
QList<QComboBox *> comboBoxes() const;
|
QList<QComboBox *> comboBoxes() const;
|
||||||
|
|
||||||
virtual void addToInnerLayout(Layouting::Layout &parentItem);
|
virtual void addToInnerLayout(Layouting::Layout &layout);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void makeReadOnly();
|
virtual void makeReadOnly();
|
||||||
virtual Utils::Id settingsPageItemToPreselect() const { return {}; }
|
virtual Utils::Id settingsPageItemToPreselect() const { return {}; }
|
||||||
|
|
||||||
|
void addLabelToLayout(Layouting::Layout &layout);
|
||||||
|
void addListAspectsToLayout(Layouting::Layout &layout);
|
||||||
|
void addManageButtonToLayout(Layouting::Layout &layout);
|
||||||
|
|
||||||
// Convenience for aspects that provide a list model from which one value can be chosen.
|
// Convenience for aspects that provide a list model from which one value can be chosen.
|
||||||
// It will be exposed via a QComboBox.
|
// It will be exposed via a QComboBox.
|
||||||
class ListAspectSpec
|
class ListAspectSpec
|
||||||
|
Reference in New Issue
Block a user