CppEditor: Use LayoutBuilder for InsertVirtualMethodsDialog

Change-Id: Ie9c03508f2d60f66b55591deb5fdfdf1be8e27df
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
Alessandro Portale
2024-07-09 19:12:28 +02:00
parent 317a985dd6
commit d9f48dab27

View File

@@ -20,6 +20,7 @@
#include <utils/algorithm.h> #include <utils/algorithm.h>
#include <utils/changeset.h> #include <utils/changeset.h>
#include <utils/layoutbuilder.h>
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
#include <utils/utilsicons.h> #include <utils/utilsicons.h>
@@ -29,7 +30,6 @@
#include <QCoreApplication> #include <QCoreApplication>
#include <QDialog> #include <QDialog>
#include <QDialogButtonBox> #include <QDialogButtonBox>
#include <QGroupBox>
#include <QLineEdit> #include <QLineEdit>
#include <QPointer> #include <QPointer>
#include <QQueue> #include <QQueue>
@@ -38,7 +38,6 @@
#include <QTextDocument> #include <QTextDocument>
#include <QToolButton> #include <QToolButton>
#include <QTreeView> #include <QTreeView>
#include <QVBoxLayout>
#ifdef WITH_TESTS #ifdef WITH_TESTS
#include "cppquickfix_test.h" #include "cppquickfix_test.h"
@@ -1004,26 +1003,18 @@ void InsertVirtualMethodsDialog::initGui()
return; return;
setWindowTitle(Tr::tr("Insert Virtual Functions")); setWindowTitle(Tr::tr("Insert Virtual Functions"));
auto globalVerticalLayout = new QVBoxLayout;
// View // View
QGroupBox *groupBoxView = new QGroupBox(Tr::tr("&Functions to insert:"), this);
auto groupBoxViewLayout = new QVBoxLayout(groupBoxView);
m_filter = new QLineEdit(this); m_filter = new QLineEdit(this);
m_filter->setClearButtonEnabled(true); m_filter->setClearButtonEnabled(true);
m_filter->setPlaceholderText(Tr::tr("Filter")); m_filter->setPlaceholderText(Tr::tr("Filter"));
groupBoxViewLayout->addWidget(m_filter);
m_view = new QTreeView(this); m_view = new QTreeView(this);
m_view->setEditTriggers(QAbstractItemView::NoEditTriggers); m_view->setEditTriggers(QAbstractItemView::NoEditTriggers);
m_view->setHeaderHidden(true); m_view->setHeaderHidden(true);
groupBoxViewLayout->addWidget(m_view);
m_hideReimplementedFunctions = m_hideReimplementedFunctions =
new QCheckBox(Tr::tr("&Hide reimplemented functions"), this); new QCheckBox(Tr::tr("&Hide reimplemented functions"), this);
groupBoxViewLayout->addWidget(m_hideReimplementedFunctions);
// Insertion options // Insertion options
QGroupBox *groupBoxImplementation = new QGroupBox(Tr::tr("&Insertion options:"), this);
auto groupBoxImplementationLayout = new QVBoxLayout(groupBoxImplementation);
m_insertMode = new QComboBox(this); m_insertMode = new QComboBox(this);
m_insertMode->addItem(Tr::tr("Insert only declarations"), ModeOnlyDeclarations); m_insertMode->addItem(Tr::tr("Insert only declarations"), ModeOnlyDeclarations);
m_insertMode->addItem(Tr::tr("Insert definitions inside class"), ModeInsideClass); m_insertMode->addItem(Tr::tr("Insert definitions inside class"), ModeInsideClass);
@@ -1051,30 +1042,37 @@ void InsertVirtualMethodsDialog::initGui()
m_clearUserAddedReplacementsButton = new QToolButton(this); m_clearUserAddedReplacementsButton = new QToolButton(this);
m_clearUserAddedReplacementsButton->setDefaultAction(clearUserAddedReplacements); m_clearUserAddedReplacementsButton->setDefaultAction(clearUserAddedReplacements);
auto overrideWidgetsLayout = new QHBoxLayout(this);
overrideWidgetsLayout->setSpacing(0);
overrideWidgetsLayout->setContentsMargins(0, 0, 0, 0);
overrideWidgetsLayout->addWidget(m_overrideReplacementCheckBox);
overrideWidgetsLayout->addWidget(m_overrideReplacementComboBox);
overrideWidgetsLayout->addWidget(m_clearUserAddedReplacementsButton);
QWidget *overrideWidgets = new QWidget(groupBoxImplementation);
overrideWidgets->setLayout(overrideWidgetsLayout);
groupBoxImplementationLayout->addWidget(m_insertMode);
groupBoxImplementationLayout->addWidget(m_virtualKeyword);
groupBoxImplementationLayout->addWidget(overrideWidgets);
groupBoxImplementationLayout->addStretch(99);
// Bottom button box // Bottom button box
m_buttons = new QDialogButtonBox(this); m_buttons = new QDialogButtonBox(this);
m_buttons->setStandardButtons(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); m_buttons->setStandardButtons(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
connect(m_buttons, &QDialogButtonBox::accepted, this, &QDialog::accept); connect(m_buttons, &QDialogButtonBox::accepted, this, &QDialog::accept);
connect(m_buttons, &QDialogButtonBox::rejected, this, &QDialog::reject); connect(m_buttons, &QDialogButtonBox::rejected, this, &QDialog::reject);
globalVerticalLayout->addWidget(groupBoxView, 9); using namespace Layouting;
globalVerticalLayout->addWidget(groupBoxImplementation, 0); Column {
globalVerticalLayout->addWidget(m_buttons, 0); Group {
setLayout(globalVerticalLayout); title(Tr::tr("&Functions to insert:")),
Column {
m_filter,
m_view,
m_hideReimplementedFunctions,
},
},
Group {
title(Tr::tr("&Insertion options:")),
Column {
m_insertMode,
m_virtualKeyword,
Row {
m_overrideReplacementCheckBox,
m_overrideReplacementComboBox,
m_clearUserAddedReplacementsButton,
spacing(0),
},
},
},
m_buttons,
}.attachTo(this);
connect(m_hideReimplementedFunctions, &QAbstractButton::toggled, connect(m_hideReimplementedFunctions, &QAbstractButton::toggled,
this, &InsertVirtualMethodsDialog::setHideReimplementedFunctions); this, &InsertVirtualMethodsDialog::setHideReimplementedFunctions);