diff --git a/src/plugins/coreplugin/dialogs/ioptionspage.cpp b/src/plugins/coreplugin/dialogs/ioptionspage.cpp index a19458c5fbb..a0e8fd99225 100644 --- a/src/plugins/coreplugin/dialogs/ioptionspage.cpp +++ b/src/plugins/coreplugin/dialogs/ioptionspage.cpp @@ -9,6 +9,7 @@ #include #include +#include #include #include @@ -204,6 +205,14 @@ void IOptionsPage::setLayouter(const std::function &layouter) m_layouter = layouter; } +void IOptionsPage::setLayout(const Layouting::LayoutItem &layout) +{ + using namespace Layouting; + m_layouter = [layout](QWidget *widget) { + Column { Row { Column { layout, st }, st } }.attachTo(widget); + }; +} + /*! \fn void Core::IOptionsPage::setId(Utils::Id id) diff --git a/src/plugins/coreplugin/dialogs/ioptionspage.h b/src/plugins/coreplugin/dialogs/ioptionspage.h index 31d8e399600..a6263de97df 100644 --- a/src/plugins/coreplugin/dialogs/ioptionspage.h +++ b/src/plugins/coreplugin/dialogs/ioptionspage.h @@ -16,6 +16,8 @@ #include +namespace Layouting { class LayoutItem; }; + namespace Utils { class AspectContainer; }; namespace Core { @@ -73,6 +75,7 @@ protected: void setCategoryIconPath(const Utils::FilePath &categoryIconPath); void setSettings(Utils::AspectContainer *settings); void setLayouter(const std::function &layouter); + void setLayout(const Layouting::LayoutItem &layout); // Used in FontSettingsPage. FIXME? QPointer m_widget; // Used in conjunction with m_widgetCreator