aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTasuku Suzuki <tasuku.suzuki@qbc.io>2019-07-31 23:09:06 +0900
committerTasuku Suzuki <tasuku.suzuki@qbc.io>2019-08-09 03:19:00 +0000
commitc54db06a506e0507b9a1ea8188634e24dbcb9907 (patch)
tree74f3cb9a81066b5cbab6a23ef54b654e02fe46bf
parentc6f00e1dd292020c15ea421981f283092b34a251 (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.cpp4
-rw-r--r--src/plugins/coreplugin/minisplitter.h2
-rw-r--r--src/plugins/resourceeditor/qrceditor/qrceditor.cpp25
-rw-r--r--src/plugins/resourceeditor/qrceditor/qrceditor.h5
-rw-r--r--src/plugins/resourceeditor/qrceditor/qrceditor.ui225
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/>