diff options
author | hjk <hjk@qt.io> | 2019-10-15 17:20:51 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2019-10-18 12:24:39 +0000 |
commit | 6eaf239777a3166f2504b0dff90bb4afcacba89f (patch) | |
tree | 32a2ffa2028e3ba487d62b380e40aab866c1e39f /src/plugins/webassembly | |
parent | 02350520c211bf5aa4f2804c1d19d28d710daa20 (diff) |
ProjectExplorer: Prepare more flexibility to aspect layouting
This hides the explicit use of a QFormLayout from the aspect
interface in a new LayoutBuilder class. That currently works
only on a QFormLayout in the back, but opens the possibility
to use e.g. a QGridLayout as use on the Kits and some option
pages.
The aspects now only announce sub-widgets they like to add,
actuall positioning is does by a new LayoutBuilder class,
also cramming several widgets in an hbox in the right column
of the QFormLayout is done there.
Change-Id: I2b788192c465f2ab82261849d34e514697c5a491
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/plugins/webassembly')
-rw-r--r-- | src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp | 7 | ||||
-rw-r--r-- | src/plugins/webassembly/webassemblyrunconfigurationaspects.h | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp b/src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp index aacbc67750..49f896ce09 100644 --- a/src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp +++ b/src/plugins/webassembly/webassemblyrunconfigurationaspects.cpp @@ -74,10 +74,10 @@ WebBrowserSelectionAspect::WebBrowserSelectionAspect(ProjectExplorer::Target *ta setSettingsKey("RunConfiguration.WebBrowser"); } -void WebBrowserSelectionAspect::addToConfigurationLayout(QFormLayout *layout) +void WebBrowserSelectionAspect::addToLayout(ProjectExplorer::LayoutBuilder &builder) { QTC_CHECK(!m_webBrowserComboBox); - m_webBrowserComboBox = new QComboBox(layout->parentWidget()); + m_webBrowserComboBox = new QComboBox; m_webBrowserComboBox->addItems(m_availableBrowsers); m_webBrowserComboBox->setCurrentText(m_currentBrowser); connect(m_webBrowserComboBox, &QComboBox::currentTextChanged, @@ -85,7 +85,8 @@ void WebBrowserSelectionAspect::addToConfigurationLayout(QFormLayout *layout) m_currentBrowser = selectedBrowser; emit changed(); }); - layout->addRow(tr("Web browser:"), m_webBrowserComboBox); + builder.addItem(tr("Web browser:")); + builder.addItem(m_webBrowserComboBox); } void WebBrowserSelectionAspect::fromMap(const QVariantMap &map) diff --git a/src/plugins/webassembly/webassemblyrunconfigurationaspects.h b/src/plugins/webassembly/webassemblyrunconfigurationaspects.h index 16b2d842ee..1f640f35a3 100644 --- a/src/plugins/webassembly/webassemblyrunconfigurationaspects.h +++ b/src/plugins/webassembly/webassemblyrunconfigurationaspects.h @@ -39,7 +39,7 @@ class WebBrowserSelectionAspect : public ProjectExplorer::ProjectConfigurationAs public: WebBrowserSelectionAspect(ProjectExplorer::Target *target); - void addToConfigurationLayout(QFormLayout *layout) override; + void addToLayout(ProjectExplorer::LayoutBuilder &builder) override; void fromMap(const QVariantMap &map) override; void toMap(QVariantMap &map) const override; |