forked from qt-creator/qt-creator
Improve layout of qrc editor
Replace the toplevel horizontal layout with vertical splitter Change-Id: Ia02cb0fb23ff4cb9775ea68e70d7b6e0edfcd7f7 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -92,8 +92,8 @@ MiniSplitter::MiniSplitter(QWidget *parent, SplitterStyle style)
|
|||||||
setProperty("minisplitter", true);
|
setProperty("minisplitter", true);
|
||||||
}
|
}
|
||||||
|
|
||||||
MiniSplitter::MiniSplitter(Qt::Orientation orientation, SplitterStyle style)
|
MiniSplitter::MiniSplitter(Qt::Orientation orientation, QWidget *parent, SplitterStyle style)
|
||||||
: QSplitter(orientation),
|
: QSplitter(orientation, parent),
|
||||||
m_style(style)
|
m_style(style)
|
||||||
{
|
{
|
||||||
setHandleWidth(1);
|
setHandleWidth(1);
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ public:
|
|||||||
enum SplitterStyle {Dark, Light};
|
enum SplitterStyle {Dark, Light};
|
||||||
|
|
||||||
MiniSplitter(QWidget *parent = nullptr, SplitterStyle style = Dark);
|
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:
|
protected:
|
||||||
QSplitterHandle *createHandle() override;
|
QSplitterHandle *createHandle() override;
|
||||||
|
|||||||
@@ -39,29 +39,21 @@ using namespace ResourceEditor;
|
|||||||
using namespace ResourceEditor::Internal;
|
using namespace ResourceEditor::Internal;
|
||||||
|
|
||||||
QrcEditor::QrcEditor(RelativeResourceModel *model, QWidget *parent)
|
QrcEditor::QrcEditor(RelativeResourceModel *model, QWidget *parent)
|
||||||
: QWidget(parent),
|
: Core::MiniSplitter(Qt::Vertical, parent),
|
||||||
m_treeview(new ResourceView(model, &m_history))
|
m_treeview(new ResourceView(model, &m_history))
|
||||||
{
|
{
|
||||||
m_ui.setupUi(this);
|
addWidget(m_treeview);
|
||||||
auto layout = new QHBoxLayout;
|
auto widget = new QWidget;
|
||||||
layout->setSpacing(0);
|
m_ui.setupUi(widget);
|
||||||
layout->setMargin(0);
|
addWidget(widget);
|
||||||
m_ui.centralWidget->setLayout(layout);
|
|
||||||
m_treeview->setFrameStyle(QFrame::NoFrame);
|
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.removeButton, &QAbstractButton::clicked, this, &QrcEditor::onRemove);
|
||||||
connect(m_ui.removeNonExistingButton, &QPushButton::clicked,
|
connect(m_ui.removeNonExistingButton, &QPushButton::clicked,
|
||||||
this, &QrcEditor::onRemoveNonExisting);
|
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, &ResourceView::removeItem, this, &QrcEditor::onRemove);
|
||||||
connect(m_treeview->selectionModel(), &QItemSelectionModel::currentChanged,
|
connect(m_treeview->selectionModel(), &QItemSelectionModel::currentChanged,
|
||||||
this, &QrcEditor::updateCurrent);
|
this, &QrcEditor::updateCurrent);
|
||||||
@@ -139,8 +131,7 @@ void QrcEditor::updateCurrent()
|
|||||||
m_currentLanguage = m_treeview->currentLanguage();
|
m_currentLanguage = m_treeview->currentLanguage();
|
||||||
m_ui.languageText->setText(m_currentLanguage);
|
m_ui.languageText->setText(m_currentLanguage);
|
||||||
|
|
||||||
m_ui.addButton->setEnabled(true);
|
m_ui.addFilesButton->setEnabled(isValid);
|
||||||
m_addFileAction->setEnabled(isValid);
|
|
||||||
m_ui.removeButton->setEnabled(isValid);
|
m_ui.removeButton->setEnabled(isValid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -28,13 +28,13 @@
|
|||||||
#include "ui_qrceditor.h"
|
#include "ui_qrceditor.h"
|
||||||
#include "resourceview.h"
|
#include "resourceview.h"
|
||||||
|
|
||||||
#include <QWidget>
|
#include <coreplugin/minisplitter.h>
|
||||||
#include <QUndoStack>
|
#include <QUndoStack>
|
||||||
|
|
||||||
namespace ResourceEditor {
|
namespace ResourceEditor {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
class QrcEditor : public QWidget
|
class QrcEditor : public Core::MiniSplitter
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
@@ -79,7 +79,6 @@ private:
|
|||||||
Ui::QrcEditor m_ui;
|
Ui::QrcEditor m_ui;
|
||||||
QUndoStack m_history;
|
QUndoStack m_history;
|
||||||
ResourceView *m_treeview;
|
ResourceView *m_treeview;
|
||||||
QAction *m_addFileAction = nullptr;
|
|
||||||
|
|
||||||
QString m_currentAlias;
|
QString m_currentAlias;
|
||||||
QString m_currentPrefix;
|
QString m_currentPrefix;
|
||||||
|
|||||||
@@ -6,14 +6,17 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>491</width>
|
<width>521</width>
|
||||||
<height>381</height>
|
<height>180</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
<property name="sizePolicy">
|
||||||
<property name="spacing">
|
<sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding">
|
||||||
<number>0</number>
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
@@ -27,50 +30,9 @@
|
|||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<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>
|
|
||||||
</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>
|
|
||||||
</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>
|
|
||||||
</property>
|
|
||||||
<property name="rightMargin">
|
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<item row="0" column="0">
|
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QPushButton" name="addButton">
|
<widget class="QPushButton" name="addPrefixButton">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
@@ -78,7 +40,14 @@
|
|||||||
</sizepolicy>
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Add</string>
|
<string>Add Prefix</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="addFilesButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>Add Files</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
@@ -111,7 +80,7 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
<item>
|
||||||
<widget class="QGroupBox" name="groupBox">
|
<widget class="QGroupBox" name="groupBox">
|
||||||
<property name="title">
|
<property name="title">
|
||||||
<string>Properties</string>
|
<string>Properties</string>
|
||||||
@@ -156,8 +125,18 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
<item>
|
||||||
</widget>
|
<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>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
|||||||
Reference in New Issue
Block a user