Skip to content

Commit

Permalink
Add user-draggable 'splitter' between Object and Attribute widgets.
Browse files Browse the repository at this point in the history
  • Loading branch information
david-cattermole committed Jun 22, 2020
1 parent bcf212a commit 8eea80e
Show file tree
Hide file tree
Showing 2 changed files with 81 additions and 65 deletions.
5 changes: 5 additions & 0 deletions python/mmSolver/tools/solver/ui/solver_layout.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,11 @@ def __init__(self, parent=None, *args, **kwargs):
self.ui = ui_solver_layout.Ui_Form()
self.ui.setupUi(self)

# Set the sizing for the Attribute and Object frames, so that
# the Splitter will start out with a 50/50 ratio of Objects
# to Attributes.
self.ui.objectAttribute_splitter.setSizes([50, 50])

# Store the parent window class, so we can set the applyBtn enabled
# state.
self._parentObject = parent
Expand Down
141 changes: 76 additions & 65 deletions python/mmSolver/tools/solver/ui/solver_layout.ui
Original file line number Diff line number Diff line change
Expand Up @@ -47,86 +47,97 @@
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="objectAttribute_layout" stretch="0,0,0">
<layout class="QHBoxLayout" name="objectAttribute_layout" stretch="0">
<property name="spacing">
<number>1</number>
</property>
<property name="sizeConstraint">
<enum>QLayout::SetDefaultConstraint</enum>
</property>
<item>
<widget class="QFrame" name="object_frame">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
<widget class="QSplitter" name="objectAttribute_splitter">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
<property name="handleWidth">
<number>10</number>
</property>
<layout class="QVBoxLayout" name="objectVerticalLayout">
<property name="spacing">
<number>1</number>
<widget class="QFrame" name="object_frame">
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="leftMargin">
<number>0</number>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="topMargin">
<number>0</number>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<property name="rightMargin">
<number>0</number>
<layout class="QVBoxLayout" name="objectVerticalLayout">
<property name="spacing">
<number>1</number>
</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>
<layout class="QVBoxLayout" name="object_layout">
<property name="spacing">
<number>1</number>
</property>
</layout>
</item>
</layout>
</widget>
<widget class="QFrame" name="attribute_frame">
<property name="sizePolicy">
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="bottomMargin">
<number>0</number>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<item>
<layout class="QVBoxLayout" name="object_layout">
<property name="spacing">
<number>1</number>
</property>
</layout>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QFrame" name="attribute_frame">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QVBoxLayout" name="attributeVerticalLayout">
<property name="spacing">
<number>1</number>
<property name="frameShadow">
<enum>QFrame::Raised</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>
<layout class="QVBoxLayout" name="attribute_layout">
<property name="spacing">
<number>1</number>
</property>
</layout>
</item>
</layout>
</widget>
</item>
<item>
<widget class="Line" name="line_5">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<layout class="QVBoxLayout" name="attributeVerticalLayout" stretch="0">
<property name="spacing">
<number>1</number>
</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>
<layout class="QVBoxLayout" name="attribute_layout">
<property name="spacing">
<number>1</number>
</property>
</layout>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
Expand Down

0 comments on commit 8eea80e

Please sign in to comment.