summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2023-05-02 17:20:57 +0200
committerhjk <hjk@qt.io>2023-05-03 13:44:28 +0000
commit99f767956417ed7dc91a5295a2af8326376d3b5e (patch)
treee5b5c1c7f39a37a5046a5dae0add481686dbdac8
parent50084f6b0ed78bfee6f5e1d2e56ade9b52b3f2f6 (diff)
downloadqt-creator-99f767956417ed7dc91a5295a2af8326376d3b5e.tar.gz
Layouting: Make aspects operate on parent items, not LayoutBuilder
LayoutBuilder is meant to be an implementation detail nowadays. Change-Id: I777ab934d3d405873e819eeddd27428d8c652f9a Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
-rw-r--r--src/libs/utils/aspects.cpp82
-rw-r--r--src/libs/utils/aspects.h29
-rw-r--r--src/libs/utils/layoutbuilder.cpp69
-rw-r--r--src/libs/utils/layoutbuilder.h28
-rw-r--r--src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp18
-rw-r--r--src/plugins/cmakeprojectmanager/cmakekitinformation.cpp14
-rw-r--r--src/plugins/debugger/debuggeractions.h2
-rw-r--r--src/plugins/debugger/debuggerkitinformation.cpp6
-rw-r--r--src/plugins/debugger/debuggersourcepathmappingwidget.cpp4
-rw-r--r--src/plugins/incredibuild/commandbuilderaspect.cpp8
-rw-r--r--src/plugins/incredibuild/commandbuilderaspect.h2
-rw-r--r--src/plugins/ios/iosrunconfiguration.cpp4
-rw-r--r--src/plugins/ios/iosrunconfiguration.h2
-rw-r--r--src/plugins/mcusupport/mcukitinformation.cpp2
-rw-r--r--src/plugins/mesonprojectmanager/toolkitaspectwidget.h6
-rw-r--r--src/plugins/projectexplorer/buildaspects.cpp6
-rw-r--r--src/plugins/projectexplorer/buildaspects.h2
-rw-r--r--src/plugins/projectexplorer/buildconfiguration.cpp4
-rw-r--r--src/plugins/projectexplorer/buildpropertiessettings.cpp6
-rw-r--r--src/plugins/projectexplorer/kitinformation.cpp12
-rw-r--r--src/plugins/projectexplorer/kitmanager.cpp8
-rw-r--r--src/plugins/projectexplorer/kitmanager.h2
-rw-r--r--src/plugins/projectexplorer/kitmanagerconfigwidget.cpp16
-rw-r--r--src/plugins/projectexplorer/kitmanagerconfigwidget.h2
-rw-r--r--src/plugins/projectexplorer/miniprojecttargetselector.cpp2
-rw-r--r--src/plugins/projectexplorer/runconfiguration.cpp4
-rw-r--r--src/plugins/projectexplorer/runconfigurationaspects.cpp12
-rw-r--r--src/plugins/projectexplorer/runconfigurationaspects.h10
-rw-r--r--src/plugins/qbsprojectmanager/qbsbuildstep.cpp6
-rw-r--r--src/plugins/qbsprojectmanager/qbskitinformation.cpp6
-rw-r--r--src/plugins/qmakeprojectmanager/qmakekitinformation.cpp4
-rw-r--r--src/plugins/qmlprojectmanager/qmlmainfileaspect.cpp4
-rw-r--r--src/plugins/qmlprojectmanager/qmlmainfileaspect.h2
-rw-r--r--src/plugins/qtsupport/qtbuildaspects.cpp12
-rw-r--r--src/plugins/qtsupport/qtbuildaspects.h4
-rw-r--r--src/plugins/qtsupport/qtkitinformation.cpp6
-rw-r--r--src/plugins/valgrind/valgrindsettings.cpp6
-rw-r--r--src/plugins/valgrind/valgrindsettings.h2
-rw-r--r--src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp4
-rw-r--r--src/plugins/webassembly/webassemblyrunconfigurationaspects.h2
40 files changed, 204 insertions, 216 deletions
diff --git a/src/libs/utils/aspects.cpp b/src/libs/utils/aspects.cpp
index fd953d2493..94aee75214 100644
--- a/src/libs/utils/aspects.cpp
+++ b/src/libs/utils/aspects.cpp
@@ -210,15 +210,15 @@ void BaseAspect::setupLabel()
registerSubWidget(d->m_label);
}
-void BaseAspect::addLabeledItem(Layouting::LayoutBuilder &builder, QWidget *widget)
+void BaseAspect::addLabeledItem(LayoutItem &parent, QWidget *widget)
{
setupLabel();
if (QLabel *l = label()) {
l->setBuddy(widget);
- builder.addItem(l);
- builder.addItem(Span(std::max(d->m_spanX - 1, 1), LayoutItem(widget)));
+ parent.addItem(l);
+ parent.addItem(Span(std::max(d->m_spanX - 1, 1), LayoutItem(widget)));
} else {
- builder.addItem(LayoutItem(widget));
+ parent.addItem(LayoutItem(widget));
}
}
@@ -419,24 +419,18 @@ QAction *BaseAspect::action()
Adds the visual representation of this aspect to a layout using
a layout builder.
*/
-void BaseAspect::addToLayout(LayoutBuilder &)
+void BaseAspect::addToLayout(LayoutItem &)
{
}
void createItem(Layouting::LayoutItem *item, const BaseAspect &aspect)
{
- item->onAdd = [&aspect](LayoutBuilder &builder) {
- const_cast<BaseAspect &>(aspect).addToLayout(builder);
- builder.addItem(br);
- };
+ const_cast<BaseAspect &>(aspect).addToLayout(*item);
}
void createItem(Layouting::LayoutItem *item, const BaseAspect *aspect)
{
- item->onAdd = [aspect](LayoutBuilder &builder) {
- const_cast<BaseAspect *>(aspect)->addToLayout(builder);
- builder.addItem(br);
- };
+ const_cast<BaseAspect *>(aspect)->addToLayout(*item);
}
@@ -1067,11 +1061,11 @@ void StringAspect::setUncheckedSemantics(StringAspect::UncheckedSemantics semant
d->m_uncheckedSemantics = semantics;
}
-void StringAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void StringAspect::addToLayout(LayoutItem &parent)
{
if (d->m_checker && d->m_checkBoxPlacement == CheckBoxPlacement::Top) {
- d->m_checker->addToLayout(builder);
- builder.addItem(br);
+ d->m_checker->addToLayout(parent);
+ parent.addItem(br);
}
const auto useMacroExpander = [this](QWidget *w) {
@@ -1103,7 +1097,7 @@ void StringAspect::addToLayout(Layouting::LayoutBuilder &builder)
if (d->m_pathChooserDisplay->lineEdit()->placeholderText().isEmpty())
d->m_pathChooserDisplay->lineEdit()->setPlaceholderText(d->m_placeHolderText);
d->updateWidgetFromCheckStatus(this, d->m_pathChooserDisplay.data());
- addLabeledItem(builder, d->m_pathChooserDisplay);
+ addLabeledItem(parent, d->m_pathChooserDisplay);
useMacroExpander(d->m_pathChooserDisplay->lineEdit());
if (isAutoApply()) {
if (d->m_autoApplyOnEditingFinished) {
@@ -1134,7 +1128,7 @@ void StringAspect::addToLayout(Layouting::LayoutBuilder &builder)
d->m_lineEditDisplay->setTextKeepingActiveCursor(displayedString);
d->m_lineEditDisplay->setReadOnly(isReadOnly());
d->updateWidgetFromCheckStatus(this, d->m_lineEditDisplay.data());
- addLabeledItem(builder, d->m_lineEditDisplay);
+ addLabeledItem(parent, d->m_lineEditDisplay);
useMacroExpander(d->m_lineEditDisplay);
if (isAutoApply()) {
if (d->m_autoApplyOnEditingFinished) {
@@ -1164,7 +1158,7 @@ void StringAspect::addToLayout(Layouting::LayoutBuilder &builder)
connect(d->m_lineEditDisplay, &QLineEdit::textChanged, this, [this, resetButton] {
resetButton->setEnabled(d->m_lineEditDisplay->text() != defaultValue());
});
- builder.addItem(resetButton);
+ parent.addItem(resetButton);
}
break;
case TextEditDisplay:
@@ -1176,7 +1170,7 @@ void StringAspect::addToLayout(Layouting::LayoutBuilder &builder)
d->m_textEditDisplay->setText(displayedString);
d->m_textEditDisplay->setReadOnly(isReadOnly());
d->updateWidgetFromCheckStatus(this, d->m_textEditDisplay.data());
- addLabeledItem(builder, d->m_textEditDisplay);
+ addLabeledItem(parent, d->m_textEditDisplay);
useMacroExpander(d->m_textEditDisplay);
if (isAutoApply()) {
connect(d->m_textEditDisplay, &QTextEdit::textChanged, this, [this] {
@@ -1190,14 +1184,14 @@ void StringAspect::addToLayout(Layouting::LayoutBuilder &builder)
d->m_labelDisplay->setTextInteractionFlags(Qt::TextSelectableByMouse);
d->m_labelDisplay->setText(displayedString);
d->m_labelDisplay->setToolTip(d->m_showToolTipOnLabel ? displayedString : toolTip());
- addLabeledItem(builder, d->m_labelDisplay);
+ addLabeledItem(parent, d->m_labelDisplay);
break;
}
validateInput();
if (d->m_checker && d->m_checkBoxPlacement == CheckBoxPlacement::Right)
- d->m_checker->addToLayout(builder);
+ d->m_checker->addToLayout(parent);
}
QVariant StringAspect::volatileValue() const
@@ -1327,11 +1321,11 @@ ColorAspect::ColorAspect(const QString &settingsKey)
ColorAspect::~ColorAspect() = default;
-void ColorAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void ColorAspect::addToLayout(Layouting::LayoutItem &parent)
{
QTC_CHECK(!d->m_colorButton);
d->m_colorButton = createSubWidget<QtColorButton>();
- builder.addItem(d->m_colorButton.data());
+ parent.addItem(d->m_colorButton.data());
d->m_colorButton->setColor(value());
if (isAutoApply()) {
connect(d->m_colorButton.data(),
@@ -1401,24 +1395,24 @@ BoolAspect::~BoolAspect() = default;
/*!
\reimp
*/
-void BoolAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void BoolAspect::addToLayout(Layouting::LayoutItem &parent)
{
QTC_CHECK(!d->m_checkBox);
d->m_checkBox = createSubWidget<QCheckBox>();
switch (d->m_labelPlacement) {
case LabelPlacement::AtCheckBoxWithoutDummyLabel:
d->m_checkBox->setText(labelText());
- builder.addItem(d->m_checkBox.data());
+ parent.addItem(d->m_checkBox.data());
break;
case LabelPlacement::AtCheckBox: {
d->m_checkBox->setText(labelText());
- if (builder.isForm())
- builder.addItem(createSubWidget<QLabel>());
- builder.addItem(d->m_checkBox.data());
+// if (parent.isForm()) FIXME
+ parent.addItem(createSubWidget<QLabel>());
+ parent.addItem(d->m_checkBox.data());
break;
}
case LabelPlacement::InExtraLabel:
- addLabeledItem(builder, d->m_checkBox);
+ addLabeledItem(parent, d->m_checkBox);
break;
}
d->m_checkBox->setChecked(value());
@@ -1557,7 +1551,7 @@ SelectionAspect::~SelectionAspect() = default;
/*!
\reimp
*/
-void SelectionAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void SelectionAspect::addToLayout(Layouting::LayoutItem &parent)
{
QTC_CHECK(d->m_buttonGroup == nullptr);
QTC_CHECK(!d->m_comboBox);
@@ -1573,8 +1567,8 @@ void SelectionAspect::addToLayout(Layouting::LayoutBuilder &builder)
button->setChecked(i == value());
button->setEnabled(option.enabled);
button->setToolTip(option.tooltip);
- builder.addItem(Layouting::empty);
- builder.addItem(button);
+ parent.addItem(Layouting::empty);
+ parent.addItem(button);
d->m_buttons.append(button);
d->m_buttonGroup->addButton(button, i);
if (isAutoApply()) {
@@ -1596,7 +1590,7 @@ void SelectionAspect::addToLayout(Layouting::LayoutBuilder &builder)
connect(d->m_comboBox.data(), &QComboBox::currentIndexChanged,
this, &SelectionAspect::volatileValueChanged);
d->m_comboBox->setCurrentIndex(value());
- addLabeledItem(builder, d->m_comboBox);
+ addLabeledItem(parent, d->m_comboBox);
break;
}
}
@@ -1762,7 +1756,7 @@ MultiSelectionAspect::~MultiSelectionAspect() = default;
/*!
\reimp
*/
-void MultiSelectionAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void MultiSelectionAspect::addToLayout(LayoutItem &builder)
{
QTC_CHECK(d->m_listView == nullptr);
if (d->m_allValues.isEmpty())
@@ -1871,7 +1865,7 @@ IntegerAspect::~IntegerAspect() = default;
/*!
\reimp
*/
-void IntegerAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void IntegerAspect::addToLayout(Layouting::LayoutItem &parent)
{
QTC_CHECK(!d->m_spinBox);
d->m_spinBox = createSubWidget<QSpinBox>();
@@ -1884,7 +1878,7 @@ void IntegerAspect::addToLayout(Layouting::LayoutBuilder &builder)
d->m_spinBox->setRange(int(d->m_minimumValue.value() / d->m_displayScaleFactor),
int(d->m_maximumValue.value() / d->m_displayScaleFactor));
d->m_spinBox->setValue(int(value() / d->m_displayScaleFactor)); // Must happen after setRange()
- addLabeledItem(builder, d->m_spinBox);
+ addLabeledItem(parent, d->m_spinBox);
if (isAutoApply()) {
connect(d->m_spinBox.data(), &QSpinBox::valueChanged,
@@ -2005,7 +1999,7 @@ DoubleAspect::~DoubleAspect() = default;
/*!
\reimp
*/
-void DoubleAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void DoubleAspect::addToLayout(LayoutItem &builder)
{
QTC_CHECK(!d->m_spinBox);
d->m_spinBox = createSubWidget<QDoubleSpinBox>();
@@ -2159,9 +2153,9 @@ StringListAspect::~StringListAspect() = default;
/*!
\reimp
*/
-void StringListAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void StringListAspect::addToLayout(LayoutItem &parent)
{
- Q_UNUSED(builder)
+ Q_UNUSED(parent)
// TODO - when needed.
}
@@ -2229,9 +2223,9 @@ IntegersAspect::~IntegersAspect() = default;
/*!
\reimp
*/
-void IntegersAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void IntegersAspect::addToLayout(Layouting::LayoutItem &parent)
{
- Q_UNUSED(builder)
+ Q_UNUSED(parent)
// TODO - when needed.
}
@@ -2292,7 +2286,7 @@ TextDisplay::~TextDisplay() = default;
/*!
\reimp
*/
-void TextDisplay::addToLayout(Layouting::LayoutBuilder &builder)
+void TextDisplay::addToLayout(LayoutItem &parent)
{
if (!d->m_label) {
d->m_label = createSubWidget<InfoLabel>(d->m_message, d->m_type);
@@ -2304,7 +2298,7 @@ void TextDisplay::addToLayout(Layouting::LayoutBuilder &builder)
if (!isVisible())
d->m_label->setVisible(false);
}
- builder.addItem(d->m_label.data());
+ parent.addItem(d->m_label.data());
}
/*!
diff --git a/src/libs/utils/aspects.h b/src/libs/utils/aspects.h
index 3eae9ffaea..8b75bf911d 100644
--- a/src/libs/utils/aspects.h
+++ b/src/libs/utils/aspects.h
@@ -18,10 +18,7 @@ class QAction;
class QSettings;
QT_END_NAMESPACE
-namespace Layouting {
-class LayoutItem;
-class LayoutBuilder;
-}
+namespace Layouting { class LayoutItem; }
namespace Utils {
@@ -100,7 +97,7 @@ public:
virtual void toMap(QVariantMap &map) const;
virtual void toActiveMap(QVariantMap &map) const { toMap(map); }
- virtual void addToLayout(Layouting::LayoutBuilder &builder);
+ virtual void addToLayout(Layouting::LayoutItem &parent);
virtual QVariant volatileValue() const;
virtual void setVolatileValue(const QVariant &val);
@@ -171,7 +168,7 @@ signals:
protected:
QLabel *label() const;
void setupLabel();
- void addLabeledItem(Layouting::LayoutBuilder &builder, QWidget *widget);
+ void addLabeledItem(Layouting::LayoutItem &parent, QWidget *widget);
void setDataCreatorHelper(const DataCreator &creator) const;
void setDataClonerHelper(const DataCloner &cloner) const;
@@ -223,7 +220,7 @@ public:
bool value;
};
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
std::function<void(QObject *)> groupChecker();
QAction *action() override;
@@ -263,7 +260,7 @@ public:
QColor value;
};
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QColor value() const;
void setValue(const QColor &val);
@@ -283,7 +280,7 @@ public:
SelectionAspect();
~SelectionAspect() override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QVariant volatileValue() const override;
void setVolatileValue(const QVariant &val) override;
void finish() override;
@@ -337,7 +334,7 @@ public:
MultiSelectionAspect();
~MultiSelectionAspect() override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
enum class DisplayStyle { ListView };
void setDisplayStyle(DisplayStyle style);
@@ -366,7 +363,7 @@ public:
FilePath filePath;
};
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QVariant volatileValue() const override;
void setVolatileValue(const QVariant &val) override;
@@ -444,7 +441,7 @@ public:
IntegerAspect();
~IntegerAspect() override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QVariant volatileValue() const override;
void setVolatileValue(const QVariant &val) override;
@@ -481,7 +478,7 @@ public:
DoubleAspect();
~DoubleAspect() override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QVariant volatileValue() const override;
void setVolatileValue(const QVariant &val) override;
@@ -549,7 +546,7 @@ public:
StringListAspect();
~StringListAspect() override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QStringList value() const;
void setValue(const QStringList &val);
@@ -571,7 +568,7 @@ public:
IntegersAspect();
~IntegersAspect() override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
void emitChangedValue() override;
QList<int> value() const;
@@ -593,7 +590,7 @@ public:
InfoLabel::InfoType type = InfoLabel::None);
~TextDisplay() override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
void setIconType(InfoLabel::InfoType t);
void setText(const QString &message);
diff --git a/src/libs/utils/layoutbuilder.cpp b/src/libs/utils/layoutbuilder.cpp
index 48a75fc162..3324e9c4f6 100644
--- a/src/libs/utils/layoutbuilder.cpp
+++ b/src/libs/utils/layoutbuilder.cpp
@@ -74,7 +74,7 @@ struct ResultItem
int span = 1;
};
-struct LayoutBuilder::Slice
+struct Slice
{
Slice() = default;
Slice(QLayout *l) : layout(l) {}
@@ -135,7 +135,7 @@ static void addItemToBoxLayout(QBoxLayout *layout, const ResultItem &item)
}
}
-void LayoutBuilder::Slice::flush()
+void Slice::flush()
{
if (pendingItems.empty())
return;
@@ -194,13 +194,14 @@ void LayoutBuilder::Slice::flush()
} else if (auto gridLayout = qobject_cast<QGridLayout *>(layout)) {
for (const ResultItem &item : std::as_const(pendingItems)) {
- if (item.widget)
- gridLayout->addWidget(item.widget, currentGridRow, currentGridColumn, 1, item.span, align);
- else if (item.layout)
- gridLayout->addLayout(item.layout, currentGridRow, currentGridColumn, 1, item.span, align);
- else if (!item.text.isEmpty())
- gridLayout->addWidget(createLabel(item.text), currentGridRow, currentGridColumn, 1, 1, align);
- currentGridColumn += item.span;
+ Qt::Alignment a = currentGridColumn == 0 ? align : Qt::Alignment();
+ if (item.widget)
+ gridLayout->addWidget(item.widget, currentGridRow, currentGridColumn, 1, item.span, a);
+ else if (item.layout)
+ gridLayout->addLayout(item.layout, currentGridRow, currentGridColumn, 1, item.span, a);
+ else if (!item.text.isEmpty())
+ gridLayout->addWidget(createLabel(item.text), currentGridRow, currentGridColumn, 1, 1, a);
+ currentGridColumn += item.span;
}
++currentGridRow;
currentGridColumn = 0;
@@ -225,6 +226,25 @@ void LayoutBuilder::Slice::flush()
pendingItems.clear();
}
+// LayoutBuilder
+
+class LayoutBuilder
+{
+ Q_DISABLE_COPY_MOVE(LayoutBuilder)
+
+public:
+ LayoutBuilder();
+ ~LayoutBuilder();
+
+ void addItem(const LayoutItem &item);
+ void addItems(const LayoutItems &items);
+ void addRow(const LayoutItems &items);
+
+ bool isForm() const;
+
+ QList<Slice> stack;
+};
+
static void addItemHelper(LayoutBuilder &builder, const LayoutItem &item)
{
if (item.onAdd)
@@ -306,6 +326,7 @@ void doAddWidget(LayoutBuilder &builder, QWidget *widget)
\sa addItem(), addItems(), addRow(), finishRow()
*/
+
LayoutBuilder::LayoutBuilder() = default;
/*!
@@ -520,25 +541,6 @@ LayoutItem withFormAlignment()
return item;
}
-/*!
- Constructs a layout extender to extend an existing \a layout.
-
- This constructor can be used to continue the work of previous layout building.
- The type of the underlying layout and previous contents will be retained,
- new items will be added below existing ones.
- */
-
-LayoutExtender::LayoutExtender(QLayout *layout)
-{
- Slice slice;
- slice.layout = layout;
- if (auto gridLayout = qobject_cast<QGridLayout *>(layout))
- slice.currentGridRow = gridLayout->rowCount();
- stack.append(slice);
-}
-
-LayoutExtender::~LayoutExtender() = default;
-
// "Widgets"
template <class T>
@@ -688,6 +690,17 @@ LayoutItem resize(int w, int h)
};
}
+LayoutItem columnStretch(int column, int stretch)
+{
+ return [column, stretch](QObject *target) {
+ if (auto grid = qobject_cast<QGridLayout *>(target)) {
+ grid->setColumnStretch(column, stretch);
+ } else {
+ QTC_CHECK(false);
+ }
+ };
+}
+
QWidget *createHr(QWidget *parent)
{
auto frame = new QFrame(parent);
diff --git a/src/libs/utils/layoutbuilder.h b/src/libs/utils/layoutbuilder.h
index e63c359e7e..1a9c3439bc 100644
--- a/src/libs/utils/layoutbuilder.h
+++ b/src/libs/utils/layoutbuilder.h
@@ -197,6 +197,7 @@ QTCREATOR_UTILS_EXPORT LayoutItem title(const QString &title);
QTCREATOR_UTILS_EXPORT LayoutItem text(const QString &text);
QTCREATOR_UTILS_EXPORT LayoutItem tooltip(const QString &toolTip);
QTCREATOR_UTILS_EXPORT LayoutItem resize(int, int);
+QTCREATOR_UTILS_EXPORT LayoutItem columnStretch(int column, int stretch);
QTCREATOR_UTILS_EXPORT LayoutItem spacing(int);
QTCREATOR_UTILS_EXPORT LayoutItem windowTitle(const QString &windowTitle);
QTCREATOR_UTILS_EXPORT LayoutItem onClicked(const std::function<void()> &,
@@ -212,31 +213,4 @@ LayoutItem bindTo(T **out)
return [out](QObject *target) { *out = qobject_cast<T *>(target); };
}
-// LayoutBuilder
-
-class QTCREATOR_UTILS_EXPORT LayoutBuilder
-{
- Q_DISABLE_COPY_MOVE(LayoutBuilder)
-
-public:
- LayoutBuilder();
- ~LayoutBuilder();
-
- void addItem(const LayoutItem &item);
- void addItems(const LayoutItems &items);
- void addRow(const LayoutItems &items);
-
- bool isForm() const;
-
- struct Slice;
- QList<Slice> stack;
-};
-
-class QTCREATOR_UTILS_EXPORT LayoutExtender : public LayoutBuilder
-{
-public:
- explicit LayoutExtender(QLayout *layout);
- ~LayoutExtender();
-};
-
} // Layouting
diff --git a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
index fb15eefdc0..d299b3eb77 100644
--- a/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
@@ -335,8 +335,8 @@ CMakeBuildSettingsWidget::CMakeBuildSettingsWidget(CMakeBuildSystem *bs) :
Column {
Form {
- buildDirAspect,
- bc->aspect<BuildTypeAspect>(),
+ buildDirAspect, br,
+ bc->aspect<BuildTypeAspect>(), br,
qmlDebugAspect
},
m_warningMessageLabel,
@@ -347,7 +347,7 @@ CMakeBuildSettingsWidget::CMakeBuildSettingsWidget(CMakeBuildSystem *bs) :
Column {
cmakeConfiguration,
Row {
- bc->aspect<InitialCMakeArgumentsAspect>(),
+ bc->aspect<InitialCMakeArgumentsAspect>(), br,
bc->aspect<AdditionalCMakeOptionsAspect>()
},
m_reconfigureButton,
@@ -665,17 +665,19 @@ void CMakeBuildSettingsWidget::kitCMakeConfiguration()
CMakeGeneratorKitAspect generatorAspect;
CMakeConfigurationKitAspect configurationKitAspect;
- auto layout = new QGridLayout(dialog);
-
+ Layouting::Grid grid;
KitAspectWidget *widget = kitAspect.createConfigWidget(m_buildSystem->kit());
widget->setParent(dialog);
- widget->addToLayoutWithLabel(layout->parentWidget());
+ widget->addToLayoutWithLabel(grid, dialog);
widget = generatorAspect.createConfigWidget(m_buildSystem->kit());
widget->setParent(dialog);
- widget->addToLayoutWithLabel(layout->parentWidget());
+ widget->addToLayoutWithLabel(grid, dialog);
widget = configurationKitAspect.createConfigWidget(m_buildSystem->kit());
widget->setParent(dialog);
- widget->addToLayoutWithLabel(layout->parentWidget());
+ widget->addToLayoutWithLabel(grid, dialog);
+ grid.attachTo(dialog);
+
+ auto layout = qobject_cast<QGridLayout *>(dialog->layout());
layout->setColumnStretch(1, 1);
diff --git a/src/plugins/cmakeprojectmanager/cmakekitinformation.cpp b/src/plugins/cmakeprojectmanager/cmakekitinformation.cpp
index 46222ed76a..064ed0d59b 100644
--- a/src/plugins/cmakeprojectmanager/cmakekitinformation.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakekitinformation.cpp
@@ -105,7 +105,7 @@ private:
// KitAspectWidget interface
void makeReadOnly() override { m_comboBox->setEnabled(false); }
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &builder) override
{
addMutableAction(m_comboBox);
builder.addItem(m_comboBox);
@@ -350,11 +350,11 @@ private:
// KitAspectWidget interface
void makeReadOnly() override { m_changeButton->setEnabled(false); }
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &parent) override
{
addMutableAction(m_label);
- builder.addItem(m_label);
- builder.addItem(m_changeButton);
+ parent.addItem(m_label);
+ parent.addItem(m_changeButton);
}
void refresh() override
@@ -892,11 +892,11 @@ public:
private:
// KitAspectWidget interface
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &parent) override
{
addMutableAction(m_summaryLabel);
- builder.addItem(m_summaryLabel);
- builder.addItem(m_manageButton);
+ parent.addItem(m_summaryLabel);
+ parent.addItem(m_manageButton);
}
void makeReadOnly() override
diff --git a/src/plugins/debugger/debuggeractions.h b/src/plugins/debugger/debuggeractions.h
index be11fd2be4..40fabfef1e 100644
--- a/src/plugins/debugger/debuggeractions.h
+++ b/src/plugins/debugger/debuggeractions.h
@@ -30,7 +30,7 @@ public:
void fromMap(const QVariantMap &map) override;
void toMap(QVariantMap &map) const override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QVariant volatileValue() const override;
void setVolatileValue(const QVariant &val) override;
diff --git a/src/plugins/debugger/debuggerkitinformation.cpp b/src/plugins/debugger/debuggerkitinformation.cpp
index 7002437fb2..b1ba6bf1d5 100644
--- a/src/plugins/debugger/debuggerkitinformation.cpp
+++ b/src/plugins/debugger/debuggerkitinformation.cpp
@@ -60,11 +60,11 @@ public:
}
private:
- void addToLayout(Layouting::LayoutBuilder &builder) override
+ void addToLayout(Layouting::LayoutItem &parent) override
{
addMutableAction(m_comboBox);
- builder.addItem(m_comboBox);
- builder.addItem(m_manageButton);
+ parent.addItem(m_comboBox);
+ parent.addItem(m_manageButton);
}
void makeReadOnly() override
diff --git a/src/plugins/debugger/debuggersourcepathmappingwidget.cpp b/src/plugins/debugger/debuggersourcepathmappingwidget.cpp
index d7abf7b12b..276d0c685f 100644
--- a/src/plugins/debugger/debuggersourcepathmappingwidget.cpp
+++ b/src/plugins/debugger/debuggersourcepathmappingwidget.cpp
@@ -491,12 +491,12 @@ void SourcePathMapAspect::toMap(QVariantMap &) const
QTC_CHECK(false);
}
-void SourcePathMapAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void SourcePathMapAspect::addToLayout(Layouting::LayoutItem &parent)
{
QTC_CHECK(!d->m_widget);
d->m_widget = createSubWidget<DebuggerSourcePathMappingWidget>();
d->m_widget->setSourcePathMap(value());
- builder.addItem(d->m_widget.data());
+ parent.addItem(d->m_widget.data());
}
QVariant SourcePathMapAspect::volatileValue() const
diff --git a/src/plugins/incredibuild/commandbuilderaspect.cpp b/src/plugins/incredibuild/commandbuilderaspect.cpp
index 6a16cabc6d..5cfbac953b 100644
--- a/src/plugins/incredibuild/commandbuilderaspect.cpp
+++ b/src/plugins/incredibuild/commandbuilderaspect.cpp
@@ -110,7 +110,7 @@ void CommandBuilderAspectPrivate::tryToMigrate()
}
}
-void CommandBuilderAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void CommandBuilderAspect::addToLayout(Layouting::LayoutItem &parent)
{
if (!d->commandBuilder) {
d->commandBuilder = new QComboBox;
@@ -151,9 +151,9 @@ void CommandBuilderAspect::addToLayout(Layouting::LayoutBuilder &builder)
if (!d->m_loadedFromMap)
d->tryToMigrate();
- builder.addRow({d->label.data(), d->commandBuilder.data()});
- builder.addRow({Tr::tr("Make command:"), d->makePathChooser.data()});
- builder.addRow({Tr::tr("Make arguments:"), d->makeArgumentsLineEdit.data()});
+ parent.addRow({d->label.data(), d->commandBuilder.data()});
+ parent.addRow({Tr::tr("Make command:"), d->makePathChooser.data()});
+ parent.addRow({Tr::tr("Make arguments:"), d->makeArgumentsLineEdit.data()});
updateGui();
}
diff --git a/src/plugins/incredibuild/commandbuilderaspect.h b/src/plugins/incredibuild/commandbuilderaspect.h
index c880fa7d52..6033e9036e 100644
--- a/src/plugins/incredibuild/commandbuilderaspect.h
+++ b/src/plugins/incredibuild/commandbuilderaspect.h
@@ -23,7 +23,7 @@ public:
QString fullCommandFlag(bool keepJobNum) const;
private:
- void addToLayout(Layouting::LayoutBuilder &builder) final;
+ void addToLayout(Layouting::LayoutItem &parent) final;
void fromMap(const QVariantMap &map) final;
void toMap(QVariantMap &map) const final;
diff --git a/src/plugins/ios/iosrunconfiguration.cpp b/src/plugins/ios/iosrunconfiguration.cpp
index 9a9acedb29..5c9170f2ba 100644
--- a/src/plugins/ios/iosrunconfiguration.cpp
+++ b/src/plugins/ios/iosrunconfiguration.cpp
@@ -324,14 +324,14 @@ IosDeviceTypeAspect::IosDeviceTypeAspect(IosRunConfiguration *runConfiguration)
this, &IosDeviceTypeAspect::deviceChanges);
}
-void IosDeviceTypeAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void IosDeviceTypeAspect::addToLayout(Layouting::LayoutItem &parent)
{
m_deviceTypeComboBox = new QComboBox;
m_deviceTypeComboBox->setModel(&m_deviceTypeModel);
m_deviceTypeLabel = new QLabel(Tr::tr("Device type:"));
- builder.addItems({m_deviceTypeLabel, m_deviceTypeComboBox});
+ parent.addItems({m_deviceTypeLabel, m_deviceTypeComboBox});
updateValues();
diff --git a/src/plugins/ios/iosrunconfiguration.h b/src/plugins/ios/iosrunconfiguration.h
index d348dd61ca..1ebe79efa5 100644
--- a/src/plugins/ios/iosrunconfiguration.h
+++ b/src/plugins/ios/iosrunconfiguration.h
@@ -27,7 +27,7 @@ public:
void fromMap(const QVariantMap &map) override;
void toMap(QVariantMap &map) const override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
IosDeviceType deviceType() const;
void setDeviceType(const IosDeviceType &deviceType);
diff --git a/src/plugins/mcusupport/mcukitinformation.cpp b/src/plugins/mcusupport/mcukitinformation.cpp
index 0b156e1ab4..2fd6f846e1 100644
--- a/src/plugins/mcusupport/mcukitinformation.cpp
+++ b/src/plugins/mcusupport/mcukitinformation.cpp
@@ -22,7 +22,7 @@ public:
void makeReadOnly() override {}
void refresh() override {}
- void addToLayout(Layouting::LayoutBuilder &) override {}
+ void addToLayout(Layouting::LayoutItem &) override {}
};
} // anonymous namespace
diff --git a/src/plugins/mesonprojectmanager/toolkitaspectwidget.h b/src/plugins/mesonprojectmanager/toolkitaspectwidget.h
index beb9440add..c327fb4e2b 100644
--- a/src/plugins/mesonprojectmanager/toolkitaspectwidget.h
+++ b/src/plugins/mesonprojectmanager/toolkitaspectwidget.h
@@ -36,11 +36,11 @@ private:
void makeReadOnly() override { m_toolsComboBox->setEnabled(false); }
- void addToLayout(Layouting::LayoutBuilder &builder) override
+ void addToLayout(Layouting::LayoutItem &parent) override
{
addMutableAction(m_toolsComboBox);
- builder.addItem(m_toolsComboBox);
- builder.addItem(m_manageButton);
+ parent.addItem(m_toolsComboBox);
+ parent.addItem(m_manageButton);
}
void refresh() override
diff --git a/src/plugins/projectexplorer/buildaspects.cpp b/src/plugins/projectexplorer/buildaspects.cpp
index 133cfb15b3..e4cbf6903b 100644
--- a/src/plugins/projectexplorer/buildaspects.cpp
+++ b/src/plugins/projectexplorer/buildaspects.cpp
@@ -107,12 +107,12 @@ void BuildDirectoryAspect::fromMap(const QVariantMap &map)
}
}
-void BuildDirectoryAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void BuildDirectoryAspect::addToLayout(Layouting::LayoutItem &parent)
{
- StringAspect::addToLayout(builder);
+ StringAspect::addToLayout(parent);
d->problemLabel = new InfoLabel({}, InfoLabel::Warning);
d->problemLabel->setElideMode(Qt::ElideNone);
- builder.addItems({{}, d->problemLabel.data()});
+ parent.addItems({{}, d->problemLabel.data()});
updateProblemLabel();
if (!d->sourceDir.isEmpty()) {
connect(this, &StringAspect::checkedChanged, this, [this] {
diff --git a/src/plugins/projectexplorer/buildaspects.h b/src/plugins/projectexplorer/buildaspects.h
index 968642f11f..96c6db9071 100644
--- a/src/plugins/projectexplorer/buildaspects.h
+++ b/src/plugins/projectexplorer/buildaspects.h
@@ -23,7 +23,7 @@ public:
bool isShadowBuild() const;
void setProblem(const QString &description);
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
static Utils::FilePath fixupDir(const Utils::FilePath &dir);
diff --git a/src/plugins/projectexplorer/buildconfiguration.cpp b/src/plugins/projectexplorer/buildconfiguration.cpp
index 772bd64610..70d5a348c1 100644
--- a/src/plugins/projectexplorer/buildconfiguration.cpp
+++ b/src/plugins/projectexplorer/buildconfiguration.cpp
@@ -324,8 +324,10 @@ NamedWidget *BuildConfiguration::createConfigWidget()
Layouting::Form form;
for (BaseAspect *aspect : aspects()) {
- if (aspect->isVisible())
+ if (aspect->isVisible()) {
form.addItem(aspect);
+ form.addItem(Layouting::br);
+ }
}
form.addItem(Layouting::noMargin);
form.attachTo(widget);
diff --git a/src/plugins/projectexplorer/buildpropertiessettings.cpp b/src/plugins/projectexplorer/buildpropertiessettings.cpp
index a9126551e3..36030fe60e 100644
--- a/src/plugins/projectexplorer/buildpropertiessettings.cpp
+++ b/src/plugins/projectexplorer/buildpropertiessettings.cpp
@@ -90,9 +90,9 @@ BuildPropertiesSettingsPage::BuildPropertiesSettingsPage(BuildPropertiesSettings
Column {
Form {
- s.buildDirectoryTemplate,
- s.separateDebugInfo,
- s.qmlDebugging,
+ s.buildDirectoryTemplate, br,
+ s.separateDebugInfo, br,
+ s.qmlDebugging, br,
s.qtQuickCompiler
},
st
diff --git a/src/plugins/projectexplorer/kitinformation.cpp b/src/plugins/projectexplorer/kitinformation.cpp
index 52eae5f9b8..41cadfea1c 100644
--- a/src/plugins/projectexplorer/kitinformation.cpp
+++ b/src/plugins/projectexplorer/kitinformation.cpp
@@ -65,7 +65,7 @@ public:
private:
void makeReadOnly() override { m_chooser->setReadOnly(true); }
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &builder) override
{
addMutableAction(m_chooser);
builder.addItem(Layouting::Span(2, m_chooser));
@@ -231,7 +231,7 @@ public:
}
private:
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &builder) override
{
addMutableAction(m_mainWidget);
builder.addItem(m_mainWidget);
@@ -760,7 +760,7 @@ public:
~DeviceTypeKitAspectWidget() override { delete m_comboBox; }
private:
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &builder) override
{
addMutableAction(m_comboBox);
builder.addItem(m_comboBox);
@@ -896,7 +896,7 @@ public:
}
private:
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &builder) override
{
addMutableAction(m_comboBox);
builder.addItem(m_comboBox);
@@ -1156,7 +1156,7 @@ public:
}
private:
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &builder) override
{
addMutableAction(m_comboBox);
builder.addItem(m_comboBox);
@@ -1387,7 +1387,7 @@ public:
}
private:
- void addToLayout(LayoutBuilder &builder) override
+ void addToLayout(LayoutItem &builder) override
{
addMutableAction(m_mainWidget);
builder.addItem(m_mainWidget);
diff --git a/src/plugins/projectexplorer/kitmanager.cpp b/src/plugins/projectexplorer/kitmanager.cpp
index b2c773b55c..86a3b533c1 100644
--- a/src/plugins/projectexplorer/kitmanager.cpp
+++ b/src/plugins/projectexplorer/kitmanager.cpp
@@ -747,7 +747,7 @@ KitAspectWidget::~KitAspectWidget()
delete m_mutableAction;
}
-void KitAspectWidget::addToLayoutWithLabel(QWidget *parent)
+void KitAspectWidget::addToLayoutWithLabel(Layouting::LayoutItem &parentItem, QWidget *parent)
{
QTC_ASSERT(parent, return);
auto label = createSubWidget<QLabel>(m_kitInformation->displayName() + ':');
@@ -756,9 +756,9 @@ void KitAspectWidget::addToLayoutWithLabel(QWidget *parent)
emit labelLinkActivated(link);
});
- Layouting::LayoutExtender builder(parent->layout());
- builder.addItems({label, Layouting::br});
- addToLayout(builder);
+ parentItem.addItem(label);
+ addToLayout(parentItem);
+ parentItem.addItem(Layouting::br);
}
void KitAspectWidget::addMutableAction(QWidget *child)
diff --git a/src/plugins/projectexplorer/kitmanager.h b/src/plugins/projectexplorer/kitmanager.h
index a494fde323..f25f83ca7f 100644
--- a/src/plugins/projectexplorer/kitmanager.h
+++ b/src/plugins/projectexplorer/kitmanager.h
@@ -117,7 +117,7 @@ public:
virtual void makeReadOnly() = 0;
virtual void refresh() = 0;
- void addToLayoutWithLabel(QWidget *parent);
+ void addToLayoutWithLabel(Layouting::LayoutItem &parentItem, QWidget *parent);
static QString msgManage();
diff --git a/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp b/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp
index c1f8a3ed79..822844f57d 100644
--- a/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp
+++ b/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp
@@ -23,6 +23,7 @@
#include <QRegularExpression>
#include <QRegularExpressionValidator>
#include <QFileDialog>
+#include <QGridLayout>
#include <QLabel>
#include <QLineEdit>
#include <QMenu>
@@ -66,12 +67,13 @@ KitManagerConfigWidget::KitManagerConfigWidget(Kit *k, bool &isDefaultKit, bool
this, &KitManagerConfigWidget::setFileSystemFriendlyName);
using namespace Layouting;
- Grid {
+ Grid page {
withFormAlignment,
+ columnStretch(1, 2),
label, m_nameEdit, m_iconButton, br,
- fsLabel, m_fileSystemFriendlyNameLineEdit,
+ fsLabel, m_fileSystemFriendlyNameLineEdit, br,
noMargin
- }.attachTo(this);
+ };
m_iconButton->setToolTip(Tr::tr("Kit icon."));
auto setIconAction = new QAction(Tr::tr("Select Icon..."), this);
@@ -101,7 +103,9 @@ KitManagerConfigWidget::KitManagerConfigWidget(Kit *k, bool &isDefaultKit, bool
chooser->addMacroExpanderProvider([this] { return m_modifiedKit->macroExpander(); });
for (KitAspect *aspect : KitManager::kitAspects())
- addAspectToWorkingCopy(aspect);
+ addAspectToWorkingCopy(page, aspect);
+
+ page.attachTo(this);
updateVisibility();
@@ -191,14 +195,14 @@ QString KitManagerConfigWidget::validityMessage() const
return m_modifiedKit->toHtml(tmp);
}
-void KitManagerConfigWidget::addAspectToWorkingCopy(KitAspect *aspect)
+void KitManagerConfigWidget::addAspectToWorkingCopy(Layouting::LayoutItem &parent, KitAspect *aspect)
{
QTC_ASSERT(aspect, return);
KitAspectWidget *widget = aspect->createConfigWidget(workingCopy());
QTC_ASSERT(widget, return);
QTC_ASSERT(!m_widgets.contains(widget), return);
- widget->addToLayoutWithLabel(this);
+ widget->addToLayoutWithLabel(parent, this);
m_widgets.append(widget);
connect(widget->mutableAction(), &QAction::toggled,
diff --git a/src/plugins/projectexplorer/kitmanagerconfigwidget.h b/src/plugins/projectexplorer/kitmanagerconfigwidget.h
index bd4415ed48..94218c5de8 100644
--- a/src/plugins/projectexplorer/kitmanagerconfigwidget.h
+++ b/src/plugins/projectexplorer/kitmanagerconfigwidget.h
@@ -35,7 +35,7 @@ public:
void discard();
bool isDirty() const;
QString validityMessage() const;
- void addAspectToWorkingCopy(KitAspect *aspect);
+ void addAspectToWorkingCopy(Layouting::LayoutItem &parent, KitAspect *aspect);
void makeStickySubWidgetsReadOnly();
Kit *workingCopy() const;
diff --git a/src/plugins/projectexplorer/miniprojecttargetselector.cpp b/src/plugins/projectexplorer/miniprojecttargetselector.cpp
index 5ab5f109ff..3da81e6154 100644
--- a/src/plugins/projectexplorer/miniprojecttargetselector.cpp
+++ b/src/plugins/projectexplorer/miniprojecttargetselector.cpp
@@ -551,7 +551,7 @@ int SelectorView::padding()
/////////
// KitAreaWidget
/////////
-void doLayout(KitAspectWidget *widget, Layouting::LayoutBuilder &builder)
+void doLayout(KitAspectWidget *widget, Layouting::LayoutItem &builder)
{
widget->addToLayout(builder);
}
diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp
index 43e01576e2..d05c23eaf5 100644
--- a/src/plugins/projectexplorer/runconfiguration.cpp
+++ b/src/plugins/projectexplorer/runconfiguration.cpp
@@ -218,8 +218,10 @@ QWidget *RunConfiguration::createConfigurationWidget()
{
Layouting::Form form;
for (BaseAspect *aspect : std::as_const(m_aspects)) {
- if (aspect->isVisible())
+ if (aspect->isVisible()) {
form.addItem(aspect);
+ form.addItem(Layouting::br);
+ }
}
form.addItem(Layouting::noMargin);
auto widget = form.emerge();
diff --git a/src/plugins/projectexplorer/runconfigurationaspects.cpp b/src/plugins/projectexplorer/runconfigurationaspects.cpp
index face7d2ce4..d90fbc7272 100644
--- a/src/plugins/projectexplorer/runconfigurationaspects.cpp
+++ b/src/plugins/projectexplorer/runconfigurationaspects.cpp
@@ -62,12 +62,12 @@ TerminalAspect::TerminalAspect()
/*!
\reimp
*/
-void TerminalAspect::addToLayout(LayoutBuilder &builder)
+void TerminalAspect::addToLayout(LayoutItem &parent)
{
QTC_CHECK(!m_checkBox);
m_checkBox = new QCheckBox(Tr::tr("Run in terminal"));
m_checkBox->setChecked(m_useTerminal);
- builder.addItems({{}, m_checkBox.data()});
+ parent.addItems({{}, m_checkBox.data()});
connect(m_checkBox.data(), &QAbstractButton::clicked, this, [this] {
m_userSet = true;
m_useTerminal = m_checkBox->isChecked();
@@ -163,7 +163,7 @@ WorkingDirectoryAspect::WorkingDirectoryAspect(const MacroExpander *expander,
/*!
\reimp
*/
-void WorkingDirectoryAspect::addToLayout(LayoutBuilder &builder)
+void WorkingDirectoryAspect::addToLayout(LayoutItem &builder)
{
QTC_CHECK(!m_chooser);
m_chooser = new PathChooser;
@@ -435,7 +435,7 @@ QWidget *ArgumentsAspect::setupChooser()
/*!
\reimp
*/
-void ArgumentsAspect::addToLayout(LayoutBuilder &builder)
+void ArgumentsAspect::addToLayout(LayoutItem &builder)
{
QTC_CHECK(!m_chooser && !m_multiLineChooser && !m_multiLineButton);
@@ -632,7 +632,7 @@ FilePath ExecutableAspect::executable() const
/*!
\reimp
*/
-void ExecutableAspect::addToLayout(LayoutBuilder &builder)
+void ExecutableAspect::addToLayout(LayoutItem &builder)
{
builder.addItem(m_executable);
if (m_alternativeExecutable)
@@ -830,7 +830,7 @@ void InterpreterAspect::toMap(QVariantMap &map) const
saveToMap(map, m_currentId, QString(), settingsKey());
}
-void InterpreterAspect::addToLayout(LayoutBuilder &builder)
+void InterpreterAspect::addToLayout(LayoutItem &builder)
{
if (QTC_GUARD(m_comboBox.isNull()))
m_comboBox = new QComboBox;
diff --git a/src/plugins/projectexplorer/runconfigurationaspects.h b/src/plugins/projectexplorer/runconfigurationaspects.h
index 0a7d4b54fb..9fc7364772 100644
--- a/src/plugins/projectexplorer/runconfigurationaspects.h
+++ b/src/plugins/projectexplorer/runconfigurationaspects.h
@@ -29,7 +29,7 @@ class PROJECTEXPLORER_EXPORT TerminalAspect : public Utils::BaseAspect
public:
TerminalAspect();
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
bool useTerminal() const;
void setUseTerminalHint(bool useTerminal);
@@ -62,7 +62,7 @@ public:
explicit WorkingDirectoryAspect(const Utils::MacroExpander *expander,
EnvironmentAspect *envAspect);
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
Utils::FilePath workingDirectory() const;
Utils::FilePath defaultWorkingDirectory() const;
@@ -91,7 +91,7 @@ class PROJECTEXPLORER_EXPORT ArgumentsAspect : public Utils::BaseAspect
public:
explicit ArgumentsAspect(const Utils::MacroExpander *macroExpander);
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QString arguments() const;
QString unexpandedArguments() const;
@@ -163,7 +163,7 @@ public:
void setSettingsKey(const QString &key);
void makeOverridable(const QString &overridingKey, const QString &useOverridableKey);
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
void setLabelText(const QString &labelText);
void setPlaceHolderText(const QString &placeHolderText);
void setHistoryCompleter(const QString &historyCompleterKey);
@@ -235,7 +235,7 @@ public:
void fromMap(const QVariantMap &) override;
void toMap(QVariantMap &) const override;
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
struct Data : Utils::BaseAspect::Data { Interpreter interpreter; };
diff --git a/src/plugins/qbsprojectmanager/qbsbuildstep.cpp b/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
index da5c6e70f6..102cb7e3ae 100644
--- a/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
+++ b/src/plugins/qbsprojectmanager/qbsbuildstep.cpp
@@ -63,7 +63,7 @@ public:
ArchitecturesAspect();
void setKit(const ProjectExplorer::Kit *kit) { m_kit = kit; }
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
QStringList selectedArchitectures() const;
void setSelectedArchitectures(const QStringList& architectures);
bool isManagedByTarget() const { return m_isManagedByTarget; }
@@ -86,9 +86,9 @@ ArchitecturesAspect::ArchitecturesAspect()
setAllValues(m_abisToArchMap.keys());
}
-void ArchitecturesAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void ArchitecturesAspect::addToLayout(Layouting::LayoutItem &parent)
{
- MultiSelectionAspect::addToLayout(builder);
+ MultiSelectionAspect::addToLayout(parent);
const auto changeHandler = [this] {
const QtVersion *qtVersion = QtKitAspect::qtVersion(m_kit);
if (!qtVersion) {
diff --git a/src/plugins/qbsprojectmanager/qbskitinformation.cpp b/src/plugins/qbsprojectmanager/qbskitinformation.cpp
index 800765bb36..b9cb79231d 100644
--- a/src/plugins/qbsprojectmanager/qbskitinformation.cpp
+++ b/src/plugins/qbsprojectmanager/qbskitinformation.cpp
@@ -35,11 +35,11 @@ private:
void makeReadOnly() override { m_changeButton->setEnabled(false); }
void refresh() override { m_contentLabel->setText(QbsKitAspect::representation(kit())); }
- void addToLayout(Layouting::LayoutBuilder &builder) override
+ void addToLayout(Layouting::LayoutItem &parent) override
{
addMutableAction(m_contentLabel);
- builder.addItem(m_contentLabel);
- builder.addItem(m_changeButton);
+ parent.addItem(m_contentLabel);
+ parent.addItem(m_changeButton);
}
void changeProperties()
diff --git a/src/plugins/qmakeprojectmanager/qmakekitinformation.cpp b/src/plugins/qmakeprojectmanager/qmakekitinformation.cpp
index 06f2011244..c413758048 100644
--- a/src/plugins/qmakeprojectmanager/qmakekitinformation.cpp
+++ b/src/plugins/qmakeprojectmanager/qmakekitinformation.cpp
@@ -40,10 +40,10 @@ public:
~QmakeKitAspectWidget() override { delete m_lineEdit; }
private:
- void addToLayout(Layouting::LayoutBuilder &builder) override
+ void addToLayout(Layouting::LayoutItem &parent) override
{
addMutableAction(m_lineEdit);
- builder.addItem(m_lineEdit);
+ parent.addItem(m_lineEdit);
}
void makeReadOnly() override { m_lineEdit->setEnabled(false); }
diff --git a/src/plugins/qmlprojectmanager/qmlmainfileaspect.cpp b/src/plugins/qmlprojectmanager/qmlmainfileaspect.cpp
index 279b48ccb1..405e63965f 100644
--- a/src/plugins/qmlprojectmanager/qmlmainfileaspect.cpp
+++ b/src/plugins/qmlprojectmanager/qmlmainfileaspect.cpp
@@ -55,7 +55,7 @@ QmlMainFileAspect::~QmlMainFileAspect()
delete m_fileListCombo;
}
-void QmlMainFileAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void QmlMainFileAspect::addToLayout(Layouting::LayoutItem &parent)
{
QTC_ASSERT(!m_fileListCombo, delete m_fileListCombo);
m_fileListCombo = new QComboBox;
@@ -67,7 +67,7 @@ void QmlMainFileAspect::addToLayout(Layouting::LayoutBuilder &builder)
this, &QmlMainFileAspect::updateFileComboBox);
connect(m_fileListCombo, &QComboBox::activated, this, &QmlMainFileAspect::setMainScript);
- builder.addItems({Tr::tr("Main QML file:"), m_fileListCombo.data()});
+ parent.addItems({Tr::tr("Main QML file:"), m_fileListCombo.data()});
}
void QmlMainFileAspect::toMap(QVariantMap &map) const
diff --git a/src/plugins/qmlprojectmanager/qmlmainfileaspect.h b/src/plugins/qmlprojectmanager/qmlmainfileaspect.h
index 24ffcf94c6..3c75e4744a 100644
--- a/src/plugins/qmlprojectmanager/qmlmainfileaspect.h
+++ b/src/plugins/qmlprojectmanager/qmlmainfileaspect.h
@@ -42,7 +42,7 @@ public:
Utils::FilePath currentFile;
};
- void addToLayout(Layouting::LayoutBuilder &builder) final;
+ void addToLayout(Layouting::LayoutItem &parent) final;
void toMap(QVariantMap &map) const final;
void fromMap(const QVariantMap &map) final;
diff --git a/src/plugins/qtsupport/qtbuildaspects.cpp b/src/plugins/qtsupport/qtbuildaspects.cpp
index 95f2c8d432..210ea58ee5 100644
--- a/src/plugins/qtsupport/qtbuildaspects.cpp
+++ b/src/plugins/qtsupport/qtbuildaspects.cpp
@@ -30,13 +30,13 @@ QmlDebuggingAspect::QmlDebuggingAspect(BuildConfiguration *buildConfig)
setValue(ProjectExplorerPlugin::buildPropertiesSettings().qmlDebugging.value());
}
-void QmlDebuggingAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void QmlDebuggingAspect::addToLayout(Layouting::LayoutItem &parent)
{
- SelectionAspect::addToLayout(builder);
+ SelectionAspect::addToLayout(parent);
const auto warningLabel = createSubWidget<InfoLabel>(QString(), InfoLabel::Warning);
warningLabel->setElideMode(Qt::ElideNone);
warningLabel->setVisible(false);
- builder.addRow({{}, warningLabel});
+ parent.addRow({{}, warningLabel});
const auto changeHandler = [this, warningLabel] {
QString warningText;
QTC_ASSERT(m_buildConfig, return);
@@ -67,13 +67,13 @@ QtQuickCompilerAspect::QtQuickCompilerAspect(BuildConfiguration *buildConfig)
setValue(ProjectExplorerPlugin::buildPropertiesSettings().qtQuickCompiler.value());
}
-void QtQuickCompilerAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void QtQuickCompilerAspect::addToLayout(Layouting::LayoutItem &parent)
{
- SelectionAspect::addToLayout(builder);
+ SelectionAspect::addToLayout(parent);
const auto warningLabel = createSubWidget<InfoLabel>(QString(), InfoLabel::Warning);
warningLabel->setElideMode(Qt::ElideNone);
warningLabel->setVisible(false);
- builder.addRow({{}, warningLabel});
+ parent.addRow({{}, warningLabel});
const auto changeHandler = [this, warningLabel] {
QString warningText;
QTC_ASSERT(m_buildConfig, return);
diff --git a/src/plugins/qtsupport/qtbuildaspects.h b/src/plugins/qtsupport/qtbuildaspects.h
index 8ba97afdbb..e5e0b3332e 100644
--- a/src/plugins/qtsupport/qtbuildaspects.h
+++ b/src/plugins/qtsupport/qtbuildaspects.h
@@ -18,7 +18,7 @@ class QTSUPPORT_EXPORT QmlDebuggingAspect : public Utils::TriStateAspect
public:
explicit QmlDebuggingAspect(ProjectExplorer::BuildConfiguration *buildConfig);
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
private:
const ProjectExplorer::BuildConfiguration *m_buildConfig = nullptr;
@@ -32,7 +32,7 @@ public:
QtQuickCompilerAspect(ProjectExplorer::BuildConfiguration *buildConfig);
private:
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
const ProjectExplorer::BuildConfiguration *m_buildConfig = nullptr;
};
diff --git a/src/plugins/qtsupport/qtkitinformation.cpp b/src/plugins/qtsupport/qtkitinformation.cpp
index 2489ce5839..7fab3fbbcc 100644
--- a/src/plugins/qtsupport/qtkitinformation.cpp
+++ b/src/plugins/qtsupport/qtkitinformation.cpp
@@ -60,11 +60,11 @@ public:
private:
void makeReadOnly() final { m_combo->setEnabled(false); }
- void addToLayout(Layouting::LayoutBuilder &builder)
+ void addToLayout(Layouting::LayoutItem &parent)
{
addMutableAction(m_combo);
- builder.addItem(m_combo);
- builder.addItem(m_manageButton);
+ parent.addItem(m_combo);
+ parent.addItem(m_manageButton);
}
void refresh() final
diff --git a/src/plugins/valgrind/valgrindsettings.cpp b/src/plugins/valgrind/valgrindsettings.cpp
index fe546ea0cc..bdcf9971e6 100644
--- a/src/plugins/valgrind/valgrindsettings.cpp
+++ b/src/plugins/valgrind/valgrindsettings.cpp
@@ -128,7 +128,7 @@ void SuppressionAspect::setValue(const FilePaths &val)
BaseAspect::setValue(Utils::transform<QStringList>(val, &FilePath::toString));
}
-void SuppressionAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void SuppressionAspect::addToLayout(Layouting::LayoutItem &parent)
{
QTC_CHECK(!d->addEntry);
QTC_CHECK(!d->removeEntry);
@@ -150,12 +150,12 @@ void SuppressionAspect::addToLayout(Layouting::LayoutBuilder &builder)
connect(d->entryList->selectionModel(), &QItemSelectionModel::selectionChanged,
d, &SuppressionAspectPrivate::slotSuppressionSelectionChanged);
- builder.addItem(Column { Tr::tr("Suppression files:"), st });
+ parent.addItem(Column { Tr::tr("Suppression files:"), st });
Row group {
d->entryList.data(),
Column { d->addEntry.data(), d->removeEntry.data(), st }
};
- builder.addItem(Span { 2, group });
+ parent.addItem(Span { 2, group });
setVolatileValue(BaseAspect::value());
}
diff --git a/src/plugins/valgrind/valgrindsettings.h b/src/plugins/valgrind/valgrindsettings.h
index d2a4bed606..a8359804dd 100644
--- a/src/plugins/valgrind/valgrindsettings.h
+++ b/src/plugins/valgrind/valgrindsettings.h
@@ -23,7 +23,7 @@ public:
Utils::FilePaths value() const;
void setValue(const Utils::FilePaths &val);
- void addToLayout(Layouting::LayoutBuilder &builder) final;
+ void addToLayout(Layouting::LayoutItem &parent) final;
void fromMap(const QVariantMap &map) final;
void toMap(QVariantMap &map) const final;
diff --git a/src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp b/src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp
index c1eb243e49..abd6de8ed6 100644
--- a/src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp
+++ b/src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp
@@ -55,7 +55,7 @@ WebBrowserSelectionAspect::WebBrowserSelectionAspect(ProjectExplorer::Target *ta
addDataExtractor(this, &WebBrowserSelectionAspect::currentBrowser, &Data::currentBrowser);
}
-void WebBrowserSelectionAspect::addToLayout(Layouting::LayoutBuilder &builder)
+void WebBrowserSelectionAspect::addToLayout(Layouting::LayoutItem &parent)
{
QTC_CHECK(!m_webBrowserComboBox);
m_webBrowserComboBox = new QComboBox;
@@ -66,7 +66,7 @@ void WebBrowserSelectionAspect::addToLayout(Layouting::LayoutBuilder &builder)
m_currentBrowser = m_webBrowserComboBox->currentData().toString();
emit changed();
});
- builder.addItems({Tr::tr("Web browser:"), m_webBrowserComboBox});
+ parent.addItems({Tr::tr("Web browser:"), m_webBrowserComboBox});
}
void WebBrowserSelectionAspect::fromMap(const QVariantMap &map)
diff --git a/src/plugins/webassembly/webassemblyrunconfigurationaspects.h b/src/plugins/webassembly/webassemblyrunconfigurationaspects.h
index 8b0d512882..8a3cc24bdb 100644
--- a/src/plugins/webassembly/webassemblyrunconfigurationaspects.h
+++ b/src/plugins/webassembly/webassemblyrunconfigurationaspects.h
@@ -20,7 +20,7 @@ class WebBrowserSelectionAspect : public Utils::BaseAspect
public:
WebBrowserSelectionAspect(ProjectExplorer::Target *target);
- void addToLayout(Layouting::LayoutBuilder &builder) override;
+ void addToLayout(Layouting::LayoutItem &parent) override;
void fromMap(const QVariantMap &map) override;
void toMap(QVariantMap &map) const override;