diff --git a/python/plugins/processing/modeler/ModelerDialog.py b/python/plugins/processing/modeler/ModelerDialog.py index f51d0b505892..394bf45b388c 100644 --- a/python/plugins/processing/modeler/ModelerDialog.py +++ b/python/plugins/processing/modeler/ModelerDialog.py @@ -32,7 +32,7 @@ from qgis.PyQt import uic from qgis.PyQt.QtCore import Qt, QRectF, QMimeData, QPoint, QPointF, QSettings, QByteArray, QSize, pyqtSignal -from qgis.PyQt.QtWidgets import QGraphicsView, QTreeWidget, QMessageBox, QFileDialog, QTreeWidgetItem, QSizePolicy +from qgis.PyQt.QtWidgets import QGraphicsView, QTreeWidget, QMessageBox, QFileDialog, QTreeWidgetItem, QSizePolicy, QMainWindow from qgis.PyQt.QtGui import QIcon, QImage, QPainter from qgis.core import QgsApplication from qgis.gui import QgsMessageBar @@ -67,6 +67,17 @@ def __init__(self, alg=None): self.bar.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Fixed) self.centralWidget().layout().insertWidget(0, self.bar) + try: + self.setDockOptions(self.dockOptions() | QMainWindow.GroupedDragging) + except: + pass + + self.addDockWidget(Qt.LeftDockWidgetArea, self.propertiesDock) + self.addDockWidget(Qt.LeftDockWidgetArea, self.inputsDock) + self.addDockWidget(Qt.LeftDockWidgetArea, self.algorithmsDock) + self.tabifyDockWidget(self.inputsDock, self.algorithmsDock) + self.inputsDock.raise_() + self.zoom = 1 self.setWindowFlags(Qt.WindowMinimizeButtonHint | @@ -76,9 +87,7 @@ def __init__(self, alg=None): settings = QSettings() self.restoreState(settings.value("/Processing/stateModeler", QByteArray())) self.restoreGeometry(settings.value("/Processing/geometryModeler", QByteArray())) - self.splitter.restoreState(settings.value("/Processing/stateModelerSplitter", QByteArray())) - self.tabWidget.setCurrentIndex(0) self.scene = ModelerScene(self) self.scene.setSceneRect(QRectF(0, 0, self.CANVAS_SIZE, self.CANVAS_SIZE)) @@ -231,7 +240,6 @@ def closeEvent(self, evt): settings = QSettings() settings.setValue("/Processing/stateModeler", self.saveState()) settings.setValue("/Processing/geometryModeler", self.saveGeometry()) - settings.setValue("/Processing/stateModelerSplitter", self.splitter.saveState()) if self.hasChanged: ret = QMessageBox.question( diff --git a/python/plugins/processing/ui/DlgModeler.ui b/python/plugins/processing/ui/DlgModeler.ui index 1fb8879c5133..425357937571 100644 --- a/python/plugins/processing/ui/DlgModeler.ui +++ b/python/plugins/processing/ui/DlgModeler.ui @@ -22,122 +22,272 @@ 6 - - - Qt::Horizontal + + + + + + + QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable + + + Model properties + + + 1 + + + + 0 + + + 0 + + + + + + 0 + 0 + - - - - 300 - 0 - - - - QTabWidget::South - - - 1 + + Qt::WheelFocus + + + QFrame::StyledPanel + + + QFrame::Plain + + + true + + + + + 0 + 0 + 287 + 500 + - - - Inputs - - - - 4 - - - 0 - - - - - true - - - false - - + + + 4 + + + 6 + + + + + 4 + + + - 1 + Name - - - - - - - - Algorithms - - - - 4 - - - 0 - - - - - Enter algorithm name to filter list - - - - - - - true - - - false - - + + + + + + Enter model name here + + + + + - 1 + Group + + + + + + + Enter group name here - - - - - + + + + + - - + + + + + + + QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable + + + Inputs + + + 1 + + + + 0 + + + 0 + + + + + + 0 + 0 + + + + Qt::WheelFocus + + + QFrame::StyledPanel + + + QFrame::Plain + + + true + + + + + 0 + 0 + 287 + 1113 + + + 4 - - - - Model + + 6 + + + + + 4 - - - - - - Enter model name here + + 6 - + + + + true + + + false + + + + 1 + + + + + - - - - Group + + + + + + + + + QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable + + + Algorithms + + + 1 + + + + 0 + + + 0 + + + + + + 0 + 0 + + + + Qt::WheelFocus + + + QFrame::StyledPanel + + + QFrame::Plain + + + true + + + + + 0 + 0 + 287 + 1113 + + + + + 4 + + + 6 + + + + + 4 - - - - - - Enter group name here + + 6 - - - - + + + + Enter algorithm name to filter list + + + + + + + true + + + false + + + + 1 + + + + + @@ -269,6 +419,23 @@ QLineEdit
qgis.gui
+ + QgsDockWidget + QDockWidget +
qgis.gui
+
+ + QgsCollapsibleGroupBox + QGroupBox +
qgis.gui
+ 1 +
+ + QgsCollapsibleGroupBoxBasic + QGroupBox +
qgis.gui
+ 1 +