diff --git a/src/plugins/projectexplorer/CMakeLists.txt b/src/plugins/projectexplorer/CMakeLists.txt index 289174d0031..c271ac4f0f7 100644 --- a/src/plugins/projectexplorer/CMakeLists.txt +++ b/src/plugins/projectexplorer/CMakeLists.txt @@ -50,7 +50,7 @@ add_qtc_plugin(ProjectExplorer devicesupport/desktopdevicefactory.cpp devicesupport/desktopdevicefactory.h devicesupport/desktopprocesssignaloperation.cpp devicesupport/desktopprocesssignaloperation.h devicesupport/devicecheckbuildstep.cpp devicesupport/devicecheckbuildstep.h - devicesupport/devicefactoryselectiondialog.cpp devicesupport/devicefactoryselectiondialog.h devicesupport/devicefactoryselectiondialog.ui + devicesupport/devicefactoryselectiondialog.cpp devicesupport/devicefactoryselectiondialog.h devicesupport/devicefilesystemmodel.cpp devicesupport/devicefilesystemmodel.h devicesupport/devicemanager.cpp devicesupport/devicemanager.h devicesupport/devicemanagermodel.cpp devicesupport/devicemanagermodel.h diff --git a/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.cpp b/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.cpp index 7053fd292a7..197fb9762ae 100644 --- a/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.cpp +++ b/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.cpp @@ -2,48 +2,56 @@ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 #include "devicefactoryselectiondialog.h" -#include "ui_devicefactoryselectiondialog.h" #include "idevice.h" #include "idevicefactory.h" #include +#include +#include +#include #include namespace ProjectExplorer { namespace Internal { DeviceFactorySelectionDialog::DeviceFactorySelectionDialog(QWidget *parent) : - QDialog(parent), ui(new Ui::DeviceFactorySelectionDialog) + QDialog(parent) { - ui->setupUi(this); - ui->buttonBox->button(QDialogButtonBox::Ok)->setText(tr("Start Wizard")); + resize(420, 330); + m_listWidget = new QListWidget; + m_buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); + m_buttonBox->button(QDialogButtonBox::Ok)->setText(tr("Start Wizard")); + + using namespace Utils::Layouting; + Column { + tr("Available device types:"), + m_listWidget, + m_buttonBox, + }.attachTo(this); for (const IDeviceFactory * const factory : IDeviceFactory::allDeviceFactories()) { if (!factory->canCreate()) continue; QListWidgetItem *item = new QListWidgetItem(factory->displayName()); item->setData(Qt::UserRole, QVariant::fromValue(factory->deviceType())); - ui->listWidget->addItem(item); + m_listWidget->addItem(item); } - connect(ui->listWidget, &QListWidget::itemSelectionChanged, + connect(m_buttonBox, &QDialogButtonBox::accepted, this, &DeviceFactorySelectionDialog::accept); + connect(m_buttonBox, &QDialogButtonBox::rejected, this, &DeviceFactorySelectionDialog::reject); + connect(m_listWidget, &QListWidget::itemSelectionChanged, this, &DeviceFactorySelectionDialog::handleItemSelectionChanged); - connect(ui->listWidget, &QListWidget::itemDoubleClicked, + connect(m_listWidget, &QListWidget::itemDoubleClicked, this, &DeviceFactorySelectionDialog::handleItemDoubleClicked); handleItemSelectionChanged(); } -DeviceFactorySelectionDialog::~DeviceFactorySelectionDialog() -{ - delete ui; -} - void DeviceFactorySelectionDialog::handleItemSelectionChanged() { - ui->buttonBox->button(QDialogButtonBox::Ok) - ->setEnabled(!ui->listWidget->selectedItems().isEmpty()); + m_buttonBox->button(QDialogButtonBox::Ok) + ->setEnabled(!m_listWidget->selectedItems().isEmpty()); } void DeviceFactorySelectionDialog::handleItemDoubleClicked() @@ -53,7 +61,7 @@ void DeviceFactorySelectionDialog::handleItemDoubleClicked() Utils::Id DeviceFactorySelectionDialog::selectedId() const { - QList selected = ui->listWidget->selectedItems(); + QList selected = m_listWidget->selectedItems(); if (selected.isEmpty()) return Utils::Id(); return selected.at(0)->data(Qt::UserRole).value(); diff --git a/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.h b/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.h index b36097a3343..5430f6872c3 100644 --- a/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.h +++ b/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.h @@ -7,11 +7,15 @@ #include +QT_BEGIN_NAMESPACE +class QDialogButtonBox; +class QListWidget; +QT_END_NAMESPACE + namespace ProjectExplorer { class IDeviceFactory; namespace Internal { -namespace Ui { class DeviceFactorySelectionDialog; } class DeviceFactorySelectionDialog : public QDialog { @@ -19,13 +23,14 @@ class DeviceFactorySelectionDialog : public QDialog public: explicit DeviceFactorySelectionDialog(QWidget *parent = nullptr); - ~DeviceFactorySelectionDialog() override; Utils::Id selectedId() const; private: void handleItemSelectionChanged(); void handleItemDoubleClicked(); - Ui::DeviceFactorySelectionDialog *ui; + + QListWidget *m_listWidget; + QDialogButtonBox *m_buttonBox; }; } // namespace Internal diff --git a/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.ui b/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.ui deleted file mode 100644 index 48f26d30212..00000000000 --- a/src/plugins/projectexplorer/devicesupport/devicefactoryselectiondialog.ui +++ /dev/null @@ -1,87 +0,0 @@ - - - ProjectExplorer::Internal::DeviceFactorySelectionDialog - - - - 0 - 0 - 414 - 331 - - - - Device Configuration Wizard Selection - - - - - - Available device types: - - - - - - - QAbstractItemView::SelectRows - - - QListView::Adjust - - - true - - - false - - - - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - - - - buttonBox - accepted() - ProjectExplorer::Internal::DeviceFactorySelectionDialog - accept() - - - 248 - 254 - - - 157 - 274 - - - - - buttonBox - rejected() - ProjectExplorer::Internal::DeviceFactorySelectionDialog - reject() - - - 316 - 260 - - - 286 - 274 - - - - - diff --git a/src/plugins/projectexplorer/projectexplorer.qbs b/src/plugins/projectexplorer/projectexplorer.qbs index a84048b1776..0cbe00eefc5 100644 --- a/src/plugins/projectexplorer/projectexplorer.qbs +++ b/src/plugins/projectexplorer/projectexplorer.qbs @@ -210,7 +210,7 @@ Project { "desktopdevice.cpp", "desktopdevice.h", "desktopdevicefactory.cpp", "desktopdevicefactory.h", "devicecheckbuildstep.cpp", "devicecheckbuildstep.h", - "devicefactoryselectiondialog.cpp", "devicefactoryselectiondialog.h", "devicefactoryselectiondialog.ui", + "devicefactoryselectiondialog.cpp", "devicefactoryselectiondialog.h", "devicefilesystemmodel.cpp", "devicefilesystemmodel.h", "devicemanager.cpp", "devicemanager.h", "devicemanagermodel.cpp", "devicemanagermodel.h",