mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-16 11:17:49 -06:00
Make the settings panel resizable
You can now drag the bottom side of the panel to make it bigger or smaller. Contributes to issue CURA-6054.
This commit is contained in:
parent
f627560751
commit
c6f4cb4927
3 changed files with 49 additions and 6 deletions
|
@ -499,7 +499,7 @@ class CuraApplication(QtApplication):
|
||||||
preferences.addPreference("cura/choice_on_profile_override", "always_ask")
|
preferences.addPreference("cura/choice_on_profile_override", "always_ask")
|
||||||
preferences.addPreference("cura/choice_on_open_project", "always_ask")
|
preferences.addPreference("cura/choice_on_open_project", "always_ask")
|
||||||
preferences.addPreference("cura/use_multi_build_plate", False)
|
preferences.addPreference("cura/use_multi_build_plate", False)
|
||||||
|
preferences.addPreference("view/settings_list_height", 600)
|
||||||
preferences.addPreference("cura/currency", "€")
|
preferences.addPreference("cura/currency", "€")
|
||||||
preferences.addPreference("cura/material_settings", "{}")
|
preferences.addPreference("cura/material_settings", "{}")
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,6 @@ import Cura 1.0 as Cura
|
||||||
Item
|
Item
|
||||||
{
|
{
|
||||||
id: customPrintSetup
|
id: customPrintSetup
|
||||||
height: childrenRect.height + padding
|
|
||||||
|
|
||||||
property real padding: UM.Theme.getSize("default_margin").width
|
property real padding: UM.Theme.getSize("default_margin").width
|
||||||
property bool multipleExtruders: extrudersModel.count > 1
|
property bool multipleExtruders: extrudersModel.count > 1
|
||||||
|
@ -98,15 +97,15 @@ Item
|
||||||
|
|
||||||
Rectangle
|
Rectangle
|
||||||
{
|
{
|
||||||
height: UM.Theme.getSize("print_setup_widget").height
|
|
||||||
anchors
|
anchors
|
||||||
{
|
{
|
||||||
top: tabBar.visible ? tabBar.bottom : globalProfileRow.bottom
|
top: tabBar.visible ? tabBar.bottom : globalProfileRow.bottom
|
||||||
|
topMargin: -UM.Theme.getSize("default_lining").width
|
||||||
left: parent.left
|
left: parent.left
|
||||||
leftMargin: parent.padding
|
leftMargin: parent.padding
|
||||||
right: parent.right
|
right: parent.right
|
||||||
rightMargin: parent.padding
|
rightMargin: parent.padding
|
||||||
topMargin: -UM.Theme.getSize("default_lining").width
|
bottom: parent.bottom
|
||||||
}
|
}
|
||||||
z: tabBar.z - 1
|
z: tabBar.z - 1
|
||||||
// Don't show the border when only one extruder
|
// Don't show the border when only one extruder
|
||||||
|
|
|
@ -15,7 +15,7 @@ Item
|
||||||
id: content
|
id: content
|
||||||
|
|
||||||
width: UM.Theme.getSize("print_setup_widget").width - 2 * UM.Theme.getSize("default_margin").width
|
width: UM.Theme.getSize("print_setup_widget").width - 2 * UM.Theme.getSize("default_margin").width
|
||||||
height: childrenRect.height
|
height: contents.height + buttonRow.height
|
||||||
|
|
||||||
enum Mode
|
enum Mode
|
||||||
{
|
{
|
||||||
|
@ -71,6 +71,15 @@ Item
|
||||||
right: parent.right
|
right: parent.right
|
||||||
top: parent.top
|
top: parent.top
|
||||||
}
|
}
|
||||||
|
height: UM.Preferences.getValue("view/settings_list_height") - UM.Theme.getSize("default_margin").height
|
||||||
|
Connections
|
||||||
|
{
|
||||||
|
target: UM.Preferences
|
||||||
|
onPreferenceChanged:
|
||||||
|
{
|
||||||
|
customPrintSetup.height = UM.Preferences.getValue("view/settings_list_height");
|
||||||
|
}
|
||||||
|
}
|
||||||
visible: currentModeIndex == PrintSetupSelectorContents.Mode.Custom
|
visible: currentModeIndex == PrintSetupSelectorContents.Mode.Custom
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -94,13 +103,14 @@ Item
|
||||||
|
|
||||||
anchors
|
anchors
|
||||||
{
|
{
|
||||||
top: buttonsSeparator.bottom
|
bottom: parent.bottom
|
||||||
left: parent.left
|
left: parent.left
|
||||||
right: parent.right
|
right: parent.right
|
||||||
}
|
}
|
||||||
|
|
||||||
Cura.SecondaryButton
|
Cura.SecondaryButton
|
||||||
{
|
{
|
||||||
|
id: recommendedButton
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
anchors.margins: parent.padding
|
anchors.margins: parent.padding
|
||||||
|
@ -125,5 +135,39 @@ Item
|
||||||
visible: currentModeIndex == PrintSetupSelectorContents.Mode.Recommended
|
visible: currentModeIndex == PrintSetupSelectorContents.Mode.Recommended
|
||||||
onClicked: currentModeIndex = PrintSetupSelectorContents.Mode.Custom
|
onClicked: currentModeIndex = PrintSetupSelectorContents.Mode.Custom
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Invisible area at the bottom with which you can resize the panel.
|
||||||
|
MouseArea
|
||||||
|
{
|
||||||
|
anchors
|
||||||
|
{
|
||||||
|
left: parent.left
|
||||||
|
right: parent.right
|
||||||
|
bottom: parent.bottom
|
||||||
|
top: recommendedButton.bottom
|
||||||
|
topMargin: UM.Theme.getSize("default_lining").height
|
||||||
|
}
|
||||||
|
cursorShape: Qt.SplitVCursor
|
||||||
|
visible: currentModeIndex == PrintSetupSelectorContents.Mode.Custom
|
||||||
|
drag
|
||||||
|
{
|
||||||
|
target: parent
|
||||||
|
axis: Drag.YAxis
|
||||||
|
}
|
||||||
|
onMouseYChanged:
|
||||||
|
{
|
||||||
|
if(drag.active)
|
||||||
|
{
|
||||||
|
// position of mouse relative to dropdown align vertical centre of mouse area to cursor
|
||||||
|
// v------------------------------v v------------v
|
||||||
|
var h = mouseY + buttonRow.y + content.y - height / 2 | 0;
|
||||||
|
if(h < 200 * screenScaleFactor) //Enforce a minimum size.
|
||||||
|
{
|
||||||
|
h = 200 * screenScaleFactor;
|
||||||
|
}
|
||||||
|
UM.Preferences.setValue("view/settings_list_height", h);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Add table
Add a link
Reference in a new issue