From 520c36a91f020f5fcc301a50f7666260832891ea Mon Sep 17 00:00:00 2001 From: Julien Wintz Date: Wed, 25 Sep 2019 18:06:32 +0200 Subject: [PATCH] Extending menu framework --- src/dtkWidgets/dtkWidgetsMenuItem+custom.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/dtkWidgets/dtkWidgetsMenuItem+custom.cpp b/src/dtkWidgets/dtkWidgetsMenuItem+custom.cpp index 915c90c..66e9a2d 100644 --- a/src/dtkWidgets/dtkWidgetsMenuItem+custom.cpp +++ b/src/dtkWidgets/dtkWidgetsMenuItem+custom.cpp @@ -29,6 +29,7 @@ public: QWidget *widget = nullptr; QSizePolicy::Policy policy = QSizePolicy::Fixed; + bool show_title = true; }; @@ -54,12 +55,14 @@ dtkWidgetsMenuItemDIY::~dtkWidgetsMenuItemDIY(void) void dtkWidgetsMenuItemDIY::addLayout(QLayout *layout) { - d->source->layout()->addItem(layout); + if(QBoxLayout *l = dynamic_cast(d->source->layout())) + l->addLayout(layout); } void dtkWidgetsMenuItemDIY::addWidget(QWidget *widget) { - d->source->layout()->addWidget(widget); + if(QBoxLayout *l = dynamic_cast(d->source->layout())) + l->addWidget(widget); } QWidget *dtkWidgetsMenuItemDIY::widget(void) @@ -70,8 +73,10 @@ QWidget *dtkWidgetsMenuItemDIY::widget(void) } else { d->widget = new QWidget; - QFormLayout *layout = new QFormLayout; - layout->addRow(this->title(), d->source); + QVBoxLayout *layout = new QVBoxLayout; + layout->addWidget(new QLabel(this->title())); + layout->addWidget(d->source); + d->widget->setLayout(layout); } } -- 2.22.0