QtSupport: Streamline QtOptionsPage

Change-Id: I2af97fdc07eb065a7e55d84f72697452b70a294a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
hjk
2022-07-13 12:52:35 +02:00
parent e7f18d9d14
commit 60adfa5053
5 changed files with 147 additions and 305 deletions

View File

@@ -27,8 +27,7 @@ add_qtc_plugin(QtSupport
qtsupportplugin.cpp qtsupportplugin.h qtsupportplugin.cpp qtsupportplugin.h
qttestparser.cpp qttestparser.h qttestparser.cpp qttestparser.h
qtversionfactory.h qtversionfactory.h
qtversioninfo.ui qtversionmanager.cpp qtversionmanager.h
qtversionmanager.cpp qtversionmanager.h qtversionmanager.ui
qtversions.cpp qtversions.h qtversions.cpp qtversions.h
translationwizardpage.cpp translationwizardpage.h translationwizardpage.cpp translationwizardpage.h
uicgenerator.cpp uicgenerator.h uicgenerator.cpp uicgenerator.h

View File

@@ -26,8 +26,6 @@
#include "qtoptionspage.h" #include "qtoptionspage.h"
#include "qtconfigwidget.h" #include "qtconfigwidget.h"
#include "ui_qtversionmanager.h"
#include "ui_qtversioninfo.h"
#include "qtsupportconstants.h" #include "qtsupportconstants.h"
#include "qtversionmanager.h" #include "qtversionmanager.h"
#include "qtversionfactory.h" #include "qtversionfactory.h"
@@ -46,8 +44,10 @@
#include <utils/algorithm.h> #include <utils/algorithm.h>
#include <utils/buildablehelperlibrary.h> #include <utils/buildablehelperlibrary.h>
#include <utils/detailswidget.h>
#include <utils/filepath.h> #include <utils/filepath.h>
#include <utils/hostosinfo.h> #include <utils/hostosinfo.h>
#include <utils/layoutbuilder.h>
#include <utils/pathchooser.h> #include <utils/pathchooser.h>
#include <utils/qtcassert.h> #include <utils/qtcassert.h>
#include <utils/runextensions.h> #include <utils/runextensions.h>
@@ -55,12 +55,18 @@
#include <utils/utilsicons.h> #include <utils/utilsicons.h>
#include <utils/variablechooser.h> #include <utils/variablechooser.h>
#include <QComboBox>
#include <QDesktopServices> #include <QDesktopServices>
#include <QDialogButtonBox> #include <QDialogButtonBox>
#include <QDir> #include <QDir>
#include <QFormLayout>
#include <QHeaderView>
#include <QLabel>
#include <QMessageBox> #include <QMessageBox>
#include <QPushButton>
#include <QSortFilterProxyModel> #include <QSortFilterProxyModel>
#include <QTextBrowser> #include <QTextBrowser>
#include <QTreeView>
#include <utility> #include <utility>
@@ -190,17 +196,6 @@ private:
QtVersion *currentVersion() const; QtVersion *currentVersion() const;
QtVersionItem *currentItem() const; QtVersionItem *currentItem() const;
const QString m_specifyNameString;
Ui::QtVersionManager m_ui;
Ui::QtVersionInfo m_versionUi;
QTextBrowser *m_infoBrowser;
QIcon m_invalidVersionIcon;
QIcon m_warningVersionIcon;
QIcon m_validVersionIcon;
QtConfigWidget *m_configurationWidget;
private:
void updateQtVersions(const QList<int> &, const QList<int> &, const QList<int> &); void updateQtVersions(const QList<int> &, const QList<int> &, const QList<int> &);
void versionChanged(const QModelIndex &current, const QModelIndex &previous); void versionChanged(const QModelIndex &current, const QModelIndex &previous);
void addQtDir(); void addQtDir();
@@ -232,6 +227,28 @@ private:
QSortFilterProxyModel *m_filterModel; QSortFilterProxyModel *m_filterModel;
TreeItem *m_autoItem; TreeItem *m_autoItem;
TreeItem *m_manualItem; TreeItem *m_manualItem;
const QString m_specifyNameString;
QTreeView *m_qtdirList;
DetailsWidget *m_versionInfoWidget;
DetailsWidget *m_infoWidget;
QComboBox *m_documentationSetting;
QPushButton *m_delButton;
QPushButton *m_linkWithQtButton;
QPushButton *m_cleanUpButton;
QTextBrowser *m_infoBrowser;
QIcon m_invalidVersionIcon;
QIcon m_warningVersionIcon;
QIcon m_validVersionIcon;
QtConfigWidget *m_configurationWidget;
QLineEdit *m_nameEdit;
QLabel *m_qmakePath;
QPushButton *m_editPathPushButton;
QLabel *m_errorLabel;
QFormLayout *m_formLayout;
}; };
QtOptionsPageWidget::QtOptionsPageWidget() QtOptionsPageWidget::QtOptionsPageWidget()
@@ -241,11 +258,71 @@ QtOptionsPageWidget::QtOptionsPageWidget()
, m_warningVersionIcon(Utils::Icons::WARNING.icon()) , m_warningVersionIcon(Utils::Icons::WARNING.icon())
, m_configurationWidget(nullptr) , m_configurationWidget(nullptr)
{ {
auto versionInfoWidget = new QWidget; resize(446, 450);
m_versionUi.setupUi(versionInfoWidget);
m_versionUi.editPathPushButton->setText(PathChooser::browseButtonLabel());
m_ui.setupUi(this); m_qtdirList = new QTreeView(this);
m_qtdirList->setUniformRowHeights(true);
m_versionInfoWidget = new DetailsWidget(this);
m_infoWidget = new DetailsWidget(this);
m_documentationSetting = new QComboBox(this);
auto addButton = new QPushButton(tr("Add..."));
m_delButton = new QPushButton(tr("Remove"));
m_linkWithQtButton = new QPushButton(tr("Link with Qt..."));
m_cleanUpButton = new QPushButton(tr("Clean Up"));
m_nameEdit = new QLineEdit;
m_qmakePath = new QLabel;
m_qmakePath->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
m_qmakePath->setTextInteractionFlags(Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse);
m_editPathPushButton = new QPushButton(tr("Edit"));
m_editPathPushButton->setText(PathChooser::browseButtonLabel());
m_errorLabel = new QLabel;
using namespace Utils::Layouting;
auto versionInfoWidget = new QWidget;
Form {
new QLabel(tr("Name:")), m_nameEdit, Break(),
new QLabel(tr("qmake path:")),
Row {
m_qmakePath,
m_editPathPushButton,
},
Break(),
Span(2, m_errorLabel)
}.attachTo(versionInfoWidget, false);
m_formLayout = qobject_cast<QFormLayout*>(versionInfoWidget->layout());
Row {
Column {
m_qtdirList,
m_versionInfoWidget,
m_infoWidget,
Row {
new QLabel(tr("Register documentation:")),
m_documentationSetting,
Stretch()
}
},
Column {
addButton,
m_delButton,
Space(20),
m_linkWithQtButton,
m_cleanUpButton,
Stretch()
}
}.attachTo(this);
setupLinkWithQtButton(); setupLinkWithQtButton();
@@ -253,12 +330,12 @@ QtOptionsPageWidget::QtOptionsPageWidget()
m_infoBrowser->setTextInteractionFlags(Qt::TextBrowserInteraction); m_infoBrowser->setTextInteractionFlags(Qt::TextBrowserInteraction);
connect(m_infoBrowser, &QTextBrowser::anchorClicked, connect(m_infoBrowser, &QTextBrowser::anchorClicked,
this, &QtOptionsPageWidget::infoAnchorClicked); this, &QtOptionsPageWidget::infoAnchorClicked);
m_ui.infoWidget->setWidget(m_infoBrowser); m_infoWidget->setWidget(m_infoBrowser);
connect(m_ui.infoWidget, &DetailsWidget::expanded, connect(m_infoWidget, &DetailsWidget::expanded,
this, &QtOptionsPageWidget::setInfoWidgetVisibility); this, &QtOptionsPageWidget::setInfoWidgetVisibility);
m_ui.versionInfoWidget->setWidget(versionInfoWidget); m_versionInfoWidget->setWidget(versionInfoWidget);
m_ui.versionInfoWidget->setState(DetailsWidget::NoSummary); m_versionInfoWidget->setState(DetailsWidget::NoSummary);
m_autoItem = new StaticTreeItem({ProjectExplorer::Constants::msgAutoDetected()}, m_autoItem = new StaticTreeItem({ProjectExplorer::Constants::msgAutoDetected()},
{ProjectExplorer::Constants::msgAutoDetectedToolTip()}); {ProjectExplorer::Constants::msgAutoDetectedToolTip()});
@@ -273,49 +350,49 @@ QtOptionsPageWidget::QtOptionsPageWidget()
m_filterModel->setSourceModel(m_model); m_filterModel->setSourceModel(m_model);
m_filterModel->setSortCaseSensitivity(Qt::CaseInsensitive); m_filterModel->setSortCaseSensitivity(Qt::CaseInsensitive);
m_ui.qtdirList->setModel(m_filterModel); m_qtdirList->setModel(m_filterModel);
m_ui.qtdirList->setSortingEnabled(true); m_qtdirList->setSortingEnabled(true);
m_ui.qtdirList->setFirstColumnSpanned(0, QModelIndex(), true); m_qtdirList->setFirstColumnSpanned(0, QModelIndex(), true);
m_ui.qtdirList->setFirstColumnSpanned(1, QModelIndex(), true); m_qtdirList->setFirstColumnSpanned(1, QModelIndex(), true);
m_ui.qtdirList->header()->setStretchLastSection(false); m_qtdirList->header()->setStretchLastSection(false);
m_ui.qtdirList->header()->setSectionResizeMode(0, QHeaderView::ResizeToContents); m_qtdirList->header()->setSectionResizeMode(0, QHeaderView::ResizeToContents);
m_ui.qtdirList->header()->setSectionResizeMode(1, QHeaderView::Stretch); m_qtdirList->header()->setSectionResizeMode(1, QHeaderView::Stretch);
m_ui.qtdirList->setTextElideMode(Qt::ElideMiddle); m_qtdirList->setTextElideMode(Qt::ElideMiddle);
m_ui.qtdirList->sortByColumn(0, Qt::AscendingOrder); m_qtdirList->sortByColumn(0, Qt::AscendingOrder);
m_ui.documentationSetting->addItem(tr("Highest Version Only"), m_documentationSetting->addItem(tr("Highest Version Only"),
int(QtVersionManager::DocumentationSetting::HighestOnly)); int(QtVersionManager::DocumentationSetting::HighestOnly));
m_ui.documentationSetting->addItem(tr("All"), int(QtVersionManager::DocumentationSetting::All)); m_documentationSetting->addItem(tr("All"), int(QtVersionManager::DocumentationSetting::All));
m_ui.documentationSetting->addItem(tr("None"), m_documentationSetting->addItem(tr("None"),
int(QtVersionManager::DocumentationSetting::None)); int(QtVersionManager::DocumentationSetting::None));
const int selectedIndex = m_ui.documentationSetting->findData( const int selectedIndex = m_documentationSetting->findData(
int(QtVersionManager::documentationSetting())); int(QtVersionManager::documentationSetting()));
if (selectedIndex >= 0) if (selectedIndex >= 0)
m_ui.documentationSetting->setCurrentIndex(selectedIndex); m_documentationSetting->setCurrentIndex(selectedIndex);
QList<int> additions = transform(QtVersionManager::versions(), &QtVersion::uniqueId); QList<int> additions = transform(QtVersionManager::versions(), &QtVersion::uniqueId);
updateQtVersions(additions, QList<int>(), QList<int>()); updateQtVersions(additions, QList<int>(), QList<int>());
m_ui.qtdirList->expandAll(); m_qtdirList->expandAll();
connect(m_versionUi.nameEdit, &QLineEdit::textEdited, connect(m_nameEdit, &QLineEdit::textEdited,
this, &QtOptionsPageWidget::updateCurrentQtName); this, &QtOptionsPageWidget::updateCurrentQtName);
connect(m_versionUi.editPathPushButton, &QAbstractButton::clicked, connect(m_editPathPushButton, &QAbstractButton::clicked,
this, &QtOptionsPageWidget::editPath); this, &QtOptionsPageWidget::editPath);
connect(m_ui.addButton, &QAbstractButton::clicked, connect(addButton, &QAbstractButton::clicked,
this, &QtOptionsPageWidget::addQtDir); this, &QtOptionsPageWidget::addQtDir);
connect(m_ui.delButton, &QAbstractButton::clicked, connect(m_delButton, &QAbstractButton::clicked,
this, &QtOptionsPageWidget::removeQtDir); this, &QtOptionsPageWidget::removeQtDir);
connect(m_ui.qtdirList->selectionModel(), &QItemSelectionModel::currentChanged, connect(m_qtdirList->selectionModel(), &QItemSelectionModel::currentChanged,
this, &QtOptionsPageWidget::versionChanged); this, &QtOptionsPageWidget::versionChanged);
connect(m_ui.cleanUpButton, &QAbstractButton::clicked, connect(m_cleanUpButton, &QAbstractButton::clicked,
this, &QtOptionsPageWidget::cleanUpQtVersions); this, &QtOptionsPageWidget::cleanUpQtVersions);
userChangedCurrentVersion(); userChangedCurrentVersion();
updateCleanUpButton(); updateCleanUpButton();
@@ -327,7 +404,7 @@ QtOptionsPageWidget::QtOptionsPageWidget()
this, &QtOptionsPageWidget::toolChainsUpdated); this, &QtOptionsPageWidget::toolChainsUpdated);
auto chooser = new VariableChooser(this); auto chooser = new VariableChooser(this);
chooser->addSupportedWidget(m_versionUi.nameEdit, "Qt:Name"); chooser->addSupportedWidget(m_nameEdit, "Qt:Name");
chooser->addMacroExpanderProvider([this] { chooser->addMacroExpanderProvider([this] {
QtVersion *version = currentVersion(); QtVersion *version = currentVersion();
return version ? version->macroExpander() : nullptr; return version ? version->macroExpander() : nullptr;
@@ -344,7 +421,7 @@ QtVersion *QtOptionsPageWidget::currentVersion() const
QtVersionItem *QtOptionsPageWidget::currentItem() const QtVersionItem *QtOptionsPageWidget::currentItem() const
{ {
QModelIndex idx = m_ui.qtdirList->selectionModel()->currentIndex(); QModelIndex idx = m_qtdirList->selectionModel()->currentIndex();
QModelIndex sourceIdx = m_filterModel->mapToSource(idx); QModelIndex sourceIdx = m_filterModel->mapToSource(idx);
return m_model->itemForIndexAtLevel<2>(sourceIdx); return m_model->itemForIndexAtLevel<2>(sourceIdx);
} }
@@ -393,8 +470,8 @@ void QtOptionsPageWidget::toolChainsUpdated()
void QtOptionsPageWidget::setInfoWidgetVisibility() void QtOptionsPageWidget::setInfoWidgetVisibility()
{ {
m_ui.versionInfoWidget->setVisible(m_ui.infoWidget->state() == DetailsWidget::Collapsed); m_versionInfoWidget->setVisible(m_infoWidget->state() == DetailsWidget::Collapsed);
m_ui.infoWidget->setVisible(true); m_infoWidget->setVisible(true);
} }
void QtOptionsPageWidget::infoAnchorClicked(const QUrl &url) void QtOptionsPageWidget::infoAnchorClicked(const QUrl &url)
@@ -611,9 +688,9 @@ void QtOptionsPageWidget::addQtDir()
item->setIcon(version->isValid()? m_validVersionIcon : m_invalidVersionIcon); item->setIcon(version->isValid()? m_validVersionIcon : m_invalidVersionIcon);
m_manualItem->appendChild(item); m_manualItem->appendChild(item);
QModelIndex source = m_model->indexForItem(item); QModelIndex source = m_model->indexForItem(item);
m_ui.qtdirList->setCurrentIndex(m_filterModel->mapFromSource(source)); // should update the rest of the ui m_qtdirList->setCurrentIndex(m_filterModel->mapFromSource(source)); // should update the rest of the ui
m_versionUi.nameEdit->setFocus(); m_nameEdit->setFocus();
m_versionUi.nameEdit->selectAll(); m_nameEdit->selectAll();
} else { } else {
QMessageBox::warning(this, tr("Qmake Not Executable"), QMessageBox::warning(this, tr("Qmake Not Executable"),
tr("The qmake executable %1 could not be added: %2").arg(qtVersion.toUserOutput()).arg(error)); tr("The qmake executable %1 could not be added: %2").arg(qtVersion.toUserOutput()).arg(error));
@@ -684,7 +761,7 @@ void QtOptionsPageWidget::updateCleanUpButton()
} }
} }
m_ui.cleanUpButton->setEnabled(hasInvalidVersion); m_cleanUpButton->setEnabled(hasInvalidVersion);
} }
void QtOptionsPageWidget::userChangedCurrentVersion() void QtOptionsPageWidget::userChangedCurrentVersion()
@@ -699,13 +776,13 @@ void QtOptionsPageWidget::updateDescriptionLabel()
const QtVersion *version = item ? item->version() : nullptr; const QtVersion *version = item ? item->version() : nullptr;
const ValidityInfo info = validInformation(version); const ValidityInfo info = validInformation(version);
if (info.message.isEmpty()) { if (info.message.isEmpty()) {
m_versionUi.errorLabel->setVisible(false); m_errorLabel->setVisible(false);
} else { } else {
m_versionUi.errorLabel->setVisible(true); m_errorLabel->setVisible(true);
m_versionUi.errorLabel->setText(info.message); m_errorLabel->setText(info.message);
m_versionUi.errorLabel->setToolTip(info.toolTip); m_errorLabel->setToolTip(info.toolTip);
} }
m_ui.infoWidget->setSummaryText(info.description); m_infoWidget->setSummaryText(info.description);
if (item) if (item)
item->setIcon(info.icon); item->setIcon(info.icon);
@@ -714,8 +791,8 @@ void QtOptionsPageWidget::updateDescriptionLabel()
setInfoWidgetVisibility(); setInfoWidgetVisibility();
} else { } else {
m_infoBrowser->clear(); m_infoBrowser->clear();
m_ui.versionInfoWidget->setVisible(false); m_versionInfoWidget->setVisible(false);
m_ui.infoWidget->setVisible(false); m_infoWidget->setVisible(false);
} }
} }
@@ -732,25 +809,25 @@ void QtOptionsPageWidget::updateWidgets()
m_configurationWidget = nullptr; m_configurationWidget = nullptr;
QtVersion *version = currentVersion(); QtVersion *version = currentVersion();
if (version) { if (version) {
m_versionUi.nameEdit->setText(version->unexpandedDisplayName()); m_nameEdit->setText(version->unexpandedDisplayName());
m_versionUi.qmakePath->setText(version->qmakeFilePath().toUserOutput()); m_qmakePath->setText(version->qmakeFilePath().toUserOutput());
m_configurationWidget = version->createConfigurationWidget(); m_configurationWidget = version->createConfigurationWidget();
if (m_configurationWidget) { if (m_configurationWidget) {
m_versionUi.formLayout->addRow(m_configurationWidget); m_formLayout->addRow(m_configurationWidget);
m_configurationWidget->setEnabled(!version->isAutodetected()); m_configurationWidget->setEnabled(!version->isAutodetected());
connect(m_configurationWidget, &QtConfigWidget::changed, connect(m_configurationWidget, &QtConfigWidget::changed,
this, &QtOptionsPageWidget::updateDescriptionLabel); this, &QtOptionsPageWidget::updateDescriptionLabel);
} }
} else { } else {
m_versionUi.nameEdit->clear(); m_nameEdit->clear();
m_versionUi.qmakePath->clear(); m_qmakePath->clear();
} }
const bool enabled = version != nullptr; const bool enabled = version != nullptr;
const bool isAutodetected = enabled && version->isAutodetected(); const bool isAutodetected = enabled && version->isAutodetected();
m_ui.delButton->setEnabled(enabled && !isAutodetected); m_delButton->setEnabled(enabled && !isAutodetected);
m_versionUi.nameEdit->setEnabled(enabled); m_nameEdit->setEnabled(enabled);
m_versionUi.editPathPushButton->setEnabled(enabled && !isAutodetected); m_editPathPushButton->setEnabled(enabled && !isAutodetected);
} }
static QString settingsFile(const QString &baseDir) static QString settingsFile(const QString &baseDir)
@@ -822,8 +899,8 @@ void QtOptionsPageWidget::setupLinkWithQtButton()
{ {
QString tip; QString tip;
canLinkWithQt(&tip); canLinkWithQt(&tip);
m_ui.linkWithQtButton->setToolTip(tip); m_linkWithQtButton->setToolTip(tip);
connect(m_ui.linkWithQtButton, &QPushButton::clicked, this, &QtOptionsPage::linkWithQt); connect(m_linkWithQtButton, &QPushButton::clicked, this, &QtOptionsPage::linkWithQt);
} }
void QtOptionsPageWidget::updateCurrentQtName() void QtOptionsPageWidget::updateCurrentQtName()
@@ -833,7 +910,7 @@ void QtOptionsPageWidget::updateCurrentQtName()
return; return;
item->setChanged(true); item->setChanged(true);
item->version()->setUnexpandedDisplayName(m_versionUi.nameEdit->text()); item->version()->setUnexpandedDisplayName(m_nameEdit->text());
updateDescriptionLabel(); updateDescriptionLabel();
m_model->forItemsAtLevel<2>([this](QtVersionItem *item) { updateVersionItem(item); }); m_model->forItemsAtLevel<2>([this](QtVersionItem *item) { updateVersionItem(item); });
@@ -847,7 +924,7 @@ void QtOptionsPageWidget::apply()
&QtOptionsPageWidget::updateQtVersions); &QtOptionsPageWidget::updateQtVersions);
QtVersionManager::setDocumentationSetting( QtVersionManager::setDocumentationSetting(
QtVersionManager::DocumentationSetting(m_ui.documentationSetting->currentData().toInt())); QtVersionManager::DocumentationSetting(m_documentationSetting->currentData().toInt()));
QtVersions versions; QtVersions versions;
m_model->forItemsAtLevel<2>([&versions](QtVersionItem *item) { m_model->forItemsAtLevel<2>([&versions](QtVersionItem *item) {

View File

@@ -95,10 +95,8 @@ Project {
"qttestparser.cpp", "qttestparser.cpp",
"qttestparser.h", "qttestparser.h",
"qtversionfactory.h", "qtversionfactory.h",
"qtversioninfo.ui",
"qtversionmanager.cpp", "qtversionmanager.cpp",
"qtversionmanager.h", "qtversionmanager.h",
"qtversionmanager.ui",
"translationwizardpage.cpp", "translationwizardpage.cpp",
"translationwizardpage.h", "translationwizardpage.h",
"uicgenerator.cpp", "uicgenerator.cpp",

View File

@@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>QtSupport::Internal::QtVersionInfo</class>
<widget class="QWidget" name="QtSupport::Internal::QtVersionInfo">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>208</width>
<height>89</height>
</rect>
</property>
<layout class="QFormLayout" name="formLayout">
<property name="fieldGrowthPolicy">
<enum>QFormLayout::ExpandingFieldsGrow</enum>
</property>
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="versionNameLabel">
<property name="text">
<string>Name:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="nameEdit"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="pathLabel">
<property name="text">
<string>qmake path:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QLabel" name="qmakePath">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string/>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="editPathPushButton">
<property name="text">
<string>Edit</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0" colspan="2">
<widget class="QLabel" name="errorLabel">
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@@ -1,148 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>QtSupport::Internal::QtVersionManager</class>
<widget class="QWidget" name="QtSupport::Internal::QtVersionManager">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>446</width>
<height>450</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QTreeView" name="qtdirList">
<property name="uniformRowHeights">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="Utils::DetailsWidget" name="versionInfoWidget" native="true"/>
</item>
<item>
<widget class="Utils::DetailsWidget" name="infoWidget" native="true"/>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout2">
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Register documentation:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="documentationSetting"/>
</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>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout">
<item>
<widget class="QPushButton" name="addButton">
<property name="minimumSize">
<size>
<width>21</width>
<height>23</height>
</size>
</property>
<property name="text">
<string>Add...</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="delButton">
<property name="minimumSize">
<size>
<width>21</width>
<height>23</height>
</size>
</property>
<property name="text">
<string>Remove</string>
</property>
</widget>
</item>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>10</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="linkWithQtButton">
<property name="text">
<string>Link with Qt...</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="cleanUpButton">
<property name="text">
<string>Clean Up</string>
</property>
</widget>
</item>
<item>
<spacer name="spacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>77</width>
<height>37</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>Utils::DetailsWidget</class>
<extends>QWidget</extends>
<header location="global">utils/detailswidget.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<tabstops>
<tabstop>qtdirList</tabstop>
<tabstop>addButton</tabstop>
<tabstop>delButton</tabstop>
</tabstops>
<resources/>
<connections/>
</ui>