From 367624fbf24ec2d383cb833d759156047ed40ba0 Mon Sep 17 00:00:00 2001 From: hjk Date: Tue, 25 Aug 2020 03:49:07 +0200 Subject: [PATCH] Nim: Inline nimbletaskwidget.ui A step towards NimbleTaskStep aspectification. Also remove the intermediate QFrame, QListWidget is-a QFrame itself. Change-Id: I1e37dc28ef2c8a89aff7c4baff0c1bd82ff3306f Reviewed-by: Christian Stenger --- src/plugins/nim/CMakeLists.txt | 2 +- src/plugins/nim/nim.pro | 1 - src/plugins/nim/nim.qbs | 2 +- .../nim/project/nimbletaskstepwidget.cpp | 34 +++++--- .../nim/project/nimbletaskstepwidget.h | 5 -- .../nim/project/nimbletaskstepwidget.ui | 82 ------------------- 6 files changed, 23 insertions(+), 103 deletions(-) delete mode 100644 src/plugins/nim/project/nimbletaskstepwidget.ui diff --git a/src/plugins/nim/CMakeLists.txt b/src/plugins/nim/CMakeLists.txt index 92f068f4255..b2a07a2dd59 100644 --- a/src/plugins/nim/CMakeLists.txt +++ b/src/plugins/nim/CMakeLists.txt @@ -13,7 +13,7 @@ add_qtc_plugin(Nim project/nimbleproject.h project/nimbleproject.cpp project/nimblerunconfiguration.h project/nimblerunconfiguration.cpp project/nimbletaskstep.h project/nimbletaskstep.cpp - project/nimbletaskstepwidget.h project/nimbletaskstepwidget.cpp project/nimbletaskstepwidget.ui + project/nimbletaskstepwidget.h project/nimbletaskstepwidget.cpp project/nimblebuildsystem.h project/nimblebuildsystem.cpp project/nimblebuildconfiguration.h project/nimblebuildconfiguration.cpp project/nimbuildsystem.cpp project/nimbuildsystem.h diff --git a/src/plugins/nim/nim.pro b/src/plugins/nim/nim.pro index 6c55322b345..3f44545c35f 100644 --- a/src/plugins/nim/nim.pro +++ b/src/plugins/nim/nim.pro @@ -85,7 +85,6 @@ SOURCES += \ suggest/server.cpp FORMS += \ - project/nimbletaskstepwidget.ui \ project/nimcompilerbuildstepconfigwidget.ui \ settings/nimcodestylepreferenceswidget.ui \ settings/nimtoolssettingswidget.ui diff --git a/src/plugins/nim/nim.qbs b/src/plugins/nim/nim.qbs index 5e5c75d995c..2f71b6ec05d 100644 --- a/src/plugins/nim/nim.qbs +++ b/src/plugins/nim/nim.qbs @@ -51,7 +51,7 @@ QtcPlugin { "nimbleproject.h", "nimbleproject.cpp", "nimblerunconfiguration.h", "nimblerunconfiguration.cpp", "nimbletaskstep.h", "nimbletaskstep.cpp", - "nimbletaskstepwidget.h", "nimbletaskstepwidget.cpp", "nimbletaskstepwidget.ui", + "nimbletaskstepwidget.h", "nimbletaskstepwidget.cpp", "nimblebuildsystem.h", "nimblebuildsystem.cpp", "nimblebuildconfiguration.h", "nimblebuildconfiguration.cpp", ] diff --git a/src/plugins/nim/project/nimbletaskstepwidget.cpp b/src/plugins/nim/project/nimbletaskstepwidget.cpp index 0b44cddc9a6..15a63f8f8b9 100644 --- a/src/plugins/nim/project/nimbletaskstepwidget.cpp +++ b/src/plugins/nim/project/nimbletaskstepwidget.cpp @@ -24,11 +24,14 @@ ****************************************************************************/ #include "nimbletaskstepwidget.h" -#include "ui_nimbletaskstepwidget.h" #include "nimbleproject.h" #include "nimbletaskstep.h" +#include +#include +#include + #include using namespace Nim; @@ -36,14 +39,25 @@ using namespace ProjectExplorer; NimbleTaskStepWidget::NimbleTaskStepWidget(NimbleTaskStep *bs) : BuildStepConfigWidget(bs) - , ui(new Ui::NimbleTaskStepWidget) { - ui->setupUi(this); + auto taskArgumentsLineEdit = new QLineEdit(this); + + auto taskList = new QListView(this); + taskList->setFrameShape(QFrame::StyledPanel); + taskList->setSelectionMode(QAbstractItemView::NoSelection); + taskList->setSelectionBehavior(QAbstractItemView::SelectRows); + + auto formLayout = new QFormLayout(this); + formLayout->setSizeConstraint(QLayout::SetDefaultConstraint); + formLayout->setFieldGrowthPolicy(QFormLayout::ExpandingFieldsGrow); + + formLayout->addRow(tr("Task arguments:"), taskArgumentsLineEdit); + formLayout->addRow(tr("Tasks:"), taskList); auto buildSystem = dynamic_cast(bs->buildSystem()); QTC_ASSERT(buildSystem, return); - ui->taskList->setModel(&m_tasks); + taskList->setModel(&m_tasks); QObject::connect(&m_tasks, &QAbstractItemModel::dataChanged, this, &NimbleTaskStepWidget::onDataChanged); updateTaskList(); @@ -54,11 +68,10 @@ NimbleTaskStepWidget::NimbleTaskStepWidget(NimbleTaskStep *bs) QObject::connect(bs, &NimbleTaskStep::taskNameChanged, this, &NimbleTaskStepWidget::recreateSummary); QObject::connect(this, &NimbleTaskStepWidget::selectedTaskChanged, bs, &NimbleTaskStep::setTaskName); - ui->taskArgumentsLineEdit->setText(bs->taskArgs()); - QObject::connect(bs, &NimbleTaskStep::taskArgsChanged, ui->taskArgumentsLineEdit, &QLineEdit::setText); + taskArgumentsLineEdit->setText(bs->taskArgs()); + QObject::connect(bs, &NimbleTaskStep::taskArgsChanged, taskArgumentsLineEdit, &QLineEdit::setText); QObject::connect(bs, &NimbleTaskStep::taskArgsChanged, this, &NimbleTaskStepWidget::recreateSummary); - QObject::connect(ui->taskArgumentsLineEdit, &QLineEdit::textChanged, bs ,&NimbleTaskStep::setTaskArgs); - + QObject::connect(taskArgumentsLineEdit, &QLineEdit::textChanged, bs ,&NimbleTaskStep::setTaskArgs); setSummaryUpdater([this, bs] { return QString("%1: nimble %2 %3") @@ -68,11 +81,6 @@ NimbleTaskStepWidget::NimbleTaskStepWidget(NimbleTaskStep *bs) }); } -NimbleTaskStepWidget::~NimbleTaskStepWidget() -{ - delete ui; -} - void NimbleTaskStepWidget::updateTaskList() { auto buildSystem = dynamic_cast(step()->buildSystem()); diff --git a/src/plugins/nim/project/nimbletaskstepwidget.h b/src/plugins/nim/project/nimbletaskstepwidget.h index a8eed556187..2b90d9dbd45 100644 --- a/src/plugins/nim/project/nimbletaskstepwidget.h +++ b/src/plugins/nim/project/nimbletaskstepwidget.h @@ -36,8 +36,6 @@ namespace Nim { class NimbleTaskStep; -namespace Ui { class NimbleTaskStepWidget; } - class NimbleTaskStepWidget : public ProjectExplorer::BuildStepConfigWidget { Q_OBJECT @@ -45,8 +43,6 @@ class NimbleTaskStepWidget : public ProjectExplorer::BuildStepConfigWidget public: explicit NimbleTaskStepWidget(NimbleTaskStep *buildStep); - ~NimbleTaskStepWidget(); - signals: void selectedTaskChanged(const QString &name); @@ -59,7 +55,6 @@ private: void uncheckedAllDifferentFrom(QStandardItem *item); - Ui::NimbleTaskStepWidget *ui; QStandardItemModel m_tasks; bool m_selecting = false; }; diff --git a/src/plugins/nim/project/nimbletaskstepwidget.ui b/src/plugins/nim/project/nimbletaskstepwidget.ui deleted file mode 100644 index 223c2ed4042..00000000000 --- a/src/plugins/nim/project/nimbletaskstepwidget.ui +++ /dev/null @@ -1,82 +0,0 @@ - - - Nim::NimbleTaskStepWidget - - - - 0 - 0 - 399 - 252 - - - - Form - - - - - - QLayout::SetDefaultConstraint - - - QFormLayout::ExpandingFieldsGrow - - - - - Task arguments: - - - - - - - - - - Tasks: - - - - - - - QFrame::StyledPanel - - - - 0 - - - 0 - - - 0 - - - 0 - - - - - QFrame::NoFrame - - - QAbstractItemView::NoSelection - - - QAbstractItemView::SelectRows - - - - - - - - - - - - -