diff options
author | Tasuku Suzuki <tasuku.suzuki@qbc.io> | 2019-07-31 23:09:06 +0900 |
---|---|---|
committer | Tasuku Suzuki <tasuku.suzuki@qbc.io> | 2019-08-09 03:19:00 +0000 |
commit | c54db06a506e0507b9a1ea8188634e24dbcb9907 (patch) | |
tree | 74f3cb9a81066b5cbab6a23ef54b654e02fe46bf | |
parent | c6f00e1dd292020c15ea421981f283092b34a251 (diff) |
Improve layout of qrc editor
Replace the toplevel horizontal layout with vertical splitter
Change-Id: Ia02cb0fb23ff4cb9775ea68e70d7b6e0edfcd7f7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
-rw-r--r-- | src/plugins/coreplugin/minisplitter.cpp | 4 | ||||
-rw-r--r-- | src/plugins/coreplugin/minisplitter.h | 2 | ||||
-rw-r--r-- | src/plugins/resourceeditor/qrceditor/qrceditor.cpp | 25 | ||||
-rw-r--r-- | src/plugins/resourceeditor/qrceditor/qrceditor.h | 5 | ||||
-rw-r--r-- | src/plugins/resourceeditor/qrceditor/qrceditor.ui | 225 |
5 files changed, 115 insertions, 146 deletions
diff --git a/src/plugins/coreplugin/minisplitter.cpp b/src/plugins/coreplugin/minisplitter.cpp index 6bac3ffdfc..99de649d18 100644 --- a/src/plugins/coreplugin/minisplitter.cpp +++ b/src/plugins/coreplugin/minisplitter.cpp @@ -92,8 +92,8 @@ MiniSplitter::MiniSplitter(QWidget *parent, SplitterStyle style) setProperty("minisplitter", true); } -MiniSplitter::MiniSplitter(Qt::Orientation orientation, SplitterStyle style) - : QSplitter(orientation), +MiniSplitter::MiniSplitter(Qt::Orientation orientation, QWidget *parent, SplitterStyle style) + : QSplitter(orientation, parent), m_style(style) { setHandleWidth(1); diff --git a/src/plugins/coreplugin/minisplitter.h b/src/plugins/coreplugin/minisplitter.h index 712f8f366f..407e3f250b 100644 --- a/src/plugins/coreplugin/minisplitter.h +++ b/src/plugins/coreplugin/minisplitter.h @@ -42,7 +42,7 @@ public: enum SplitterStyle {Dark, Light}; MiniSplitter(QWidget *parent = nullptr, SplitterStyle style = Dark); - MiniSplitter(Qt::Orientation orientation, SplitterStyle style = Dark); + MiniSplitter(Qt::Orientation orientation, QWidget *parent = nullptr, SplitterStyle style = Dark); protected: QSplitterHandle *createHandle() override; diff --git a/src/plugins/resourceeditor/qrceditor/qrceditor.cpp b/src/plugins/resourceeditor/qrceditor/qrceditor.cpp index 3c0041be83..8384ab0a34 100644 --- a/src/plugins/resourceeditor/qrceditor/qrceditor.cpp +++ b/src/plugins/resourceeditor/qrceditor/qrceditor.cpp @@ -39,29 +39,21 @@ using namespace ResourceEditor; using namespace ResourceEditor::Internal; QrcEditor::QrcEditor(RelativeResourceModel *model, QWidget *parent) - : QWidget(parent), + : Core::MiniSplitter(Qt::Vertical, parent), m_treeview(new ResourceView(model, &m_history)) { - m_ui.setupUi(this); - auto layout = new QHBoxLayout; - layout->setSpacing(0); - layout->setMargin(0); - m_ui.centralWidget->setLayout(layout); + addWidget(m_treeview); + auto widget = new QWidget; + m_ui.setupUi(widget); + addWidget(widget); m_treeview->setFrameStyle(QFrame::NoFrame); - layout->addWidget(m_treeview); + connect(m_ui.addPrefixButton, &QAbstractButton::clicked, this, &QrcEditor::onAddPrefix); + connect(m_ui.addFilesButton, &QAbstractButton::clicked, this, &QrcEditor::onAddFiles); connect(m_ui.removeButton, &QAbstractButton::clicked, this, &QrcEditor::onRemove); connect(m_ui.removeNonExistingButton, &QPushButton::clicked, this, &QrcEditor::onRemoveNonExisting); - // 'Add' button with menu - auto addMenu = new QMenu(this); - m_addFileAction = addMenu->addAction(tr("Add Files")); - connect(m_addFileAction, &QAction::triggered, this, &QrcEditor::onAddFiles); - connect(addMenu->addAction(tr("Add Prefix")), &QAction::triggered, - this, &QrcEditor::onAddPrefix); - m_ui.addButton->setMenu(addMenu); - connect(m_treeview, &ResourceView::removeItem, this, &QrcEditor::onRemove); connect(m_treeview->selectionModel(), &QItemSelectionModel::currentChanged, this, &QrcEditor::updateCurrent); @@ -139,8 +131,7 @@ void QrcEditor::updateCurrent() m_currentLanguage = m_treeview->currentLanguage(); m_ui.languageText->setText(m_currentLanguage); - m_ui.addButton->setEnabled(true); - m_addFileAction->setEnabled(isValid); + m_ui.addFilesButton->setEnabled(isValid); m_ui.removeButton->setEnabled(isValid); } diff --git a/src/plugins/resourceeditor/qrceditor/qrceditor.h b/src/plugins/resourceeditor/qrceditor/qrceditor.h index e6f7c1cf8a..9273f8c6cf 100644 --- a/src/plugins/resourceeditor/qrceditor/qrceditor.h +++ b/src/plugins/resourceeditor/qrceditor/qrceditor.h @@ -28,13 +28,13 @@ #include "ui_qrceditor.h" #include "resourceview.h" -#include <QWidget> +#include <coreplugin/minisplitter.h> #include <QUndoStack> namespace ResourceEditor { namespace Internal { -class QrcEditor : public QWidget +class QrcEditor : public Core::MiniSplitter { Q_OBJECT @@ -79,7 +79,6 @@ private: Ui::QrcEditor m_ui; QUndoStack m_history; ResourceView *m_treeview; - QAction *m_addFileAction = nullptr; QString m_currentAlias; QString m_currentPrefix; diff --git a/src/plugins/resourceeditor/qrceditor/qrceditor.ui b/src/plugins/resourceeditor/qrceditor/qrceditor.ui index 5bac2230ce..98035b4382 100644 --- a/src/plugins/resourceeditor/qrceditor/qrceditor.ui +++ b/src/plugins/resourceeditor/qrceditor/qrceditor.ui @@ -6,14 +6,17 @@ <rect> <x>0</x> <y>0</y> - <width>491</width> - <height>381</height> + <width>521</width> + <height>180</height> </rect> </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> <layout class="QVBoxLayout" name="verticalLayout"> - <property name="spacing"> - <number>0</number> - </property> <property name="leftMargin"> <number>0</number> </property> @@ -27,138 +30,114 @@ <number>0</number> </property> <item> - <widget class="QWidget" name="centralWidget" native="true"> - <property name="sizePolicy"> - <sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - </widget> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QPushButton" name="addPrefixButton"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>Add Prefix</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="addFilesButton"> + <property name="text"> + <string>Add Files</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="removeButton"> + <property name="text"> + <string>Remove</string> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="removeNonExistingButton"> + <property name="text"> + <string>Remove Missing Files</string> + </property> + </widget> + </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> <item> - <widget class="Line" name="line"> - <property name="maximumSize"> - <size> - <width>16777215</width> - <height>1</height> - </size> - </property> - <property name="styleSheet"> - <string notr="true">color: #666666</string> + <widget class="QGroupBox" name="groupBox"> + <property name="title"> + <string>Properties</string> </property> - <property name="frameShadow"> - <enum>QFrame::Plain</enum> - </property> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - </widget> - </item> - <item> - <widget class="QWidget" name="widget" native="true"> - <layout class="QGridLayout" name="gridLayout"> - <property name="leftMargin"> - <number>6</number> - </property> - <property name="topMargin"> - <number>6</number> + <layout class="QFormLayout" name="formLayout"> + <property name="sizeConstraint"> + <enum>QLayout::SetMinAndMaxSize</enum> </property> - <property name="rightMargin"> - <number>6</number> + <property name="fieldGrowthPolicy"> + <enum>QFormLayout::ExpandingFieldsGrow</enum> </property> <item row="0" column="0"> - <layout class="QHBoxLayout" name="horizontalLayout"> - <item> - <widget class="QPushButton" name="addButton"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <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> - <widget class="QPushButton" name="removeNonExistingButton"> - <property name="text"> - <string>Remove Missing Files</string> - </property> - </widget> - </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 class="QLabel" name="aliasLabel"> + <property name="text"> + <string>Alias:</string> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QLineEdit" name="aliasText"/> </item> <item row="1" column="0"> - <widget class="QGroupBox" name="groupBox"> - <property name="title"> - <string>Properties</string> + <widget class="QLabel" name="prefixLabel"> + <property name="text"> + <string>Prefix:</string> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QLineEdit" name="prefixText"/> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="languageLabel"> + <property name="text"> + <string>Language:</string> </property> - <layout class="QFormLayout" name="formLayout"> - <property name="sizeConstraint"> - <enum>QLayout::SetMinAndMaxSize</enum> - </property> - <property name="fieldGrowthPolicy"> - <enum>QFormLayout::ExpandingFieldsGrow</enum> - </property> - <item row="0" column="0"> - <widget class="QLabel" name="aliasLabel"> - <property name="text"> - <string>Alias:</string> - </property> - </widget> - </item> - <item row="0" column="1"> - <widget class="QLineEdit" name="aliasText"/> - </item> - <item row="1" column="0"> - <widget class="QLabel" name="prefixLabel"> - <property name="text"> - <string>Prefix:</string> - </property> - </widget> - </item> - <item row="1" column="1"> - <widget class="QLineEdit" name="prefixText"/> - </item> - <item row="2" column="0"> - <widget class="QLabel" name="languageLabel"> - <property name="text"> - <string>Language:</string> - </property> - </widget> - </item> - <item row="2" column="1"> - <widget class="QLineEdit" name="languageText"/> - </item> - </layout> </widget> </item> + <item row="2" column="1"> + <widget class="QLineEdit" name="languageText"/> + </item> </layout> </widget> </item> + <item> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>0</width> + <height>0</height> + </size> + </property> + </spacer> + </item> </layout> </widget> <resources/> |