Qnx: Inline qnxsettingspage.ui

Change-Id: I628325154abd37e8a5803f44628def42acb533dd
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2022-07-11 08:51:13 +02:00
parent f330a7b1e9
commit 79f0fe4819
4 changed files with 95 additions and 217 deletions

View File

@@ -19,7 +19,6 @@ add_qtc_plugin(Qnx
qnxqtversion.cpp qnxqtversion.h
qnxrunconfiguration.cpp qnxrunconfiguration.h
qnxsettingspage.cpp qnxsettingspage.h
qnxsettingswidget.ui
qnxtoolchain.cpp qnxtoolchain.h
qnxutils.cpp qnxutils.h
qnxversionnumber.cpp qnxversionnumber.h

View File

@@ -37,7 +37,6 @@ QtcPlugin {
"qnxdeviceprocesssignaloperation.h",
"qnxdevicetester.cpp",
"qnxdevicetester.h",
"qnxsettingswidget.ui",
"qnxconfigurationmanager.cpp",
"qnxconfigurationmanager.h",
"qnxsettingspage.cpp",

View File

@@ -25,7 +25,6 @@
#include "qnxsettingspage.h"
#include "ui_qnxsettingswidget.h"
#include "qnxconfiguration.h"
#include "qnxconfigurationmanager.h"
@@ -35,7 +34,18 @@
#include <qtsupport/qtversionmanager.h>
#include <QApplication>
#include <QCheckBox>
#include <QComboBox>
#include <QGroupBox>
#include <QHBoxLayout>
#include <QLabel>
#include <QMessageBox>
#include <QPushButton>
#include <QSpacerItem>
#include <QVBoxLayout>
#include <QVariant>
#include <QWidget>
using namespace Utils;
@@ -78,7 +88,16 @@ public:
void setConfigState(QnxConfiguration *config, State state);
private:
Ui_QnxSettingsWidget m_ui;
QComboBox *m_configsCombo;
QCheckBox *m_generateKitsCheckBox;
QGroupBox *m_groupBox;
QLabel *m_configName;
QLabel *m_configVersion;
QLabel *m_configHost;
QLabel *m_configTarget;
QPushButton *m_addButton;
QPushButton *m_removeButton;
QnxConfigurationManager *m_qnxConfigManager;
QList<ConfigState> m_changedConfigs;
};
@@ -86,16 +105,68 @@ private:
QnxSettingsWidget::QnxSettingsWidget() :
m_qnxConfigManager(QnxConfigurationManager::instance())
{
m_ui.setupUi(this);
m_configsCombo = new QComboBox(this);
m_generateKitsCheckBox = new QCheckBox(this);
m_generateKitsCheckBox->setText(tr("Generate kits"));
m_groupBox = new QGroupBox(this);
m_groupBox->setMinimumSize(QSize(0, 0));
m_groupBox->setTitle(tr("Configuration Information:"));
m_configName = new QLabel(m_groupBox);
m_configVersion = new QLabel(m_groupBox);
m_configTarget = new QLabel(m_groupBox);
m_configHost = new QLabel(m_groupBox);
m_addButton = new QPushButton(tr("Add..."));
m_removeButton = new QPushButton(tr("Remove"));
auto verticalLayout_3 = new QVBoxLayout();
verticalLayout_3->addWidget(new QLabel(tr("Name:")));
verticalLayout_3->addWidget(new QLabel(tr("Version:")));
verticalLayout_3->addWidget(new QLabel(tr("Host:")));
verticalLayout_3->addWidget(new QLabel(tr("Target:")));
verticalLayout_3->addItem(new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding));
auto verticalLayout_4 = new QVBoxLayout();
verticalLayout_4->addWidget(m_configName);
verticalLayout_4->addWidget(m_configVersion);
verticalLayout_4->addWidget(m_configHost);
verticalLayout_4->addWidget(m_configTarget);
verticalLayout_4->addItem(new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding));
auto horizontalLayout_3 = new QHBoxLayout(m_groupBox);
horizontalLayout_3->addLayout(verticalLayout_3);
horizontalLayout_3->addLayout(verticalLayout_4);
horizontalLayout_3->addItem(new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum));
auto verticalLayout_2 = new QVBoxLayout();
verticalLayout_2->addWidget(m_configsCombo);
verticalLayout_2->addWidget(m_generateKitsCheckBox);
verticalLayout_2->addWidget(m_groupBox);
auto verticalLayout = new QVBoxLayout();
verticalLayout->setSizeConstraint(QLayout::SetMaximumSize);
verticalLayout->addWidget(m_addButton);
verticalLayout->addWidget(m_removeButton);
verticalLayout->addItem(new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding));
auto horizontalLayout = new QHBoxLayout();
horizontalLayout->addLayout(verticalLayout_2);
horizontalLayout->addLayout(verticalLayout);
auto horizontalLayout_2 = new QHBoxLayout(this);
horizontalLayout_2->addLayout(horizontalLayout);
populateConfigsCombo();
connect(m_ui.addButton, &QAbstractButton::clicked,
connect(m_addButton, &QAbstractButton::clicked,
this, &QnxSettingsWidget::addConfiguration);
connect(m_ui.removeButton, &QAbstractButton::clicked,
connect(m_removeButton, &QAbstractButton::clicked,
this, &QnxSettingsWidget::removeConfiguration);
connect(m_ui.configsCombo, QOverload<int>::of(&QComboBox::currentIndexChanged),
connect(m_configsCombo, QOverload<int>::of(&QComboBox::currentIndexChanged),
this, &QnxSettingsWidget::updateInformation);
connect(m_ui.generateKitsCheckBox, &QAbstractButton::toggled,
connect(m_generateKitsCheckBox, &QAbstractButton::toggled,
this, &QnxSettingsWidget::generateKits);
connect(m_qnxConfigManager, &QnxConfigurationManager::configurationsListUpdated,
this, &QnxSettingsWidget::populateConfigsCombo);
@@ -128,15 +199,15 @@ void QnxSettingsWidget::addConfiguration()
}
setConfigState(config, Added);
m_ui.configsCombo->addItem(config->displayName(),
m_configsCombo->addItem(config->displayName(),
QVariant::fromValue(static_cast<void*>(config)));
}
void QnxSettingsWidget::removeConfiguration()
{
const int currentIndex = m_ui.configsCombo->currentIndex();
const int currentIndex = m_configsCombo->currentIndex();
auto config = static_cast<QnxConfiguration*>(
m_ui.configsCombo->itemData(currentIndex).value<void*>());
m_configsCombo->itemData(currentIndex).value<void*>());
if (!config)
return;
@@ -149,15 +220,15 @@ void QnxSettingsWidget::removeConfiguration()
if (button == QMessageBox::Yes) {
setConfigState(config, Removed);
m_ui.configsCombo->removeItem(currentIndex);
m_configsCombo->removeItem(currentIndex);
}
}
void QnxSettingsWidget::generateKits(bool checked)
{
const int currentIndex = m_ui.configsCombo->currentIndex();
const int currentIndex = m_configsCombo->currentIndex();
auto config = static_cast<QnxConfiguration*>(
m_ui.configsCombo->itemData(currentIndex).value<void*>());
m_configsCombo->itemData(currentIndex).value<void*>());
if (!config)
return;
@@ -166,27 +237,27 @@ void QnxSettingsWidget::generateKits(bool checked)
void QnxSettingsWidget::updateInformation()
{
const int currentIndex = m_ui.configsCombo->currentIndex();
const int currentIndex = m_configsCombo->currentIndex();
auto config = static_cast<QnxConfiguration*>(
m_ui.configsCombo->itemData(currentIndex).value<void*>());
m_configsCombo->itemData(currentIndex).value<void*>());
// update the checkbox
m_ui.generateKitsCheckBox->setEnabled(config ? config->canCreateKits() : false);
m_ui.generateKitsCheckBox->setChecked(config ? config->isActive() : false);
m_generateKitsCheckBox->setEnabled(config ? config->canCreateKits() : false);
m_generateKitsCheckBox->setChecked(config ? config->isActive() : false);
// update information
m_ui.configName->setText(config ? config->displayName() : QString());
m_ui.configVersion->setText(config ? config->version().toString() : QString());
m_ui.configHost->setText(config ? config->qnxHost().toString() : QString());
m_ui.configTarget->setText(config ? config->qnxTarget().toString() : QString());
m_configName->setText(config ? config->displayName() : QString());
m_configVersion->setText(config ? config->version().toString() : QString());
m_configHost->setText(config ? config->qnxHost().toString() : QString());
m_configTarget->setText(config ? config->qnxTarget().toString() : QString());
}
void QnxSettingsWidget::populateConfigsCombo()
{
m_ui.configsCombo->clear();
m_configsCombo->clear();
foreach (QnxConfiguration *config, m_qnxConfigManager->configurations()) {
m_ui.configsCombo->addItem(config->displayName(),
m_configsCombo->addItem(config->displayName(),
QVariant::fromValue(static_cast<void*>(config)));
}

View File

@@ -1,191 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Qnx::Internal::QnxSettingsWidget</class>
<widget class="QWidget" name="Qnx::Internal::QnxSettingsWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>783</width>
<height>398</height>
</rect>
</property>
<property name="windowTitle">
<string/>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QComboBox" name="configsCombo"/>
</item>
<item>
<widget class="QCheckBox" name="generateKitsCheckBox">
<property name="text">
<string>Generate kits</string>
</property>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="title">
<string>Configuration Information:</string>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Name:</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_4">
<property name="text">
<string>Version:</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_6">
<property name="text">
<string>Host:</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_8">
<property name="text">
<string>Target:</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<widget class="QLabel" name="configName">
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="configVersion">
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="configHost">
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="configTarget">
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="sizeConstraint">
<enum>QLayout::SetMaximumSize</enum>
</property>
<item>
<widget class="QPushButton" name="addButton">
<property name="text">
<string>Add...</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="removeButton">
<property name="text">
<string>Remove</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>