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>
This commit is contained in:
hjk
2023-05-02 17:20:57 +02:00
parent 50084f6b0e
commit 99f7679564
40 changed files with 204 additions and 216 deletions

View File

@@ -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);