+ QWidget *widget;
+ QLabel *help_lbl = nullptr;
+
+ if (p->desc().isEmpty()) {
+ widget = p->get_widget(layout->parentWidget(), auto_commit);
+ } else {
+ QPushButton *help_btn = new QPushButton();
+ help_btn->setFlat(true);
+ help_btn->setIcon(QIcon(":/icons/help-browser.png"));
+ help_btn->setToolTip(p->desc());
+ connect(help_btn, SIGNAL(clicked(bool)),
+ this, SLOT(on_help_clicked()));
+
+ QHBoxLayout *layout = new QHBoxLayout();
+ layout->setContentsMargins(0, 0, 0, 0);
+ layout->addWidget(p->get_widget(layout->parentWidget(), auto_commit));
+ layout->addWidget(help_btn, 0, Qt::AlignRight);
+
+ widget = new QWidget();
+ widget->setLayout(layout);
+
+ help_lbl = new QLabel(p->desc());
+ help_lbl->setVisible(false);
+ help_lbl->setWordWrap(true);
+ help_labels_[help_btn] = help_lbl;
+ }
+
+ if (p->labeled_widget()) {