From 1ba1009b60d5955b9a0de8e60910fde45e216c42 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 11 Nov 2015 13:11:01 +0100 Subject: [PATCH 01/44] Initial theme rework: * Move buttons around * Resizing * Colors * Splash screen --- plugins/LayerView/LayerView.qml | 8 +++--- resources/images/cura.png | Bin 13764 -> 22323 bytes resources/qml/Cura.qml | 7 +++-- resources/qml/Toolbar.qml | 2 +- resources/themes/cura/styles.qml | 2 +- resources/themes/cura/theme.json | 44 ++++++++++++++++--------------- 6 files changed, 32 insertions(+), 31 deletions(-) diff --git a/plugins/LayerView/LayerView.qml b/plugins/LayerView/LayerView.qml index 9c35b9337c..8e6a535b3d 100644 --- a/plugins/LayerView/LayerView.qml +++ b/plugins/LayerView/LayerView.qml @@ -18,8 +18,8 @@ Item id: slider width: 10 height: 250 - anchors.right : parent.right - anchors.rightMargin: UM.Theme.sizes.slider_layerview_margin.width/2 + anchors.left: parent.left + anchors.leftMargin: UM.Theme.sizes.slider_layerview_margin.width/2 orientation: Qt.Vertical minimumValue: 0; maximumValue: UM.LayerView.numLayers; @@ -31,7 +31,7 @@ Item style: UM.Theme.styles.layerViewSlider } Rectangle { - anchors.right: parent.right + anchors.left: parent.left y: -UM.Theme.sizes.slider_layerview_background_extension.height z: slider.z - 1 width: UM.Theme.sizes.button.width @@ -39,7 +39,7 @@ Item color: UM.Theme.colors.slider_text_background } Rectangle { - anchors.right : parent.right + anchors.left: parent.left anchors.verticalCenter: parent.verticalCenter z: slider.z - 1 width: UM.Theme.sizes.slider_layerview_background.width diff --git a/resources/images/cura.png b/resources/images/cura.png index 0bf87af1656348099f4931f3b5f85c5a3311d557..c61f6584f7e0766dba0d743069a1bc61bd8fdfa5 100644 GIT binary patch literal 22323 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 JPDHLkV1gv$>x=*Z literal 13764 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 Date: Wed, 11 Nov 2015 16:04:54 +0100 Subject: [PATCH 02/44] Move mode-toggle out of header Tweak tool-buttons and fonts --- resources/qml/Sidebar.qml | 100 ++++++++++++++++++++++++++----- resources/qml/SidebarHeader.qml | 72 ++++------------------ resources/themes/cura/styles.qml | 7 ++- resources/themes/cura/theme.json | 24 +++++--- 4 files changed, 117 insertions(+), 86 deletions(-) diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index e434492600..2a5a176591 100644 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -15,6 +15,7 @@ Rectangle property Action addMachineAction; property Action configureMachinesAction; property Action manageProfilesAction; + property int currentModeIndex; color: UM.Theme.colors.sidebar; UM.I18nCatalog { id: catalog; name:"cura"} @@ -49,18 +50,6 @@ Rectangle addMachineAction: base.addMachineAction; configureMachinesAction: base.configureMachinesAction; - modesModel: modesListModel; - - currentModeIndex: - { - var index = parseInt(UM.Preferences.getValue("cura/active_mode")) - if(index) - { - return index; - } - return 0; - } - onCurrentModeIndexChanged: UM.Preferences.setValue("cura/active_mode", currentModeIndex); } ProfileSetup { @@ -71,16 +60,97 @@ Rectangle height: totalHeightProfileSetup } + currentModeIndex: + { + var index = parseInt(UM.Preferences.getValue("cura/active_mode")) + if(index) + { + return index; + } + return 0; + } + onCurrentModeIndexChanged: + { + UM.Preferences.setValue("cura/active_mode", currentModeIndex); + } + + Label { + id: settingsModeLabel + text: catalog.i18nc("@label:listbox","Print Setup:"); + anchors.left: parent.left + anchors.leftMargin: UM.Theme.sizes.default_margin.width; + anchors.top: profileItem.bottom + anchors.topMargin: UM.Theme.sizes.default_margin.height + width: parent.width/100*45 + font: UM.Theme.fonts.default; + color: UM.Theme.colors.text + } + + Rectangle { + id: settingsModeSelection + width: parent.width/100*55 + height: UM.Theme.sizes.sidebar_header_mode_toggle.height + anchors.right: parent.right + anchors.rightMargin: UM.Theme.sizes.default_margin.width + anchors.top: profileItem.bottom + anchors.topMargin: UM.Theme.sizes.default_margin.height + Component{ + id: wizardDelegate + Button { + height: settingsModeSelection.height + anchors.left: parent.left + anchors.leftMargin: model.index * (settingsModeSelection.width / 2) + anchors.verticalCenter: parent.verticalCenter + width: parent.width / 2 + text: model.text + exclusiveGroup: modeMenuGroup; + checkable: true; + checked: base.currentModeIndex == index + onClicked: base.currentModeIndex = index + style: ButtonStyle { + background: Rectangle { + border.color: control.checked ? UM.Theme.colors.toggle_checked_border : + control.pressed ? UM.Theme.colors.toggle_active_border : + control.hovered ? UM.Theme.colors.toggle_hovered_border : UM.Theme.colors.toggle_unchecked_border + color: control.checked ? UM.Theme.colors.toggle_checked : + control.pressed ? UM.Theme.colors.toggle_active : + control.hovered ? UM.Theme.colors.toggle_hovered : UM.Theme.colors.toggle_unchecked + Behavior on color { ColorAnimation { duration: 50; } } + Label { + anchors.centerIn: parent + color: control.checked ? UM.Theme.colors.toggle_checked_text : + control.pressed ? UM.Theme.colors.toggle_active_text : + control.hovered ? UM.Theme.colors.toggle_hovered_text : UM.Theme.colors.toggle_unchecked_text + font: UM.Theme.fonts.default + text: control.text; + } + } + label: Item { } + } + } + } + ExclusiveGroup { id: modeMenuGroup; } + ListView{ + id: modesList + property var index: 0 + model: modesListModel + delegate: wizardDelegate + anchors.top: parent.top + anchors.left: parent.left + width: parent.width + } + } + Loader { id: sidebarContents; anchors.bottom: saveButton.top - anchors.top: profileItem.bottom + anchors.top: settingsModeSelection.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.left: base.left anchors.right: base.right - source: modesListModel.count > header.currentModeIndex ? modesListModel.get(header.currentModeIndex).file : ""; + source: modesListModel.count > base.currentModeIndex ? modesListModel.get(base.currentModeIndex).file : ""; property Item sidebar: base; @@ -123,6 +193,6 @@ Rectangle { modesListModel.append({ text: catalog.i18nc("@title:tab", "Simple"), file: "SidebarSimple.qml" }) modesListModel.append({ text: catalog.i18nc("@title:tab", "Advanced"), file: "SidebarAdvanced.qml" }) - sidebarContents.setSource(modesListModel.get(header.currentModeIndex).file) + sidebarContents.setSource(modesListModel.get(base.currentModeIndex).file) } } diff --git a/resources/qml/SidebarHeader.qml b/resources/qml/SidebarHeader.qml index 2ce2e7975a..1d9c9f0562 100644 --- a/resources/qml/SidebarHeader.qml +++ b/resources/qml/SidebarHeader.qml @@ -11,8 +11,6 @@ Item { id: base; // Machine Setup - property variant modesModel; - property int currentModeIndex: 0; property Action addMachineAction; property Action configureMachinesAction; UM.I18nCatalog { id: catalog; name:"cura"} @@ -24,71 +22,25 @@ Item height: UM.Theme.sizes.sidebar_header.height anchors.top: parent.top color: UM.Theme.colors.sidebar_header_bar + } - Label{ - id: settingsModeLabel - text: catalog.i18nc("@label:listbox","Print Setup"); - anchors.left: parent.left - anchors.leftMargin: UM.Theme.sizes.default_margin.width; - anchors.verticalCenter: parent.verticalCenter - width: parent.width/100*45 - font: UM.Theme.fonts.default; - color: UM.Theme.colors.text_white - } - - Rectangle{ - id: settingsModeSelection - width: parent.width/100*55 - height: UM.Theme.sizes.sidebar_header_mode_toggle.height - anchors.right: parent.right - anchors.rightMargin: UM.Theme.sizes.default_margin.width; - anchors.verticalCenter: parent.verticalCenter - Component{ - id: wizardDelegate - Button { - height: settingsModeSelection.height - anchors.left: parent.left - anchors.leftMargin: model.index * (settingsModeSelection.width / 2) - anchors.verticalCenter: parent.verticalCenter - width: parent.width / 2 - text: model.text - exclusiveGroup: modeMenuGroup; - checkable: true; - checked: base.currentModeIndex == index - onClicked: base.currentModeIndex = index - style: ButtonStyle { - background: Rectangle { - color: control.checked ? UM.Theme.colors.toggle_active : UM.Theme.colors.toggle_disabled - Behavior on color { ColorAnimation { duration: 50; } } - Label { - anchors.centerIn: parent - color: control.checked ? UM.Theme.colors.toggle_active_text : UM.Theme.colors.toggle_disabled_text - font: UM.Theme.fonts.default - text: control.text; - } - } - label: Item { } - } - } - } - ExclusiveGroup { id: modeMenuGroup; } - ListView{ - id: modesList - property var index: 0 - model: base.modesModel - delegate: wizardDelegate - anchors.top: parent.top - anchors.left: parent.left - width: parent.width - } - } + Label{ + id: printjobTabLabel + text: catalog.i18nc("@label:listbox","Print Job"); + anchors.left: parent.left + anchors.leftMargin: UM.Theme.sizes.default_margin.width; + anchors.top: settingsModeRow.bottom + anchors.topMargin: UM.Theme.sizes.default_margin.height + width: parent.width/100*45 + font: UM.Theme.fonts.large; + color: UM.Theme.colors.text } Rectangle { id: machineSelectionRow width: base.width height: UM.Theme.sizes.sidebar_setup.height - anchors.top: settingsModeRow.bottom + anchors.top: printjobTabLabel.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.horizontalCenter: parent.horizontalCenter diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 7417d901ba..7d5a23348d 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -77,7 +77,8 @@ QtObject { } Rectangle { anchors.fill: parent; - color: control.hovered ? UM.Theme.colors.button_hover : UM.Theme.colors.button + color: control.pressed ? UM.Theme.colors.button_active : + control.hovered ? UM.Theme.colors.button_hover : UM.Theme.colors.button Behavior on color { ColorAnimation { duration: 50; } } } } @@ -156,7 +157,7 @@ QtObject { Label { id: tool_button_arrow - opacity: !control.enabled ? 0.4 : 1.0 + opacity: !control.enabled ? 0.2 : 1.0 anchors.right: parent.right; anchors.rightMargin: (UM.Theme.sizes.button.width - UM.Theme.sizes.button_icon.width - tool_button_arrow.width) / 2 anchors.verticalCenter: parent.verticalCenter; @@ -171,7 +172,7 @@ QtObject { label: Item { Image { anchors.centerIn: parent; - opacity: !control.enabled ? 0.4 : 1.0 + opacity: !control.enabled ? 0.2 : 1.0 source: control.iconSource; width: UM.Theme.sizes.button_icon.width; height: UM.Theme.sizes.button_icon.height; diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index ee859d6318..8a5e366150 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -1,12 +1,12 @@ { "fonts": { "large": { - "size": 1.5, + "size": 1.25, "bold": true, "family": "Proxima Nova Rg" }, "default": { - "size": 1, + "size": 1.15, "family": "Proxima Nova Rg" }, "default_allcaps": { @@ -60,14 +60,14 @@ "border": [205, 202, 201, 255], "secondary": [205, 202, 201, 255], - "text": [140, 144, 154, 255], + "text": [24, 41, 77, 255], "text_inactive": [174, 174, 174, 255], "text_white": [255, 255, 255, 255], "text_hover": [35, 35, 35, 255], "text_pressed": [12, 169, 227, 255], "error": [255, 140, 0, 255], - "sidebar_header_bar": [12, 169, 227, 255], + "sidebar_header_bar": [24, 41, 77, 255], "button": [24, 41, 77, 255], "button_hover": [70, 84, 113, 255], @@ -78,10 +78,18 @@ "button_disabled_text": [70, 84, 113, 255], "button_tooltip_text": [35, 35, 35, 255], - "toggle_active": [255, 255, 255, 255], - "toggle_active_text": [77, 184, 226, 255], - "toggle_disabled": [77, 184, 226, 255], - "toggle_disabled_text": [255, 255, 255, 255], + "toggle_checked": [24, 41, 77, 255], + "toggle_checked_border": [24, 41, 77, 255], + "toggle_checked_text": [255, 255, 255, 255], + "toggle_unchecked": [255, 255, 255, 255], + "toggle_unchecked_border": [127, 127, 127, 255], + "toggle_unchecked_text": [24, 41, 77, 255], + "toggle_hovered": [255, 255, 255, 255], + "toggle_hovered_border": [32, 166, 219, 255], + "toggle_hovered_text": [24, 41, 77, 255], + "toggle_active": [32, 166, 219, 255], + "toggle_active_border": [32, 166, 219, 255], + "toggle_active_text": [255, 255, 255, 255], "load_save_button": [0, 0, 0, 255], "load_save_button_text": [255, 255, 255, 255], From 211b45d9fb4dd2f0713bd2b734e0b809124db6a4 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 12 Nov 2015 08:16:34 +0100 Subject: [PATCH 03/44] Remove "specs" from Save Button Restyle Save Button Tweak Simple mode --- resources/qml/SaveButton.qml | 56 +++++++++++++++----------------- resources/qml/Sidebar.qml | 13 ++++---- resources/qml/SidebarSimple.qml | 6 ++-- resources/themes/cura/styles.qml | 17 ++++++---- resources/themes/cura/theme.json | 41 +++++++++++++---------- 5 files changed, 71 insertions(+), 62 deletions(-) diff --git a/resources/qml/SaveButton.qml b/resources/qml/SaveButton.qml index 70b43ffb72..445203372e 100644 --- a/resources/qml/SaveButton.qml +++ b/resources/qml/SaveButton.qml @@ -14,7 +14,7 @@ Rectangle { property real progress: UM.Backend.progress; property bool activity: Printer.getPlatformActivity; Behavior on progress { NumberAnimation { duration: 250; } } - property int totalHeight: childrenRect.height + property int totalHeight: childrenRect.height + UM.Theme.sizes.default_margin.height*1.5 property string fileBaseName property variant activeMachineInstance: UM.MachineManager.activeMachineInstance @@ -48,7 +48,7 @@ Rectangle { } } } - printJobTextfield.text = abbrMachine + '_' + base.fileBaseName + //printJobTextfield.text = abbrMachine + '_' + base.fileBaseName } Connections { @@ -67,7 +67,7 @@ Rectangle { base.createFileName() } } - +/* Rectangle{ id: printJobRow implicitWidth: base.width; @@ -179,12 +179,13 @@ Rectangle { } } } - +*/ Rectangle{ id: saveRow width: base.width height: saveToButton.height + (UM.Theme.sizes.default_margin.height / 2) // height + bottomMargin - anchors.top: specsRow.bottom + anchors.top: parent.top + anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.left: parent.left Button { @@ -206,16 +207,12 @@ Rectangle { background: Rectangle { //opacity: control.enabled ? 1.0 : 0.5 //Behavior on opacity { NumberAnimation { duration: 50; } } - color: { - if(!control.enabled){ - return UM.Theme.colors.button; - } - else if(control.enabled && control.hovered) { - return UM.Theme.colors.load_save_button_hover - } else { - return UM.Theme.colors.load_save_button - } - } + border.color: !control.enabled ? UM.Theme.colors.action_button_disabled_border : + control.pressed ? UM.Theme.colors.action_button_active_border : + control.hovered ? UM.Theme.colors.action_button_hovered_border : UM.Theme.colors.action_button_border + color: !control.enabled ? UM.Theme.colors.action_button_disabled : + control.pressed ? UM.Theme.colors.action_button_active : + control.hovered ? UM.Theme.colors.action_button_hovered : UM.Theme.colors.action_button Behavior on color { ColorAnimation { duration: 50; } } width: { var w = 0; @@ -234,10 +231,11 @@ Rectangle { } Label { id: actualLabel - opacity: control.enabled ? 1.0 : 0.4 //Behavior on opacity { NumberAnimation { duration: 50; } } anchors.centerIn: parent - color: UM.Theme.colors.load_save_button_text + color: !control.enabled ? UM.Theme.colors.action_button_disabled_text : + control.pressed ? UM.Theme.colors.action_button_active_text : + control.hovered ? UM.Theme.colors.action_button_hovered_text : UM.Theme.colors.action_button_text font: UM.Theme.fonts.default text: control.text; } @@ -260,16 +258,12 @@ Rectangle { style: ButtonStyle { background: Rectangle { id: deviceSelectionIcon - color: { - if(!control.enabled){ - return UM.Theme.colors.button; - } - else if(control.enabled && control.hovered) { - return UM.Theme.colors.load_save_button_hover - } else { - return UM.Theme.colors.load_save_button - } - } + border.color: !control.enabled ? UM.Theme.colors.action_button_disabled_border : + control.pressed ? UM.Theme.colors.action_button_active_border : + control.hovered ? UM.Theme.colors.action_button_hovered_border : UM.Theme.colors.action_button_border + color: !control.enabled ? UM.Theme.colors.action_button_disabled : + control.pressed ? UM.Theme.colors.action_button_active : + control.hovered ? UM.Theme.colors.action_button_hovered : UM.Theme.colors.action_button Behavior on color { ColorAnimation { duration: 50; } } anchors.left: parent.left anchors.leftMargin: UM.Theme.sizes.save_button_text_margin.width / 2; @@ -282,9 +276,11 @@ Rectangle { width: UM.Theme.sizes.standard_arrow.width height: UM.Theme.sizes.standard_arrow.height sourceSize.width: width - sourceSize.height: width - color: UM.Theme.colors.load_save_button_text - source: UM.Theme.icons.arrow_bottom + sourceSize.height: height + color: !control.enabled ? UM.Theme.colors.action_button_disabled_text : + control.pressed ? UM.Theme.colors.action_button_active_text : + control.hovered ? UM.Theme.colors.action_button_hovered_text : UM.Theme.colors.action_button_text; + source: UM.Theme.icons.arrow_bottom; } } label: Label{ } diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index 2a5a176591..be5cae80ee 100644 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -55,7 +55,8 @@ Rectangle ProfileSetup { id: profileItem manageProfilesAction: base.manageProfilesAction - anchors.top: header.bottom + anchors.top: settingsModeSelection.bottom + anchors.topMargin: UM.Theme.sizes.default_margin.height width: parent.width height: totalHeightProfileSetup } @@ -76,13 +77,13 @@ Rectangle Label { id: settingsModeLabel - text: catalog.i18nc("@label:listbox","Print Setup:"); + text: catalog.i18nc("@label:listbox","Setup"); anchors.left: parent.left anchors.leftMargin: UM.Theme.sizes.default_margin.width; - anchors.top: profileItem.bottom + anchors.top: header.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height width: parent.width/100*45 - font: UM.Theme.fonts.default; + font: UM.Theme.fonts.large; color: UM.Theme.colors.text } @@ -92,7 +93,7 @@ Rectangle height: UM.Theme.sizes.sidebar_header_mode_toggle.height anchors.right: parent.right anchors.rightMargin: UM.Theme.sizes.default_margin.width - anchors.top: profileItem.bottom + anchors.top: header.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height Component{ id: wizardDelegate @@ -145,7 +146,7 @@ Rectangle { id: sidebarContents; anchors.bottom: saveButton.top - anchors.top: settingsModeSelection.bottom + anchors.top: profileItem.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.left: base.left anchors.right: base.right diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index a16b0af225..0bc8deb5cd 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -25,7 +25,7 @@ Item id: infillCellLeft anchors.top: parent.top anchors.left: parent.left - width: base.width/100* 55 - UM.Theme.sizes.default_margin.width + width: base.width/100* 45 - UM.Theme.sizes.default_margin.width height: childrenRect.height < UM.Theme.sizes.simple_mode_infill_caption.height ? UM.Theme.sizes.simple_mode_infill_caption.height : childrenRect.height Label{ @@ -56,12 +56,14 @@ Item id: infillCellRight height: childrenRect.height; - width: base.width / 100 * 45 + width: base.width / 100 * 55 + spacing: 12 anchors.right: parent.right anchors.rightMargin: UM.Theme.sizes.default_margin.width - (UM.Theme.sizes.default_margin.width/4) anchors.top: parent.top anchors.topMargin: UM.Theme.sizes.default_margin.height + anchors.fill: width Repeater { id: infillListView diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 7d5a23348d..967b936883 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -407,13 +407,16 @@ QtObject { border.width: 1 border.color: UM.Theme.colors.checkbox_border; - Label { - anchors.centerIn: parent; - color: UM.Theme.colors.checkbox_mark; - - text: "✓"; - - opacity: control.checked ? 1 : 0; + UM.RecolorImage { + anchors.verticalCenter: parent.verticalCenter + anchors.horizontalCenter: parent.horizontalCenter + width: parent.width/2.5 + height: parent.height/2.5 + sourceSize.width: width + sourceSize.height: width + color: UM.Theme.colors.checkbox_mark + source: UM.Theme.icons.check + opacity: control.checked Behavior on opacity { NumberAnimation { duration: 100; } } } } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 8a5e366150..c767c252e1 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -57,7 +57,7 @@ "primary": [12, 169, 227, 255], "primary_hover": [34, 150, 190, 255], "primary_text": [255, 255, 255, 255], - "border": [205, 202, 201, 255], + "border": [127, 127, 127, 255], "secondary": [205, 202, 201, 255], "text": [24, 41, 77, 255], @@ -91,11 +91,18 @@ "toggle_active_border": [32, 166, 219, 255], "toggle_active_text": [255, 255, 255, 255], - "load_save_button": [0, 0, 0, 255], - "load_save_button_text": [255, 255, 255, 255], - "load_save_button_hover": [43, 45, 46, 255], - "load_save_button_inactive": [176, 184, 191, 255], - "load_save_button_inactive_text": [209, 214, 219, 255], + "action_button": [255, 255, 255, 255], + "action_button_text": [24, 41, 77, 255], + "action_button_border": [127, 127, 127, 255], + "action_button_hovered": [255, 255, 255, 255], + "action_button_hovered_text": [24, 41, 77, 255], + "action_button_hovered_border": [12, 169, 227, 255], + "action_button_active": [12, 169, 227, 255], + "action_button_active_text": [255, 255, 255, 255], + "action_button_active_border": [12, 169, 227, 255], + "action_button_disabled": [245, 245, 245, 255], + "action_button_disabled_text": [127, 127, 127, 255], + "action_button_disabled_border": [127, 127, 127, 255], "scrollbar_background": [245, 245, 245, 255], "scrollbar_handle": [12, 159, 227, 255], @@ -111,19 +118,19 @@ "setting_control": [255, 255, 255, 255], "setting_control_highlight": [245, 245, 245, 255], - "setting_control_border": [174, 174, 174, 255], - "setting_control_text": [0, 0, 0, 255], + "setting_control_border": [127, 127, 127, 255], + "setting_control_text": [24,41,77, 255], "setting_control_depth_line": [162, 192, 227, 255], "setting_control_hover": [139, 143, 153, 255], "setting_control_selected": [35, 35, 35, 255], - "setting_control_revert": [85, 85, 85, 255], + "setting_control_revert": [127, 127, 127, 255], "setting_unit": [174, 174, 174, 255], "setting_validation_error": [255, 57, 14, 255], "setting_validation_warning": [255, 186, 15, 255], "setting_validation_ok": [255, 255, 255, 255], - "progressbar_background": [208, 210, 211, 255], - "progressbar_control": [12, 169, 227, 255], + "progressbar_background": [245, 245, 245, 255], + "progressbar_control": [24, 41, 77, 255], "slider_groove": [245, 245, 245, 255], "slider_groove_border": [139, 143, 153, 255], @@ -134,9 +141,9 @@ "checkbox": [255, 255, 255, 255], "checkbox_hover": [245, 245, 245, 255], - "checkbox_border": [174, 174, 174, 255], - "checkbox_mark": [35, 35, 35, 255], - "checkbox_text": [0, 0, 0, 255], + "checkbox_border": [127, 127, 127, 255], + "checkbox_mark": [24, 41, 77, 255], + "checkbox_text": [24, 41, 77, 255], "tooltip": [255, 225, 146, 255], @@ -153,12 +160,12 @@ "sizes": { "window_margin": [1.0, 1.0], "default_margin": [1.0, 1.0], - "default_lining": [0.1, 0.1], + "default_lining": [0.25, 0.25], "logo": [9.5, 2.0], "sidebar": [30.0, 10.0], "sidebar_header": [0.0, 4.0], - "sidebar_header_mode_toggle": [0.0, 2.4], + "sidebar_header_mode_toggle": [0.0, 2.0], "sidebar_setup": [0.0, 2.6], "sidebar_subParts": [0.0, 2.4], "sidebar_specs_bar": [0.0, 2.2], @@ -199,7 +206,7 @@ "slider_layerview_background_extension": [0.0, 2.2], "slider_layerview_margin": [3.0, 3.0], - "checkbox": [1.5, 1.5], + "checkbox": [2.0, 2.0], "tooltip": [20.0, 10.0], "tooltip_margins": [1.0, 1.0], From 5cc75398c2a5c2be369ba477eb1bb41b4a396264 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 12 Nov 2015 11:23:49 +0100 Subject: [PATCH 04/44] Fix error in SidebarSimple Tweak SaveButton Change splash to Developer Version --- resources/images/cura.png | Bin 22323 -> 22637 bytes resources/qml/SaveButton.qml | 17 +++-------------- resources/qml/SidebarSimple.qml | 1 - 3 files changed, 3 insertions(+), 15 deletions(-) diff --git a/resources/images/cura.png b/resources/images/cura.png index c61f6584f7e0766dba0d743069a1bc61bd8fdfa5..cc24274de75e905d7969e67a9e5bef0421e26897 100644 GIT binary patch delta 21013 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 0.99 && base.activity == true height: UM.Theme.sizes.save_button_save_to_button.height @@ -215,19 +215,8 @@ Rectangle { control.hovered ? UM.Theme.colors.action_button_hovered : UM.Theme.colors.action_button Behavior on color { ColorAnimation { duration: 50; } } width: { - var w = 0; - if (base.width*0.55 > actualLabel.width + (UM.Theme.sizes.default_margin.width * 2)){ - saveToButton.resizedWidth = base.width*0.55 - w = base.width*0.55 - } - else { - saveToButton.resizedWidth = actualLabel.width + (UM.Theme.sizes.default_margin.width * 2) - w = actualLabel.width + (UM.Theme.sizes.default_margin.width * 2) - } - if(w < base.width * 0.55) { - w = base.width * 0.55; - } - return w; + saveToButton.resizedWidth = actualLabel.width + (UM.Theme.sizes.default_margin.width * 2) + return saveToButton.resizedWidth } Label { id: actualLabel diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 0bc8deb5cd..fa308205a4 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -63,7 +63,6 @@ Item anchors.rightMargin: UM.Theme.sizes.default_margin.width - (UM.Theme.sizes.default_margin.width/4) anchors.top: parent.top anchors.topMargin: UM.Theme.sizes.default_margin.height - anchors.fill: width Repeater { id: infillListView From d41db89254d7383164d5a7a83b7957e304d1c982 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 12 Nov 2015 14:28:16 +0100 Subject: [PATCH 05/44] Move Job Specs into viewport area --- resources/qml/Cura.qml | 11 ++ resources/qml/JobSpecs.qml | 169 +++++++++++++++++++++++++++++++ resources/qml/SaveButton.qml | 163 +---------------------------- resources/qml/SidebarSimple.qml | 2 +- resources/themes/cura/theme.json | 9 +- 5 files changed, 189 insertions(+), 165 deletions(-) create mode 100644 resources/qml/JobSpecs.qml diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index 1396a5bd9b..8419f8b91e 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -310,6 +310,17 @@ UM.MainWindow } } + JobSpecs + { + anchors + { + bottom: parent.bottom; + right: sidebar.left; + bottomMargin: UM.Theme.sizes.default_margin.height; + rightMargin: UM.Theme.sizes.default_margin.width; + } + } + UM.MessageStack { anchors diff --git a/resources/qml/JobSpecs.qml b/resources/qml/JobSpecs.qml new file mode 100644 index 0000000000..6290cf58a3 --- /dev/null +++ b/resources/qml/JobSpecs.qml @@ -0,0 +1,169 @@ +// Copyright (c) 2015 Ultimaker B.V. +// Cura is released under the terms of the AGPLv3 or higher. + +import QtQuick 2.2 +import QtQuick.Controls 1.1 +import QtQuick.Controls.Styles 1.1 +import QtQuick.Layouts 1.1 + +import UM 1.1 as UM + +Rectangle { + id: base; + + property real progress: UM.Backend.progress; + property bool activity: Printer.getPlatformActivity; + Behavior on progress { NumberAnimation { duration: 250; } } + property int totalHeight: childrenRect.height + UM.Theme.sizes.default_margin.height*1.5 + property string fileBaseName + property variant activeMachineInstance: UM.MachineManager.activeMachineInstance + + onActiveMachineInstanceChanged: + { + base.createFileName() + } + + UM.I18nCatalog { id: catalog; name:"cura"} + + property variant printDuration: PrintInformation.currentPrintTime; + property real printMaterialAmount: PrintInformation.materialAmount; + + width: 240 + height: 50 + color: "transparent" + + function createFileName(){ + var splitMachineName = UM.MachineManager.activeMachineInstance.split(" ") + var abbrMachine = '' + for (var i = 0; i < splitMachineName.length; i++){ + if (splitMachineName[i].search(/ultimaker/i) != -1){ + abbrMachine += 'UM' + } + else{ + if (splitMachineName[i].charAt(0).search(/[0-9]/g) == -1) + abbrMachine += splitMachineName[i].charAt(0) + } + var regExpAdditives = /[0-9\+]/g; + var resultAdditives = splitMachineName[i].match(regExpAdditives); + if (resultAdditives != null){ + for (var j = 0; j < resultAdditives.length; j++){ + abbrMachine += resultAdditives[j] + + } + } + } + printJobTextfield.text = abbrMachine + '_' + base.fileBaseName + } + + Connections { + target: openDialog + onHasMesh: { + if(base.fileBaseName == ''){ + base.fileBaseName = name + base.createFileName() + } + } + } + + onActivityChanged: { + if (activity == false){ + base.fileBaseName = '' + base.createFileName() + } + } + + + TextField { + id: printJobTextfield + anchors.right: parent.right + anchors.rightMargin: UM.Theme.sizes.default_margin.width; + height: UM.Theme.sizes.sidebar_inputFields.height + width: base.width + property int unremovableSpacing: 5 + text: '' + horizontalAlignment: TextInput.AlignRight + onTextChanged: Printer.setJobName(text) + onEditingFinished: { + if (printJobTextfield.text != ''){ + printJobTextfield.focus = false + } + } + validator: RegExpValidator { + regExp: /^[^\\ \/ \.]*$/ + } + style: TextFieldStyle{ + textColor: UM.Theme.colors.setting_control_text; + font: UM.Theme.fonts.default; + background: Rectangle { + opacity: 0 + border.width: 0 + } + } + } + + Rectangle { + id: specsRow + implicitWidth: base.width + implicitHeight: UM.Theme.sizes.sidebar_specs_bar.height + anchors.top: printJobTextfield.bottom + color: "transparent" + visible: base.progress > 0.99 && base.activity == true + Item{ + id: time + width: childrenRect.width; + height: parent.height + anchors.left: parent.left + anchors.leftMargin: UM.Theme.sizes.default_margin.width + anchors.top: parent.top + visible: base.printMaterialAmount > 0 ? true : false + UM.RecolorImage { + id: timeIcon + anchors.verticalCenter: parent.verticalCenter + anchors.left: parent.left + width: UM.Theme.sizes.save_button_specs_icons.width + height: UM.Theme.sizes.save_button_specs_icons.height + sourceSize.width: width + sourceSize.height: width + color: UM.Theme.colors.text_hover + source: UM.Theme.icons.print_time; + } + Label{ + id: timeSpec + anchors.verticalCenter: parent.verticalCenter + anchors.left: timeIcon.right + anchors.leftMargin: UM.Theme.sizes.default_margin.width/2 + font: UM.Theme.fonts.default + color: UM.Theme.colors.text + text: (!base.printDuration || !base.printDuration.valid) ? "" : base.printDuration.getDisplayString(UM.DurationFormat.Short) + } + } + Item{ + width: parent.width / 100 * 55 + height: parent.height + anchors.left: time.right + anchors.leftMargin: UM.Theme.sizes.default_margin.width; + anchors.top: parent.top + visible: base.printMaterialAmount > 0 ? true : false + UM.RecolorImage { + id: lengthIcon + anchors.verticalCenter: parent.verticalCenter + anchors.left: parent.left + width: UM.Theme.sizes.save_button_specs_icons.width + height: UM.Theme.sizes.save_button_specs_icons.height + sourceSize.width: width + sourceSize.height: width + color: UM.Theme.colors.text_hover + source: UM.Theme.icons.category_material; + } + Label{ + id: lengthSpec + anchors.verticalCenter: parent.verticalCenter + anchors.left: lengthIcon.right + anchors.leftMargin: UM.Theme.sizes.default_margin.width/2 + font: UM.Theme.fonts.default + color: UM.Theme.colors.text + text: base.printMaterialAmount <= 0 ? "" : catalog.i18nc("@label %1 is length of filament","%1 m").arg(base.printMaterialAmount) + } + } + } +} diff --git a/resources/qml/SaveButton.qml b/resources/qml/SaveButton.qml index a5e6095ece..46fd4cd224 100644 --- a/resources/qml/SaveButton.qml +++ b/resources/qml/SaveButton.qml @@ -16,170 +16,9 @@ Rectangle { Behavior on progress { NumberAnimation { duration: 250; } } property int totalHeight: childrenRect.height + UM.Theme.sizes.default_margin.height*1.5 property string fileBaseName - property variant activeMachineInstance: UM.MachineManager.activeMachineInstance - - onActiveMachineInstanceChanged: - { - base.createFileName() - } UM.I18nCatalog { id: catalog; name:"cura"} - property variant printDuration: PrintInformation.currentPrintTime; - property real printMaterialAmount: PrintInformation.materialAmount; - - function createFileName(){ - var splitMachineName = UM.MachineManager.activeMachineInstance.split(" ") - var abbrMachine = '' - for (var i = 0; i < splitMachineName.length; i++){ - if (splitMachineName[i].search(/ultimaker/i) != -1){ - abbrMachine += 'UM' - } - else{ - if (splitMachineName[i].charAt(0).search(/[0-9]/g) == -1) - abbrMachine += splitMachineName[i].charAt(0) - } - var regExpAdditives = /[0-9\+]/g; - var resultAdditives = splitMachineName[i].match(regExpAdditives); - if (resultAdditives != null){ - for (var j = 0; j < resultAdditives.length; j++){ - abbrMachine += resultAdditives[j] - - } - } - } - //printJobTextfield.text = abbrMachine + '_' + base.fileBaseName - } - - Connections { - target: openDialog - onHasMesh: { - if(base.fileBaseName == ''){ - base.fileBaseName = name - base.createFileName() - } - } - } - - onActivityChanged: { - if (activity == false){ - base.fileBaseName = '' - base.createFileName() - } - } -/* - Rectangle{ - id: printJobRow - implicitWidth: base.width; - implicitHeight: UM.Theme.sizes.save_button_header.height - anchors.top: parent.top - color: UM.Theme.colors.sidebar_header_bar - Label{ - id: printJobTextfieldLabel - text: catalog.i18nc("@label:textbox", "Printjob Name"); - anchors.left: parent.left - anchors.leftMargin: UM.Theme.sizes.default_margin.width; - anchors.verticalCenter: parent.verticalCenter - font: UM.Theme.fonts.default; - color: UM.Theme.colors.text_white - } - TextField { - id: printJobTextfield - anchors.right: parent.right - anchors.rightMargin: UM.Theme.sizes.default_margin.width; - anchors.verticalCenter: parent.verticalCenter - width: parent.width/100*55 - height: UM.Theme.sizes.sidebar_inputFields.height - property int unremovableSpacing: 5 - text: '' - onTextChanged: Printer.setJobName(text) - onEditingFinished: { - if (printJobTextfield.text != ''){ - printJobTextfield.focus = false - } - } - validator: RegExpValidator { - regExp: /^[^\\ \/ \.]*$/ - } - style: TextFieldStyle{ - textColor: UM.Theme.colors.setting_control_text; - font: UM.Theme.fonts.default; - background: Rectangle { - radius: 0 - implicitWidth: parent.width - implicitHeight: parent.height - border.width: 1; - border.color: UM.Theme.colors.slider_groove_border; - } - } - } - } - - Rectangle { - id: specsRow - implicitWidth: base.width - implicitHeight: UM.Theme.sizes.sidebar_specs_bar.height - anchors.top: printJobRow.bottom - visible: base.progress > 0.99 && base.activity == true - Item{ - id: time - width: childrenRect.width; - height: parent.height - anchors.left: parent.left - anchors.leftMargin: UM.Theme.sizes.default_margin.width - anchors.top: parent.top - visible: base.printMaterialAmount > 0 ? true : false - UM.RecolorImage { - id: timeIcon - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left - width: UM.Theme.sizes.save_button_specs_icons.width - height: UM.Theme.sizes.save_button_specs_icons.height - sourceSize.width: width - sourceSize.height: width - color: UM.Theme.colors.text_hover - source: UM.Theme.icons.print_time; - } - Label{ - id: timeSpec - anchors.verticalCenter: parent.verticalCenter - anchors.left: timeIcon.right - anchors.leftMargin: UM.Theme.sizes.default_margin.width/2 - font: UM.Theme.fonts.default - color: UM.Theme.colors.text - text: (!base.printDuration || !base.printDuration.valid) ? "" : base.printDuration.getDisplayString(UM.DurationFormat.Short) - } - } - Item{ - width: parent.width / 100 * 55 - height: parent.height - anchors.left: time.right - anchors.leftMargin: UM.Theme.sizes.default_margin.width; - anchors.top: parent.top - visible: base.printMaterialAmount > 0 ? true : false - UM.RecolorImage { - id: lengthIcon - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left - width: UM.Theme.sizes.save_button_specs_icons.width - height: UM.Theme.sizes.save_button_specs_icons.height - sourceSize.width: width - sourceSize.height: width - color: UM.Theme.colors.text_hover - source: UM.Theme.icons.category_material; - } - Label{ - id: lengthSpec - anchors.verticalCenter: parent.verticalCenter - anchors.left: lengthIcon.right - anchors.leftMargin: UM.Theme.sizes.default_margin.width/2 - font: UM.Theme.fonts.default - color: UM.Theme.colors.text - text: base.printMaterialAmount <= 0 ? "" : catalog.i18nc("@label %1 is length of filament","%1 m").arg(base.printMaterialAmount) - } - } - } -*/ Rectangle{ id: saveRow width: base.width @@ -225,7 +64,7 @@ Rectangle { color: !control.enabled ? UM.Theme.colors.action_button_disabled_text : control.pressed ? UM.Theme.colors.action_button_active_text : control.hovered ? UM.Theme.colors.action_button_hovered_text : UM.Theme.colors.action_button_text - font: UM.Theme.fonts.default + font: UM.Theme.fonts.action_button text: control.text; } } diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index fa308205a4..5ade60d907 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -45,7 +45,7 @@ Item text: infillModel.count > 0 && infillListView.activeIndex != -1 ? infillModel.get(infillListView.activeIndex).text : "" font: UM.Theme.fonts.caption wrapMode: Text.Wrap - color: UM.Theme.colors.text + color: UM.Theme.colors.text_subtext anchors.top: infillLabel.bottom anchors.left: parent.left anchors.leftMargin: UM.Theme.sizes.default_margin.width diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index c767c252e1..603caf8fc8 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -23,8 +23,7 @@ "family": "Proxima Nova Rg" }, "caption": { - "size": 0.75, - "italic": true, + "size": 1.0, "family": "Proxima Nova Rg" }, "sidebar_header": { @@ -46,6 +45,11 @@ "setting_category": { "size": 1.0, "family": "Proxima Nova Rg" + }, + "action_button": { + "size": 1.15, + "bold": true, + "family": "Proxima Nova Rg" } }, @@ -65,6 +69,7 @@ "text_white": [255, 255, 255, 255], "text_hover": [35, 35, 35, 255], "text_pressed": [12, 169, 227, 255], + "text_subtext": [127, 127, 127, 255], "error": [255, 140, 0, 255], "sidebar_header_bar": [24, 41, 77, 255], From e293501e37868d79e6650d344a8d3988143c2bc4 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 17 Nov 2015 13:30:04 +0100 Subject: [PATCH 06/44] Tweak JobSpecs Tweak fonts-sizes Replace splash --- resources/images/cura.png | Bin 22637 -> 20982 bytes resources/qml/JobSpecs.qml | 70 ++++++++++++++----------------- resources/themes/cura/theme.json | 11 +---- 3 files changed, 32 insertions(+), 49 deletions(-) diff --git a/resources/images/cura.png b/resources/images/cura.png index cc24274de75e905d7969e67a9e5bef0421e26897..625668ea2578413ad52adc7adfd1c9e42e5dd56f 100644 GIT binary patch literal 20982 zcmdSA1yE#9voDA9}6-`ltG zzV{;b#qLIIM|VV?>dMT@I$3qH@|P!ENkIx35g!o(0s{HFw73cc1f8n4c19LvDrQEeo{qz20uT_;=2ohjE}HUkd?o-p zCZm7)FnQQHd~icR2nc&P7@63ZxsV#0SyS1SV@66{RNd6yk`9A1>nwiN-|D%hGjUf4d z4oXvAiBt^WWJb!##Lj5K!pcg@#l^(R!O6wN%0SA-!pg?X^6}+jWaZ%FHOgZt3FUz{kw&?(WXy&dvmIvS4QA<>mcH1{)jWM-N74PkR?5 z4@P@uihoHEH*+>|vT|^-0@#!OBhknh;OZhs{xQ=3G{Me6UjDxcws-!oiTao_W)C9= zW>zK^W;?ro?D~)1&Mqou|K~9NZEt5)PX{w*6*FgmtCPvc{V=Ea7xTy5{jU}M)A3_8 ze2Pw1A2-FwRvcjBYG-Ee@?Bhz{No=cQ!7(GF>y8tPA+a1Nl~5;f|Zq*Lxe??l}DVL zON^b3n}hdXGX5Pem#Czu2$uv0k2tFsE2{*jD7!d^C>NUuD+j9xub3#yzj(jfJG&U! zo0$Deuhoa%|Ker;U-I&aIhh%`0Gw0-0Na0gfRZJ^1>kH6a3B@?!9_}=VP$U$aCfHt z=l1-kwc=(@R&Hjdl1>0S(*KxWKC6GDpN)lwg`1N@oQ<7__aD1?c-h!^IoTxHxJCc5 zN0j`(cuoIz=8XAcFwFlr$A9N6|7!a1z<GsIztc~eWPDMgZMie3hH;RFcwl^F4S*-%(h(3nr!lZC~1uR z6(uFFb71gIrf%i^dlR<@aY@<^I#kD`gFaVXT^;*1@E*9FqBULeqlgzOz=2Wpw?6^` zg6bET9?sDEdJfk4kH(6?19?(3AOZ~3blSInLwI3)g309$_(u9a5I0n4pTq%B0pI=y z;vb2>z%Wn&|DO1NR@p!5|36o@SsJ4H4IfnvBf#PIn>hGm<{TCNJDZO_sgy#AM!f`S zGN50Y@SfB`kp>KIJMv|yT8RTh1z|Pm;)nBRtnUb?2);63?5~ErI%LN$OKNZ%x9;&c>!dC>)oWnVFcFnV4$L zmTK$PwruLwqD$_$JjckyWWU;cNuA}JJ6&9%ZUZq2rxP?#I!YYjh3zSFQz_beaQoEW z-hNYmlS>X;$EA||BeyXtL$j}x3s$YB8*a2Pob!u?N88e zx3ts7oF-12h4PtnSkcPZHodd{h{XKD{8G*%nX(y6uDgTj>!)LH_)>_s#3U`e)xCuZ z5Z8N)=inXD{zRty_wNmS43xUw{V5sz-Y6+BeGoZ@bO|F#3FFqIqm#0Vli&7P)28iC z9$Z?|$(4UbWlWn|E>^B}1wb1OIWUW#*FtJ^b>tTop02c9Pj!ohp^|*>h}Bh6GGxIu zT+>rXig$*2X}#WOv|O$=Do?l{OQQz-$t|cBy z(etI|l6!SZ_~#8=2yTtDle3>@yUXK@nfLwKwTgDWvUOlkkgH0@#VR6F1UWgm0I@rA z1Wb65D%~>R`R)wV;rl$@D-}b;pBa~;TplLQ!n1m(oe|;s918-popPC<{{ov~5S&)q zpFX+TES|1*T#FvTE)dhTr1rZW@a6iW6(5ry(bF)XRc>r--RxSKHX~ zvxdx=r6R>Fts2|Ms?ImJor^dqUm-wrzf*xIZNhgkF|j2}13MU6AJsn@#26UcNSeRE z?{u2YP;=gX`fu%3`;2<6w(s4(Je6v25>n!eB6Ey;X?k)&d?r1D{zc1n>`^2F^WqM$C7CL zWL(qNs7KAue>h82UqvsY+im7b*r_R8m4BH*;TWkudL}bJ7~F1`7G-%+QN9{mDkUov ziNzHYRS5un$yQUd76k4NwzYUuroXTndcTsyKTJA#??-1et?|J?GCHq7+Le?_oCw(q zbMLljoll}WZfVn?Pq)Ddh6=VmY+W-CDthRSecz~G(^mp6a(7h)g4*0pTOSJpsOo50 zD+5M%5j|qi&VYDLL@0y4CId`5HJAzn-9)$PPojXmrtVWz@U!97+^}^>s1;r5<gplY;Z3s!9**}NdXCeV_V-wOjdBx7`;R5F>gC#y zo${-d1~=wp?g|PMy{J*nj!b&ER##p`PNTb5@@a1m8+oW`>-vta&}^e-S8BqQUiU!v zp1@v1uV0|sU*Hp3$_}|SK1Rw@V;?ym!Anpu8)V$BQ=7S5RzM-r44j@86YF4XT-@c! zY`htIilmr{)h)xFc^NFX{ZjJ=2zE2)i)!cXs%x(fQ+lVvbEO??Tuo)^sMF4d3!gky z-I~2~Yr1{qA40Ynb~+Z)G1m6Ck>lYK9CTy!aL{cu_yW%IylFi>{Jgr4(~7Lww{7jr zskIpbK@xMUpBK6<`=~TjG^cvmHp}lSB{^Qz^@;REl+|!1g2z!MC_gzl`Pa~=E`H=f z+dl+Rg~7odn(u6|LWIs^LRi$U<&y z-{C(bZ{Rnab`dptq{=Sq8tkKpRl?4kFwxSP!yZElr~=&Soh?zv-3a=3f^QYMH49bi z)#n@FxM*>tL4LU;B&{k zefX!CVwL?(>fSa%xV&ydrak}NKJ5lB1_n901jH8RbQE@YDHX7cYwkTI;OFF{^S(29 zSG`APXwjr6&=u%?-?}+Kz~^>?hKZSvv}iS#`fVE2TlL^3B_)-|7!EG4!S-$Xl!acR zv>25*GBJVem>a%Lt>9pKu6xVRE>OGY zXyYk}yf+u75l!bRB{PL-^DC;*#nc1Bw#bP!;D$o!I_XgG%~?4`)oX7orNZA1c{&tv zhiiqKk%Ez&Ve1&yVBK#}i7+51n5xv%tQPzItnIv9LAIGsx4A;3I3Xh`0WIxeZdMWO zd%qTrj9#YkbE;Y?=^3988U;6Q>1qXQRDFq1J%ml=6EKBWaZ<)+x_mdCStxAQJd`lA zy)o>sbjtR1jJ*F2rs<$$KZ5Og`B?eG(t|6(Vk2OkxLwqNpcwWs7X6~@*iXCaPg$^Y z8f{0L)EfKot2+kz!{GsqidvJksWV5Vng|YyS6=jIxZb-{5SB`T(&BjdOx^6$%~9LS zpxM+|2eH^lOJg_Gnw?G)5{H{~(9puJBjcOVm*(;Ff^8>Q+js`%EO*;=N1;c7T>Ahx zd{%+x*Pd(UcFt=?LdbcWTCqIMuT)+dfv2EG5`HfR1`fIG8QF1ZtM$U(r>sS?F|HJO zas~0#N&-?ESduACr*IWC=rv+sj^#iE^Zg+x%s>4LkNxxC$1HzaH)p1RYt0SetB9*Y zA^rqMkSUv*fz&Ui5ZgslG57(?8Y*6wgV;4Q3|YF#_0|n9-jhD=g)tz` zgElY8+pi45rCGtdBj9NC{_FgN6;7yDE>*Bol!YCA3Xdx0}gbQv`6hSiV~i2rZgZ zk|CdV$VDlL@$b?0eF^1F%e?dR^F4T)#Jj{0#aD7fj3}hm`sY{F5f6CrwD9N>WImx@ z|8{~03sg%@WpF72Ud=e9>rXXCJ#px( z__@r1U5!?7WLZv9pJacN&0=(()Rad4FtArzy-wn5^X>9U{R*zWIT0y8y^f(*eE(98 zSXlD|M3uM;|C;#uZzWC5gDakp6CzaT)%@>yl2HU-W-HMimc>zEDg(3Bi-F3Hc1y+! zM!#?Rp$dZ2oSUrI=we$H#cP@%K4s1ByYSEBN2wI#WBF@@u9C;i?$&GBp+h?Jw!i9Q zqT{QS5msw6_SnfQRddCLT$)oP$cBTl8e{vZrn&NO(ZR5*tLo~Wfcj$4Sh9SuQe`uj$m6stB$XI1{`U0b{zQeD8;{tnGWHsUsoMJM zfF99r+ytr&1yho%&iB5T)C-zOEY-rO#a}0YkABaDXRtC=AFx)KU zproYScuSO=pcm2AE&pRsuEPt=>6k z@bl|%n0dQac`id3BN3O9LIO&qSg(U$y?h-F?NXX2LSn@GzDvAV6bMVJpTaUj=DVj$ z=D8sz6O$&$5ZOPU>9ti!H>lGR$IF;P0l9^4UwT2`@EOD$Yr4XJ>I0b7bwh5<=dtkc z$dmx^u&^0|-gg(9U5}xB257%k$_mIsWXLsSFroZ*=)zT~_DWsrAiY;{2yh6nh#Z7JUj<<1@681p~i7Agk^K9d0x&)PU^4CrHWa{Mh{TmWKjp_H&4E=R!UOVXzBq- zXol)qIA=zx(kxupaEn^2N*0XW4e-49GbVoh`b8yAKqBnP5s6g6;j3x6)SU;vP^slT zne2T;-Q*~RAH~H-g)b^LH5DXU=Y9`PPfsr{E>4|IgH7~*do1d=M?os{@&0_{)S$9f zZPZ)FA#VF|x(H_Kv93{XjbR)MP{*qGS-#pY5`_Qm@5=aTx1}PHhv*ExagR~hVkh4? z{O4%vjY3-(0f;TQj1LH%7nKrW11gM~IzyVLj{{!cwe|P+f9gLrf|)p@VG>gKh>iwk z_Z81qTKGwGXv(YdreGCs#LtVZNTNq+mcju-=()=V`J+h=TZQ` z-t@E<5dEfEi7Kk?b;e;Qe>omh7n_b!EW%`tzGwD zhbh(2IjP|`-xwWhGH+dFY7w1kgS2I`X}h!gILU-WV$N|_YZe0DJD|dvHL->%uN+aM zK^?AbGZ9Z?4%mP;!c1@OeWnU}`!dzizkgL7AqZ%NgeskrCL|+7rpBCO;49Fv3As++ z3kBH^@dhrQ3LCzi_w|X#D^CrK$rM0odmZhRnAf#d-OB6_k@rF+-T?1C#33q{#%*RlR&`?X%i!?I7RPPny0Ba2hGB4EAuO9M`9^Pg{G zbP1pC%UCpjne)5Y0%{T1G@CP)4wiz#P*=Il86tQ}=Rix(tVSD&Z`C)CIGIRDGYDD& zlb+nND)e(eult?Kl|#JZqflf5Fv|v9P>ZG^ba!ly>j~HMfpQ*+&qlY&V06yp10O2J zX@Roj9vIp_rfs2_(T#7j$vKfa?I;o?)W(dGjV!s|`Wl_Xn5M6xsY+8F_YL9UqPh6N zj=vG5&G~^y?99V|;knKId>RL*j+Co9R_p{3`;#08O0(5ZhZRySIn$HUEI*ju&E9Dc z%-Kmq=r>~@rsU2Ge-jdM@$6}97$GNS28I(b&^v}$uo9e-Fvh*=z7Et?!*&YV{PN{X ztI}Ez00*UcbB~%htNP$s!eTO0Y&>se^aNrT=vto0b)+UE5rTdH{uW3D-(==Gd@3s@ z3OP1vUPtyqAZR{URs|ecVsb%~?du=>njN)RZV*J$w-c4d5vne=4GRwsU%Hsf{q0%s z_U6YYw>;jz%A0~b&O7sN^>dhH;-Ll?f` zH8*v3b~f-k+~qZxP^Rbjh+lim8Y7(VJ|50&HJS_>v_NG>%iWI{_wESn{aks9P=f$P zKs2lrfKU_O|Fp$x;1``WfSlIX-*45BI#f(^ek{YhyY0f8fwC{lu5Sy@ZMj&eBKwMX zxgUmvlfg2oOXLT7gBK0jZ_0Q1-PfKlLc9i#yQ6qJ}L6D~vX<5Z7p`1dDG*t)rDhdnmk^4cr z;$v4<%zQcdYq5GZb#&W^n5=}+<+-=NkF+{EUo=U!H%;B~e&;PM6cFE1Ku{E_@tEEM!ry)4oNpS`Q`>^*RPQ@HS+3ik$`RA3)Q`)q>^W^- zWlDxlhl+3VzR$GdZ}KG23BMqzuLqr|ht2nT<0}863jWe218s65&&+~|K_%2Z-!m$9 zM4V0XdHomwta+?r{CEZ!T4h9GdhuwpQY{7aZu>r5!W%2-s;a71VMk@Rsm`xfulW~s z-uTmn;QLmVV)pDR5qt!ezxdJO;lp6IHC&8ohKDYOmWrF34|uqKtKU{K%n(En`<^Ht z1lpLid8|U&=i4kY&Ay+%JJKUGZ^-~yFt9|C=BK6{r6nGVB@3O-;BgeN< zW}txSft?ce;*tVIvj}c^^1*>xnZ|&4f1!E4?)=EITHU}Vw^MZ+(fqiCu6L9vTgq4T z!`54yur*dfQKZi;Tc@fOX!qz!Zzx3k44ORaXSG;6IJ$A(A{DLal_%}x-jeIrBQ{kR z0E*@(skxD|Q!YEu%iG{NGDiFi+YiC?A~zhr1z98nduoD=MG0D}dc;bww`yO*3Qo7f zP$r2+mCsGwAmYuVXNzY;Q6LO<$qEprlvo$v_5Q%qc|Xl|;3HqlcelwxL-S2te=oLM z4EwzrSE`ayOTV?T`(mL&=k;>Guri~~%-mvbRZw;6seyww;o81c^%R2{Ur)Y%hLc;u z^_Pma-EAaTD0F)?$-wt=Uc=eUNlROjPI&eevE}lpAKc*`fG)X7f`7m9kqo3*l^&HY zt0U+RQHtk%Ty~G?u$WgYYfkNK>;TKUaA2QkY*R%w*{|~%y@)r5)sJzUS$i|<-I_vP zgQDvHAahG`&(n^XTigbEI1<%k@a2x4dhNtH^535{U*8!WJ?Ft7bU%Sse_sP3{)1kb)^LAnvCkd%G4{gE1nJq&4d|F z=kweZ^zFUW@$sv?HS;&#`IW$|0 zcL@N%Zm$>r{qa({#;#Blpzpyt=q>ejqI{1r)ojl+`?`7)M5iY4TEyL)VeG;=C$qRl zI8V6B#lOZ$liEDt5t1s=8O%k@>ou2Hk)~0uDRk2a3aZy$P=$SjRWEBmNu*zFCtF@> z=r>l7lhbXn?*GW6D#*xe0cGs%v*oZxVP-Hnw;jESy>~8&+8R+wSP6R|T|Fu$x{EbA z0(R&UtVf)GG}^9xtf8#ib8m|G3t@gDwS49o3Xy`0BB*VB#XWU$umWofI_IA(`^Z)% z(P8H{^O%LBoBm(Lx{aDr73v={KMU_qWPmBH5uVex?%& z-&2r|mbNeaj`4G(*e3S$=+o=%e0Yg?yv9xkI>7lOBQ4}mAR4f1XcJ*#9TM5=#L_(k z)S${G^VHZhF-4x*#%YZsq3-PN@vh#Dos5l$O05R&|E`iSxr+|@%9n8#9=XeuTQo5`ngq&)11zhL4JL=y>mJ&hfXMV9}Kpp}pa zachGfhT=IyUI1zu5E2j&6vOwQATUnuS6AZ{c3vz!4Ekxm&TdJ_x}C2eSM^*z3zh{2 zJ}_F+B}T}hWS^&2nBRz|Xo71cBKWhPr6LceY6SP2k~v7#Hm`EmkzdL4$i;wwy9y6e znod#@z5*cuz58(d#(BkOl+(*z&&8QcKF_0`kex^u;^OaVoxj!5)bqXw4cgzP1vVhZ_uD7yY+U@>t*)+ zKk@MqpF51*QA5T~KzrQ&wcE5OgK46tJ+?b{vA_asmQv`VxgOsliczf10 zp)NHGQKV3e<209g(BnX-=-LFt3RGW)A1Fzu}%kazbRL-FIo83Km^@w=SZba4ESd?+Fo4RZQ_QQo5`Q^Dl2Z8DA;`CF2 zO@b9<0DmQ0Nr+D{a3nK6oR`+%vq(Nn#VO>{ZH3?L^9nAqsC$WKViGIgMt{Roql{?A ztq=*YKozgyD?XmaJ2Jk68Q?%I-m?})lu|UgG~0e@!n1N&5c<W2=x5pBE>Mz5jRk=>Hy4`2*{J2DSdbfPVgi^!|HX_kU29b7sh;^XCsf`Uj+Y z_5WkQ_y2~;|5r@=e+gv=+hELisi4G!#g7)SrJT%E**7g4V}*Fqwv2u zs~+lp_>>;KL))5mRO)ptD>wK1RE;xJlFii5OuB>_6}(AG+-4Arc=wZu~xOm>ytqfiI6AQx&c()cKntxQLw^9^UH24W5%F;J~*Z0v<{6c@sxAGwX)1C~~{J z(A`3j#OFs9*P3J&f7VKii4Bk8!QB;vJqe#v?e+M!KugQT?&7-JY@`KA^ZwbeJMyWp z&rp;&pvRx^*4UDfzbQ6eQi@YyV`pUOVrpTLGs+4#?Jru8aEU6N<@uFgEGf0YIW1RM zgXKtx*h;;v%l$8r>2U(S40~&Bs2u&z6;^XH3Unf*STU1*#)hwZ9xP`mHfSECuaR|3U=136Z*c|H1ELIXrV|p@I6C zu47oytvum(^YJiejb`4(h=h0=tv7`CuA)=d3ExoQ} z8x9VC?LnD&_X2#q#?B1-mo}EMjh=O1VF&S|%xjWy6-d1dtcvGGwk>8KHaXA;(m$i_ z5-Okw;bpl|Pdb;a<#KBafQzAm-P?FWbkWgayy(?_&*IF)oC~0@@N91Lj&^7_KfNgj zf&Gv1D%ACo@(!pGnUEeR)c$-@TmBNeeAuFS@{!CB?Vb^c7~Q$}G`z`|!7#Zs(a=0H zii~iPV(dUJwo{&{u0rtEVr7~OCt`Mkk*L$pO`oq?F#FfNA3X`ha9p+F^IOH36OH5O zZbC&M#;dG8c%FWu9Xt)%CgKiy-bFZ>pGPd|Q#S?L^!?lvdkPDIJB)}@FJtVSiq)|E zdDp0UK@jsIYT_3+ed^YYy>yE5GD|R~uJAPmfq7(Pw+}r=?s9h!$^BHY(Q_?5b}E+7 z#N++6zW^1CPwrb?Q)|%P^G>Q=GuHPx%^Mal+NdaOL4-l}TrK60VuhW>N&(4cutaV8 zqxG~Te$PpYJ2ZIvy4Pf{-xFm=*L?7bHH`9Fcu9@XuOX_?`S0qx;i2g_=oCvCjQNAY zBw{s0S~X9rLQW-t1(_d(l-i!%eC++$U8!I6Lklbz&ok=sAC?=~0G@8L4d>FH)QKs= z$5=zoW>p(ApP8Ajy`%tWX@U!MT(}GN53<+;P4T_EbWAi}$Ge02$uADOyv=J0MHn}G z2xkTEaotc!{;ZtN6M<^}ZyofxYGpy7yC|QVU4tZF7`zw`S2y9! zok<%uVO#x>4bRSd|3npfk$3r>P>rjW5NWsD-q3@gkS(iIGI9O!n3FttFz4S#J zf4vs|q82>1Ea(U3EQX0Uf;A`PNH}BE2;*^Y6SQtnVZc5Id+(e{nd|bzEw|cMM6bQed zuhcFBgzdHKj7Cp`p6AKhTF@DhzjNJYe?g8kXPP$OaPwRXOhIs|ogYqgT(pvTu`-DE zjaf!Mp5lBmDB^1jP|4O~o&_lKTGO4X#FFI+J{d=#9d3lmyw_y{D()7cI{q4FSB-wS zKsd+7X@x)5CLDJWNJclVDO^M)8EeiWg)@llC-Ho73c6J$E02`zzSSW;^eVGZlIz@4 zFz!sAJ-p5um_OCHPw|G_xkIAa?1=KBTcWQ*AyBR+ z${VIktLi5#Z4Si+0(}eRnj6*>!C$znXPl6lrBj8&$^f);x6 ziNh@ttod_Lcq!E+-UcqgAPM^9XPz?G($;v^y=SFx<~B$R0m9i^+I%4tvWn)YZI|5P;tCF z2`Tu9Qw=BnbTlbG_?^WVjT0RA1nMbtevys)6z-Yke)N(TZ{dh9?~=9`H;%tCySqv3 z@iH$ar9htLFSVjJGHbzf)9Jj$T;?~*#6~FSxA|V!el;`;sGC~dbhyepCZvvEh=7L~ z>k1;ffbN+ToxJe;`c8(8eXlOi!$61wln@QY`aCS!w&m>aC*cga3BvJSp6Ae1=_P0N zocYGcG^rbXIRcYdo@hPL`S}G4C`R{7=jd&lG%YGv4^M{^G zl1tXfJA+rq1l^=In$V!-?flM8=V@OUFf8e8E#m@ev@epyL^u76{Nx2LEh5I7Z*;Ab z#q$zSvGVnN8#K0h-~ayLdfEDNCF$bndq!j!B$ax=9eJboyPBk25o-;jzq`nsn_)f!J zXa;QyS)L*@dSRZF4L2y?Oe3sb>h47S7^l2sP_OK1?ikb5iVr7CAM4t|dX28g;m}f% zhUl16rI;*($~uSSB_=y+I>RlTEPULcHPc+!+H45}rVEi{O8QnB77B-jiFqpMLq$$L z=I`V=TKGL(#fT+YG?3Gt+kds+-^(ROgz^e?p|rhn!TxzxI3iNz^A)w3$9 zFwnx|VzS)aZGUNbDhbeB7$@C( zW?xYE(1Yc=RtA4#>eb2XIq)fylSZ3}*tm{YHw7o{_Ta7SKquMje)!Gt9{Kg^xuFCe zWq6Aqu=(!hI>Wv_M|MzM$mGi(wAa%=QI|DwlhGv5+-EL)A2~HGpRzavBHnxC>P_(n zN=X3rL;|mi>S>(wUP}D0Qp1=7b_iWq(XQg0xj0Bm0o(^<=#z1Vy~o1 zJebNzu$*k2Lm@sVMfGQv=4L`au*((2mpX+MqaT?|CYtUhns_TZi~|O;-sbNPp}w@U zy+JboF6BUQ3<-<<34u0=$@#7gx6Y4R*UfJG7%7bW4u^xAvmk0L8A^fX+09^Q|GUd+ z;<8sZaI0>ezUS38v$@;B(nlFwUr5+0_gM#HnGgaJQiJw;L)8N@5mt@s={^MsZV8e~ znDt+GVIK3fTrIkSp56BRT2*}4xM9A>@Ixf*SD1AsY=as#4qNF$5wjn)BLs#fz0wEB zW4$oeN~bF8SJ()A)qw$oh2H!j1`G0Jx*`PYsK2#=m(~}*cOd}7pl&(u1Z%k8aGbsM z9QjVSbUCGFT^YF$NZz3=U-Zpsgt}~)8xw?yhePR%U`NWhhpu$Q@>#e6#B2-9Ub0_( z-r%D%L)rG)C1s%8zEhG43iIp;-7IGr>O~@#ub2ULT>Q9ib0+sEYaITI166k~ zcen1&1~F0L94RuPiaax6k^9^pQy~r_%1UU`C&FwR zN#FK^QuYT$(^QMDSz}<%>v^Ywtl!8WI()oVRm}sDaVmBtU?53;nu^JsBOZ^Jn`c{U zj&JA&U~rWwhoZAb`>G9Qnxu?)X?AV772mTBpC4n{F4YROhb0?O1uB%xm?UWzHObMz z&i?sP$J_8*Ir?3-Y=+J0p>xE{R@p*T+_JY>I)Vh4lU2dhwrm?GT_B&v^(#6YW^*)M z^EU;LeG_PV+XNlMM5}g2?7o|IbD!DtMA&8PH;uDPgfjR$e)jHE{*i~?Uff1TVnS*R z7LCBH_Bhk!rjd!&TDS3uhE6H;Z88u_4p1clko+zqa8sK7VZu^f0b*g&T=i$mzBf>W z!LkJnYhToe(YA%z2!N1~gg&g`rx$a#!>0mjH%z2MtZGs@rF_*(N0ZY5uyOd%sS6(= zlfssTRKAM%+Tmf!GF}TZKDBu8u_;@LOu~g1Dsw|*39B7yDn4H zeK{LKd8`ai-R@XOq!5sA5i%=l`SINJirpN?#;@M^aQM5z7mN+~)J4}ZTT z-W(=f2QFC6R>_C+2RK_BVzld1r%;uHTzPsFPx=(UmUtKOkEHPZ6`T0+my@PSotuAz z2pAkIJ<>p**=To|nE$RIo=$7gK;5V99`0*C5QJCw-1a(rx9I+IT{PL#BPwSe@u?DQ zfzxN~@Yd5`-!1^uq*ETsZ&j*D8cmn1Ko6JL=v2vxm7yeUAgsrcO~EvZ=@KY#^Vp<4 zm;7lUh4DkSyn)8~I|B5{FC7izr_0&B6qQ)D2G8vf~; zWPW&@o?^ncRw*l@f@^}ODeKq*^$k4xy?JXmfxO^2>PnfoBT(L!G^`IM>VCG6L zXA6hPT(xfC(_^anB|L3hgD-FX@Mxc*Z7^V$!a>g&;k+X3dre!RE?b#)u`Y5tqqBn? zB!vRp>{pMfn{_tX$|Xdxh?l%fYdi}pKAXx3k<9bjuPca1d_$imO}sBtS_enP6S~1; z-fzDX=ogH7>Y~JntCQbx?HucH$iJ8_?4&)rHfh`0+PGMIKuz;QRBM-$<#cDYzwInJ zGV9phO&QADXTDt)t?#BY`L!dR=}|>QMg+d^5&;Jp?@^+=<9pFI2Bjp{qld`P$s`Tl zXj>1~r+I2LkDOXRD)eOvf@ebmzP%New<{}xk?ldYZaAmq(xhJSXeUPVL;UdVSDWsG zij<>fFPK@M{F3GSk`G@Eod-cqiHdJa3t(<7DPkxI$^^7`QI;E>*&ZO^sft z?J<6VA?Nq?CAHABorR=y&Sq@%TpsQ+!YtZfcdJ29#}QGs2|T*21c}f+Vhu7OpUHrr zQ)Sv+nUJ1wX535Zuf_!`!-0^dsK?bV^HtCH#7I$dSVvJ#c>ZZ@DVW02U2TrscEJkG zcghi{17Fd@0p!2e%#QzJac6ej=sf1@1Fb6F1vCb=-R%gI~@kf*=dj0Uw2AL6+-x;yx=5 zA0b3M4ciS=I<+s~9m5@`7dd4K9c{8U-Bx*`^Ii&a0O?!(op!26I1a{9@N)1_L-j~@olKJD8k-nGT+<5ne=-;oFLN9 zn|KEETCFo1goa(q%3oh2@uPZ;-It+x!L!|&dw<;;^^Iw7KCoF$i;VZ~Z;{KL59v~F zOJ}ON@Bj8VjEAVF6j6xqi0A3Py8Qmu1}Hmy1N!a|QNv}nBqTCSN zED==6C%>JDU09jd-D>-$3>$#%CUn{_tL9010eR1FwN`2Uw!@>$k)KeZho`N0-eA$` z2&X-GW57YCye+VLd<~ackY772b}Gu_Pr>f_I{S^3e0cnnbSnG&wdWf(*ElMG6HtcP z!8Y9U#MQLrTy^!^WA(PO^5((%Soy|`_dUtHrRvG2QC@25bq%3K z@VH7MlUV;PTwbRud?$j1smIcWh%f%vftuElab{EUPbnMORlk)c-$HKmJ{4^ry_rdt zyx61_z%&`DUldUnP3YG8P+WCW8pbITG@+bCzzEwtU=(VRHsL|-)ovtCt3I&poE72t z0{_eg7Zdc|wG=D{TbvQR&jIlhR*g3ny?N6sU*^i&23Mc%Qx)Cq9=1+$5=elT_5H>Y z!I9F79mM}VY%@0wQ1Is<*DQ;O?7EZ;XPp#$HxloC z2&^x!F$weG-%n^g-$l55@rF&~vR`V^i#UTOp{1cgL0G`Wr}Dj6*@yOW#}}xM={4$5 z54w>2o-k;@nASJ>{1=dfQzQUWg=7#lpT}%7dn}Sxz@@@2_Rq&*$pl`hYLh9EueH@1aZS5B9Atx0qli#i$rX8Ye%;*) z0|w>?Bb&9#lqp^-fl`9+Yv=lGeqK9*^K;JY<1rPg$Kb~b5yV2eNorlYM3xgNa(db^0?oz={=7YsDXzC<9 zxxLt-sYL_aeWKY~eEGyqcfy~-N#Dyl@o)*51voz2_0QmM_3S!)K3FFr0$Rm~=1Hvz zSlppkXj?Tc^QK(wqISRn6J%iDz3OaG$hucf+fdX?C3;2cE1cj>sexDlp@$?ZNQ0ZWs8`l)SUgo5gi{1)9sI)e#+UcY!=cML1O0%jA} z9%kcAiY^~-@+dg`pdsbJLGh#zX(D4+;&07}vb_qn%K{~K$9vfrI>t(SmQegl^^VX= z_%Bj5@Th!^ChsNadC(neSMmwtS}0eoHOb8ci5wlWjU>q!cU0cx*jfTSl&V8;x>k`$g zxBYd0Asa~Q1lNOUx7+)=&?sN~4{VlK4Yz1FB`Yy*lsDbbN!KNR#0KfF%9u@LOIn|?6;z#WaR^`?BA6NG^KZ-m=aX*C2uTjp#mf_3@q{F_7j*0e(WD!_`2Lw7gtVMlb|F zU!)FzFH&Sej9&pdMFP)4MJlj^!RPC>hI=Ofb^lIncRl(E6&K$oH^Ys%_~G<5vfGXh z(AA{*N7+)Lvr`5W9XW$QIh=4#>%p&!U|c;P7ub*Zi*_sLc&PxWzhcLtW!}kY^^l#J zF1TL@Sa1N#Q&b9`M=?PqMcDsFa{*QMI)hU`QAg6Cyezkx2scM%7O9tYVI<;y4*m=m zC9>kbmdy>>Bb|%@6BV1$5nu*UL+)=nLvUfvkVWZi09}IiM807<@fh9BO)6H{1Rz>! za=&+rU60MP9fGsiL^qUnsD{HQ*e8eI^WNUhUBWWRyu5G3i;ZFeBF8`!E~ncy;d>>}+ij}U6J*PQ-!ckq z+Xwc_3yD`35xTgnbC1T~_Z6g>biU&giPI$i5*wpx&5_E3YWh;}XXE4DqSXl^9rqK^ zZPz(L=c5tD!Fb~@QvG=hmL|N|^5_hKuw>7fhnn|{m9h?=qzkmp$L>JEPP^^;(lcmp z1!Cd7Co+ukM_Muawztk?SN$X^p{q&yy1^5B3dP>eGNa|a+fYc{2nIm=fY9&h6T&jGZV^DgpyRl)8c7J zh=hhUy_#r>hvmt|H~BiTp^<_5cmCpzdpKmYr%o=L01hfRvRe!Gtjw1gDG--W?{}Tb z7yGr~izzF`brK@HiK>wu9zji)mY`h{W1R|>@4F^@Tx}HMWk<6W^5>Nm+MIxVBvhms zQaIJ_cpN;rCvsnF?SabIqNa2H#Pn3g`0t|>Et=%DODDfxg6dCvnLdgjQ~P3`IBbG1 z#1p(;UY^$7SGlj$$+0$t5s%|4XWAM9+-yVeEoiND>d7mRQsD0gZ6&$2kzUUKcz)>6_F%^E=N#5_?y^2sNW;?LH6 zH+KGzyepL^aJ5xrXY+6yocnqf7r(GYe7vvR+mx28y6NKmc79rAOzv97{Z{e)7gs?+ zvL!RlM?FdS5j)NdPl8NEEDjcS=iA#01D<3~9C0g8wWGaKBpV|u{;Sf`hF=np`*<~*{` z01@+hR+e6CLWuze0`mKCCsguhID+XjFIRBb8Mr1+H&>Y^wmWttj9^XK!kJ(kox%k_ zBU44p8*7v>r~Te=@+MTUSZs{)a^Gk9!TGgfU76eA-yeIr zSJ~Tv8m$F(FXPC_L?Q>5TVSOW^yI#euX=AhWK!%u1_Y@59|6$}F7p#z*rM@&M88cg zmyVzE(qG%U_LbBmqpBPTxDY;FIPzA5p!`Gw2`u-V$Uith_E7LgIU zUfnyO7*pSz-?nvg-}sJi!Z|xqaRPQ1_-hGsQ(~HZiP`eLS@EpExEKG~@+VH6yRJnO z|KseAd^68|bJtOl)~%Z1S5zYs;1Vm={J|cQS81wzK2q^^7PyG9_M#)5R1V^ zWR;PbgRogHlfkTH}8trv35PF1D14d0OxRSJ}34F6easq<4@1{Vn+O`Pa+Y%pCSC`pB`< zpy-bMr=FZT^W?d796@?k?Bt8-B@*D*H$MCh2|&N6Uij$gM@P(>{cZ2=?R*pRz*1as z)a`x0`u3+s@4o{K#IGpf@ssCK!g-&*GJDPr|IKlRX^(UCf-Oy+dCpsvB^jI6v<5a^qB z=M@-~%F1VqfLd_TX<3EmQnKAHw|7?-H)k++=-#?veB_}+XT?gnJ1fh(xsvGknTyMp ze9mcF@$W7GCvA34qf%>BQ1Xhh)`y5iBB%4xTg{lVkcuUH4xZE-%vPMMkXf(A8L71d z_z>TGZ1hgHO0jXH#5dlX|MrXt=+o@kGFujc4(*#^{=#dYfz|$Vx!IKR*WdXfJ0}kw z3`}Mz4<9?n+_?YjS2(w*@L*7G%htW11QHxLd;)Crjg2$r@LtY4shh2-^dCGgkpM1~ z%~Xet0JlMV+y!{nMnNp?1f0iM&O6tHsZ$R58j zT0T7S6?Pm6*mS_sSTy%d&bt66_n#>%NC_i|0z*z#X{vl+=zVFIC5sj8(u8O;a|$1s z`k@nrlS%nU-2AHorMj??HZ2-}Z>670+Yv>3+$CH$gtOUV1KZpVCx;&y!fuJ%QapC# zEro^p<44XkYnot=2pcr0C(`%o(mK3Z-~60HPA-E)4-Hns)#nu&AhY>J-AYBcE<`F7 z`&5JHAMUxM-q!_F!* zLBBrTpf5%aJ70RLd@a(O!Rh4pNU>XNp<4CSCq}hwmJ}DQlgp%VmBmKO@zcp$cOPK_ zsRS$*3!-#?CG2pxG%9(!=1m$V#)OB5hK7bD#YZK^MTCU}w`|c!DwDrHeY`I*0+P-h zTIHSodEbF!^B1rEa^afWZ|-(BIU`uBx_|OmnM|IMk+pLD-#G;aRe7pGF1Oko&%H4> zAvS_%zMNjfQDqp6W<-+kqHMhC`(^7M9(g0!yW*GK;~wA_IW1oK8~6;(44L}Evk#jr z)?>%dFk1leS$c9MoF}9>QZk!C`-TLuPBrp9vEm z8B%5fHq9G%!3F|+7|^d9BysDOO^%)9H~EC_fS>cAdOnB zLZv}{;O-C_KqAeUbT?PUIp=}t(=MkoI9L-Lq|M1I1jpD66Zl4W-=<0NC(c~V$jX;p zKCQ*;MK6nT#S*dI;X-Kb5sC7OjB0iM@zW{cp&E(P`M}uQi%qt_x9)4wI3A}pY#866 zZHr=k@$z+Bj-R}6`h2>}?(EmIJ@Q<)aqGdOXQfhEK|ztt?vPfn7R_!~DrD0pj)v6# zbm1D0-AQz<5^lSt|BN?2ZQ8g2oG0SUsc+5)wkhvNlfb7$N#>b|U;f`gk^LGE!}W^C(z8AsPH zTm9SUVFNi1brA}(?%luPht+?)_u4C*D3*^7RH~3Doyxnd>LtBkwTnEi&8ud2>d=ax zbN<2i(M=O1Vv*JEbh$jm#fD#gc=zTTdeUo5Y7PX_{jTq#(Wu~E**b8llbSrFsNPih zfNjQPHJBqKb@x4VN3X7Jnj|HNMUZVKNc8h5*}L{1U%75eN=Cj$BWQCkn1*1jGAvl* z-P@R-AL{h*u0AF@{FZyhgZVPCs8zE>MAR|S5u@&%64xlfW^*W&@-{6S55CEqo%)!` z!yzuPSuL;#1$q-?MA>8E-r2JE4Zle$5q+~_lRhV(dQzY;a@fFMHf=-H`u2;D5w~lI znoN}s484^amC4mjq3Xr_8%Jb`vEd=XY83=Rc&OcOYumE%%-5d`4GESjWGat6Qg5QtyNkwMOmXM8yWv-h(F={IJnxwJTMXFxe z2KH#27`^zb@44V8ky55nDU3$5Mytv?yy}~!8=iS~R#c+|x5r~PnojRn{KM)^QzpKp zY7paaxFk|3ECB)pQF*Tf^>9|3Ej~7~cbC>nSN~Cvo=rW8aE&1_^p?paE|>e4E&I=> zVmU!@^kVE9WGZ$kfvkn zMg#kGE+{Bm^5Y*lCad~#hL^eggMaym+kIV=`0kyqYt=lddEI(s_VY_Y~ig~c>)WH#FpV#2Q<+6N^WJ+xn^)=g3~a{k!5f8UXFGMUVO zUaHIOhOpQ8ror+L#_X@Y`Xx{7*a(x}@W=K;9ox62_1*-c_oX)nIGj$->2f+;;QR1f zd$nxQL?V%T18-4&e$lQ2Cx7~7M_!>pT}qkrj|wD`5YZ*6f^C^p%I^RtE6GonoYN@9xp}#8>UOJ1EAz-Dt~oO^Wq ydg&9B#jfF8(_Z;#-t6g2k5K0zTN+2PatL?rx3CN8Zkx zot8sK|uKuU@@Em5~-#dG+eG?B5^ayO%rO^tkXZ z2Le|KEmu{Lg)7+D+5DA=8OX$(T*ltm(p<&d*v!*uz+B+ftG5=`YFe&Z@}K!kLG~=h ze`#1e>>XdYU%e6#@^CaZwKaDoH!-)gb^ubIv~*CCTbltXH96&3pQ@A(!vv{O@f5CHX%{Ty24r{{xhk zyb`$>$l08nlZAuXl$DK*oQsQv?Gq;#7aJ2fJ1ZMIfc53e#mx4JkCTg!otymMK9n!o zoXsrwRKz9!P1nm6kkZQ4)sYVX0E59SU=9|Lvn7CymzVdi40d+r7Yb$$IUHWpTZ zz5QRi{z2{Hs$%{>Vf>fWE^3~R<^UCQ7m%B?=}UW9Q2mqn#drT_MSlrj(C{fbTfa1l zv7I=`)Xm=9!Bs{aNcmF3VrFf|CnnA=!O6wVDk;kIa>B;O`$>dVl#NH6n@fy?o%<8- zKV|$^yqug8B3!%@qCC9p>}+fjoV?szydoSDVjMgiVyx^UT>s>iad2@pb}%*nr(Ww9 zz5m85@_*#z6LU5AAZO9cKs{rAv+x%l_aWA5)I8=7 zGvL1@N?iA49UWVQ!Ha)a5>->{QD9YK`=i(^Y&R_Ao--Sar1g_7htA|ZGNQ^v#=?^R zv*-4)-U*BDwL|UB4!A@AxSjW;bu8UwdpJ_n&+m0mw7i1CsOkPiV?q!)1Vw=|fy9uS zk%58q`r_hiL_`F3DETK2CnqPzB$E%Z*l^i?;&c+!@FE|wv0tu4f>gv+KEPqfio6`e z>EJPB{#J;;)CZ~jrT$+k{!2y-ng16akr!qEhT=afd(rt<;=kAbN0k4m;$H;#zY+G= zVIvU|77*Q z19^P^zti_0fgm0k{?pa}*_C|E6(isxSp-_bjiiQ{7{!*3nfZO>v#YC$k7h_n zNVCo6jO!a47umYa zotN<+p$Zx%IY~LN>WI_ns!|`6kk8G{Nz2KJwU!)eYtPXsvjNS+Mc{~jLh*>PzXZmN;iJNob$SyRS|ZIsA`^zL%c6zWORxztU9 zvxSrLI7i$=8XDYy3C~YTe2#qXxadUXxE@9exv876`yAC+JDkL#|E<@bsc&WIx$juN z#Zh=kPTAVn-rdr4EGN2Fm#l?`=+$yWapG{RLjg_BK)KfM0280>hjlOc6P)X6r&j~NOa2_!wx_9uvg3jmzS=Ko=_6BEN*rN%*Xp{kY~25i&UyAL8i~4 zjNMAxNVe&s^M!c2^WZ=^Wdb%X)pz=0`Wv4syqoigCapFv`9xNR*Racgjt-$f{jVf~ ziWU~QqGDpxw+uR)q&EhhUS2v9o>9$DTSLjFli%cLTRq=nVq$%d&&XZw)l1Mw_{ogm znl5zblMY_?oRO3Xs=<+%K%~}BKk3jd5?nFuJ;#|PYJuv|w=TAov(ak!nBFyfyB(WV zleGBO?eL+Jmz_!WeXG6cc*?~@+!YLFPjV3XT#VQ7GAPd0d2>@zb{%=GVX0z5enP$p zt7vJ_x~Sc@o<4l?x!bclgu;4}vPH5H-O=mayC70F$eYn5{AbgPfU}FS4x?Ol6!w}) zX4LXpegU9BBJFzkuV1fhL)2_TxLon6cu8YpW2Z$)G7RW+b*SeE{}8Td-5hT>g0a^Jt3)R41@SXWYH;0(rj_$JBJR@xj0H| zhVbe*y6=F`8Q(}+8V+XSlkmpo{^&Ag-!iizhr}eupmi*|9~|A>Ovb1MgT-9UG!M9# zRYB<`i^GE-SH8Biv|L51sHi|_1Rl%x=;%g6IuyUO$JjstmBRNpgGsnD8kibMZQj== z6U^~dyE_s(_P!jNl@Pi-R9XtgOkJif9sY*1;1cb3SQ|wOp@GC68M!1&(^Ag0j45Vz%4u1z2 zXS<0z_pUHHF7xKPJ&bC_maBq(;2uD52JTPV$R-Vb6h!YX4qlUgicli8lhNR^HRrZQ zKWTkr`KZt=p^k-TFHsXGErGG0KxaOnOs!d=7sjC=gmnvlyE~KLqM&Fk(d0gx^NDhR z=}T!PaZHn;Z+5x#x6Hg{Fl)A*H8>3?gYxz~0$_UX8^3n6X6nWbmrW5nS8IvR(zL6x ziL+TBAg#kBE2U@Z@+c7;+_>8nakeoQ0YT_xLM*-~`TREuJU{yh{(!~e$_Rn{;oiNg z7cmDln^QsBrP=fM!<{rKS=cl@$(Q&)w^h3}^c%WG;mTZ@O&WdIGFvd!G^);5{h~#0 zCI56cRN1)JjC6W-E+H%|9D*gIdX^v9V4$5wk)=xNh5uZpU99TQz`z$R-Q1*G@f>hZ z+M{{VF_DxPYKDOQx81Ok%?Nu?p^CyycK{ygMf+^08Ga5bzxyL_>%;yKUja0h$qSiM zinkhkAB>kJ_1*tFt{=t#+Q)=)iny}fO_Avw($IyN-QT-t)-uTD=xyJf&4Ge^Tgo#Z zZ*K40@MGEDy`kM`+^HCFba7H;X>?tLa1%x<*Y{P4bM#K)-l5{@|m)pd49q&aU?JtY1DnRkB_Jbe8Rr!J(hs} zcA$(Sk*CwOJ>+73qcOOXnOgEZf?MCj_`Y0qG^cBTZM@5X;6y^PQ(1?Bvn<&7ji-|n z+p^CFbB5^5l(G)C{wT%w_^fglJk#d>-Lt`L<7_XzW*Xx*zs}*IAt`9ZpXRg5F-G?4 z=|n~ilNl*8ir)Y&^d>uph(uVdTSrcywcORo*zG$$@8cR<-H5#6mnoG`bVt&2F>_#n z;0K+z62TI`heuU3zL+OjqiX`-5D=^}9IP86aVB{u=i06N;X=f}xLK}skyUN4OoyUG zIp55k^Q4DI4(xrVZ?<_*=Q$|jU~}D75*L@$VixkIV`7?WJ9X=o8(}l_S);*D#HRd2 z4Uus(jM3FJNl8nNSPUc{0?Quyw)tXUW9Lmq9x{`W#-n1OMt<8~J9HJD`$1`KF`Ih! zgfaxrNntr$UxRRqun~k6-A`Yb8Au`a?&~!sF(wKbC<_-)RtLT{Bs3IJe;_ESoIlI= zJoRaBeLsbBz$-pIy-d6psX@LKHU1lPE;nJT-f2s~1|4BgA#ZwH8qiZYRi<3s_-kf~53WJ*5!X+b_< z7{^j3*i*zcJD0jJ8MML;B>}{=lp4hndp~F4X5lODyoc(013xPKD1xuyExZEvELD!> zeE6Z|IbFNdcjiK-IKXre>kj)EiL!AXtR6* zb819`JVJPw&QZ>&3u*RZZNZCf{45<0&On&H3kE*+ER)lUm?WL9F7*hpr{TyWa&NxG z=_yLBE}i@VNfvfUyYHRx9Y4sHaRM?AVO_w)7)Wwy893>9j82F&%SbCK*JhtZoRq7H_q+4c?4;?}<5RsO zpABj~B)CN9aBUY)DIAfRMn@0V_V-dai=QGCqq~1^D0U?qj!hp|*qh^_$$$0%%}s2f zaY`>{R=1uHIuAcRa4^Stee|gao1BmfRtuv{&YZ0U#YD^VO}yfGCmZXt8xV4OIAsaD z#va`^7$2S+Xqtp_L+deRy3fsrsy!zy;Nai!ZgTa0B>tuR7Qu8aX61l~npWheN4PZU zJnOQgveA+g_zYrL#=sDpkrpgP=7&P1NN7C}Y6Tw)acg+Kf`ppwpJIKPL>K3|6KMctD&YCfkKNZWE&K)%sW9sYI-cm)1&4SRWJJ3Um>8tuPV zEe$ifXwOqW`BB@diap3xO+7NZIFeS+v&nZxVXjWzf)AcT@EhjN4F`Q$J2dh5{|4$C^g0rnd0gzx1-`~*J+sivu;=I`- zfoGU^v6Qz_;9^X8)i}!&a<%h2t=;!NX9eR?XUT+p$K>}k+Jh{1wJH~6a}{THVuF~#x{44KqMY)k z8MHb4?9Z~Y&Q{N@tpctm^J3@)R!*^%6H<8G$qI%$^LljeBi-9rBb?@uru*^2Ea2r=yrmrZn1X(VuL!B)QT(k30WyJ^DbG&HU-8lOlPjBxU zqG`?bKw--DI+pPi8*=j<<2-|pT~GpixFlb|oZzHs3L z&q_<98Vx;Hlq2$A8gz4I)y(Fta|0DAFGjaWJ(aSuiAD7!WG%dnqC*84Al>jMv)FLx08CoJr|M<$D zDdF(Du~$eNx+tIzJ1aCHVM^>gyXv*mwIkSy%f{W=5yj`gBUXV=Qcp{1w`$dmE9RGg zs*t~bh^|<)w2i!+VwdiV4E<*DPSvqq%Pge{`?*>$I#=0>qqLwjHyFH>3j$@P;|>n0 zn3?4@%-3yi?HqXGkl+X?)In2OC0`f5buDULY^}0@>6lsWKy;`!78T0<@XVE3__Y1z zFV+OF_(c9HSl!r&V&})w;f)K)Wqi`URc!J5j;8s_oW8NSk=IN)?(i^O!&cbY#hI8; z-@IBnW9`pC(1bvIRh3f6qNRdStu2(rZgw15Qj|Z#BC6rAd}_3N2>v*er37v6+DY@? zvzhm;dxC!2M`;QA2zI@?vUG{wp`muXZ&;5kH{1M+*S~zd-lZgEisW;y5z@YX{p5wx zLM7T{f57z^j}-$^yG!sCxjmdngg^MLX4$i{QmKke1Fdm#cm6|ZrYJUM`Qt}y;H}|U z|L<7Z{dXn3L1ma|VV-gkc`=yHT{+GI4J>c1dvQ*k>Q3$^rrHbL&$^~VZgZ;goFsM9 zkZ3G{Yv);Q=m){f3tSY40q#d*VSdj`5VRHM8#GNl&t3|uI3_$YGQ+lWvT_UWv#Zn2 zeSZxq8XEYuwKe9C2_FTo`pNuv>4zEzvw){tS67#kF{Hq8f<0&@ndnzBSc3Ic*^Ep! z40hg~?9$Qm7Ja!=|7MhZ<^`%wkBwrBgF0}ITxxe5i}}p3MKS8 zYTv9I$|ZI6&OKcvZNQq?jnvfC3b6+TL$3dbIr36w14~k|Mjd2bu9~pg&6szMRH@QitGuhhgZJKR`;_D0Jz5G7kCu z`^h91%db%sy;1SaLNgPLaP%+2=_jj&@TVf6LHjnW2jDoTDu2 zFS5N%#zc|Av25S?rZsW#Y(CvJ!7PWSf#&jaQXfK z2{Wy{CDi!6)?Fc^FJhv9{;}|>O$a@NOe(r)NjEB*X<={s-`C;F=_L7h5^EDC;*wu)jiqu}tod(LP8z=^Gb9Uf z2J)isRrixdY((={OrphbNOnzY8mb?q@>3=alOmy^^p(X}u0d2sf0Z|U?y}7C`=;OG zey}rYX<(?IudKY{Vi%Dp4@{)Az|~mw_n%lQkZ!I^m5$@evWjlYid5Bi-{KKC+r-j1 za}~$G5y+)#*_UlJT6^)$g;WM@2(=(d=!J2r(mU_Zb*Tya#KkmKnv#8T#$cyv>qsZbc5xWP+s?%1eKj zU^4$K+)b8Bfq+Hbnw(a~YinLa3mYztw%XPNq@I_?#LL%?AqUoStLtl#4cunywHcnf zgyZ#;b1Xpl%3djHWppRVtwE@>1Ijubh)8e_kQblqt)c9 ztLn@8*B)9^LZ0lZ7#5ncC`_eNjXq1Sey^6g!@R9Q2#H<#up~5)H70 zVAE`bn5fLD2huAdwXH2I3Vf-H?6khLc(SJI=UZv6_vM4msZrAh8rIx7xrMi%B;YRL z@b+m4*-YU2A_=~FuJ{C3EJr6JO?uEl1l|#S>~lyi*V0g@0J?>v2S<{;mB^Ry!u4!3 z3sn4~PM$Wg*LA;ECW*Z$)39XYtIXe`q*63141^s{YCY^=0zCrPXEOO387OKIcpLDP z*M{WY?{-iNnTF_6^$2^d=3bexHrqqnrIIGiB4@XYnOjDi) z%Xh#&#(VX_!9f%Ztr2(Lc(x((lZJYsN%xW4A;?dciM#dF30uXSZ6mIio30Y(GTor&1pKF!*ZX*n+D=P%8M%ax!39v z9-dYo;cT6ZWaN#yP}5xl3v?9)?rx|wY*oIDsJ-GO1Bv!Y&ek&J)sxGP z4j`Pqya=DuHE*7sGMCttxbcz-Y3~|3`=Ovck;6xe9Cv4D=a3I_Se7HhGSFg)-2U`J zX0uebma7_*x0nPN0k^4&=nn}8bl+vLrSjqCTp zD{DFL`)o9WO#Z|&$Y1opp1xiSdHgmSPUn0}v(@`sddv#C)w%QATp@lk&au~AbM=gt z47x=@!h?alU&FO*H(n&~7w%=A*NhsEQSZk( zq&tFKW%x`EYl^ozhhOQ~LRTC~a9MOhPpc61aqX8pQc~r4Z6WYc;PaG9kX56j8ROqzQ(Yi^ucSi1j@#Df}jnM?d>V>H4PzM@Wy8wYCcD7|(@k znNBUHDWFx0n=~ve%wDBho}CxI<>f^!<$78`;PG&BCRty+#(IXAsFQ6crqgifsRy!C zxOUp^>q<*|(7yLzCrdz9A}SLr@N@Bqba3hEDbkTxAyzHPEck81B*h!QK9V&#De%?A zP@nO@MDNXhDS&Oe^E@+5hBiPfw2) zQ}omnE{JEidXKVZk=JrKlOsZ%+mb8{;2pq%6goC9g(+>8htZ4H!bFUJCKuDD#%Mm95Xtfq{%%m zZRaf~N4g_1Y&HTgk+swUHvNMhQFU3FKilMj=YFzSZpz155=45ov50IhM!+;M#mvhQ zoqtx<^Q47KjOBMmV|q5aaAMRK!clE|qR^)Q-M`AOlQ<)>m?eTst}P)Sr}y;YyuWUv zvNvzRq5IS{x<0%xHJ~W}ID^dn*oi*4XH%Si-5~MqnSY{8qClCQ0%bdA*=wQvuJ&mK zc5~LBRpm8pW48<;aH@8a9+U0w#1P#13YSx3lM~4oTxAn-`Dv&nAuiqIy3W$llHX^g zDIbT9kxnWn{t;JSSq9$Z&0^Im#1RDr^h4U6CmYh+8hN<7x75Pz(DKOjI504vj$?u4 zez+LW6GTls>o43kmAb#hGJOx}vm&eCP1g#<@`bpL{v7C-%)!SF3Mmi>N~2wl1a;hM zjNNqCjafT=cv<7jh#6Q5k8&G`gbgM`eijLL=sAoY??M{@Eco6OEbTWYz)sfcjQVn# zp_Hwmu_9GT3MK)RfPmNTh%}cd>X06O9l^qK9FWEJj-!$vA~5V|q2Bal*;hJLQ={PS zv{{Y&XXlS-`uN&b0$q^C}%T1+bd?(R>{Nsp*0SA4i*xFXecOGUAA8 zE^~Z_$|oHTIHRBu_n90wTd47E&6ZZH2b(*+ocBt*@9)78$U$RzUUIcm^Ho1F7)3$w z*32I0?4YR6roJ(WdmG!Q;tm%t;z;*vXVeR{O;CsDWesbB3RKj_*S?K6bsQaW?jO|7 z7?i&qbMU$&M}YKdcLdSVRal)LioNW$heRvQShKe@+u)6B@s`8b(`Hrdu{P=-B1}C= z4Gc29w9*4OA|}^=CT1k0M+ODKnOT_8aZgQXYh+vEp9eNzk{kL9iAzf6MAU@mwn!XU z|FH_5Gnp$q`j(4ARxG5a2zq)*t($RS{iwZqu`KbAKEMn zBq!E!Tu*$9u-=pNvZ?$5s{7&Z?)86LyyPIfQ2z_XOUlCE-TnWz_?yV^-yr`FB>xJ; ze^@b&jg3wDu^vNkRBmi+=^; zKdksyApXOOe+Am4NC*(wzd*mW^lcE>11>eF($^ub!S}= z2yg)YyY~-Z6qB|>TugA>-oXpiLJmYU@9*qh($|g(PT}>Yz@f~K#0XBQi1i`@002h{+?N#edvis@^ukIj-LFnwp&UZ7k_~-uDbY>> zYHE;+DFVq|TStk>K#FeDEPU;VTYSlhNfcaM22HE^9-Fu5tGRk0Ll8O~U2>|4G&m!v zD60}r^bOOBr>9rfQa5TgMJJt_LyPJc00Sd~+hP2fLYIHPYYe1$*L>eQO#QD*L#W94 z-hlieuPR%gaTpSu1bpxG=(beBTe5DdWO&R4^XOog;N;3eTm>*XO{T2fOHxPzs|GnW zk8s3Ke-GBA^7$Y}2QTd4-u#ru=`qC1i{3R~lhy3emqdx5XtXBuFX2mq2r$=on8UH$ zYt0r`=}BNjGdB-RqVP{j&=#*Pf(xGWq$?{!=1~%6WSA9$OMWH9oRDciI$O<6s;glq z{?qx$P_^rRxeVku(pY;sQ48*dLR*$#fuIo{9zVkEtw5#9yIcl%^TgRK)tS{Z@0%9N z@+#un{6u%M>rf-^IuN|d`ynC$^adIP=b_6c4+9XiFWF_};---|yTx#6dLg~A+T8NQ zcdE`;4644sSufed4fC>{5p!9bAFRs0w;ryxSq6(i=Vo2N9@%AO`x)7=Linmd;FVI6 zv6BV{OViD#ND^Q6z&DTIGvW*N&P?(ww<+a)cNIA7i;5bx!WcTn#Jn^zCkC9EYYxlk z>FGt>9bSj8!d?IVU`CVAz^2a9o`$gOYmci@u^idEq9`S7B;0~I6ra2^b=%j?c|4<|4M+LV>+K4UlZ-c$3wJ==5| z?57&z+3r~~Iz^L&n$gnzo(6s*?`(5(d%cD1DM*0alU9~Ywks%*fj8>cy zIkh!33W94I^LiK(w3~wGS(nJtLiad!Hew7lDIxy;4=r}6ENy#i4+7WfM>Q_@S8#?O zb=`3jOqJaUaLb3fdA-9=uMnSg3}rQ{u-@)hyt69?M4n9mD1yzyZBh?xV>@IZ3Gd;X z3#?#g?$$Hj200ARJZ}EmH+Ygw-D4xp_7PKVr%z*#w3;1eV6r`3OH<6vE5jzUlH`Q@ zvwT@4b1fGk?~~m6BkgGHUn^5%O|$Q6kj@1-Bj44wX(*A*W$L z!%7Zgib|vk4sRQ9Y*xOBXKJjK`|s@f+K@(!ec9pKf?YXw==6SHzuWD&b(^^mn}<~> z;pR3tS7szCJ=Jg%A1)D;dbctT4aUZ%2gFi^=t$I5{Zwk&Kxn{~kdUaleB?Qp zqIhz3s?Q^8YHI0jMOIdRK5`izf8BT)IO%j7M1Qk>k@aD=65a3ij+^Pm7->`pj6I*K zFr!1T*R^;J%B=WO7FwrH8Ez(qGl$4#m;$=OG3mk(taGUSm=9Nq%mBGTiz#yGjXF8r zQ<5{tqVYT_c;G8X%^X6cH>_#j7aTiU^Bi{~#b5RPzGc%w);oCB3%M4wS;))*k7j8% zm*JMWOuOqhW2o-rf4{h$);w-CK$dVx@U~xADIdIB-@>J+Z8OmEH#`2YVq@_B+H$GI zLY;->aQn|Hub~#GIM+=(c;nt& z?A-^)9ESmH(OHk7u6*@~7W1cL!nZ)WLaXjISn!mxBK4G&)ayasZmFFpGc&Up>l?0F zDyEi$u9jMk-md5-9`@7DH#%^OR+!B+{4Uu^#{+pYEK)Ld9#^)}U$`mj#5iWTmpn9eUHITDK+=9^V~F47yM!L8>I^D# za^J5<54{@t+_JgKjHETJL3rv8>Y0^w!uMxsUiJ4>#d#7#8C~iZUUNzWcun==Xa~!2 zlYusmx+8r)&3qQV6&ynm>sI@0z0F*5DOFCon1(*P$TY#RIabcZzCNwWN=jeOxPgH! z9|e)PK_GDkxf;>1JkC_T>987Sxr*GD8nl&XD?!P~)_0X1rxb#>H~gP{*O^fWop1!7 zOtRgR_4P_xum!SW_@E_qX--$O3v7p%M2?r%(2b^KLACz+^q#R5bl>|cVP%K*;~RQL zzyYhM%+31Z%ZU2}eigCov~1Xi*QPWSB}uW;E6ggmj#?l&46r=2Qn+ky{dh{V?p7)5 z&`R_{X)AgsNu&NZQ2bMkSO6~NP{s@`^Hn{=^$#e~{+7x}PI>7uXHSe%k}pWZK*TqL ztsZuBq_fY~4PU7l#tTGE8ls?0AnukozP!BrRiW>F*87lkc7Dmrv-co#bNN__;p*{{ z-*KDUS|(YUj>&jjs#|d6?KrtX!P zJh)-4@V0}Tmk}?m{;>CX>7K`-^?(;^Se%|eCY@PgYkU3-6aI6lLiJCYRl2g_dfd+= zMonS2ob{SeOq@SDP&FsB4B(?sWr|Z)QhTOJ5egp9jT3Q-hzM?KAs?U_q z6*3RDZNv5tO2Q*JKA&}T)VK{#EZ@O&)xUy8gS>MIQM)8_xlX>Y2vvr`(kt#LaB}l# zWNc#=pJxv|F1~v5MIrQ-yjogZ#m4zIe95$>Tk7xKNFgB5)11X@%We18`8+|mkFIo* zGV_68ju}&isKIEttHW{XryoMbb2o2<(g*KX7+>FIiy~F4ejz)5^LW}Ba^ch;wZUp7 zob^1K@7LVyJ{-w_Wm=Ys*?nT+pJlM)SD>lZvZ9{B2QhLe{nKhnEDTQr0%62DemV}OHc5pULx9v<``I^&3G1hO+Ds1MEt>Id5mOzp(>oRQ^VgQ&J_D^%&2=`$X1dQx~a&moekGCe%(_yAWVkM>5 zZo*&W(w3gxh%OFV4X&!VV1l1x?CrOn)`hbq^M(JYeA;@7aqf_}47cCW*027R^fL6} zZFC>nt+}!J4cMAdb-znIJG@hI*I}5t9Q|OJarDa;A9G#9)=Mh{OSZY&$tld^u1;}{ zaE^##_^TSOx$qbC?J*z1Hj^ATsmQbzgh4quHrb|uq2$Mis@+hVegdvMq2sn4!q%If z2)gr#FJS3c;fd-xnT=$=(fqhj1NZuA`3ARJT0P*q6TdqW6KHvet}FUCpfY9$f|w!@ zUaHh|9@$wKis)0uG;U?SwajrQYp-APwTLP-KWy)|k$2|6zK)^AbJz4w9Gj^1`e&Hi z$4{1(4b>m6aXzu2nKO;gFX~;TfQu=pV@pJSu0q`bSIY?S$Bhhl)0>D~A46&?oGpDu z5%Zlw%Q1P(U%g>oZ>SjTy)Jw=eWXxo*>$vE^TGC;I0{Vr zCw8Bum$yxJtGPZYZU(l8RS#Xqg9BSQ8Z{M94;hYZiqAu9HTV(j;o^kL!^3MIn>2dQ zU0Guh*r4}qFemP-L}e@SBxwgpWg7?1*O1HL!qWH6bk(h1UDI0Z&!}+l@cY!Rx;H1G zr%FtZ$M$+&NBM{vJE)guJzG%yuoI!QcL198E%WCl3IoCA--CdzP2EDHZOav#p~<j?S*2#L8fJCSkIrCDOsjp1Qalo;_;e)jsYcDTr9m`vmjSc4(c^rg~FW;pXc!G+830p~GPk?XKqXJM)UFPr|seuuQS@SKb940)Z;@H!V^* zKdYK|*__f%Jo`s9jbI>-D(64mTCgF6o6X0<4>$w`Qj=5fI!;JQ!kTIeOhzinj9`^y zCZmy-(}LLuy&|xnc4C4}yb5NcW8K=XMQxpU;pO~m(qY@bv{)flxD6(>3L_t0dAi8? zwJkhVbrf}03EPUiX3IbY@SL9ia4v)g4QBMam`NMB=z;9JE$y>nW#$GdXIXV@t7@|(QBG{6WA=Duqd(%74PAAW1M zw>a9zx6V^2KK;)u9 z-{(4MizVlUO3Z2u0v2cymEH(rO}5T|lH5C74?;H2PfSYE{a8`tZeGF1ML?Dnx*4SA zdNQr97||C^Rsd5=(gY|`)hu&LZjS@E3pE%R%jqSFC!`}FIr}^?B=Y`b#&}%*M6GB6 zKdqJzy)Bw*WDO$}kp($5&eNPfjEkKOZI5+TzuV}9*Jtoqh)amg5H79YSi9+xb8h5~ zfmn*TAmhK#5S!IoKSm?6QCX!}s4RSt#0n|1y^Ls^^(L!pYlR%nVU64n#MclpuGViY zE72<0>Q!Ql2V1A|3EG>q>8dxSRec$-FN?WP#6MxIihLkwr*4^{h}`y3M5_nX51o6m zwn1jlO3nG>#GHuEHW!na&o@E4J&TEDv)D6fYEzp z!P4AUgZ^M8F6fmNe!g%7Pq*zRs>|-#QY9P~8QWl%%YYS*OU3K*ASlb34x!PAecji3 zAqK#f>{bX|p@9$WlU_ZkF-B5)7duT{D$>A>@p388P9zqj1pr~TAY^V1@JaRgk-Z^n zMQl;Ru@PANKoozaX88N}mDZI)6Lhhsx3{ibLdMv{Qo52pB@)|({_f4h$=e5>R00Y`urMXd6x5g?yZC@Ty5t}a`12}{ z4c4NXh-%$#=`lzF&BFH z)SQ)c6s)c3B~i$N_Bafo8N%&?240fRqau6jhdFSgNCSJkzefOpMEyRs7llRAfV0&@ zGhW=Cvf&}XcoLl@I-fLk;&du@S{?)f2NHBa@bUHS{ec~%Ae@GrUw@Gx;l7umdg}OW zARVnJVV3L&tZxR7Spiki^*1`d-gikMtz3Y71IF5Kkg}I@nUaWs`z84VvU0Mp9{h#} zkX?L5aZM|>0!tEZc|l!DT4q#xh+8+&r-to zeF*AT($WhQ_9xqtwA@H)F<8A6PFlv&$#QT&R27xIS6s+R#Br?L_skBK3E1k_XtYbN z*t+gRg5pw^s}MzPu%&0{!#0W1hm+e5Ae8jK1pNI}2>X`&ns8+bJ|qqWn!YSa&Jm`# zrpo~YP-8mIk?QSM5Ww7W8vaGci%vD+sasMs43QJJw?;!VOLv;1UzYV68=HSEOb^*y zTWoLYdd*E=r*}_;mc0ClDpaXH`d*)gD_t5&FpbjsE|`vo5^hM-?pN+uTSUYtzjkG! z>2_Tnrxjnw4HDAJqcNaN1)vDdpcK#E4#Fp<=|S=A0CSYh=e|^|0O|JyL<3!!83po;n$dg+*1HWO) z&*PGyk)_%<*N#UM+)_32l}#-HcYOvjRat#zl_CaR;)V|4yiE4{ScP7I+q=@A5?mqkb)y;LgFp`;dw4H5Sav=_)%yt7h z6n@Tehwz05z_|gcGr4^y1bXqoe;GS8c} zYyT?a1Jc7eoYEdz!+xUf=Ab=dS&n4t;Jz|@)z~!jlPclQSzZk_>&;a3G+4!{P4njN zB`VTGR}#%){d04n3HkTm`p4JRVL;VD*`dM9hr}e`QWFf>o~8tQN%wZrCR5vy{Y1P( z&SsMljl(4@5bq~_hd$wZ{2 zh_QY(t~RNaHgO)6TOFK9k!RX)@ylee<`@&e%OgX=4%fXbaOgMz++pRuigcF zR9XOPQ*!%_SN5Aw{VY#7=a)Nf(*hO*U=RF_mpL3H?X*%Af06(@&!L(tX(1S5_a@g* z;(2*HtFWEpuBy(rmluM2UHsMCg>e1&XY+Cw)YYP`8mMAm0X zR`q?caXiZWEjQlHI|QrJSl}o&Ui0kUJ?1LLVaQ9LmGBZJWNAD#({s7?w0}|o7*?a@ zR<@!i%Bs~S7>Vh7YiY4QJ-Lub79*Tr#>ca6WggU-tNkoneiqj)iV{jL?+dBLTN?uz zOeRqqPG$M&7HCd?R!tO8Q+GiA$SANz>HM%Y>> zq1J*bnt-cl2Ct8pN)ITfJM+*&;CMW>H1s2-!zIbDeM<7T zXH+TFVS?Uq+uLP1A>q;nI&{PhnhR5=iYbP&8=gajW*+yOm;1Wj`R}bHNx-_M&PIW@ z)Xm@n6JOHe{lc?19(GS7R|KcGGp*bUwrgyj8Js7{*UA^XM09c3&JHg3zN&0HLlSp4 zt?#(%nRZ-81!O??N9g{$-=G+=pCFA*Vh7)GLL%EASZLxd5*UeIog6FUdtRNTxL!}E zc=W56ur4a6*rsk3s)d<**x|u z4E)aR)7`t2(!IB(6OwSHTWel>_08fv?Lqko$=a=p$`r2HNU=25#C?(z z&*%x<#WCS2AtVN#bWhJWKj~If3 zyI$D=wU(P4sq=(tW>0Gtl}XkAh;oayrg6~@pHvXk=vWPb9S01l1*bgS5#M-u=ZI@( zI$rdc0{qK@G8QIv9-Xe#9^VK) z4$|se-UJfS<+u`rd1|Yc>dA$(o~cGX6=B8907%L;b*zP0489J4AJ99PZ>2!BP8Vp8 z7ZqtN_05s>fnszf*snMqrqg3~cHHoXs~g=Pf4&Z}&1SnmpTcY5^ye?r1T#lst1n+P zS=#rl*fu~3z3cQ>1XrSsoBY(jDJB1AP2;hMd}`X=5pr7L;5gmQNH!g+2Tot5wX7=Y zzkB)Hv6!otaGmpZ-GboG4}55vQi{;?KElDpCR=}of1KY8FYoQ0Ha8A52~(zzXpZ1~ zVj*k&$eLq1b&>U^QRHTO(z?;=;c>svxwB1;an%-MvJp;wfVW06%s4re)k8gu$%W{| z_fWnS)UrDwvXr+>Zaeu}58R)Ta`vMaetp&%8!y{7nKcr4E#CTk ztElzZFLZOBG-AOMWej#Oh&=az^m=UZ zY6NUYc+MA@o=yj@I4#f7+9o@lv^Uyl*gpHUT{_X1L`qFivUd%iSa139U3-%lnhrZG z)oTe9_QZB@Ece-aqUaQ`?SpkvU~cZGe1bnNfGoVvYNd|jb(Qj;n%$zt*S_?VqRgz1 zuEY?Jx6E@vkO}Hpod)`Td16@|{Ru1xmdWORIEN9bg{vL6@J$2WZzR?cL>j4o7b#i)bVB=~a~~dck1%X? zH&oKMky#+8&fBa?D-vgrlBMThY&opjGD_(>KCnSh=jXG*&Sq!e%gBFqL&;uIZ@2aC zv;P&BJv@88xU#Y38;Ljo7C#ytp@m^Mj=lym1$^ZXH}yK^4I^xmzLwqdxvNdgzQ)Vz z{S!#&@Yzo5a~>{n-y^;dhsHYmPG-)S`J$yeak}IG7m^Zf?d*}-rKU@0;_^HWuYqFW z@9(4CWgd^mHI`p=mvHNKJ@(+uT43phvVpLT&+!S@l;c$yhh$T-EPJ` z>3Z9iGX<9AZ2O#T;jw9HvYgp)P$aLt>H;m|{LXj~tQY*SJargl`W(B2zM47J-04BI zoLEWrABe}G5mzENyHHzN8#l~DQArtw557R1RauKZ9;(%d!rYIa!*JD#+ zoCl*2P$-^xc_vo6LDP?UZEqt81LFFkdqas`gpB3WLw_Dw=k z23H$9=$K41;4npd6SvJc@0`2>x4XEc6ah-8M;i(d^Vk`mwK0Ui?p^V+K2Md4w8&_X? zj?_3o=*&WCQfuD(cmYb1(%{}L3SE@tHf+d16qlC6-|JO)`g)_duvo|HD$C2QBDrs0 zED{n^;qL8;n(K@))uyzRGn%_J;P&hP|IfNr7HF}uMEAud=|#X+tlOcF;p$Y0hwi)z z|E$}FIbZ({Pj$}Xl46|$nVO!ht>VUXf78O{D56r^1;$)G^m;n~_uPAk3=76Li~fR7 z*9hdt9k46qLJ-<3G=xY?##9e+p|n_oJNL%vUT$v>cVuPe;Hj5p;ItEm;=FTDvW{+X zRTkUtOV?oMzV8vQ1akSRje5?EBT z8jH^vuCA`?dJ?g5+kTWO3sX;`Q4oi57o3V;{#=7!=YIhN_vDNl@bGZc$15!_*VZc+ z9OJZXwiEx>yk9Oqp(p1sczEb-pMP|!E?SqU?mF*t_*tVc_S{htpF9L#bas?521xhT zj67*6H`jLDI#XQ+^y{sAbQ>BwZO^v#o%_xQEghFk<|gc^ZV!`}u-uux#MCnLEZVJ5 z8WD);7OB&IynK3SYw*!0-@&8Giqy01R+Q^WC9D=3#nsIXF2MmhW?0)oT}-zrDlCDQ z_rVFa-U3d$fgFS0cKZ>+(N;zgQ1hoOti;*sm5{g@s73cN@caH%ln}m9vhmD7s&4}f|BzAMJOeSYT zM>sOeJPV$aLt81lY!u9OwYg9drtA{M*%TgHi*ZSr*nJ>bPs(eV!CYCbxdj+}>;UwL z4#WEOyWp&jU6GVjwUmPsw(Q)GFXy}s`1IGQK3a8|G|tW*^`YDDQO|@H&YVP8iK0cw zt^PP%on5f%-)%}PxdLQ~p2M<8hA*}YXr0)OS*BnZD~XBNOm;v0lo9yqr+={JuaC7L zM0fexYJt@pe@%;uiQE)l<9eH+ksQ9qVU4t8ClFIFk#zvL`!YkGSS<1TUyye2lY8f2h|!5a;v`w2L)hY-|kwJ>dIp*VQjIoqE>5? zUT=YN>kEpCQK8&z4uRy9ZO-Z(6@@t%f9cuC%*@7?jXTlju&yWw4Z>L*F{3#C=m7}n za}v@yO`5WF>4FFPduwYnEi+fU%zCa#PY;9y2dHawu4eI8+6c83C7N{8AH3~yWGSok z#dp3!PD+L-RC|qADgiU&uZ@UM{3uYyWj14(DHg;;d6@0>->SxchlltdG;W*! zwjCdB;8=3bKD1WV+2`$+lW$47|*-r&KLBU zZ(4(NO+WndcYTd!x;X>KlbiA44Z-u(wXGSaZq8A2oI0&Cy2g(_{iYu3Xk zHvElgz4gAd#vi)phGuzIEN_Z1EyKpZ#C^K+#v11HrK`?KIgD4}Xh%s_)glB}yzAcdS&$OUuer z1(mME_W(iyec+YjW|l5@B2kd@$aTx%8GQ;>+vur)3q_P7L}Cfp7IB8yG*GfIK9i%Y5Hq~NvF!sn8T7VK%-8l)%*kQWqrstPaml@ZVW21RIGvkeU zX*ue~cHA~ycTPJ-%(&>tCDoN_U-;hVVG-^`;21{CHg)V8MMUro30)v+Z@*{%+1+*Wb>j|{i0*C z6mnjl?f$mgnzGd6yC+_OC#JruHW9cTW;>L-n{USl!f-co1Z{P z_b8Mq3yZF}yN5f%g8bpFtTI|!?1U*Tt3bZ8IvMAq6-oik&dIMf)|;y!UVi-}dP0oa z+;iqiGU>aNJ?mvv?zcK8DiUz^xT}$*T;G2ebBZ^%riq9eFbWBqzQf#ae!*oIovFTK zAqP_BuzKwe`23sS@#2$@tCESbgbBR75D*>=uc{Rst(I<437jg+v3UOL7^ zPZ6P9d>7RSa9lgbl;`B+;-}AFz!|5EsCPCLq5Z(gb2)(qMTi2&9%D0Gw$L$X&hhOn zz7#}JZh`J$zWVwLaQyIr=&dRqGi`G7^0f=T=Rh)6uHAxp%Cb9F15CUK?{Ty zB0FQ~c8f@MJeqrady5LCr;iu%3X1Uj+jHUW`W0uPs7fO$*P_PXIsA{k%iiAhjf1u< zLtBB60AKj}cpy45SjV3{lu(8S1!y<|8xp8I3PL z+(pV|cXE>$Wk-XqneC*$LdT=Ilg?Z8EvBVL5xnn~OK{B4{#rzsf9S0QtrAXpvWnIJ zZpF;c7b(lF1fE`v7fZ`DY0k({rgeID9yaev&_Y(6kc#8ZJPy6OMPT-Op922jaPoA6 zk2-c?tp@Y++Lh0t_qLa{nTC!HT*(u7> z^VOnMQc{KkiRsvPAYRA%O3KQWCFov<+1a z;i^QrxTIX2w*p@3_w0-;?2Ajrp4en&AR}K{yi7qVP0z%-joWb`Aw|z2$#jX*s*Wc! z6HzsxuDZ5r!xGi+oN$8{>6#5YkdU0A(~Clb{jK*RN#}yl$%WEriD%WgYzj?8XduFr zP$Z?K>z;3pr4I1(!H@wxaptID$jHdllT)PR7wLFoP3oJZg04G->WJRaICkg}=zn+& z4)4_!BaS&zxznEb^M|*Q%E>O$vXGUXgQV0f?AozU=YvIu2O;wCo+v0NM%Ty?oH%Br zzV6G$jKa_Xy%EdA;H7J^X5(%p_-+RcV`Rq;U3nkdp_Mv4s02?u@vcQ6qe79Nor~X> zug8$12FQGrf*?W(Yexr%@o^2BveI(xkB&X(c=YSrTM310ReaJ3>FHTmxo#W2{poL= z;O$+9+pW_El)%(xS<*UV+71Qqo1a(Ux4+h*vY-&R-+mQ_9eFtZH|bdfg$7tg&=i*< zE4NUIW(I~2?~lFvVr5kRm=I3D3Vi3&BxA z@DKDsL4H2&dF)NyxuOL}X#^+GMb#K-@6aFw2YOm9tujw1c(_&~F)>jIN+q%~(%|dq z3~zVlPS);*mlPLhb2ce28-)q!n780(tX;Pr`!;UEekD|{F3!56hM|CpvLY<|do6bF zPf`}4lM-Sj!WAXzdmuJ8TThe5c%+*WLA~~mTkWD&uCB*NT~}&asyePSN{aH~>sASO zmvT&>Itg9ELvZIKZy>+01U@LogO9(84_}{RwX_96=s5hp00RK>up@#V9=pW=0000< KMNUMnLSTa6BkiC7 diff --git a/resources/qml/JobSpecs.qml b/resources/qml/JobSpecs.qml index 6290cf58a3..ef6a77baef 100644 --- a/resources/qml/JobSpecs.qml +++ b/resources/qml/JobSpecs.qml @@ -28,8 +28,8 @@ Rectangle { property variant printDuration: PrintInformation.currentPrintTime; property real printMaterialAmount: PrintInformation.materialAmount; - width: 240 - height: 50 + width: 200 + height: 55 color: "transparent" function createFileName(){ @@ -76,7 +76,6 @@ Rectangle { TextField { id: printJobTextfield anchors.right: parent.right - anchors.rightMargin: UM.Theme.sizes.default_margin.width; height: UM.Theme.sizes.sidebar_inputFields.height width: base.width property int unremovableSpacing: 5 @@ -101,68 +100,61 @@ Rectangle { } } + Label{ + id: boundingSpec + anchors.top: printJobTextfield.bottom + anchors.right: parent.right + font: UM.Theme.fonts.small + color: UM.Theme.colors.text_subtext + text: "0.0 x 0.0 x 0.0 mm" + } + Rectangle { id: specsRow - implicitWidth: base.width - implicitHeight: UM.Theme.sizes.sidebar_specs_bar.height - anchors.top: printJobTextfield.bottom + anchors.top: boundingSpec.bottom + anchors.right: parent.right color: "transparent" - visible: base.progress > 0.99 && base.activity == true + //visible: base.progress > 0.99 && base.activity == true Item{ - id: time - width: childrenRect.width; + width: parent.width height: parent.height - anchors.left: parent.left - anchors.leftMargin: UM.Theme.sizes.default_margin.width - anchors.top: parent.top - visible: base.printMaterialAmount > 0 ? true : false + UM.RecolorImage { id: timeIcon - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left + anchors.right: timeSpec.left + anchors.rightMargin: UM.Theme.sizes.default_margin.width/2 width: UM.Theme.sizes.save_button_specs_icons.width height: UM.Theme.sizes.save_button_specs_icons.height sourceSize.width: width sourceSize.height: width - color: UM.Theme.colors.text_hover + color: UM.Theme.colors.text_subtext source: UM.Theme.icons.print_time; } Label{ id: timeSpec - anchors.verticalCenter: parent.verticalCenter - anchors.left: timeIcon.right - anchors.leftMargin: UM.Theme.sizes.default_margin.width/2 - font: UM.Theme.fonts.default - color: UM.Theme.colors.text - text: (!base.printDuration || !base.printDuration.valid) ? "" : base.printDuration.getDisplayString(UM.DurationFormat.Short) + anchors.right: lengthIcon.left + anchors.rightMargin: UM.Theme.sizes.default_margin.width + font: UM.Theme.fonts.small + color: UM.Theme.colors.text_subtext + text: (!base.printDuration || !base.printDuration.valid) ? "00h 00min" : base.printDuration.getDisplayString(UM.DurationFormat.Short) } - } - Item{ - width: parent.width / 100 * 55 - height: parent.height - anchors.left: time.right - anchors.leftMargin: UM.Theme.sizes.default_margin.width; - anchors.top: parent.top - visible: base.printMaterialAmount > 0 ? true : false UM.RecolorImage { id: lengthIcon - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left + anchors.right: lengthSpec.left + anchors.rightMargin: UM.Theme.sizes.default_margin.width/2 width: UM.Theme.sizes.save_button_specs_icons.width height: UM.Theme.sizes.save_button_specs_icons.height sourceSize.width: width sourceSize.height: width - color: UM.Theme.colors.text_hover + color: UM.Theme.colors.text_subtext source: UM.Theme.icons.category_material; } Label{ id: lengthSpec - anchors.verticalCenter: parent.verticalCenter - anchors.left: lengthIcon.right - anchors.leftMargin: UM.Theme.sizes.default_margin.width/2 - font: UM.Theme.fonts.default - color: UM.Theme.colors.text - text: base.printMaterialAmount <= 0 ? "" : catalog.i18nc("@label %1 is length of filament","%1 m").arg(base.printMaterialAmount) + anchors.right: parent.right + font: UM.Theme.fonts.small + color: UM.Theme.colors.text_subtext + text: base.printMaterialAmount <= 0 ? "0.0 m" : catalog.i18nc("@label %1 is length of filament","%1 m").arg(base.printMaterialAmount) } } } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 603caf8fc8..e14541147e 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -9,17 +9,8 @@ "size": 1.15, "family": "Proxima Nova Rg" }, - "default_allcaps": { - "size": 1, - "capitalize": true, - "family": "Proxima Nova Rg" - }, "small": { - "size": 0.75, - "family": "Proxima Nova Rg" - }, - "tiny": { - "size": 0.5, + "size": 1.0, "family": "Proxima Nova Rg" }, "caption": { From 6bfed194773b5eeffdeeab44cfe0c3f0fb1b1806 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 17 Nov 2015 16:51:40 +0100 Subject: [PATCH 07/44] Show slicing progress in SaveButton area instead of MessageStack Add separators to sidebar Tweak theme --- .../CuraEngineBackend/CuraEngineBackend.py | 8 +++--- resources/qml/JobSpecs.qml | 2 +- resources/qml/SaveButton.qml | 27 ++++++++++++++++--- resources/qml/Sidebar.qml | 24 ++++++++++++++--- resources/themes/cura/theme.json | 17 ++++++------ 5 files changed, 57 insertions(+), 21 deletions(-) diff --git a/plugins/CuraEngineBackend/CuraEngineBackend.py b/plugins/CuraEngineBackend/CuraEngineBackend.py index 8fa5441d1a..534a2831eb 100644 --- a/plugins/CuraEngineBackend/CuraEngineBackend.py +++ b/plugins/CuraEngineBackend/CuraEngineBackend.py @@ -134,11 +134,11 @@ class CuraEngineBackend(Backend): return #No slicing if we have error values since those are by definition illegal values. self.processingProgress.emit(0.0) - if not self._message: - self._message = Message(catalog.i18nc("@info:status", "Slicing..."), 0, False, -1) - self._message.show() - else: + if self._message: self._message.setProgress(-1) + #else: + # self._message = Message(catalog.i18nc("@info:status", "Slicing..."), 0, False, -1) + # self._message.show() self._scene.gcode_list = [] self._slicing = True diff --git a/resources/qml/JobSpecs.qml b/resources/qml/JobSpecs.qml index ef6a77baef..bd431e4572 100644 --- a/resources/qml/JobSpecs.qml +++ b/resources/qml/JobSpecs.qml @@ -76,7 +76,7 @@ Rectangle { TextField { id: printJobTextfield anchors.right: parent.right - height: UM.Theme.sizes.sidebar_inputFields.height + height: UM.Theme.sizes.sidebar_inputfields.height width: base.width property int unremovableSpacing: 5 text: '' diff --git a/resources/qml/SaveButton.qml b/resources/qml/SaveButton.qml index 46fd4cd224..e3f5f44224 100644 --- a/resources/qml/SaveButton.qml +++ b/resources/qml/SaveButton.qml @@ -14,23 +14,42 @@ Rectangle { property real progress: UM.Backend.progress; property bool activity: Printer.getPlatformActivity; Behavior on progress { NumberAnimation { duration: 250; } } - property int totalHeight: childrenRect.height + UM.Theme.sizes.default_margin.height*1.5 + property int totalHeight: childrenRect.height + UM.Theme.sizes.default_margin.height property string fileBaseName UM.I18nCatalog { id: catalog; name:"cura"} + Rectangle{ + id: progressBar + width: parent.width - 2 * UM.Theme.sizes.default_margin.width + height: UM.Theme.sizes.progressbar.height + anchors.top: parent.top + anchors.left: parent.left + anchors.leftMargin: UM.Theme.sizes.default_margin.width + radius: UM.Theme.sizes.progressbar_radius.width + color: UM.Theme.colors.progressbar_background + + Rectangle{ + width: Math.max(parent.width * base.progress) + height: parent.height + color: UM.Theme.colors.progressbar_control + radius: UM.Theme.sizes.progressbar_radius.width + visible: base.progress > 0.99 ? false : true + } + } + Rectangle{ id: saveRow width: base.width - height: saveToButton.height + (UM.Theme.sizes.default_margin.height / 2) // height + bottomMargin - anchors.top: parent.top + height: saveToButton.height + anchors.top: progressBar.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.left: parent.left Button { id: saveToButton property int resizedWidth - x: base.width - saveToButton.resizedWidth - UM.Theme.sizes.default_margin.width - UM.Theme.sizes.save_button_save_to_button.height + 2 + x: base.width - saveToButton.resizedWidth - UM.Theme.sizes.default_margin.width - UM.Theme.sizes.save_button_save_to_button.height + 3 tooltip: UM.OutputDeviceManager.activeDeviceDescription; enabled: base.progress > 0.99 && base.activity == true height: UM.Theme.sizes.save_button_save_to_button.height diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index be5cae80ee..17037cacc3 100644 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -52,6 +52,15 @@ Rectangle configureMachinesAction: base.configureMachinesAction; } + Rectangle { + id: headerSeparator + width: parent.width + height: UM.Theme.sizes.sidebar_lining.height + color: UM.Theme.colors.sidebar_lining + anchors.top: header.bottom + anchors.topMargin: UM.Theme.sizes.default_margin.height + } + ProfileSetup { id: profileItem manageProfilesAction: base.manageProfilesAction @@ -80,7 +89,7 @@ Rectangle text: catalog.i18nc("@label:listbox","Setup"); anchors.left: parent.left anchors.leftMargin: UM.Theme.sizes.default_margin.width; - anchors.top: header.bottom + anchors.top: headerSeparator.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height width: parent.width/100*45 font: UM.Theme.fonts.large; @@ -93,7 +102,7 @@ Rectangle height: UM.Theme.sizes.sidebar_header_mode_toggle.height anchors.right: parent.right anchors.rightMargin: UM.Theme.sizes.default_margin.width - anchors.top: header.bottom + anchors.top: headerSeparator.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height Component{ id: wizardDelegate @@ -145,7 +154,7 @@ Rectangle Loader { id: sidebarContents; - anchors.bottom: saveButton.top + anchors.bottom: footerSeparator.top anchors.top: profileItem.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.left: base.left @@ -172,6 +181,15 @@ Rectangle } } + Rectangle { + id: footerSeparator + width: parent.width + height: UM.Theme.sizes.sidebar_lining.height + color: UM.Theme.colors.sidebar_lining + anchors.bottom: saveButton.top + anchors.bottomMargin: UM.Theme.sizes.default_margin.height + } + SaveButton { id: saveButton; diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index e14541147e..64f66de2da 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -45,7 +45,7 @@ }, "colors": { - "text_default": [0, 0, 0, 255], + "text_default": [0, 0, 0, 255], "sidebar": [255, 255, 255, 255], "lining": [208, 210, 211, 255], @@ -64,6 +64,7 @@ "error": [255, 140, 0, 255], "sidebar_header_bar": [24, 41, 77, 255], + "sidebar_lining": [245, 245, 245, 255], "button": [24, 41, 77, 255], "button_hover": [70, 84, 113, 255], @@ -156,16 +157,15 @@ "sizes": { "window_margin": [1.0, 1.0], "default_margin": [1.0, 1.0], - "default_lining": [0.25, 0.25], + "default_lining": [0.08, 0.08], "logo": [9.5, 2.0], "sidebar": [30.0, 10.0], "sidebar_header": [0.0, 4.0], "sidebar_header_mode_toggle": [0.0, 2.0], - "sidebar_setup": [0.0, 2.6], - "sidebar_subParts": [0.0, 2.4], - "sidebar_specs_bar": [0.0, 2.2], - "sidebar_inputFields": [0.0, 1.9], + "sidebar_lining": [0.5, 0.5], + "sidebar_setup": [0.0, 2.0], + "sidebar_inputfields": [0.0, 2.0], "simple_mode_infill_caption": [0.0, 5.0], "simple_mode_infill_height": [0.0, 8.0], @@ -190,10 +190,11 @@ "button_lining": [0, 0], "progressbar": [26.0, 0.8], + "progressbar_radius": [0.4, 0.4], "progressbar_control": [8.0, 0.8], "progressbar_padding": [0.0, 1.0], - "scrollbar": [0.7, 0.5], + "scrollbar": [0.75, 0.5], "slider_groove": [0.5, 0.5], "slider_handle": [1.5, 1.5], @@ -207,8 +208,6 @@ "tooltip": [20.0, 10.0], "tooltip_margins": [1.0, 1.0], - "save_button_border": [0.06, 0.06], - "save_button_header": [0.0, 3.2], "save_button_text_margin": [0.3, 0.6], "save_button_slicing_bar": [0.0, 2.2], "save_button_label_margin": [0.5, 0.5], From a1123655ff12a986d84cb55f781ed7434c44922b Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 18 Nov 2015 11:24:21 +0100 Subject: [PATCH 08/44] Show scene boundingbox in JobSpecs --- cura/CuraApplication.py | 13 +++++++++++++ resources/qml/JobSpecs.qml | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index 75b6594c93..399898c641 100644 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -10,6 +10,7 @@ from UM.Scene.Platform import Platform from UM.Math.Vector import Vector from UM.Math.Matrix import Matrix from UM.Math.Quaternion import Quaternion +from UM.Math.AxisAlignedBox import AxisAlignedBox from UM.Resources import Resources from UM.Scene.ToolHandle import ToolHandle from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator @@ -97,6 +98,7 @@ class CuraApplication(QtApplication): self._i18n_catalog = None self._previous_active_tool = None self._platform_activity = False + self._scene_boundingbox = AxisAlignedBox() self._job_name = None self.getMachineManager().activeMachineInstanceChanged.connect(self._onActiveMachineChanged) @@ -240,18 +242,29 @@ class CuraApplication(QtApplication): requestAddPrinter = pyqtSignal() activityChanged = pyqtSignal() + sceneBoundingBoxChanged = pyqtSignal() @pyqtProperty(bool, notify = activityChanged) def getPlatformActivity(self): return self._platform_activity + @pyqtProperty(str, notify = sceneBoundingBoxChanged) + def getSceneBoundingBoxString(self): + return self._i18n_catalog.i18nc("@info", "%.1f x %.1f x %.1f mm") % (self._scene_boundingbox.width.item(), self._scene_boundingbox.depth.item(), self._scene_boundingbox.height.item()) + def updatePlatformActivity(self, node = None): count = 0 + scene_boundingbox = AxisAlignedBox() for node in DepthFirstIterator(self.getController().getScene().getRoot()): if type(node) is not SceneNode or not node.getMeshData(): continue count += 1 + scene_boundingbox += node.getBoundingBox() + + if repr(self._scene_boundingbox) != repr(scene_boundingbox): + self._scene_boundingbox = scene_boundingbox + self.sceneBoundingBoxChanged.emit() self._platform_activity = True if count > 0 else False self.activityChanged.emit() diff --git a/resources/qml/JobSpecs.qml b/resources/qml/JobSpecs.qml index bd431e4572..5f604411b5 100644 --- a/resources/qml/JobSpecs.qml +++ b/resources/qml/JobSpecs.qml @@ -106,7 +106,7 @@ Rectangle { anchors.right: parent.right font: UM.Theme.fonts.small color: UM.Theme.colors.text_subtext - text: "0.0 x 0.0 x 0.0 mm" + text: Printer.getSceneBoundingBoxString } Rectangle { From 2477617155fed6cacc7e8ecb8adb3e072a87db4f Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 18 Nov 2015 14:59:02 +0100 Subject: [PATCH 09/44] Reorient LayerView slider Fix toolbar tooltip collisions Refactor use of colors.text_default --- plugins/LayerView/LayerView.qml | 16 ++++---------- resources/qml/ProfileSetup.qml | 2 +- resources/qml/SidebarHeader.qml | 2 +- resources/qml/SidebarSimple.qml | 4 ++-- resources/qml/SidebarTooltip.qml | 2 +- resources/themes/cura/styles.qml | 36 ++++++++++++++++++-------------- resources/themes/cura/theme.json | 23 ++++++++++---------- 7 files changed, 40 insertions(+), 45 deletions(-) diff --git a/plugins/LayerView/LayerView.qml b/plugins/LayerView/LayerView.qml index 8e6a535b3d..ad363af4aa 100644 --- a/plugins/LayerView/LayerView.qml +++ b/plugins/LayerView/LayerView.qml @@ -10,14 +10,14 @@ import UM 1.0 as UM Item { - width: 250 - height: 250 + width: UM.Theme.sizes.button.width + height: UM.Theme.sizes.slider_layerview_size.height Slider { id: slider - width: 10 - height: 250 + width: UM.Theme.sizes.slider_layerview_size.width + height: UM.Theme.sizes.slider_layerview_size.height anchors.left: parent.left anchors.leftMargin: UM.Theme.sizes.slider_layerview_margin.width/2 orientation: Qt.Vertical @@ -30,14 +30,6 @@ Item style: UM.Theme.styles.layerViewSlider } - Rectangle { - anchors.left: parent.left - y: -UM.Theme.sizes.slider_layerview_background_extension.height - z: slider.z - 1 - width: UM.Theme.sizes.button.width - height: UM.Theme.sizes.slider_layerview_background_extension.height - color: UM.Theme.colors.slider_text_background - } Rectangle { anchors.left: parent.left anchors.verticalCenter: parent.verticalCenter diff --git a/resources/qml/ProfileSetup.qml b/resources/qml/ProfileSetup.qml index d9869d62b7..5f54f04228 100644 --- a/resources/qml/ProfileSetup.qml +++ b/resources/qml/ProfileSetup.qml @@ -81,7 +81,7 @@ Item{ text: catalog.i18nc("@label","Global Profile:"); width: parent.width/100*45 font: UM.Theme.fonts.default; - color: UM.Theme.colors.text_default; + color: UM.Theme.colors.text; } diff --git a/resources/qml/SidebarHeader.qml b/resources/qml/SidebarHeader.qml index 1d9c9f0562..046e74a7bf 100644 --- a/resources/qml/SidebarHeader.qml +++ b/resources/qml/SidebarHeader.qml @@ -52,7 +52,7 @@ Item anchors.leftMargin: UM.Theme.sizes.default_margin.width anchors.verticalCenter: parent.verticalCenter font: UM.Theme.fonts.default; - color: UM.Theme.colors.text_default; + color: UM.Theme.colors.text; } ToolButton { diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 5ade60d907..07657b02de 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -33,7 +33,7 @@ Item //: Infill selection label text: catalog.i18nc("@label","Infill:"); font: UM.Theme.fonts.default; - color: UM.Theme.colors.text_default; + color: UM.Theme.colors.text; anchors.top: parent.top anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.left: parent.left @@ -168,7 +168,7 @@ Item //: Helpers selection label text: catalog.i18nc("@label:listbox","Helpers:"); font: UM.Theme.fonts.default; - color: UM.Theme.colors.text_default; + color: UM.Theme.colors.text; } } Rectangle { diff --git a/resources/qml/SidebarTooltip.qml b/resources/qml/SidebarTooltip.qml index 8b7cc1c0dc..93075209ea 100644 --- a/resources/qml/SidebarTooltip.qml +++ b/resources/qml/SidebarTooltip.qml @@ -47,6 +47,6 @@ Rectangle { } wrapMode: Text.Wrap; font: UM.Theme.fonts.default; - color: UM.Theme.colors.text_default; + color: UM.Theme.colors.text; } } diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 967b936883..10f46de09a 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -59,18 +59,22 @@ QtObject { implicitWidth: UM.Theme.sizes.button.width; implicitHeight: UM.Theme.sizes.button.height; Rectangle { - anchors.left: parent.right - anchors.verticalCenter: parent.verticalCenter - color: UM.Theme.colors.button_text - width: control.hovered ? openFileLabel.width : 0; - height: openFileLabel.height - Behavior on width { NumberAnimation { duration: 100; } } + id: tool_button_background + anchors.top: parent.verticalCenter; + + width: parent.width; + height: control.hovered ? parent.height / 2 + label.height : 0; + Behavior on height { NumberAnimation { duration: 100; } } + opacity: control.hovered ? 1.0 : 0.0; Behavior on opacity { NumberAnimation { duration: 100; } } + Label { - id: openFileLabel + id: label anchors.bottom: parent.bottom text: control.text + width: UM.Theme.sizes.button.width; + wrapMode: Text.WordWrap font: UM.Theme.fonts.button_tooltip; color: UM.Theme.colors.button_tooltip_text; } @@ -357,12 +361,14 @@ QtObject { scrollBarBackground: Rectangle { implicitWidth: UM.Theme.sizes.scrollbar.width + radius: implicitWidth / 2 color: UM.Theme.colors.scrollbar_background; } handle: Rectangle { id: scrollViewHandle implicitWidth: UM.Theme.sizes.scrollbar.width; + radius: implicitWidth / 2 color: styleData.pressed ? UM.Theme.colors.scrollbar_handle_down : styleData.hovered ? UM.Theme.colors.scrollbar_handle_hover : UM.Theme.colors.scrollbar_handle; Behavior on color { ColorAnimation { duration: 50; } } @@ -463,9 +469,10 @@ QtObject { id: layerSliderGroove implicitWidth: control.width; implicitHeight: UM.Theme.sizes.slider_groove.height; + radius: width/2; color: UM.Theme.colors.slider_groove; - border.width: 1; + border.width: UM.Theme.sizes.default_lining; border.color: UM.Theme.colors.slider_groove_border; Rectangle { anchors { @@ -475,6 +482,7 @@ QtObject { } color: UM.Theme.colors.slider_groove_fill; width: (control.value / (control.maximumValue - control.minimumValue)) * parent.width; + radius: width/2 } } handle: Rectangle { @@ -485,7 +493,6 @@ QtObject { Behavior on color { ColorAnimation { duration: 50; } } TextField { id: valueLabel - property int unremovableSpacing: 5 property string maxValue: control.maximumValue + 1 placeholderText: control.value + 1 onEditingFinished: { @@ -498,19 +505,16 @@ QtObject { } validator: IntValidator {bottom: 1; top: control.maximumValue + 1;} visible: UM.LayerView.getLayerActivity && Printer.getPlatformActivity ? true : false - anchors.bottom: layerSliderControl.bottom - anchors.right: layerSliderControl.left - anchors.rightMargin: valueLabel.unremovableSpacing / 2 - anchors.bottomMargin: parent.width + (UM.Theme.sizes.default_margin.width / 2) - transformOrigin: Item.BottomRight + anchors.top: layerSliderControl.bottom + anchors.topMargin: UM.Theme.sizes.default_margin.width + anchors.horizontalCenter: layerSliderControl.horizontalCenter rotation: 90 style: TextFieldStyle{ textColor: UM.Theme.colors.setting_control_text; font: UM.Theme.fonts.default; background: Rectangle { - radius: 0 implicitWidth: control.maxValue.length * valueLabel.font.pixelSize - implicitHeight: UM.Theme.sizes.slider_handle.height + valueLabel.unremovableSpacing + implicitHeight: UM.Theme.sizes.slider_handle.height + UM.Theme.sizes.default_margin.width border.width: 1; border.color: UM.Theme.colors.slider_groove_border; } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 64f66de2da..d2a9e88e15 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -45,21 +45,20 @@ }, "colors": { - "text_default": [0, 0, 0, 255], "sidebar": [255, 255, 255, 255], - "lining": [208, 210, 211, 255], + "lining": [127, 127, 127, 255], "primary": [12, 169, 227, 255], - "primary_hover": [34, 150, 190, 255], + "primary_hover": [48, 182, 231, 255], "primary_text": [255, 255, 255, 255], "border": [127, 127, 127, 255], - "secondary": [205, 202, 201, 255], + "secondary": [245, 245, 245, 255], "text": [24, 41, 77, 255], "text_inactive": [174, 174, 174, 255], - "text_white": [255, 255, 255, 255], "text_hover": [35, 35, 35, 255], "text_pressed": [12, 169, 227, 255], + "text_white": [255, 255, 255, 255], "text_subtext": [127, 127, 127, 255], "error": [255, 140, 0, 255], @@ -118,10 +117,10 @@ "setting_control_border": [127, 127, 127, 255], "setting_control_text": [24,41,77, 255], "setting_control_depth_line": [162, 192, 227, 255], - "setting_control_hover": [139, 143, 153, 255], + "setting_control_hover": [127, 127, 127, 255], "setting_control_selected": [35, 35, 35, 255], "setting_control_revert": [127, 127, 127, 255], - "setting_unit": [174, 174, 174, 255], + "setting_unit": [127, 127, 127, 255], "setting_validation_error": [255, 57, 14, 255], "setting_validation_warning": [255, 186, 15, 255], "setting_validation_ok": [255, 255, 255, 255], @@ -130,8 +129,8 @@ "progressbar_control": [24, 41, 77, 255], "slider_groove": [245, 245, 245, 255], - "slider_groove_border": [139, 143, 153, 255], - "slider_groove_fill": [139, 143, 153, 255], + "slider_groove_border": [127, 127, 127, 255], + "slider_groove_fill": [127, 127, 127, 255], "slider_handle": [32, 166, 219, 255], "slider_handle_hover": [77, 182, 226, 255], "slider_text_background": [255, 255, 255, 255], @@ -146,12 +145,12 @@ "message_background": [255, 255, 255, 255], "message_text": [32, 166, 219, 255], - "message_dismiss": [139, 143, 153, 255], + "message_dismiss": [127, 127, 127, 255], "tool_panel_background": [255, 255, 255, 255], "per_object_settings_panel_background": [255, 255, 255, 255], - "per_object_settings_panel_border": [208, 210, 211, 255] + "per_object_settings_panel_border": [127, 127, 127, 255] }, "sizes": { @@ -198,9 +197,9 @@ "slider_groove": [0.5, 0.5], "slider_handle": [1.5, 1.5], + "slider_layerview_size": [1.0, 20.0], "slider_layerview_background": [4.0, 0.0], "slider_layerview_smalltext_margin": [0.3, 0.00], - "slider_layerview_background_extension": [0.0, 2.2], "slider_layerview_margin": [3.0, 3.0], "checkbox": [2.0, 2.0], From 16bbcac4f88ab145f0a5322a7518772dd9dc09cb Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 18 Nov 2015 17:39:47 +0100 Subject: [PATCH 10/44] Tweak ViewMode button icon and dropdown arrow --- resources/themes/cura/icons/viewmode.svg | 3398 +--------------------- resources/themes/cura/styles.qml | 5 +- resources/themes/cura/theme.json | 8 +- 3 files changed, 23 insertions(+), 3388 deletions(-) diff --git a/resources/themes/cura/icons/viewmode.svg b/resources/themes/cura/icons/viewmode.svg index b015d87df7..f83a195a21 100644 --- a/resources/themes/cura/icons/viewmode.svg +++ b/resources/themes/cura/icons/viewmode.svg @@ -1,3384 +1,18 @@ - - - - - - - - - -]> - - - - - - - - - - - - - - - - - - - - - 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 -KQJ4CZxK78wdl7ja7OlmXZnwypH9iXLvpogJR5IFb7QWT3Gc7MbcBgqzH0Cd3i4Kgxhn64hkbaUi -sijxCdp2Ko5DbtVmvakitBxfRuthBXrrkeDgfa5iyGlg3g/Lz3BarW9WdV3urRWRLoIajHIG6R/I -ONE7/Sx0/dxYjHlC1Znc9yuCcUxx9enhXMBdKju09BWLLGLsl+oMHZzWvMvPDosyEe9aRlExzaW5 -WWQS/ZrLAa0JWmSKH3oAWaO0yHQFgCFYQzXstCnmaj3ruwaBEtmjx1qzxaG3asTcwg3CaRQF16eH -nd4iWm4iz8U7wuHOdR1z86DcNy6sua+yt5aLgOJhbzNrQYcznB6+wBrVxR7gZ7N2lmIiSkRWM1u4 -edM7ePiGYXDuxM6dSFzVG3P3vMB0EvQwsi57OLMYSFPpxofWAguL8qxjH5L8JnS28cZ+s2xshBn1 -TmsAuCAaieo9bxK4IE8QPc+9mSDy2aBM6763noNERQR/8L6EwCxEt1TvX8gvivaZ3ueQxXzayo/u -ecw1pZc1TISUMjHobRVx1QI7wlsv8vGsu7QWjXzSbEO1Vo6QcUyB8W6Pwpvz/rWukOD7viLePTLC -UcjebtZhMqKzK6pfvBMlGOVc3qn9KpEPymnN/SznLA296SXBKL3xnvXGXHttUay9MwPTcNNYOmxG -tAyJPsrciRMsnhpe6da5il7EEh8/IwZEaRHoZ20YpUOom5/ezwYNYhfD5/eOo8VMta6k/iw/U7+z -nLWxeSdUH793TD36TiNNnw9vvmoT5j1a63ktvVxt+ku/V1sg7wvbLKP3j/Xl9h6zThLei7YlHWtZ -6yTmbW0LGVr724ZcvU2uk7W30nXSLy136y3irXl9I5X2vXmveZffZkuWbsC2dUvDYNvepbFwzQa8 -/7Bxi9Ki2DhK6WRcc57S8dg4VOmKbFzMuyc33M67LDtX9EbMzjlLw+aawXpjZ2fE3vrZmbW3iG6Y -ureSdubv3aZdQHhXapcjOrW5ebXLG29y7XLpO74hN8N2+eUNs13GeWPtRhR6A24Xmd6k28WqN/Nu -xK83/TYp7X3BXZCXM7XAL2dNMfBe5K48eM/yRsfw3uaui1j7840TlVbjJ0358W7rriB5V/ZGkfLu -7eU66/DuSpl3gm+UN28Y70qeN5V3LdCbzzfaojepd63SXVmueXq/+0ZDxTcw89cVWdh6/HDTdUeE -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 -gMu+zXtUuAtBQwPDXV4qiZihKd9AWrqW2elubYFssC6TPFc17zNRS1pA7eqncGybvdyxs5VcgrZg -KtCn/gS/HQW+aOVZJc9Iqj+UYjjM03EWxCM2cxyLldZeZ4ods4G99mVGco1vOw7r8Qvjg6gU6Nfn -93XfDM3rWo0iMy8dCUrJI5SfSAaCoNG8Fdvihf5xs6DJ6O6Ve9pPb34d9x5EG7Vp8/mw9MgRymHH -dNxpq/D8rHOznpT0nV4WE7t+uzT1/lM5Oi6fWlStk+NnPivtse3zZ9rtOF0hdN4ypguOm7f23GxH -H7fWnsDhUdv5kI6jZgbY3akNJsJx9sjHYTEo5ifF4Knf6GNsXNgYhuPix3AtPzJG9bgXY9yP+zXf -j3xfx3s07v981+IZvd7JcCO+Z4uwfvWv/+K77/7LM9381V//7Le//fY3v/rpX/3Xn/7Nt7/+9me/ -/fbnTD1lqpkiGd/zefti81z+wL/8+S9++91vntnrlz/9629/880zIf30f/nWp7Dtq3/9V88E9T6a -//ez//uZ9L7+7tf/8NOffPfNP+IcLvu3v+Byfvq3//Drb+1oeqNWRP2+77r+9hfPt/zvv/j5b/+T -nbB/38f/9W++/d0vvv3754r+y3/9V76Det299GOfK//Ft/91Xvf3H/2Tb//jb3/6i1/99H/6zXe/ -+u0fOvhvv/v1x7Hejnj9/p/4b7/9xd/9p9/+I3/j33z39/4biVs8TsD3ffSf/7fffve//vpn3/zi -V3/303/7hy6dg//Nb777+z/6k/+3L47Cv/zRf/fnf9V/+pe/+rmfan//xbd/94tfueV//Oq//+vv -fvnrn/38u29/869+lP5bpRcriLuVCJ+CQfjsWIS7fCxa8/5c//f/+PsfmTBMLJKP6R/05//8/Of/ -8xj//qt1+erfffV//l/LVz+3U/4m9lP5M10J6uObvvpJto4r+kn+hC9byyf86h/9kvs9/oufffOf -ub8aII8zU992fu//YD/632tj/Wwxnpnp+d/LXAGpZFPLe9C8dVgnwC/d+EyV07jZ3u/EsB3tlmFf -n2XqPuS8f/MjY5leSCVSiyxoODVnq5qE6Gez3gwoeApBditk05lUL9I+sBIKFKoPy3abRbOwHaOg -MPk3P4+yOgpgqddTGRTq0f2yo0zXng3HetonbdFpR0nQs0wcWlDFJoAqeTe1Bxym4EzAnCWXBsM1 -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 -GoqXDI6TzW1Y48kKegbJqrlSqsUqg+RBCdF8BkHq7gjR/CthQmS8twHJmm097KsOvFpcKP9PXi1P -6mEhH7rZJfPvvV3edYvr5bMbEkr3lX/hSHAUXIDQSs7oRD6Zk1FHsMhDkmsTG4lTA9flm386YE3l -fAgFqxxABA2kQzri+sP/LEbu/ywd/a9DFiT7/jAe/g5t4VbI4PkJVGuXy3GLwEEGeGzJJwefl+GX -CcDphtYTYM4IrJW1ZdmssXykkA+/1/Ew26M0AK9OjtIuAI+F3xvyJdvtDv/wwZa/Wc21foT+ttKa -XvNuU8zqaxN5PsFZ41oLIrtztlgMraI6bxV3h3fWgPVAidIAL/SJi2cHuedt3upEnPWgJdfeTq3O -xrWYg7PZTnjHaceZLQNqJgqrwSTLtsGJ5eqHW1Lt4kSsg2nbq8Nuv91MEcgJ3pTlsx45TvNWJ+Ls -+y259nRqtRnRavRn7xUW3NmvD/o6e++22FrkettRXRTdoXwtCYjoSsnUcEmOuGXmUvcf/VFlyxWp -nuEzkjXtypleuo7fHUukyENZbk7kDOAgQbn1QnZS1mi2oYHdH4oO8ff5hjYyRUmfBfI3a2JwElyc -Pved7V2AUK1XvdaZaLtetHK5ZnEa5qsDIfPwmial3ffvn9tvDpr9jgH3KKY6yUOZ2iBxbJIHVE4F -Ee5zWXQsCAzdQuxFDyeRevWZrk2KXZLe0QS61HZ7IPHIN12sRIb3+Sw1TCFy8uRjKQtx1dsNO7On -ebQaEiY+9YshIXjQj3E+JByZ0PsXQ0LSADh9MSTEQKAKyZBCGZyRCbidDapHNp8f54Na93frvfT+ -kziB+MXvb67/eHtxfXdx/dXRkZB5QLd/OPj9t/iL6+RPn//1N/9xcVmaOfhV/fHw3w5+9bffnfz+ -5vU5fvz1xdndxc316e0PH/rDJ4e//MfV5XX501Hp1u3Fl+/uzt/+y+H/OPjVp7e3p4snzr6+uHx9 -e36Nv/vDX/32+m76G/5z98O35/jbL8vG/cW/HP7qL9cXZ4X8eWn3+qv5o9+dXr6TZ7+/eH339Ycf -hmaCZ0tX9On/8ZRH9PX5xVdf3209JHv8wcf06W+/+PTyzekXbtuBXbwuT94zGjzz4CO5+fK/zs/u -Prt5d/269O2zm39sO6I33Dnl0bu3W6/X7J0HH+r2bHjPJDQj+seTHscPW4/jBxvPh7v7VKTk3bvb -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 -NxnwwXG7UbeRHhMcDfuEEvi8OyDEFLQRU+rWm4CVH1a0AeHZc4EUHjGvYyrsMcqm55tcyHcjj6wD -xbo9SnomV+y2m4R5/d7uvmU5CT9q/3L0yM7VI82B2BG3wZp4CGLDBGXQp4ftVrv6QiZrjbswCDSH -irt/XcbD74Fj1yqRs4ShuoPEYJ5MpW1beJzm4cdwjCjo8RV4H7uDklx4oufu1pHiJ5B5Ra+0V0bE -XOh4pc8+xil2a0SE15/qtp4x3tKfjsE4wraWJAUZvcEI8xONEmtnBK9TpMSgh1KZarddKfcPyn9a -3Q+xnpLtxYmepG//+2c51sruQi3KPuO6nNhyD9VYfVv+oowvOmcjI1FQlrFzxNHKCdEyOp0RDV0U -ZR2vX9TqOcfVo5vSPJt61LmwwycI//lhVSDGhWE0X+8n/qq/thI1EE8MufUWYVONBsatJn6Dw6QX -q59od3qNcpk8IP+zvKhPVSz8mGgzPXxHr/kgIFN2tlc6sW1VuoP6G4H0l5XwgICvBtgvMZFaiQoo -5ADR7rXdadWtwe8JyBWzfre6ULm17hnAEusDvqrT4fXbVqfcAw9M4q82vN1t5fEMKPF7vdEHSOV+ -j7RrP7FvW+3nBIHThyKwfSgQy/qzRzGow5FxzWrUX98Sz+TrxDOdkdVKx9anqt16Z4QnwLOusZkT -5Q6ZbsQpg92Y6IOgMUX5nj1j4HWP0a1LUe50hzkR5rAb6VH363fRewbRS5kDF7w6YqSuzI/DRzlq -g5w3ssi5codmvtWtKNfnWKVCQycXwhh5jSfYpxqlZPllN7GtSVOqQ+Qcfsks3WzdtnIzZ7ndXUPN -W0Dw8FLZPJq5WVz7sT67Wr5c2pNnjlLZre5282XluTW5V5xcmpvN1cvp3jftfKegTa9snW9vHCqb -Kwe3s4db3UFVLxakQyMpKsq0IPTyr/nnJeHb1up9emFrbanT2+rtS8sTya3Vg8mu3Wivn33eOTnY -WlOss1x9faOaT6dnn4dAHdSuCDw9X0yu6Nfb/fzrXVa5Ti1lmu2DXmb3rP+yuKFND4p55duP7Gtj -9sdEMv8k7FUCO/umm0/6xcnNbaaUS1+EA+Xbrdxtrb0V77ZWeunmYn4pOSjObdeeJpKIrOIjWdb8 -090PPdvYalyuPGVf+rkX/Vr0oONxJl8VD9631jZnf9B+yJB7ufvn+zb5a+Y9v1vbncymjNdvmbPU -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 - - + + + + + + + + + + + + diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 10f46de09a..347c9beb35 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -163,8 +163,9 @@ QtObject { id: tool_button_arrow opacity: !control.enabled ? 0.2 : 1.0 anchors.right: parent.right; - anchors.rightMargin: (UM.Theme.sizes.button.width - UM.Theme.sizes.button_icon.width - tool_button_arrow.width) / 2 - anchors.verticalCenter: parent.verticalCenter; + anchors.rightMargin: (UM.Theme.sizes.button.width - UM.Theme.sizes.button_icon.width) / 4 + anchors.bottom: parent.bottom; + anchors.bottomMargin: (UM.Theme.sizes.button.height - UM.Theme.sizes.button_icon.height) / 4 text: "▼"; font: UM.Theme.fonts.small; visible: control.menu != null; diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index d2a9e88e15..9d0a55a215 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -105,12 +105,12 @@ "scrollbar_handle_hover": [174, 174, 174, 255], "scrollbar_handle_down": [12, 159, 227, 255], - "setting_category": [238, 238, 238, 255], - "setting_category_disabled": [238, 238, 238, 255], - "setting_category_hover": [231, 231, 231, 255], + "setting_category": [255, 255, 255, 255], + "setting_category_disabled": [255, 255, 255, 255], + "setting_category_hover": [245, 245, 245, 255], "setting_category_active": [240, 248, 255, 255], "setting_category_active_hover": [233, 244, 245, 255], - "setting_category_text": [35, 35, 35, 255], + "setting_category_text": [24, 41, 77, 255], "setting_control": [255, 255, 255, 255], "setting_control_highlight": [245, 245, 245, 255], From 66782d41f7b5ce84af86e23d802764936e55bd64 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 19 Nov 2015 12:01:16 +0100 Subject: [PATCH 11/44] Theme advanced mode controls Unify down-arrows --- resources/themes/cura/styles.qml | 36 ++++++++++++++++++-------------- resources/themes/cura/theme.json | 12 +++++------ 2 files changed, 26 insertions(+), 22 deletions(-) diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 347c9beb35..9eb7c5f156 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -34,10 +34,11 @@ QtObject { elide: Text.ElideRight; anchors.left: parent.left; anchors.leftMargin: UM.Theme.sizes.setting_unit_margin.width - anchors.right: separationLine.left; + anchors.right: downArrow.left; anchors.verticalCenter: parent.verticalCenter; font: UM.Theme.fonts.default } +/* Rectangle{ id: separationLine width: 1 @@ -48,6 +49,7 @@ QtObject { anchors.top: parent.top z: parent.z + 1 } +*/ } label: Label{} } @@ -60,15 +62,12 @@ QtObject { implicitHeight: UM.Theme.sizes.button.height; Rectangle { id: tool_button_background - anchors.top: parent.verticalCenter; + anchors.top: parent.bottom; width: parent.width; - height: control.hovered ? parent.height / 2 + label.height : 0; + height: control.hovered ? label.height : 0; Behavior on height { NumberAnimation { duration: 100; } } - opacity: control.hovered ? 1.0 : 0.0; - Behavior on opacity { NumberAnimation { duration: 100; } } - Label { id: label anchors.bottom: parent.bottom @@ -159,17 +158,21 @@ QtObject { } Behavior on color { ColorAnimation { duration: 50; } } - Label { + + UM.RecolorImage { id: tool_button_arrow opacity: !control.enabled ? 0.2 : 1.0 anchors.right: parent.right; anchors.rightMargin: (UM.Theme.sizes.button.width - UM.Theme.sizes.button_icon.width) / 4 anchors.bottom: parent.bottom; anchors.bottomMargin: (UM.Theme.sizes.button.height - UM.Theme.sizes.button_icon.height) / 4 - text: "▼"; - font: UM.Theme.fonts.small; + width: UM.Theme.sizes.standard_arrow.width + height: UM.Theme.sizes.standard_arrow.height + sourceSize.width: width + sourceSize.height: width visible: control.menu != null; color: UM.Theme.colors.button_text + source: UM.Theme.icons.arrow_bottom } } } @@ -347,7 +350,7 @@ QtObject { sourceSize.width: width sourceSize.height: width color: UM.Theme.colors.setting_category_text - source: control.checked ? UM.Theme.icons.arrow_top : UM.Theme.icons.arrow_bottom + source: control.checked ? UM.Theme.icons.arrow_bottom : UM.Theme.icons.arrow_right } } } @@ -389,6 +392,7 @@ QtObject { controlColor: UM.Theme.colors.setting_control; controlHighlightColor: UM.Theme.colors.setting_control_highlight; controlBorderColor: UM.Theme.colors.setting_control_border; + controlBorderHighlightColor: UM.Theme.colors.setting_control_border_highlight; controlTextColor: UM.Theme.colors.setting_control_text; controlFont: UM.Theme.fonts.default; @@ -411,8 +415,8 @@ QtObject { color: control.hovered ? UM.Theme.colors.checkbox_hover : UM.Theme.colors.checkbox; Behavior on color { ColorAnimation { duration: 50; } } - border.width: 1 - border.color: UM.Theme.colors.checkbox_border; + border.width: UM.Theme.sizes.default_lining.width; + border.color: control.hovered ? UM.Theme.colors.checkbox_border_hover : UM.Theme.colors.checkbox_border; UM.RecolorImage { anchors.verticalCenter: parent.verticalCenter @@ -442,7 +446,7 @@ QtObject { implicitHeight: UM.Theme.sizes.slider_groove.height; color: UM.Theme.colors.slider_groove; - border.width: 1; + border.width: UM.Theme.sizes.default_lining.width; border.color: UM.Theme.colors.slider_groove_border; Rectangle { @@ -516,7 +520,7 @@ QtObject { background: Rectangle { implicitWidth: control.maxValue.length * valueLabel.font.pixelSize implicitHeight: UM.Theme.sizes.slider_handle.height + UM.Theme.sizes.default_margin.width - border.width: 1; + border.width: UM.Theme.sizes.default_lining.width; border.color: UM.Theme.colors.slider_groove_border; } } @@ -535,8 +539,8 @@ QtObject { implicitHeight: control.height; implicitWidth: control.width; - border.width: 1; - border.color: UM.Theme.colors.setting_control_border; + border.width: UM.Theme.sizes.default_lining.width; + border.color: control.hovered ? UM.Theme.colors.setting_control_border_highlight : UM.Theme.colors.setting_control_border; color: UM.Theme.colors.setting_validation_ok; diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 9d0a55a215..644d6d3f05 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -113,12 +113,11 @@ "setting_category_text": [24, 41, 77, 255], "setting_control": [255, 255, 255, 255], - "setting_control_highlight": [245, 245, 245, 255], + "setting_control_highlight": [255, 255, 255, 0], "setting_control_border": [127, 127, 127, 255], - "setting_control_text": [24,41,77, 255], + "setting_control_border_highlight": [12, 169, 227, 255], + "setting_control_text": [24, 41, 77, 255], "setting_control_depth_line": [162, 192, 227, 255], - "setting_control_hover": [127, 127, 127, 255], - "setting_control_selected": [35, 35, 35, 255], "setting_control_revert": [127, 127, 127, 255], "setting_unit": [127, 127, 127, 255], "setting_validation_error": [255, 57, 14, 255], @@ -136,8 +135,9 @@ "slider_text_background": [255, 255, 255, 255], "checkbox": [255, 255, 255, 255], - "checkbox_hover": [245, 245, 245, 255], + "checkbox_hover": [255, 255, 255, 255], "checkbox_border": [127, 127, 127, 255], + "checkbox_border_hover": [12, 169, 227, 255], "checkbox_mark": [24, 41, 77, 255], "checkbox_text": [24, 41, 77, 255], @@ -182,7 +182,7 @@ "standard_list_lineheight": [1.5, 1.5], "standard_list_input": [20.0, 25.0], - "standard_arrow": [0.6, 0.6], + "standard_arrow": [0.8, 0.8], "button": [4, 4], "button_icon": [3, 3], From 101df0035d4c253638293793b1b2ca207ed654ae Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 19 Nov 2015 14:06:29 +0100 Subject: [PATCH 12/44] Restyle simple mode Infill controls Tweak scrollbar colors --- resources/qml/SidebarSimple.qml | 29 +++++++++++++++++------------ resources/themes/cura/styles.qml | 2 +- resources/themes/cura/theme.json | 11 ++++++----- 3 files changed, 24 insertions(+), 18 deletions(-) diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 07657b02de..ea3a41c09d 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -41,7 +41,7 @@ Item } Label{ id: infillCaption - width: infillCellLeft.width - UM.Theme.sizes.default_margin.width + width: infillCellLeft.width - UM.Theme.sizes.default_margin.width * 2 text: infillModel.count > 0 && infillListView.activeIndex != -1 ? infillModel.get(infillListView.activeIndex).text : "" font: UM.Theme.fonts.caption wrapMode: Text.Wrap @@ -57,10 +57,9 @@ Item height: childrenRect.height; width: base.width / 100 * 55 - spacing: 12 + spacing: UM.Theme.sizes.default_margin.width - anchors.right: parent.right - anchors.rightMargin: UM.Theme.sizes.default_margin.width - (UM.Theme.sizes.default_margin.width/4) + anchors.left: infillCellLeft.right anchors.top: parent.top anchors.topMargin: UM.Theme.sizes.default_margin.height @@ -92,29 +91,35 @@ Item Rectangle{ id: infillIconLining - width: infillCellRight.width / 3 - UM.Theme.sizes.default_margin.width; + width: (infillCellRight.width - 2 * UM.Theme.sizes.default_margin.width) / 3; height: width - border.color: infillListView.activeIndex == index ? UM.Theme.colors.setting_control_text : UM.Theme.colors.setting_control_border - border.width: infillListView.activeIndex == index ? 2 : 1 - color: infillListView.activeIndex == index ? UM.Theme.colors.setting_category_active : "transparent" + border.color: (infillListView.activeIndex == index) ? UM.Theme.colors.setting_control_selected : + (parent.hovered ? UM.Theme.colors.setting_control_border_highlight : UM.Theme.colors.setting_control_border) + border.width: UM.Theme.sizes.default_lining.width + color: infillListView.activeIndex == index ? UM.Theme.colors.setting_control_selected : "transparent" - Image { + UM.RecolorImage { id: infillIcon anchors.fill: parent; - anchors.margins: UM.Theme.sizes.default_margin.width / 2 + anchors.margins: UM.Theme.sizes.default_margin.width sourceSize.width: width sourceSize.height: width source: UM.Theme.icons[model.icon]; + color: (infillListView.activeIndex == index) ? UM.Theme.colors.text_white : UM.Theme.colors.text } MouseArea { anchors.fill: parent onClicked: { - infillListView.activeIndex = index - UM.MachineManager.setSettingValue("infill_sparse_density", model.percentage) + if (infillListView.activeIndex != index) + { + infillListView.activeIndex = index + UM.MachineManager.setSettingValue("infill_sparse_density", model.percentage) + } } + cursorShape: (infillListView.activeIndex != index) ? Qt.PointingHandCursor : Qt.ArrowCursor } } Label{ diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 9eb7c5f156..d1520f318d 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -13,7 +13,7 @@ QtObject { background: Rectangle { color: UM.Theme.colors.setting_control border.width: 1 - border.color: UM.Theme.colors.setting_control_border + border.color: control.hovered ? UM.Theme.colors.setting_control_border_highlight : UM.Theme.colors.setting_control_border UM.RecolorImage { id: downArrow anchors.verticalCenter: parent.verticalCenter diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 644d6d3f05..3e52fe0427 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -100,19 +100,20 @@ "action_button_disabled_text": [127, 127, 127, 255], "action_button_disabled_border": [127, 127, 127, 255], - "scrollbar_background": [245, 245, 245, 255], - "scrollbar_handle": [12, 159, 227, 255], - "scrollbar_handle_hover": [174, 174, 174, 255], + "scrollbar_background": [255, 255, 255, 255], + "scrollbar_handle": [24, 41, 77, 255], + "scrollbar_handle_hover": [12, 159, 227, 255], "scrollbar_handle_down": [12, 159, 227, 255], "setting_category": [255, 255, 255, 255], "setting_category_disabled": [255, 255, 255, 255], "setting_category_hover": [245, 245, 245, 255], - "setting_category_active": [240, 248, 255, 255], - "setting_category_active_hover": [233, 244, 245, 255], + "setting_category_active": [255, 255, 255, 255], + "setting_category_active_hover": [245, 245, 245, 255], "setting_category_text": [24, 41, 77, 255], "setting_control": [255, 255, 255, 255], + "setting_control_selected": [24, 41, 77, 255], "setting_control_highlight": [255, 255, 255, 0], "setting_control_border": [127, 127, 127, 255], "setting_control_border_highlight": [12, 169, 227, 255], From 3a8de56f662d38196fe8efb70326d1580a6c95e8 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 19 Nov 2015 17:57:20 +0100 Subject: [PATCH 13/44] Fix cursorShape for sidebar controls --- resources/qml/ProfileSetup.qml | 6 ++++++ resources/qml/SaveButton.qml | 12 ++++++++++++ resources/qml/Sidebar.qml | 7 +++++++ resources/qml/SidebarHeader.qml | 6 ++++++ resources/qml/SidebarSimple.qml | 13 ++++++++++++- 5 files changed, 43 insertions(+), 1 deletion(-) diff --git a/resources/qml/ProfileSetup.qml b/resources/qml/ProfileSetup.qml index 5f54f04228..2e22b06a24 100644 --- a/resources/qml/ProfileSetup.qml +++ b/resources/qml/ProfileSetup.qml @@ -96,6 +96,12 @@ Item{ tooltip: UM.MachineManager.activeProfile style: UM.Theme.styles.sidebar_header_button + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } + menu: Menu { id: profileSelectionMenu diff --git a/resources/qml/SaveButton.qml b/resources/qml/SaveButton.qml index e3f5f44224..b0f5943e67 100644 --- a/resources/qml/SaveButton.qml +++ b/resources/qml/SaveButton.qml @@ -61,6 +61,12 @@ Rectangle { UM.OutputDeviceManager.requestWriteToDevice(UM.OutputDeviceManager.activeDevice, Printer.jobName) } + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } + style: ButtonStyle { background: Rectangle { //opacity: control.enabled ? 1.0 : 0.5 @@ -102,6 +108,12 @@ Rectangle { enabled: base.progress > 0.99 && base.activity == true //iconSource: UM.Theme.icons[UM.OutputDeviceManager.activeDeviceIconName]; + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } + style: ButtonStyle { background: Rectangle { id: deviceSelectionIcon diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index 17037cacc3..3428996bf4 100644 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -117,6 +117,13 @@ Rectangle checkable: true; checked: base.currentModeIndex == index onClicked: base.currentModeIndex = index + + MouseArea { + anchors.fill: parent + cursorShape: checked ? Qt.ArrowCursor : Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } + style: ButtonStyle { background: Rectangle { border.color: control.checked ? UM.Theme.colors.toggle_checked_border : diff --git a/resources/qml/SidebarHeader.qml b/resources/qml/SidebarHeader.qml index 046e74a7bf..4209cc11c5 100644 --- a/resources/qml/SidebarHeader.qml +++ b/resources/qml/SidebarHeader.qml @@ -66,6 +66,12 @@ Item anchors.verticalCenter: parent.verticalCenter style: UM.Theme.styles.sidebar_header_button + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } + menu: Menu { id: machineSelectionMenu diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index ea3a41c09d..d35610bed6 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -192,6 +192,12 @@ Item text: catalog.i18nc("@option:check","Enable Skirt Adhesion"); style: UM.Theme.styles.checkbox; + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } + checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.adhesion_type == "brim" : false; onClicked: { @@ -205,9 +211,14 @@ Item //: Setting enable support checkbox text: catalog.i18nc("@option:check","Enable Support"); - style: UM.Theme.styles.checkbox; + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } + checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.support_enable : false; onClicked: { From 5b01ce7f9604a6b071a681373d0bfe6c57a89026 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 24 Nov 2015 10:53:09 +0100 Subject: [PATCH 14/44] Hide sidebar header for now --- resources/qml/SidebarHeader.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/SidebarHeader.qml b/resources/qml/SidebarHeader.qml index 4209cc11c5..c01e3a144c 100644 --- a/resources/qml/SidebarHeader.qml +++ b/resources/qml/SidebarHeader.qml @@ -19,7 +19,7 @@ Item Rectangle { id: settingsModeRow width: base.width - height: UM.Theme.sizes.sidebar_header.height + height: 0 anchors.top: parent.top color: UM.Theme.colors.sidebar_header_bar } From 9cd4419e1a6210e96a1f2acbe07335fe798b84c7 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 24 Nov 2015 11:11:06 +0100 Subject: [PATCH 15/44] Fix simple mode infill buttons hover border --- resources/qml/SidebarSimple.qml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index d35610bed6..ba51f69d6b 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -95,7 +95,7 @@ Item height: width border.color: (infillListView.activeIndex == index) ? UM.Theme.colors.setting_control_selected : - (parent.hovered ? UM.Theme.colors.setting_control_border_highlight : UM.Theme.colors.setting_control_border) + (mousearea.containsMouse ? UM.Theme.colors.setting_control_border_highlight : UM.Theme.colors.setting_control_border) border.width: UM.Theme.sizes.default_lining.width color: infillListView.activeIndex == index ? UM.Theme.colors.setting_control_selected : "transparent" @@ -111,6 +111,7 @@ Item } MouseArea { + id: mousearea anchors.fill: parent onClicked: { if (infillListView.activeIndex != index) @@ -119,6 +120,7 @@ Item UM.MachineManager.setSettingValue("infill_sparse_density", model.percentage) } } + hoverEnabled: true cursorShape: (infillListView.activeIndex != index) ? Qt.PointingHandCursor : Qt.ArrowCursor } } From 437636d103b96157af713d7280e3bcfb0263c476 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 24 Nov 2015 15:14:52 +0100 Subject: [PATCH 16/44] Restyle advanced settings category headers --- resources/themes/cura/styles.qml | 20 +++++++++++++++++++- resources/themes/cura/theme.json | 5 +++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index d1520f318d..523a2410e3 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -307,6 +307,24 @@ QtObject { } } Behavior on color { ColorAnimation { duration: 50; } } + Rectangle { + height: UM.Theme.sizes.default_lining.height + width: parent.width + anchors.bottom: parent.bottom + color: { + if(!control.enabled) { + return UM.Theme.colors.setting_category_disabled_border; + } else if(control.hovered && control.checkable && control.checked) { + return UM.Theme.colors.setting_category_active_hover_border; + } else if(control.pressed || (control.checkable && control.checked)) { + return UM.Theme.colors.setting_category_active_border; + } else if(control.hovered) { + return UM.Theme.colors.setting_category_hover_border; + } else { + return UM.Theme.colors.setting_category_border; + } + } + } } label: Item { anchors.fill: parent; @@ -350,7 +368,7 @@ QtObject { sourceSize.width: width sourceSize.height: width color: UM.Theme.colors.setting_category_text - source: control.checked ? UM.Theme.icons.arrow_bottom : UM.Theme.icons.arrow_right + source: control.checked ? UM.Theme.icons.arrow_bottom : UM.Theme.icons.arrow_left } } } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 3e52fe0427..6fedd57fbe 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -111,6 +111,11 @@ "setting_category_active": [255, 255, 255, 255], "setting_category_active_hover": [245, 245, 245, 255], "setting_category_text": [24, 41, 77, 255], + "setting_category_border": [127, 127, 127, 255], + "setting_category_disabled_border": [127, 127, 127, 255], + "setting_category_hover_border": [12, 159, 227, 255], + "setting_category_active_border": [245, 245, 245, 255], + "setting_category_active_hover_border": [12, 159, 227, 255], "setting_control": [255, 255, 255, 255], "setting_control_selected": [24, 41, 77, 255], From abd30dfde710d365905ac6babdf4c5a006173b52 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 24 Nov 2015 16:43:06 +0100 Subject: [PATCH 17/44] Add slicing status label --- resources/qml/SaveButton.qml | 31 ++++++++++++++++++++++++++++--- resources/themes/cura/theme.json | 2 +- 2 files changed, 29 insertions(+), 4 deletions(-) diff --git a/resources/qml/SaveButton.qml b/resources/qml/SaveButton.qml index b0f5943e67..c51eb9f7bb 100644 --- a/resources/qml/SaveButton.qml +++ b/resources/qml/SaveButton.qml @@ -10,20 +10,45 @@ import UM 1.1 as UM Rectangle { id: base; + UM.I18nCatalog { id: catalog; name:"cura"} property real progress: UM.Backend.progress; property bool activity: Printer.getPlatformActivity; - Behavior on progress { NumberAnimation { duration: 250; } } + //Behavior on progress { NumberAnimation { duration: 250; } } property int totalHeight: childrenRect.height + UM.Theme.sizes.default_margin.height property string fileBaseName + property string statusText: { + if(progress == 0) { + if(!activity) { + return catalog.i18nc("@label:PrintjobStatus","Please load a 3d model"); + } else { + return catalog.i18nc("@label:PrintjobStatus","Preparing to slice..."); + } + } else if(base.progress < 0.99) { + return catalog.i18nc("@label:PrintjobStatus","Slicing..."); + } else { + return catalog.i18nc("@label:PrintjobStatus","Ready to ") + UM.OutputDeviceManager.activeDeviceShortDescription; + } + } - UM.I18nCatalog { id: catalog; name:"cura"} + Label { + id: statusLabel + width: parent.width - 2 * UM.Theme.sizes.default_margin.width + anchors.top: parent.top + anchors.left: parent.left + anchors.leftMargin: UM.Theme.sizes.default_margin.width + + color: UM.Theme.colors.text + font: UM.Theme.fonts.large + text: statusText; + } Rectangle{ id: progressBar width: parent.width - 2 * UM.Theme.sizes.default_margin.width height: UM.Theme.sizes.progressbar.height - anchors.top: parent.top + anchors.top: statusLabel.bottom + anchors.topMargin: UM.Theme.sizes.default_margin.height/4 anchors.left: parent.left anchors.leftMargin: UM.Theme.sizes.default_margin.width radius: UM.Theme.sizes.progressbar_radius.width diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 6fedd57fbe..a04d882d48 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -115,7 +115,7 @@ "setting_category_disabled_border": [127, 127, 127, 255], "setting_category_hover_border": [12, 159, 227, 255], "setting_category_active_border": [245, 245, 245, 255], - "setting_category_active_hover_border": [12, 159, 227, 255], + "setting_category_active_hover_border": [245, 245, 245, 255], "setting_control": [255, 255, 255, 255], "setting_control_selected": [24, 41, 77, 255], From 9c7ee751d53b08decc4acb64726d2eafd80b47d5 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 25 Nov 2015 13:07:35 +0100 Subject: [PATCH 18/44] Add horizontal margins to setting category headers --- resources/themes/cura/styles.qml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 523a2410e3..0acd2bce74 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -290,6 +290,11 @@ QtObject { property Component sidebar_category: Component { ButtonStyle { background: Rectangle { + anchors.fill: parent; + anchors.left: parent.left + anchors.leftMargin: UM.Theme.sizes.default_margin.width + anchors.right: parent.right + anchors.rightMargin: UM.Theme.sizes.default_margin.width implicitHeight: UM.Theme.sizes.section.height; color: { if(control.color) { From ab02aef6cd7a3ffbabadf5087c80b0966292c60b Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 25 Nov 2015 13:08:29 +0100 Subject: [PATCH 19/44] Rearrange Toolbar Reposition MessageStack --- resources/qml/Cura.qml | 9 ++++----- resources/qml/Toolbar.qml | 8 ++++++-- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index 8419f8b91e..f0ab0e8a81 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -326,9 +326,8 @@ UM.MainWindow anchors { horizontalCenter: parent.horizontalCenter - horizontalCenterOffset: -(UM.Theme.sizes.logo.width/ 2) - top: parent.verticalCenter; - bottom: parent.bottom; + horizontalCenterOffset: -(UM.Theme.sizes.sidebar.width/ 2) + verticalCenter: parent.verticalCenter; } } @@ -432,9 +431,9 @@ UM.MainWindow id: toolbar; anchors { - left: parent.left + left: openFileButton.right + leftMargin: UM.Theme.sizes.window_margin.width top: parent.top - topMargin: UM.Theme.sizes.window_margin.height + UM.Theme.sizes.button.height //horizontalCenter: parent.horizontalCenter //horizontalCenterOffset: -(UM.Theme.sizes.sidebar.width / 2) //top: parent.top; diff --git a/resources/qml/Toolbar.qml b/resources/qml/Toolbar.qml index cdceec6f59..3d4c59a189 100644 --- a/resources/qml/Toolbar.qml +++ b/resources/qml/Toolbar.qml @@ -15,7 +15,7 @@ Item { height: buttons.height property int activeY - ColumnLayout { + RowLayout { id: buttons; anchors.bottom: parent.bottom; @@ -35,12 +35,14 @@ Item { checked: model.active; enabled: UM.Selection.hasSelection; + property bool verticalTooltip: true; style: UM.Theme.styles.tool_button; //Workaround since using ToolButton"s onClicked would break the binding of the checked property, instead //just catch the click so we do not trigger that behaviour. MouseArea { anchors.fill: parent; + cursorShape: Qt.PointingHandCursor onClicked: { parent.checked ? UM.Controller.setActiveTool(null) : UM.Controller.setActiveTool(model.id); base.activeY = parent.y @@ -62,7 +64,9 @@ Item { Rectangle { id: panelBackground; - anchors.left: parent.right; + anchors.left: parent.left; + anchors.top: parent.bottom; + anchors.topMargin: UM.Theme.sizes.default_margin.width; y: base.activeY width: { From 00fcad17df09a7bde8d9d07f2663055280cba444 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 25 Nov 2015 13:37:28 +0100 Subject: [PATCH 20/44] Move viewmode button to prevent overlapping windows --- resources/qml/Cura.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index f0ab0e8a81..c7871395b8 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -394,9 +394,9 @@ UM.MainWindow anchors { - top: parent.top; - left: toolbar.right; - leftMargin: UM.Theme.sizes.window_margin.width; + top: openFileButton.bottom; + topMargin: UM.Theme.sizes.window_margin.height; + left: parent.left; } text: catalog.i18nc("@action:button","View Mode"); iconSource: UM.Theme.icons.viewmode; From e7fc881440a4b92598fb4bf64648c96b47e17bb5 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 25 Nov 2015 14:28:06 +0100 Subject: [PATCH 21/44] Quick update to splashscreen drawing --- cura/CuraSplashScreen.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/cura/CuraSplashScreen.py b/cura/CuraSplashScreen.py index d2f9ad8d61..07f88fc843 100644 --- a/cura/CuraSplashScreen.py +++ b/cura/CuraSplashScreen.py @@ -19,10 +19,11 @@ class CuraSplashScreen(QSplashScreen): version = Application.getInstance().getVersion().split("-") - painter.setFont(QFont("Roboto", 20)) + painter.setFont(QFont("Proxima Nova Rg", 20)) painter.drawText(0, 0, 203, 230, Qt.AlignRight | Qt.AlignBottom, version[0]) - painter.setFont(QFont("Roboto", 12)) - painter.drawText(0, 0, 203, 255, Qt.AlignRight | Qt.AlignBottom, version[1]) + if len(version) > 1: + painter.setFont(QFont("Proxima Nova Rg", 12)) + painter.drawText(0, 0, 203, 255, Qt.AlignRight | Qt.AlignBottom, version[1]) painter.restore() super().drawContents(painter) From 03d44e735b9324ecfc4f5714ba62b84a0999dda6 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 25 Nov 2015 15:06:19 +0100 Subject: [PATCH 22/44] Hide jobname when no object is loaded --- resources/qml/JobSpecs.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/qml/JobSpecs.qml b/resources/qml/JobSpecs.qml index 5f604411b5..430c674e2f 100644 --- a/resources/qml/JobSpecs.qml +++ b/resources/qml/JobSpecs.qml @@ -82,6 +82,7 @@ Rectangle { text: '' horizontalAlignment: TextInput.AlignRight onTextChanged: Printer.setJobName(text) + visible: base.activity onEditingFinished: { if (printJobTextfield.text != ''){ printJobTextfield.focus = false From 6af05b8af7bb284388af4960bbf240122f7f3dae Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 25 Nov 2015 15:23:13 +0100 Subject: [PATCH 23/44] Add order to PerObjectSettings tool --- plugins/PerObjectSettingsTool/__init__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/PerObjectSettingsTool/__init__.py b/plugins/PerObjectSettingsTool/__init__.py index c3cea197e1..99b33a55af 100644 --- a/plugins/PerObjectSettingsTool/__init__.py +++ b/plugins/PerObjectSettingsTool/__init__.py @@ -19,7 +19,8 @@ def getMetaData(): "name": i18n_catalog.i18nc("@label", "Per Object Settings"), "description": i18n_catalog.i18nc("@info:tooltip", "Configure Per Object Settings"), "icon": "setting_per_object", - "tool_panel": "PerObjectSettingsPanel.qml" + "tool_panel": "PerObjectSettingsPanel.qml", + "weight": 3 }, } From 47c53860fd84d0e8005b71db84ab45008d623e57 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 25 Nov 2015 15:53:38 +0100 Subject: [PATCH 24/44] Add hover cursorShape to open/viewmode buttons and layerslider --- plugins/LayerView/LayerView.qml | 6 ++++++ resources/qml/Cura.qml | 10 ++++++++++ 2 files changed, 16 insertions(+) diff --git a/plugins/LayerView/LayerView.qml b/plugins/LayerView/LayerView.qml index ad363af4aa..183046e05e 100644 --- a/plugins/LayerView/LayerView.qml +++ b/plugins/LayerView/LayerView.qml @@ -29,6 +29,12 @@ Item onValueChanged: UM.LayerView.setCurrentLayer(value) style: UM.Theme.styles.layerViewSlider + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } + } Rectangle { anchors.left: parent.left diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index c7871395b8..53b5488d80 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -366,6 +366,11 @@ UM.MainWindow //leftMargin: UM.Theme.sizes.loadfile_margin.width } action: actions.open; + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } } Image @@ -424,6 +429,11 @@ UM.MainWindow ExclusiveGroup { id: viewMenuGroup; } } + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + acceptedButtons: Qt.NoButton + } } Toolbar From 1d278229702a278ef4e0da96111e43fb2400399b Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 26 Nov 2015 17:15:01 +0100 Subject: [PATCH 25/44] Rearrange Toolbar Start unifying button tooltips --- resources/qml/Cura.qml | 13 +++---- resources/qml/Toolbar.qml | 9 ++--- resources/themes/cura/styles.qml | 64 ++++++++++---------------------- resources/themes/cura/theme.json | 2 +- 4 files changed, 30 insertions(+), 58 deletions(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index 53b5488d80..aa5ae00656 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -387,6 +387,7 @@ UM.MainWindow source: UM.Theme.images.logo; width: UM.Theme.sizes.logo.width; height: UM.Theme.sizes.logo.height; + z: -1; sourceSize.width: width; sourceSize.height: height; @@ -395,11 +396,10 @@ UM.MainWindow Button { id: viewModeButton - property bool verticalTooltip: true anchors { - top: openFileButton.bottom; + top: toolbar.bottom; topMargin: UM.Theme.sizes.window_margin.height; left: parent.left; } @@ -441,12 +441,9 @@ UM.MainWindow id: toolbar; anchors { - left: openFileButton.right - leftMargin: UM.Theme.sizes.window_margin.width - top: parent.top - //horizontalCenter: parent.horizontalCenter - //horizontalCenterOffset: -(UM.Theme.sizes.sidebar.width / 2) - //top: parent.top; + top: openFileButton.bottom; + topMargin: UM.Theme.sizes.window_margin.height; + left: parent.left; } } diff --git a/resources/qml/Toolbar.qml b/resources/qml/Toolbar.qml index 3d4c59a189..8ee06fd81f 100644 --- a/resources/qml/Toolbar.qml +++ b/resources/qml/Toolbar.qml @@ -15,7 +15,7 @@ Item { height: buttons.height property int activeY - RowLayout { + ColumnLayout { id: buttons; anchors.bottom: parent.bottom; @@ -35,7 +35,6 @@ Item { checked: model.active; enabled: UM.Selection.hasSelection; - property bool verticalTooltip: true; style: UM.Theme.styles.tool_button; //Workaround since using ToolButton"s onClicked would break the binding of the checked property, instead @@ -64,9 +63,9 @@ Item { Rectangle { id: panelBackground; - anchors.left: parent.left; - anchors.top: parent.bottom; - anchors.topMargin: UM.Theme.sizes.default_margin.width; + anchors.left: parent.right; + anchors.leftMargin: UM.Theme.sizes.default_margin.width; + anchors.top: parent.top; y: base.activeY width: { diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 0acd2bce74..42eb00e0bf 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -28,7 +28,6 @@ QtObject { } Label { id: sidebarComboBoxLabel - //property bool down: control.pressed || (control.checkable && control.checked); color: UM.Theme.colors.setting_control_text text: control.text; elide: Text.ElideRight; @@ -38,18 +37,6 @@ QtObject { anchors.verticalCenter: parent.verticalCenter; font: UM.Theme.fonts.default } -/* - Rectangle{ - id: separationLine - width: 1 - height: UM.Theme.sizes.setting_control.height - color: UM.Theme.colors.setting_control_border - anchors.right: downArrow.left - anchors.rightMargin: UM.Theme.sizes.setting_unit_margin.width + downArrow.width/2 - anchors.top: parent.top - z: parent.z + 1 - } -*/ } label: Label{} } @@ -62,18 +49,21 @@ QtObject { implicitHeight: UM.Theme.sizes.button.height; Rectangle { id: tool_button_background - anchors.top: parent.bottom; + anchors.left: parent.right + anchors.verticalCenter: parent.verticalCenter + opacity: control.hovered ? 1.0 : 0.0; - width: parent.width; - height: control.hovered ? label.height : 0; + width: control.hovered ? label.width : 0; + height: label.height + + Behavior on width { NumberAnimation { duration: 100; } } Behavior on height { NumberAnimation { duration: 100; } } + Behavior on opacity { NumberAnimation { duration: 100; } } Label { id: label anchors.bottom: parent.bottom text: control.text - width: UM.Theme.sizes.button.width; - wrapMode: Text.WordWrap font: UM.Theme.fonts.button_tooltip; color: UM.Theme.colors.button_tooltip_text; } @@ -105,26 +95,12 @@ QtObject { Rectangle { id: tool_button_background - anchors.left: control.verticalTooltip ? parent.left : parent.right - anchors.verticalCenter: control.verticalTooltip ? undefined : parent.verticalCenter - anchors.top: control.verticalTooltip ? parent.bottom : undefined + anchors.left: parent.right + anchors.verticalCenter: parent.verticalCenter opacity: control.hovered ? 1.0 : 0.0; - width: { - if (control.verticalTooltip == true){ - if (label.width > parent.width) - return label.width - else - return parent.width - } - else { - if (control.hovered) - return label.width - else - return 0 - } - } - height: !control.verticalTooltip ? label.height : control.hovered ? label.height: 0 + width: control.hovered ? label.width : 0; + height: label.height Behavior on width { NumberAnimation { duration: 100; } } Behavior on height { NumberAnimation { duration: 100; } } @@ -198,21 +174,21 @@ QtObject { Rectangle { id: tool_button_background - anchors.top: parent.verticalCenter; - - width: parent.width; - height: control.hovered ? parent.height / 2 + label.height : 0; - Behavior on height { NumberAnimation { duration: 100; } } - + anchors.left: parent.right + anchors.verticalCenter: parent.verticalCenter opacity: control.hovered ? 1.0 : 0.0; + + width: control.hovered ? label.width : 0; + height: label.height + + Behavior on width { NumberAnimation { duration: 100; } } + Behavior on height { NumberAnimation { duration: 100; } } Behavior on opacity { NumberAnimation { duration: 100; } } Label { id: label anchors.bottom: parent.bottom text: control.text - width: UM.Theme.sizes.button.width; - wrapMode: Text.WordWrap font: UM.Theme.fonts.button_tooltip; color: UM.Theme.colors.button_tooltip_text; } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index a04d882d48..2fff7bb579 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -203,7 +203,7 @@ "slider_groove": [0.5, 0.5], "slider_handle": [1.5, 1.5], - "slider_layerview_size": [1.0, 20.0], + "slider_layerview_size": [1.0, 16.0], "slider_layerview_background": [4.0, 0.0], "slider_layerview_smalltext_margin": [0.3, 0.00], "slider_layerview_margin": [3.0, 3.0], From ec46b49847950eaa47dc6c3292d2ce85461902db Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 1 Dec 2015 14:03:27 +0100 Subject: [PATCH 26/44] Use pointingrectangle for toolbutton tooltips --- resources/qml/Cura.qml | 13 ++++++++++--- resources/qml/Toolbar.qml | 16 ++++------------ resources/themes/cura/styles.qml | 30 +++++++++++++++++++++--------- resources/themes/cura/theme.json | 13 +++++++++---- 4 files changed, 44 insertions(+), 28 deletions(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index aa5ae00656..c53bf953f8 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -353,10 +353,9 @@ UM.MainWindow { id: openFileButton; //style: UM.Backend.progress < 0 ? UM.Theme.styles.open_file_button : UM.Theme.styles.tool_button; - //style: UM.Theme.styles.open_file_button text: catalog.i18nc("@action:button","Open File"); iconSource: UM.Theme.icons.load - style: UM.Theme.styles.open_file_button + style: UM.Theme.styles.tool_button tooltip: ''; anchors { @@ -368,6 +367,14 @@ UM.MainWindow action: actions.open; MouseArea { anchors.fill: parent + onEntered: { + buttonTooltip.targetId = parent; + mouse.accepted = false; + } + onExited: { + buttonTooltip.targetId = undefined; + mouse.accepted = false; + } cursorShape: Qt.PointingHandCursor acceptedButtons: Qt.NoButton } @@ -645,7 +652,7 @@ UM.MainWindow id: openDialog; //: File open dialog title - title: catalog.i18nc("@title:window","Open File") + title: catalog.i18nc("@title:window","Open file") modality: UM.Application.platform == "linux" ? Qt.NonModal : Qt.WindowModal; //TODO: Support multiple file selection, workaround bug in KDE file dialog //selectMultiple: true diff --git a/resources/qml/Toolbar.qml b/resources/qml/Toolbar.qml index 8ee06fd81f..e440cd46da 100644 --- a/resources/qml/Toolbar.qml +++ b/resources/qml/Toolbar.qml @@ -13,7 +13,7 @@ Item { width: buttons.width; height: buttons.height - property int activeY + //property int activeY ColumnLayout { id: buttons; @@ -44,29 +44,21 @@ Item { cursorShape: Qt.PointingHandCursor onClicked: { parent.checked ? UM.Controller.setActiveTool(null) : UM.Controller.setActiveTool(model.id); - base.activeY = parent.y + //base.activeY = parent.y } } } } } - Rectangle { - width: base.width - height: base.height - z: parent.z - 1 - anchors.verticalCenter: parent.verticalCenter - anchors.horizontalCenter: parent.horizontalCenter - color: UM.Theme.colors.lining - } - Rectangle { id: panelBackground; anchors.left: parent.right; anchors.leftMargin: UM.Theme.sizes.default_margin.width; anchors.top: parent.top; - y: base.activeY + //y: base.activeY + z: buttons.z -1 width: { if (panel.item && panel.width > 0){ diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 42eb00e0bf..856e39c0ac 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -42,6 +42,7 @@ QtObject { } } +/* property Component open_file_button: Component { ButtonStyle { background: Item{ @@ -86,6 +87,7 @@ QtObject { } } } +*/ property Component tool_button: Component { ButtonStyle { @@ -93,23 +95,31 @@ QtObject { implicitWidth: UM.Theme.sizes.button.width; implicitHeight: UM.Theme.sizes.button.height; - Rectangle { - id: tool_button_background + UM.PointingRectangle { + id: button_tooltip + anchors.left: parent.right + anchors.leftMargin: UM.Theme.sizes.button_tooltip_arrow.width * 2 anchors.verticalCenter: parent.verticalCenter + + target: Qt.point(parent.x, y + height/2) + arrowSize: UM.Theme.sizes.button_tooltip_arrow.width + color: UM.Theme.colors.button_tooltip opacity: control.hovered ? 1.0 : 0.0; - width: control.hovered ? label.width : 0; - height: label.height + width: control.hovered ? button_tip.width + UM.Theme.sizes.button_tooltip.width : 0 + height: UM.Theme.sizes.button_tooltip.height Behavior on width { NumberAnimation { duration: 100; } } - Behavior on height { NumberAnimation { duration: 100; } } Behavior on opacity { NumberAnimation { duration: 100; } } Label { - id: label - anchors.bottom: parent.bottom - text: control.text + id: button_tip + + anchors.horizontalCenter: parent.horizontalCenter + anchors.verticalCenter: parent.verticalCenter; + + text: control.text; font: UM.Theme.fonts.button_tooltip; color: UM.Theme.colors.button_tooltip_text; } @@ -166,6 +176,8 @@ QtObject { } } } + +/* property Component tool_button_panel: Component { ButtonStyle { background: Item { @@ -231,7 +243,7 @@ QtObject { } } } - +*/ property Component progressbar: Component{ ProgressBarStyle { diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 2fff7bb579..5e014c40dc 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -29,8 +29,7 @@ "letterSpacing": 2.0 }, "button_tooltip": { - "size": 0.75, - "capitalize": true, + "size": 1.0, "family": "Proxima Nova Rg" }, "setting_category": { @@ -72,7 +71,10 @@ "button_text": [255, 255, 255, 255], "button_disabled": [24, 41, 77, 255], "button_disabled_text": [70, 84, 113, 255], - "button_tooltip_text": [35, 35, 35, 255], + + "button_tooltip": [24, 41, 77, 255], + "button_tooltip_border": [245, 245, 245, 255], + "button_tooltip_text": [255, 255, 255, 255], "toggle_checked": [24, 41, 77, 255], "toggle_checked_border": [24, 41, 77, 255], @@ -123,7 +125,7 @@ "setting_control_border": [127, 127, 127, 255], "setting_control_border_highlight": [12, 169, 227, 255], "setting_control_text": [24, 41, 77, 255], - "setting_control_depth_line": [162, 192, 227, 255], + "setting_control_depth_line": [127, 127, 127, 255], "setting_control_revert": [127, 127, 127, 255], "setting_unit": [127, 127, 127, 255], "setting_validation_error": [255, 57, 14, 255], @@ -194,6 +196,9 @@ "button_icon": [3, 3], "button_lining": [0, 0], + "button_tooltip": [1.2, 1.2], + "button_tooltip_arrow": [0.25, 0.25], + "progressbar": [26.0, 0.8], "progressbar_radius": [0.4, 0.4], "progressbar_control": [8.0, 0.8], From 8f11c36658441d07166e05d364f4bec650598c19 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 1 Dec 2015 15:19:39 +0100 Subject: [PATCH 27/44] Draw border around button_tooltip --- resources/themes/cura/styles.qml | 10 +++++++++- resources/themes/cura/theme.json | 8 ++++---- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 856e39c0ac..4ccede85ff 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -104,7 +104,7 @@ QtObject { target: Qt.point(parent.x, y + height/2) arrowSize: UM.Theme.sizes.button_tooltip_arrow.width - color: UM.Theme.colors.button_tooltip + color: UM.Theme.colors.button_tooltip_border opacity: control.hovered ? 1.0 : 0.0; width: control.hovered ? button_tip.width + UM.Theme.sizes.button_tooltip.width : 0 @@ -113,6 +113,14 @@ QtObject { Behavior on width { NumberAnimation { duration: 100; } } Behavior on opacity { NumberAnimation { duration: 100; } } + UM.PointingRectangle { + color: UM.Theme.colors.button_tooltip; + anchors.fill: parent + anchors.margins: UM.Theme.sizes.default_lining.width + target: Qt.point(- UM.Theme.sizes.default_lining.width, parent.height/2) + arrowSize: parent.arrowSize + } + Label { id: button_tip diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 5e014c40dc..2c02f731fe 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -72,9 +72,9 @@ "button_disabled": [24, 41, 77, 255], "button_disabled_text": [70, 84, 113, 255], - "button_tooltip": [24, 41, 77, 255], - "button_tooltip_border": [245, 245, 245, 255], - "button_tooltip_text": [255, 255, 255, 255], + "button_tooltip": [255, 255, 255, 255], + "button_tooltip_border": [24, 41, 77, 255], + "button_tooltip_text": [24, 41, 77, 255], "toggle_checked": [24, 41, 77, 255], "toggle_checked_border": [24, 41, 77, 255], @@ -196,7 +196,7 @@ "button_icon": [3, 3], "button_lining": [0, 0], - "button_tooltip": [1.2, 1.2], + "button_tooltip": [1.0, 1.3], "button_tooltip_arrow": [0.25, 0.25], "progressbar": [26.0, 0.8], From 139a88a189826af1d11788ca395b899c4de6d49b Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 1 Dec 2015 15:27:21 +0100 Subject: [PATCH 28/44] Remove vestigial code --- resources/qml/Cura.qml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index c53bf953f8..e8f407ffa2 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -367,14 +367,6 @@ UM.MainWindow action: actions.open; MouseArea { anchors.fill: parent - onEntered: { - buttonTooltip.targetId = parent; - mouse.accepted = false; - } - onExited: { - buttonTooltip.targetId = undefined; - mouse.accepted = false; - } cursorShape: Qt.PointingHandCursor acceptedButtons: Qt.NoButton } From 4d29fccb0b10acf7b66de270d5d8ceeb726b0c1f Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 1 Dec 2015 15:35:00 +0100 Subject: [PATCH 29/44] Remove cursorShapes for now --- plugins/LayerView/LayerView.qml | 6 ------ resources/qml/Cura.qml | 10 ---------- resources/qml/ProfileSetup.qml | 6 ------ resources/qml/SaveButton.qml | 12 ------------ resources/qml/Sidebar.qml | 6 ------ resources/qml/SidebarHeader.qml | 6 ------ resources/qml/SidebarSimple.qml | 13 ------------- resources/qml/Toolbar.qml | 1 - 8 files changed, 60 deletions(-) diff --git a/plugins/LayerView/LayerView.qml b/plugins/LayerView/LayerView.qml index 183046e05e..ad363af4aa 100644 --- a/plugins/LayerView/LayerView.qml +++ b/plugins/LayerView/LayerView.qml @@ -29,12 +29,6 @@ Item onValueChanged: UM.LayerView.setCurrentLayer(value) style: UM.Theme.styles.layerViewSlider - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } - } Rectangle { anchors.left: parent.left diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index e8f407ffa2..c4281fdd2b 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -365,11 +365,6 @@ UM.MainWindow //leftMargin: UM.Theme.sizes.loadfile_margin.width } action: actions.open; - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } } Image @@ -428,11 +423,6 @@ UM.MainWindow ExclusiveGroup { id: viewMenuGroup; } } - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } } Toolbar diff --git a/resources/qml/ProfileSetup.qml b/resources/qml/ProfileSetup.qml index 2e22b06a24..5f54f04228 100644 --- a/resources/qml/ProfileSetup.qml +++ b/resources/qml/ProfileSetup.qml @@ -96,12 +96,6 @@ Item{ tooltip: UM.MachineManager.activeProfile style: UM.Theme.styles.sidebar_header_button - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } - menu: Menu { id: profileSelectionMenu diff --git a/resources/qml/SaveButton.qml b/resources/qml/SaveButton.qml index c51eb9f7bb..c20aa905fc 100644 --- a/resources/qml/SaveButton.qml +++ b/resources/qml/SaveButton.qml @@ -86,12 +86,6 @@ Rectangle { UM.OutputDeviceManager.requestWriteToDevice(UM.OutputDeviceManager.activeDevice, Printer.jobName) } - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } - style: ButtonStyle { background: Rectangle { //opacity: control.enabled ? 1.0 : 0.5 @@ -133,12 +127,6 @@ Rectangle { enabled: base.progress > 0.99 && base.activity == true //iconSource: UM.Theme.icons[UM.OutputDeviceManager.activeDeviceIconName]; - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } - style: ButtonStyle { background: Rectangle { id: deviceSelectionIcon diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index 3428996bf4..570dc8e5fe 100644 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -118,12 +118,6 @@ Rectangle checked: base.currentModeIndex == index onClicked: base.currentModeIndex = index - MouseArea { - anchors.fill: parent - cursorShape: checked ? Qt.ArrowCursor : Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } - style: ButtonStyle { background: Rectangle { border.color: control.checked ? UM.Theme.colors.toggle_checked_border : diff --git a/resources/qml/SidebarHeader.qml b/resources/qml/SidebarHeader.qml index c01e3a144c..38d129c6bb 100644 --- a/resources/qml/SidebarHeader.qml +++ b/resources/qml/SidebarHeader.qml @@ -66,12 +66,6 @@ Item anchors.verticalCenter: parent.verticalCenter style: UM.Theme.styles.sidebar_header_button - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } - menu: Menu { id: machineSelectionMenu diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index ba51f69d6b..e37adaf338 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -121,7 +121,6 @@ Item } } hoverEnabled: true - cursorShape: (infillListView.activeIndex != index) ? Qt.PointingHandCursor : Qt.ArrowCursor } } Label{ @@ -194,12 +193,6 @@ Item text: catalog.i18nc("@option:check","Enable Skirt Adhesion"); style: UM.Theme.styles.checkbox; - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } - checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.adhesion_type == "brim" : false; onClicked: { @@ -215,12 +208,6 @@ Item text: catalog.i18nc("@option:check","Enable Support"); style: UM.Theme.styles.checkbox; - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - acceptedButtons: Qt.NoButton - } - checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.support_enable : false; onClicked: { diff --git a/resources/qml/Toolbar.qml b/resources/qml/Toolbar.qml index e440cd46da..895144e559 100644 --- a/resources/qml/Toolbar.qml +++ b/resources/qml/Toolbar.qml @@ -41,7 +41,6 @@ Item { //just catch the click so we do not trigger that behaviour. MouseArea { anchors.fill: parent; - cursorShape: Qt.PointingHandCursor onClicked: { parent.checked ? UM.Controller.setActiveTool(null) : UM.Controller.setActiveTool(model.id); //base.activeY = parent.y From 2fa29de4b917ac0c2cad4ef232a4d14bf74c4d43 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 1 Dec 2015 16:24:07 +0100 Subject: [PATCH 30/44] Use PointingRectangle for toolpanel flyouts --- resources/qml/Toolbar.qml | 32 +++++++++++++++++++++++--------- resources/themes/cura/styles.qml | 2 +- resources/themes/cura/theme.json | 1 + 3 files changed, 25 insertions(+), 10 deletions(-) diff --git a/resources/qml/Toolbar.qml b/resources/qml/Toolbar.qml index 895144e559..4eca81a4a6 100644 --- a/resources/qml/Toolbar.qml +++ b/resources/qml/Toolbar.qml @@ -13,7 +13,7 @@ Item { width: buttons.width; height: buttons.height - //property int activeY + property int activeY ColumnLayout { id: buttons; @@ -43,22 +43,25 @@ Item { anchors.fill: parent; onClicked: { parent.checked ? UM.Controller.setActiveTool(null) : UM.Controller.setActiveTool(model.id); - //base.activeY = parent.y + base.activeY = parent.y } } } } } - Rectangle { - id: panelBackground; + UM.PointingRectangle { + id: panelBorder; anchors.left: parent.right; anchors.leftMargin: UM.Theme.sizes.default_margin.width; - anchors.top: parent.top; - //y: base.activeY + anchors.top: base.top; + anchors.topMargin: base.activeY z: buttons.z -1 + target: Qt.point(parent.right, base.activeY + UM.Theme.sizes.button.height/2) + arrowSize: UM.Theme.sizes.default_arrow.width + width: { if (panel.item && panel.width > 0){ return Math.max(panel.width + 2 * UM.Theme.sizes.default_margin.width) @@ -72,9 +75,20 @@ Item { opacity: panel.item ? 1 : 0 Behavior on opacity { NumberAnimation { duration: 100 } } - color: UM.Theme.colors.tool_panel_background; - border.width: UM.Theme.sizes.default_lining.width - border.color: UM.Theme.colors.lining + color: UM.Theme.colors.lining; + //border.width: UM.Theme.sizes.default_lining.width + //border.color: UM.Theme.colors.lining + + UM.PointingRectangle { + id: panelBackground; + + color: UM.Theme.colors.tool_panel_background; + anchors.fill: parent + anchors.margins: UM.Theme.sizes.default_lining.width + + target: Qt.point(-UM.Theme.sizes.default_margin.width, UM.Theme.sizes.button.height/2) + arrowSize: parent.arrowSize + } Loader { id: panel diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 4ccede85ff..dad5f8b2a6 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -117,7 +117,7 @@ QtObject { color: UM.Theme.colors.button_tooltip; anchors.fill: parent anchors.margins: UM.Theme.sizes.default_lining.width - target: Qt.point(- UM.Theme.sizes.default_lining.width, parent.height/2) + target: Qt.point(-UM.Theme.sizes.default_lining.width, parent.height/2) arrowSize: parent.arrowSize } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 2c02f731fe..f3f865d63e 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -165,6 +165,7 @@ "window_margin": [1.0, 1.0], "default_margin": [1.0, 1.0], "default_lining": [0.08, 0.08], + "default_arrow": [0.8, 0.8], "logo": [9.5, 2.0], "sidebar": [30.0, 10.0], From 9a1a4d264ea48cc39b5e2d411e3c4dce0f6abeee Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 1 Dec 2015 17:20:31 +0100 Subject: [PATCH 31/44] Restyle sidebar tooltips using pointingrectangle Restyle toolbutton tooltips to match sidebar tooltips --- resources/qml/SidebarTooltip.qml | 9 ++++++--- resources/themes/cura/styles.qml | 12 ++---------- resources/themes/cura/theme.json | 4 +++- 3 files changed, 11 insertions(+), 14 deletions(-) diff --git a/resources/qml/SidebarTooltip.qml b/resources/qml/SidebarTooltip.qml index 93075209ea..c51a33c611 100644 --- a/resources/qml/SidebarTooltip.qml +++ b/resources/qml/SidebarTooltip.qml @@ -8,13 +8,15 @@ import QtQuick.Layouts 1.1 import UM 1.0 as UM -Rectangle { +UM.PointingRectangle { id: base; width: UM.Theme.sizes.tooltip.width; height: label.height + UM.Theme.sizes.tooltip_margins.height * 2; color: UM.Theme.colors.tooltip; + arrowSize: UM.Theme.sizes.default_arrow.width + opacity: 0; Behavior on opacity { NumberAnimation { duration: 100; } } @@ -26,9 +28,10 @@ Rectangle { y = parent.height - base.height; } else { x = position.x - base.width; - y = position.y; + y = position.y - UM.Theme.sizes.tooltip_arrow_margins.height; } base.opacity = 1; + target = Qt.point(40 , position.y) } function hide() { @@ -47,6 +50,6 @@ Rectangle { } wrapMode: Text.Wrap; font: UM.Theme.fonts.default; - color: UM.Theme.colors.text; + color: UM.Theme.colors.tooltip_text; } } diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index dad5f8b2a6..0e1ec8c0cc 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -104,7 +104,7 @@ QtObject { target: Qt.point(parent.x, y + height/2) arrowSize: UM.Theme.sizes.button_tooltip_arrow.width - color: UM.Theme.colors.button_tooltip_border + color: UM.Theme.colors.tooltip opacity: control.hovered ? 1.0 : 0.0; width: control.hovered ? button_tip.width + UM.Theme.sizes.button_tooltip.width : 0 @@ -113,14 +113,6 @@ QtObject { Behavior on width { NumberAnimation { duration: 100; } } Behavior on opacity { NumberAnimation { duration: 100; } } - UM.PointingRectangle { - color: UM.Theme.colors.button_tooltip; - anchors.fill: parent - anchors.margins: UM.Theme.sizes.default_lining.width - target: Qt.point(-UM.Theme.sizes.default_lining.width, parent.height/2) - arrowSize: parent.arrowSize - } - Label { id: button_tip @@ -129,7 +121,7 @@ QtObject { text: control.text; font: UM.Theme.fonts.button_tooltip; - color: UM.Theme.colors.button_tooltip_text; + color: UM.Theme.colors.tooltip_text; } } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index f3f865d63e..333f937ed5 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -149,7 +149,8 @@ "checkbox_mark": [24, 41, 77, 255], "checkbox_text": [24, 41, 77, 255], - "tooltip": [255, 225, 146, 255], + "tooltip": [12, 169, 227, 255], + "tooltip_text": [255, 255, 255, 255], "message_background": [255, 255, 255, 255], "message_text": [32, 166, 219, 255], @@ -218,6 +219,7 @@ "tooltip": [20.0, 10.0], "tooltip_margins": [1.0, 1.0], + "tooltip_arrow_margins": [2.0, 2.0], "save_button_text_margin": [0.3, 0.6], "save_button_slicing_bar": [0.0, 2.2], From 97359db2ae3b9a07ab499a819fb6eab5dcb18be6 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 1 Dec 2015 17:49:38 +0100 Subject: [PATCH 32/44] Add radius to MessageStack progressbar for consistency --- resources/themes/cura/styles.qml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 0e1ec8c0cc..2d60c7b6ea 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -250,11 +250,13 @@ QtObject { background:Rectangle { implicitWidth: UM.Theme.sizes.message.width - (UM.Theme.sizes.default_margin.width * 2) implicitHeight: UM.Theme.sizes.progressbar.height + radius: UM.Theme.sizes.progressbar_radius.width color: UM.Theme.colors.progressbar_background } progress: Rectangle { color: control.indeterminate ? "transparent" : UM.Theme.colors.progressbar_control Rectangle{ + radius: UM.Theme.sizes.progressbar_radius.width color: UM.Theme.colors.progressbar_control width: UM.Theme.sizes.progressbar_control.width height: UM.Theme.sizes.progressbar_control.height From 1684aa5e50737a99e8df5c7457e4fd5e90067e00 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 2 Dec 2015 08:41:35 +0100 Subject: [PATCH 33/44] Add tooltips to Simple Mode --- resources/qml/SidebarSimple.qml | 82 ++++++++++++++++++++++++++++++--- 1 file changed, 76 insertions(+), 6 deletions(-) diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index e37adaf338..296573d3e2 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -13,6 +13,9 @@ Item id: base; anchors.fill: parent; + signal showTooltip(Item item, point location, string text); + signal hideTooltip(); + property Action configureSettings; property variant minimumPrintTime: PrintInformation.minimumPrintTime; property variant maximumPrintTime: PrintInformation.maximumPrintTime; @@ -39,7 +42,7 @@ Item anchors.left: parent.left anchors.leftMargin: UM.Theme.sizes.default_margin.width } - Label{ +/* Label{ id: infillCaption width: infillCellLeft.width - UM.Theme.sizes.default_margin.width * 2 text: infillModel.count > 0 && infillListView.activeIndex != -1 ? infillModel.get(infillListView.activeIndex).text : "" @@ -49,7 +52,7 @@ Item anchors.top: infillLabel.bottom anchors.left: parent.left anchors.leftMargin: UM.Theme.sizes.default_margin.width - } + } */ } Flow { @@ -113,6 +116,7 @@ Item MouseArea { id: mousearea anchors.fill: parent + hoverEnabled: true onClicked: { if (infillListView.activeIndex != index) { @@ -120,7 +124,24 @@ Item UM.MachineManager.setSettingValue("infill_sparse_density", model.percentage) } } - hoverEnabled: true + onEntered: { + hoverTimer.start(); + } + onExited: { + hoverTimer.stop(); + base.hideTooltip(); + } + + Timer { + id: hoverTimer; + interval: 500; + repeat: false; + + onTriggered: + { + base.showTooltip(infillCellRight, Qt.point(-infillCellRight.x, parent.height), model.text); + } + } } } Label{ @@ -185,12 +206,12 @@ Item height: childrenRect.height CheckBox{ - id: skirtCheckBox + id: brimCheckBox anchors.top: parent.top anchors.left: parent.left //: Setting enable skirt adhesion checkbox - text: catalog.i18nc("@option:check","Enable Skirt Adhesion"); + text: catalog.i18nc("@option:check","Enable Brim Adhesion"); style: UM.Theme.styles.checkbox; checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.adhesion_type == "brim" : false; @@ -198,9 +219,34 @@ Item { UM.MachineManager.setSettingValue("adhesion_type", "brim") } + MouseArea { + anchors.fill: parent + acceptedButtons: Qt.NoButton + hoverEnabled: true + onEntered: { + brimHoverTimer.start(); + } + onExited: { + brimHoverTimer.stop(); + base.hideTooltip(); + } + + Timer { + id: brimHoverTimer; + interval: 500; + repeat: false; + + onTriggered: + { + base.showTooltip(brimCheckBox, Qt.point(-helpersCellRight.x, parent.height), + catalog.i18nc("@label", "Enable printing a brim. This will add a single-layer-thick flat area around your object which is easy to cut off afterwards.")); + } + } + } } CheckBox{ - anchors.top: skirtCheckBox.bottom + id: supportCheckBox + anchors.top: brimCheckBox.bottom anchors.topMargin: UM.Theme.sizes.default_lining.height anchors.left: parent.left @@ -213,6 +259,30 @@ Item { UM.MachineManager.setSettingValue("support_enable", checked) } + MouseArea { + anchors.fill: parent + acceptedButtons: Qt.NoButton + hoverEnabled: true + onEntered: { + supportHoverTimer.start(); + } + onExited: { + supportHoverTimer.stop(); + base.hideTooltip(); + } + + Timer { + id: supportHoverTimer; + interval: 500; + repeat: false; + + onTriggered: + { + base.showTooltip(supportCheckBox, Qt.point(-helpersCellRight.x, parent.height), + catalog.i18nc("@label", "Enable printing support structures. This will build up supporting structures below the model to prevent the model from sagging or printing in mid air.")); + } + } + } } } From e3018ed1bba89fad373b0bd2b1f72aecbc9552ac Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 2 Dec 2015 08:42:00 +0100 Subject: [PATCH 34/44] Cleanup JobSpecs area --- resources/qml/JobSpecs.qml | 19 +++++++++++-------- resources/themes/cura/theme.json | 5 ++++- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/resources/qml/JobSpecs.qml b/resources/qml/JobSpecs.qml index 430c674e2f..b8a73c31cf 100644 --- a/resources/qml/JobSpecs.qml +++ b/resources/qml/JobSpecs.qml @@ -11,10 +11,7 @@ import UM 1.1 as UM Rectangle { id: base; - property real progress: UM.Backend.progress; property bool activity: Printer.getPlatformActivity; - Behavior on progress { NumberAnimation { duration: 250; } } - property int totalHeight: childrenRect.height + UM.Theme.sizes.default_margin.height*1.5 property string fileBaseName property variant activeMachineInstance: UM.MachineManager.activeMachineInstance @@ -28,8 +25,8 @@ Rectangle { property variant printDuration: PrintInformation.currentPrintTime; property real printMaterialAmount: PrintInformation.materialAmount; - width: 200 - height: 55 + width: UM.Theme.sizes.jobspecs.width + height: childrenRect.height color: "transparent" function createFileName(){ @@ -76,7 +73,7 @@ Rectangle { TextField { id: printJobTextfield anchors.right: parent.right - height: UM.Theme.sizes.sidebar_inputfields.height + height: UM.Theme.sizes.jobspecs_line.height width: base.width property int unremovableSpacing: 5 text: '' @@ -105,6 +102,8 @@ Rectangle { id: boundingSpec anchors.top: printJobTextfield.bottom anchors.right: parent.right + height: UM.Theme.sizes.jobspecs_line.height + verticalAlignment: Text.AlignVCenter font: UM.Theme.fonts.small color: UM.Theme.colors.text_subtext text: Printer.getSceneBoundingBoxString @@ -114,8 +113,8 @@ Rectangle { id: specsRow anchors.top: boundingSpec.bottom anchors.right: parent.right - color: "transparent" - //visible: base.progress > 0.99 && base.activity == true + height: UM.Theme.sizes.jobspecs_line.height + Item{ width: parent.width height: parent.height @@ -124,6 +123,7 @@ Rectangle { id: timeIcon anchors.right: timeSpec.left anchors.rightMargin: UM.Theme.sizes.default_margin.width/2 + anchors.verticalCenter: parent.verticalCenter width: UM.Theme.sizes.save_button_specs_icons.width height: UM.Theme.sizes.save_button_specs_icons.height sourceSize.width: width @@ -135,6 +135,7 @@ Rectangle { id: timeSpec anchors.right: lengthIcon.left anchors.rightMargin: UM.Theme.sizes.default_margin.width + anchors.verticalCenter: parent.verticalCenter font: UM.Theme.fonts.small color: UM.Theme.colors.text_subtext text: (!base.printDuration || !base.printDuration.valid) ? "00h 00min" : base.printDuration.getDisplayString(UM.DurationFormat.Short) @@ -143,6 +144,7 @@ Rectangle { id: lengthIcon anchors.right: lengthSpec.left anchors.rightMargin: UM.Theme.sizes.default_margin.width/2 + anchors.verticalCenter: parent.verticalCenter width: UM.Theme.sizes.save_button_specs_icons.width height: UM.Theme.sizes.save_button_specs_icons.height sourceSize.width: width @@ -153,6 +155,7 @@ Rectangle { Label{ id: lengthSpec anchors.right: parent.right + anchors.verticalCenter: parent.verticalCenter font: UM.Theme.fonts.small color: UM.Theme.colors.text_subtext text: base.printMaterialAmount <= 0 ? "0.0 m" : catalog.i18nc("@label %1 is length of filament","%1 m").arg(base.printMaterialAmount) diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 333f937ed5..6a875094f1 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -236,6 +236,9 @@ "per_object_settings_button": [2.0, 2.0], "per_object_settings_panel": [24.0, 10.0], - "per_object_settings_panel_border": [0.1, 0.1] + "per_object_settings_panel_border": [0.1, 0.1], + + "jobspecs": [20, 0], + "jobspecs_line": [2.0, 2.0] } } From 7212080b4247a2fdbe03aae4ffb29e16fca5549e Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 2 Dec 2015 09:43:42 +0100 Subject: [PATCH 35/44] Simplify SimpleMode tooltips --- resources/qml/SidebarSimple.qml | 46 ++++----------------------------- 1 file changed, 5 insertions(+), 41 deletions(-) diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 296573d3e2..76b59664fd 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -125,23 +125,11 @@ Item } } onEntered: { - hoverTimer.start(); + base.showTooltip(infillCellRight, Qt.point(-infillCellRight.x, parent.height), model.text); } onExited: { - hoverTimer.stop(); base.hideTooltip(); } - - Timer { - id: hoverTimer; - interval: 500; - repeat: false; - - onTriggered: - { - base.showTooltip(infillCellRight, Qt.point(-infillCellRight.x, parent.height), model.text); - } - } } } Label{ @@ -224,24 +212,12 @@ Item acceptedButtons: Qt.NoButton hoverEnabled: true onEntered: { - brimHoverTimer.start(); + base.showTooltip(brimCheckBox, Qt.point(-helpersCellRight.x, parent.height), + catalog.i18nc("@label", "Enable printing a brim. This will add a single-layer-thick flat area around your object which is easy to cut off afterwards.")); } onExited: { - brimHoverTimer.stop(); base.hideTooltip(); } - - Timer { - id: brimHoverTimer; - interval: 500; - repeat: false; - - onTriggered: - { - base.showTooltip(brimCheckBox, Qt.point(-helpersCellRight.x, parent.height), - catalog.i18nc("@label", "Enable printing a brim. This will add a single-layer-thick flat area around your object which is easy to cut off afterwards.")); - } - } } } CheckBox{ @@ -264,24 +240,12 @@ Item acceptedButtons: Qt.NoButton hoverEnabled: true onEntered: { - supportHoverTimer.start(); + base.showTooltip(supportCheckBox, Qt.point(-helpersCellRight.x, parent.height), + catalog.i18nc("@label", "Enable printing support structures. This will build up supporting structures below the model to prevent the model from sagging or printing in mid air.")); } onExited: { - supportHoverTimer.stop(); base.hideTooltip(); } - - Timer { - id: supportHoverTimer; - interval: 500; - repeat: false; - - onTriggered: - { - base.showTooltip(supportCheckBox, Qt.point(-helpersCellRight.x, parent.height), - catalog.i18nc("@label", "Enable printing support structures. This will build up supporting structures below the model to prevent the model from sagging or printing in mid air.")); - } - } } } } From 943f86ab51cb29b4e8cd87a3793401d75daefde0 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 2 Dec 2015 11:04:13 +0100 Subject: [PATCH 36/44] Add Speed section to Simple Mode --- resources/qml/SidebarSimple.qml | 93 ++++++++++++++++++++++++++++++++- 1 file changed, 91 insertions(+), 2 deletions(-) diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 76b59664fd..2a912bb203 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -25,10 +25,99 @@ Item UM.I18nCatalog { id: catalog; name:"cura"} Rectangle{ - id: infillCellLeft + id: speedCellLeft anchors.top: parent.top anchors.left: parent.left width: base.width/100* 45 - UM.Theme.sizes.default_margin.width + height: childrenRect.height + + Label{ + id: speedLabel + //: Speed selection label + text: catalog.i18nc("@label","Speed:"); + font: UM.Theme.fonts.default; + color: UM.Theme.colors.text; + anchors.top: parent.top + anchors.topMargin: UM.Theme.sizes.default_margin.height + anchors.left: parent.left + anchors.leftMargin: UM.Theme.sizes.default_margin.width + } + } + + Rectangle { + id: speedCellRight + anchors.left: speedCellLeft.right + anchors.top: speedCellLeft.top + anchors.topMargin: UM.Theme.sizes.default_margin.height + width: parent.width/100*55 - UM.Theme.sizes.default_margin.width + height: childrenRect.height + + CheckBox{ + id: normalSpeedCheckBox + anchors.top: parent.top + anchors.left: parent.left + + //: Normal speed checkbox + text: catalog.i18nc("@option:check","Normal"); + style: UM.Theme.styles.checkbox; + + exclusiveGroup: speedCheckBoxGroup + checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.speed_print <= 60 : true; + onClicked: + { + UM.MachineManager.setSettingValue("speed_print", 60) + } + MouseArea { + anchors.fill: parent + acceptedButtons: Qt.NoButton + hoverEnabled: true + onEntered: { + base.showTooltip(normalSpeedCheckBox, Qt.point(-speedCellRight.x, parent.height), + catalog.i18nc("@label", "Use normal printing speed. This will result in high quality prints.")); + } + onExited: { + base.hideTooltip(); + } + } + } + CheckBox{ + id: highSpeedCheckBox + anchors.top: parent.top + anchors.left: normalSpeedCheckBox.right + anchors.leftMargin: UM.Theme.sizes.default_margin.width + + //: High speed checkbox + text: catalog.i18nc("@option:check","Fast"); + style: UM.Theme.styles.checkbox; + + exclusiveGroup: speedCheckBoxGroup + checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.speed_print > 60 : true; + onClicked: + { + UM.MachineManager.setSettingValue("speed_print", 100) + } + MouseArea { + anchors.fill: parent + acceptedButtons: Qt.NoButton + hoverEnabled: true + onEntered: { + base.showTooltip(normalSpeedCheckBox, Qt.point(-speedCellRight.x, parent.height), + catalog.i18nc("@label", "Use high printing speed. This will reduce printing time, but may affect the quality of the print.")); + } + onExited: { + base.hideTooltip(); + } + } + } + ExclusiveGroup { id: speedCheckBoxGroup; } + } + + Rectangle{ + id: infillCellLeft + anchors.top: speedCellRight.bottom + anchors.topMargin: UM.Theme.sizes.default_margin.height + anchors.left: parent.left + width: base.width/100* 45 - UM.Theme.sizes.default_margin.width height: childrenRect.height < UM.Theme.sizes.simple_mode_infill_caption.height ? UM.Theme.sizes.simple_mode_infill_caption.height : childrenRect.height Label{ @@ -63,7 +152,7 @@ Item spacing: UM.Theme.sizes.default_margin.width anchors.left: infillCellLeft.right - anchors.top: parent.top + anchors.top: infillCellLeft.top anchors.topMargin: UM.Theme.sizes.default_margin.height Repeater { From d9098ff06dec336affc38214585f368eeb3eab43 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 2 Dec 2015 14:27:58 +0100 Subject: [PATCH 37/44] SimpleMode small fixes & additions --- resources/qml/SidebarSimple.qml | 120 ++++++++++------- resources/themes/cura/icons/dense.svg | 19 +-- resources/themes/cura/icons/dot.svg | 11 ++ resources/themes/cura/icons/hollow.svg | 13 ++ resources/themes/cura/icons/solid.svg | 179 +++++++++++++++++++++++-- resources/themes/cura/icons/sparse.svg | 8 +- resources/themes/cura/styles.qml | 8 +- resources/themes/cura/theme.json | 2 + 8 files changed, 286 insertions(+), 74 deletions(-) create mode 100644 resources/themes/cura/icons/dot.svg create mode 100644 resources/themes/cura/icons/hollow.svg diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 2a912bb203..0c461faaec 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -28,7 +28,7 @@ Item id: speedCellLeft anchors.top: parent.top anchors.left: parent.left - width: base.width/100* 45 - UM.Theme.sizes.default_margin.width + width: base.width/100*35 - UM.Theme.sizes.default_margin.width height: childrenRect.height Label{ @@ -49,11 +49,13 @@ Item anchors.left: speedCellLeft.right anchors.top: speedCellLeft.top anchors.topMargin: UM.Theme.sizes.default_margin.height - width: parent.width/100*55 - UM.Theme.sizes.default_margin.width + width: parent.width/100*65 - UM.Theme.sizes.default_margin.width height: childrenRect.height CheckBox{ id: normalSpeedCheckBox + property bool hovered_ex: false + anchors.top: parent.top anchors.left: parent.left @@ -63,25 +65,30 @@ Item exclusiveGroup: speedCheckBoxGroup checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.speed_print <= 60 : true; - onClicked: - { - UM.MachineManager.setSettingValue("speed_print", 60) - } MouseArea { anchors.fill: parent - acceptedButtons: Qt.NoButton hoverEnabled: true - onEntered: { - base.showTooltip(normalSpeedCheckBox, Qt.point(-speedCellRight.x, parent.height), + onClicked: + { + UM.MachineManager.setSettingValue("speed_print", 60) + } + onEntered: + { + parent.hovered_ex = true + base.showTooltip(normalSpeedCheckBox, Qt.point(-speedCellRight.x, parent.height), catalog.i18nc("@label", "Use normal printing speed. This will result in high quality prints.")); } - onExited: { + onExited: + { + parent.hovered_ex = false base.hideTooltip(); } } } CheckBox{ id: highSpeedCheckBox + property bool hovered_ex: false + anchors.top: parent.top anchors.left: normalSpeedCheckBox.right anchors.leftMargin: UM.Theme.sizes.default_margin.width @@ -92,19 +99,22 @@ Item exclusiveGroup: speedCheckBoxGroup checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.speed_print > 60 : true; - onClicked: - { - UM.MachineManager.setSettingValue("speed_print", 100) - } MouseArea { anchors.fill: parent - acceptedButtons: Qt.NoButton hoverEnabled: true - onEntered: { - base.showTooltip(normalSpeedCheckBox, Qt.point(-speedCellRight.x, parent.height), - catalog.i18nc("@label", "Use high printing speed. This will reduce printing time, but may affect the quality of the print.")); + onClicked: + { + UM.MachineManager.setSettingValue("speed_print", 100) } - onExited: { + onEntered: + { + parent.hovered_ex = true + base.showTooltip(normalSpeedCheckBox, Qt.point(-speedCellRight.x, parent.height), + catalog.i18nc("@label", "Use high printing speed. This will reduce printing time, but may affect the quality of the print.")); + } + onExited: + { + parent.hovered_ex = false base.hideTooltip(); } } @@ -117,7 +127,7 @@ Item anchors.top: speedCellRight.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.left: parent.left - width: base.width/100* 45 - UM.Theme.sizes.default_margin.width + width: base.width/100* 35 - UM.Theme.sizes.default_margin.width height: childrenRect.height < UM.Theme.sizes.simple_mode_infill_caption.height ? UM.Theme.sizes.simple_mode_infill_caption.height : childrenRect.height Label{ @@ -148,7 +158,7 @@ Item id: infillCellRight height: childrenRect.height; - width: base.width / 100 * 55 + width: base.width / 100 * 65 spacing: UM.Theme.sizes.default_margin.width anchors.left: infillCellLeft.right @@ -183,10 +193,10 @@ Item Rectangle{ id: infillIconLining - width: (infillCellRight.width - 2 * UM.Theme.sizes.default_margin.width) / 3; + width: (infillCellRight.width - 3 * UM.Theme.sizes.default_margin.width) / 4; height: width - border.color: (infillListView.activeIndex == index) ? UM.Theme.colors.setting_control_selected : + border.color: (infillListView.activeIndex == index) ? UM.Theme.colors.setting_control_selected : (mousearea.containsMouse ? UM.Theme.colors.setting_control_border_highlight : UM.Theme.colors.setting_control_border) border.width: UM.Theme.sizes.default_lining.width color: infillListView.activeIndex == index ? UM.Theme.colors.setting_control_selected : "transparent" @@ -194,7 +204,7 @@ Item UM.RecolorImage { id: infillIcon anchors.fill: parent; - anchors.margins: UM.Theme.sizes.default_margin.width + anchors.margins: UM.Theme.sizes.infill_button_margin.width sourceSize.width: width sourceSize.height: width @@ -214,7 +224,7 @@ Item } } onEntered: { - base.showTooltip(infillCellRight, Qt.point(-infillCellRight.x, parent.height), model.text); + base.showTooltip(infillCellRight, Qt.point(-infillCellRight.x, parent.height), model.text); } onExited: { base.hideTooltip(); @@ -237,9 +247,15 @@ Item Component.onCompleted: { infillModel.append({ - name: catalog.i18nc("@label", "Sparse"), + name: catalog.i18nc("@label", "Hollow"), + percentage: 0, + text: catalog.i18nc("@label", "No (0%) infill will leave your model hollow at the cost of low strength"), + icon: "hollow" + }) + infillModel.append({ + name: catalog.i18nc("@label", "Light"), percentage: 20, - text: catalog.i18nc("@label", "Sparse (20%) infill will give your model an average strength"), + text: catalog.i18nc("@label", "Light (20%) infill will give your model an average strength"), icon: "sparse" }) infillModel.append({ @@ -263,7 +279,7 @@ Item anchors.top: infillCellRight.bottom anchors.topMargin: UM.Theme.sizes.default_margin.height anchors.left: parent.left - width: parent.width/100*45 - UM.Theme.sizes.default_margin.width + width: parent.width/100*35 - UM.Theme.sizes.default_margin.width height: childrenRect.height Label{ @@ -279,11 +295,13 @@ Item id: helpersCellRight anchors.top: helpersCellLeft.top anchors.left: helpersCellLeft.right - width: parent.width/100*55 - UM.Theme.sizes.default_margin.width + width: parent.width/100*65 - UM.Theme.sizes.default_margin.width height: childrenRect.height CheckBox{ id: brimCheckBox + property bool hovered_ex: false + anchors.top: parent.top anchors.left: parent.left @@ -292,25 +310,31 @@ Item style: UM.Theme.styles.checkbox; checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.adhesion_type == "brim" : false; - onClicked: - { - UM.MachineManager.setSettingValue("adhesion_type", "brim") - } MouseArea { anchors.fill: parent - acceptedButtons: Qt.NoButton hoverEnabled: true - onEntered: { - base.showTooltip(brimCheckBox, Qt.point(-helpersCellRight.x, parent.height), + onClicked: + { + parent.checked = !parent.checked + UM.MachineManager.setSettingValue("adhesion_type", parent.checked?"brim":"skirt") + } + onEntered: + { + parent.hovered_ex = true + base.showTooltip(brimCheckBox, Qt.point(-helpersCellRight.x, parent.height), catalog.i18nc("@label", "Enable printing a brim. This will add a single-layer-thick flat area around your object which is easy to cut off afterwards.")); } - onExited: { + onExited: + { + parent.hovered_ex = false base.hideTooltip(); } } } CheckBox{ id: supportCheckBox + property bool hovered_ex: false + anchors.top: brimCheckBox.bottom anchors.topMargin: UM.Theme.sizes.default_lining.height anchors.left: parent.left @@ -320,19 +344,23 @@ Item style: UM.Theme.styles.checkbox; checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.support_enable : false; - onClicked: - { - UM.MachineManager.setSettingValue("support_enable", checked) - } MouseArea { anchors.fill: parent - acceptedButtons: Qt.NoButton hoverEnabled: true - onEntered: { - base.showTooltip(supportCheckBox, Qt.point(-helpersCellRight.x, parent.height), - catalog.i18nc("@label", "Enable printing support structures. This will build up supporting structures below the model to prevent the model from sagging or printing in mid air.")); + onClicked: + { + parent.checked = !parent.checked + UM.MachineManager.setSettingValue("support_enable", parent.checked) } - onExited: { + onEntered: + { + parent.hovered_ex = true + base.showTooltip(supportCheckBox, Qt.point(-helpersCellRight.x, parent.height), + catalog.i18nc("@label", "Enable printing support structures. This will build up supporting structures below the model to prevent the model from sagging or printing in mid air.")); + } + onExited: + { + parent.hovered_ex = false base.hideTooltip(); } } diff --git a/resources/themes/cura/icons/dense.svg b/resources/themes/cura/icons/dense.svg index 44097c21de..9c527ecc92 100644 --- a/resources/themes/cura/icons/dense.svg +++ b/resources/themes/cura/icons/dense.svg @@ -3,17 +3,12 @@ - - - - - - - - - - - - + + + diff --git a/resources/themes/cura/icons/dot.svg b/resources/themes/cura/icons/dot.svg new file mode 100644 index 0000000000..e1f093bed0 --- /dev/null +++ b/resources/themes/cura/icons/dot.svg @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/resources/themes/cura/icons/hollow.svg b/resources/themes/cura/icons/hollow.svg new file mode 100644 index 0000000000..49d1749acc --- /dev/null +++ b/resources/themes/cura/icons/hollow.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + diff --git a/resources/themes/cura/icons/solid.svg b/resources/themes/cura/icons/solid.svg index 9c527ecc92..622b07e4fa 100644 --- a/resources/themes/cura/icons/solid.svg +++ b/resources/themes/cura/icons/solid.svg @@ -1,14 +1,171 @@ - + - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + \ No newline at end of file diff --git a/resources/themes/cura/icons/sparse.svg b/resources/themes/cura/icons/sparse.svg index e32a7345b1..44097c21de 100644 --- a/resources/themes/cura/icons/sparse.svg +++ b/resources/themes/cura/icons/sparse.svg @@ -9,7 +9,11 @@ - - + + + + + + diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 2d60c7b6ea..3badda3133 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -425,11 +425,13 @@ QtObject { implicitWidth: UM.Theme.sizes.checkbox.width; implicitHeight: UM.Theme.sizes.checkbox.height; - color: control.hovered ? UM.Theme.colors.checkbox_hover : UM.Theme.colors.checkbox; + color: (control.hovered || control.hovered_ex) ? UM.Theme.colors.checkbox_hover : UM.Theme.colors.checkbox; Behavior on color { ColorAnimation { duration: 50; } } + radius: control.exclusiveGroup ? UM.Theme.sizes.checkbox.width / 2 : 0 + border.width: UM.Theme.sizes.default_lining.width; - border.color: control.hovered ? UM.Theme.colors.checkbox_border_hover : UM.Theme.colors.checkbox_border; + border.color: (control.hovered || control.hovered_ex) ? UM.Theme.colors.checkbox_border_hover : UM.Theme.colors.checkbox_border; UM.RecolorImage { anchors.verticalCenter: parent.verticalCenter @@ -439,7 +441,7 @@ QtObject { sourceSize.width: width sourceSize.height: width color: UM.Theme.colors.checkbox_mark - source: UM.Theme.icons.check + source: control.exclusiveGroup ? UM.Theme.icons.dot : UM.Theme.icons.check opacity: control.checked Behavior on opacity { NumberAnimation { duration: 100; } } } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 6a875094f1..9d37d28431 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -234,6 +234,8 @@ "message_close": [1.25, 1.25], "message_button": [6.0, 1.8], + "infill_button_margin": [0.5, 0.5], + "per_object_settings_button": [2.0, 2.0], "per_object_settings_panel": [24.0, 10.0], "per_object_settings_panel_border": [0.1, 0.1], From 2ebeb72facf5bf8a4d3d7333553106094a2bbad4 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 3 Dec 2015 07:36:14 +0100 Subject: [PATCH 38/44] Rework Per Object Settings selection mechanism --- .../PerObjectSettingsPanel.qml | 279 ++++++------------ .../PerObjectSettingsTool.py | 8 +- 2 files changed, 101 insertions(+), 186 deletions(-) diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml index 781b7b0f1c..adebc37dc3 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml +++ b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml @@ -10,224 +10,117 @@ import UM 1.1 as UM Item { id: base; + property int currentIndex: UM.ActiveTool.properties.SelectedIndex; - width: 0; - height: 0; + width: childrenRect.width; + height: childrenRect.height; - property variant position: mapToItem(null, 0, 0) + Column { + id: items + anchors.top: parent.top; + anchors.left: parent.left; - property real viewportWidth: UM.Application.mainWindow.width * UM.Application.mainWindow.viewportRect.width; - property real viewportHeight: UM.Application.mainWindow.height * UM.Application.mainWindow.viewportRect.height; + spacing: UM.Theme.sizes.default_lining.height; - property int currentIndex; + UM.SettingItem { + id: profileSelection - Rectangle { - id: settingsPanel; + width: UM.Theme.sizes.setting.width; + height: UM.Theme.sizes.setting.height; - z: 3; + name: catalog.i18nc("@label", "Profile") + type: "enum" + indent: false - width: UM.Theme.sizes.per_object_settings_panel.width; - height: items.height + UM.Theme.sizes.default_margin.height * 2; + style: UM.Theme.styles.setting_item; - opacity: 0; - Behavior on opacity { NumberAnimation { } } + options: UM.ProfilesModel { addUseGlobal: true } - border.width: UM.Theme.sizes.per_object_settings_panel_border.width; - border.color: UM.Theme.colors.per_object_settings_panel_border; + value: UM.ActiveTool.properties.Model.getItem(base.currentIndex).profile - color: UM.Theme.colors.per_object_settings_panel_background; - - DropArea { - anchors.fill: parent; - } - - Button { - id: closeButton; - width: UM.Theme.sizes.message_close.width; - height: UM.Theme.sizes.message_close.height; - anchors { - right: parent.right; - rightMargin: UM.Theme.sizes.default_margin.width / 2; - top: parent.top; - topMargin: UM.Theme.sizes.default_margin.width / 2; - } - UM.RecolorImage { - anchors.fill: parent; - sourceSize.width: width - sourceSize.height: width - color: UM.Theme.colors.message_dismiss - source: UM.Theme.icons.cross2; - } - - onClicked: settingsPanel.opacity = 0 - - style: ButtonStyle { - background: Rectangle { - color: UM.Theme.colors.message_background - } + onItemValueChanged: { + var item = UM.ActiveTool.properties.Model.getItem(base.currentIndex); + UM.ActiveTool.properties.Model.setObjectProfile(item.id, value) } } - Column { - id: items - anchors.top: parent.top; - anchors.topMargin: UM.Theme.sizes.default_margin.height; + Item + { + height: UM.Theme.sizes.default_margin.height + width: parent.width + } - spacing: UM.Theme.sizes.default_lining.height; + Repeater { + id: settings; + + model: UM.ActiveTool.properties.Model.getItem(base.currentIndex).settings UM.SettingItem { - id: profileSelection - - x: UM.Theme.sizes.per_object_settings_panel_border.width + 1 - width: UM.Theme.sizes.setting.width; height: UM.Theme.sizes.setting.height; - name: catalog.i18nc("@label", "Profile") - type: "enum" + name: model.label; + type: model.type; + value: model.value; + description: model.description; + unit: model.unit; + valid: model.valid; + options: model.options + indent: false style: UM.Theme.styles.setting_item; - options: UM.ProfilesModel { addUseGlobal: true } - - value: UM.ActiveTool.properties.Model.getItem(base.currentIndex).profile - onItemValueChanged: { - var item = UM.ActiveTool.properties.Model.getItem(base.currentIndex); - UM.ActiveTool.properties.Model.setObjectProfile(item.id, value) + settings.model.setSettingValue(model.key, value) } - } - Repeater { - id: settings; + Button + { + anchors.left: parent.left; + anchors.leftMargin: UM.Theme.sizes.default_margin.width; - model: UM.ActiveTool.properties.Model.getItem(base.currentIndex).settings - - UM.SettingItem { - width: UM.Theme.sizes.setting.width; + width: UM.Theme.sizes.setting.height; height: UM.Theme.sizes.setting.height; - x: UM.Theme.sizes.per_object_settings_panel_border.width + 1 - name: model.label; - type: model.type; - value: model.value; - description: model.description; - unit: model.unit; - valid: model.valid; - options: model.options + opacity: parent.hovered || hovered ? 1 : 0; + onClicked: UM.ActiveTool.properties.Model.removeSettingOverride(UM.ActiveTool.properties.Model.getItem(base.currentIndex).id, model.key) - style: UM.Theme.styles.setting_item; - - onItemValueChanged: { - settings.model.setSettingValue(model.key, value) - } - - Button + style: ButtonStyle { - anchors.left: parent.horizontalCenter; - anchors.leftMargin: UM.Theme.sizes.default_margin.width; - - width: UM.Theme.sizes.setting.height; - height: UM.Theme.sizes.setting.height; - - opacity: parent.hovered || hovered ? 1 : 0; - onClicked: UM.ActiveTool.properties.Model.removeSettingOverride(UM.ActiveTool.properties.Model.getItem(base.currentIndex).id, model.key) - - style: ButtonStyle + background: Rectangle { - background: Rectangle + color: control.hovered ? control.parent.style.controlHighlightColor : control.parent.style.controlColor; + UM.RecolorImage { - color: control.hovered ? control.parent.style.controlHighlightColor : control.parent.style.controlColor; - UM.RecolorImage - { - anchors.verticalCenter: parent.verticalCenter - anchors.horizontalCenter: parent.horizontalCenter - width: parent.width/2 - height: parent.height/2 - sourceSize.width: width - sourceSize.height: width - color: UM.Theme.colors.setting_control_revert - source: UM.Theme.icons.cross1 - } + anchors.verticalCenter: parent.verticalCenter + anchors.horizontalCenter: parent.horizontalCenter + width: parent.width/2 + height: parent.height/2 + sourceSize.width: width + sourceSize.height: width + color: UM.Theme.colors.setting_control_revert + source: UM.Theme.icons.cross1 } } } } } - - Item - { - height: UM.Theme.sizes.default_margin.height / 2 - width: parent.width - } - - Button - { - id: customise_settings_button; - anchors.right: profileSelection.right; - visible: parseInt(UM.Preferences.getValue("cura/active_mode")) == 1 - - text: catalog.i18nc("@action:button", "Customize Settings"); - - style: ButtonStyle - { - background: Rectangle - { - width: control.width; - height: control.height; - color: control.hovered ? UM.Theme.colors.load_save_button_hover : UM.Theme.colors.load_save_button; - } - label: Label - { - text: control.text; - color: UM.Theme.colors.load_save_button_text; - } - } - - onClicked: settingPickDialog.visible = true; - - Connections - { - target: UM.Preferences; - - onPreferenceChanged: - { - customise_settings_button.visible = parseInt(UM.Preferences.getValue("cura/active_mode")) - } - } - } } - UM.I18nCatalog { id: catalog; name: "uranium"; } - } + Item + { + height: UM.Theme.sizes.default_margin.height + width: parent.width + } - Repeater { - model: UM.ActiveTool.properties.Model; - delegate: Button { - x: ((model.x + 1.0) / 2.0) * base.viewportWidth - base.position.x - width / 2 - y: -((model.y + 1.0) / 2.0) * base.viewportHeight + (base.viewportHeight - base.position.y) + height / 2 + Button + { + id: customise_settings_button; + anchors.right: profileSelection.right; + height: UM.Theme.sizes.setting.height; + visible: parseInt(UM.Preferences.getValue("cura/active_mode")) == 1 - width: UM.Theme.sizes.per_object_settings_button.width - height: UM.Theme.sizes.per_object_settings_button.height - - tooltip: catalog.i18nc("@info:tooltip", "Customise settings for this object"); - - checkable: true; - onClicked: { - if(settingsPanel.opacity < 0.5) //Per-object panel is not currently displayed. - { - base.currentIndex = index; - - settingsPanel.anchors.left = right; - settingsPanel.anchors.top = top; - - settingsPanel.opacity = 1; - } - else //Per-object panel is already displayed. Deactivate it (same behaviour as the close button). - { - settingsPanel.opacity = 0; - } - } + text: catalog.i18nc("@action:button", "Add Setting"); style: ButtonStyle { @@ -235,20 +128,36 @@ Item { { width: control.width; height: control.height; - - color: control.hovered ? UM.Theme.colors.button_active : UM.Theme.colors.button_hover; + border.width: UM.Theme.sizes.default_lining.width; + border.color: control.pressed ? UM.Theme.colors.action_button_active_border : + control.hovered ? UM.Theme.colors.action_button_hovered_border : UM.Theme.colors.action_button_border + color: control.pressed ? UM.Theme.colors.action_button_active : + control.hovered ? UM.Theme.colors.action_button_hovered : UM.Theme.colors.action_button } - label: Image { - width: control.width; - height: control.height; - sourceSize.width: width; - sourceSize.height: height; - source: UM.Theme.icons.plus; + label: Label + { + text: control.text; + color: UM.Theme.colors.setting_control_text; + anchors.centerIn: parent + } + } + + onClicked: settingPickDialog.visible = true; + + Connections + { + target: UM.Preferences; + + onPreferenceChanged: + { + customise_settings_button.visible = parseInt(UM.Preferences.getValue("cura/active_mode")) } } } } + UM.I18nCatalog { id: catalog; name: "uranium"; } + UM.Dialog { id: settingPickDialog diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py b/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py index 664fe0c61d..06204e4b1c 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py +++ b/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py @@ -2,6 +2,7 @@ # Uranium is released under the terms of the AGPLv3 or higher. from UM.Tool import Tool +from UM.Scene.Selection import Selection from . import PerObjectSettingsModel @@ -9,10 +10,15 @@ class PerObjectSettingsTool(Tool): def __init__(self): super().__init__() - self.setExposedProperties("Model") + self.setExposedProperties("Model", "SelectedIndex") def event(self, event): return False def getModel(self): return PerObjectSettingsModel.PerObjectSettingsModel() + + def getSelectedIndex(self): + selected_object_id = id(Selection.getSelectedObject(0)); + index = self.getModel().find("id", selected_object_id) + return index \ No newline at end of file From a4dbc5743fdae35211b312fcb03761e569d7f891 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 3 Dec 2015 12:34:17 +0100 Subject: [PATCH 39/44] Fix control borderwidth on High DPI screens --- resources/themes/cura/styles.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index 3badda3133..b64ba24874 100644 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -407,6 +407,7 @@ QtObject { controlBorderColor: UM.Theme.colors.setting_control_border; controlBorderHighlightColor: UM.Theme.colors.setting_control_border_highlight; controlTextColor: UM.Theme.colors.setting_control_text; + controlBorderWidth: UM.Theme.sizes.default_lining.width; controlFont: UM.Theme.fonts.default; validationErrorColor: UM.Theme.colors.setting_validation_error; From a8547483b890a48ebd9b617d0deaf404e091be3d Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Thu, 3 Dec 2015 23:13:58 +0100 Subject: [PATCH 40/44] CURA-361 --- resources/qml/SidebarSimple.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 0c461faaec..4eb2aa5f62 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -306,7 +306,7 @@ Item anchors.left: parent.left //: Setting enable skirt adhesion checkbox - text: catalog.i18nc("@option:check","Enable Brim Adhesion"); + text: catalog.i18nc("@option:check","Generate Brim"); style: UM.Theme.styles.checkbox; checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.adhesion_type == "brim" : false; @@ -340,7 +340,7 @@ Item anchors.left: parent.left //: Setting enable support checkbox - text: catalog.i18nc("@option:check","Enable Support"); + text: catalog.i18nc("@option:check","Generate Support Structure"); style: UM.Theme.styles.checkbox; checked: UM.ActiveProfile.valid ? UM.ActiveProfile.settingValues.support_enable : false; From 6863e15e203549dd31502322f28ebe3c3ead4aa3 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 8 Dec 2015 15:03:54 +0100 Subject: [PATCH 41/44] Remove Print Speed setting from simple mode --- resources/qml/SidebarSimple.qml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 4eb2aa5f62..7ed23c3af5 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -23,7 +23,7 @@ Item Component.onCompleted: PrintInformation.enabled = true Component.onDestruction: PrintInformation.enabled = false UM.I18nCatalog { id: catalog; name:"cura"} - +/* Rectangle{ id: speedCellLeft anchors.top: parent.top @@ -121,11 +121,10 @@ Item } ExclusiveGroup { id: speedCheckBoxGroup; } } - +*/ Rectangle{ id: infillCellLeft - anchors.top: speedCellRight.bottom - anchors.topMargin: UM.Theme.sizes.default_margin.height + anchors.top: parent.top anchors.left: parent.left width: base.width/100* 35 - UM.Theme.sizes.default_margin.width height: childrenRect.height < UM.Theme.sizes.simple_mode_infill_caption.height ? UM.Theme.sizes.simple_mode_infill_caption.height : childrenRect.height From 03e9694e32d96bdba48b8a21133a8a006071aa4d Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 9 Dec 2015 13:02:30 +0100 Subject: [PATCH 42/44] Fix PerObjectSettingsPanel layout --- .../PerObjectSettingsPanel.qml | 102 ++++++++---------- 1 file changed, 47 insertions(+), 55 deletions(-) diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml index adebc37dc3..0cc1d9761b 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml +++ b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml @@ -20,7 +20,7 @@ Item { anchors.top: parent.top; anchors.left: parent.left; - spacing: UM.Theme.sizes.default_lining.height; + spacing: UM.Theme.sizes.default_margin.height; UM.SettingItem { id: profileSelection @@ -28,7 +28,7 @@ Item { width: UM.Theme.sizes.setting.width; height: UM.Theme.sizes.setting.height; - name: catalog.i18nc("@label", "Profile") + name: catalog.i18nc("@label", "Object profile") type: "enum" indent: false @@ -44,62 +44,60 @@ Item { } } - Item - { - height: UM.Theme.sizes.default_margin.height - width: parent.width - } + Column { + id: customisedSettings + spacing: UM.Theme.sizes.default_lining.height; + width: UM.Theme.sizes.setting.width + UM.Theme.sizes.setting.height/2; - Repeater { - id: settings; + Repeater { + id: settings; - model: UM.ActiveTool.properties.Model.getItem(base.currentIndex).settings + model: UM.ActiveTool.properties.Model.getItem(base.currentIndex).settings - UM.SettingItem { - width: UM.Theme.sizes.setting.width; - height: UM.Theme.sizes.setting.height; - - name: model.label; - type: model.type; - value: model.value; - description: model.description; - unit: model.unit; - valid: model.valid; - options: model.options - indent: false - - style: UM.Theme.styles.setting_item; - - onItemValueChanged: { - settings.model.setSettingValue(model.key, value) - } - - Button - { - anchors.left: parent.left; - anchors.leftMargin: UM.Theme.sizes.default_margin.width; - - width: UM.Theme.sizes.setting.height; + UM.SettingItem { + width: UM.Theme.sizes.setting.width; height: UM.Theme.sizes.setting.height; - opacity: parent.hovered || hovered ? 1 : 0; - onClicked: UM.ActiveTool.properties.Model.removeSettingOverride(UM.ActiveTool.properties.Model.getItem(base.currentIndex).id, model.key) + name: model.label; + type: model.type; + value: model.value; + description: model.description; + unit: model.unit; + valid: model.valid; + options: model.options + indent: false - style: ButtonStyle + style: UM.Theme.styles.setting_item; + + onItemValueChanged: { + settings.model.setSettingValue(model.key, value) + } + + Button { - background: Rectangle + anchors.left: parent.right; + + width: UM.Theme.sizes.setting.height; + height: UM.Theme.sizes.setting.height; + + onClicked: UM.ActiveTool.properties.Model.removeSettingOverride(UM.ActiveTool.properties.Model.getItem(base.currentIndex).id, model.key) + + style: ButtonStyle { - color: control.hovered ? control.parent.style.controlHighlightColor : control.parent.style.controlColor; - UM.RecolorImage + background: Rectangle { - anchors.verticalCenter: parent.verticalCenter - anchors.horizontalCenter: parent.horizontalCenter - width: parent.width/2 - height: parent.height/2 - sourceSize.width: width - sourceSize.height: width - color: UM.Theme.colors.setting_control_revert - source: UM.Theme.icons.cross1 + color: control.hovered ? control.parent.style.controlHighlightColor : control.parent.style.controlColor; + UM.RecolorImage + { + anchors.verticalCenter: parent.verticalCenter + anchors.horizontalCenter: parent.horizontalCenter + width: parent.width/2 + height: parent.height/2 + sourceSize.width: width + sourceSize.height: width + color: UM.Theme.colors.setting_control_revert + source: UM.Theme.icons.cross1 + } } } } @@ -107,12 +105,6 @@ Item { } } - Item - { - height: UM.Theme.sizes.default_margin.height - width: parent.width - } - Button { id: customise_settings_button; From 5fe1de2153f91b928fd470ff916b99a879e29b73 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 9 Dec 2015 15:05:39 +0100 Subject: [PATCH 43/44] Add warning to PerObjectSettingsPanel when Print Sequence is set to All at Once --- .../PerObjectSettingsTool/PerObjectSettingsPanel.qml | 9 +++++++++ .../PerObjectSettingsTool/PerObjectSettingsTool.py | 11 ++++++++--- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml index 0cc1d9761b..1a10db90e3 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml +++ b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml @@ -11,6 +11,7 @@ import UM 1.1 as UM Item { id: base; property int currentIndex: UM.ActiveTool.properties.SelectedIndex; + property string printSequence: UM.ActiveTool.properties.PrintSequence; width: childrenRect.width; height: childrenRect.height; @@ -22,6 +23,14 @@ Item { spacing: UM.Theme.sizes.default_margin.height; + Label { + width: UM.Theme.sizes.setting.width; + wrapMode: Text.Wrap; + text: catalog.i18nc("@label", "Per Object Settings behavior may be unexpected when 'Print sequence' is set to 'All at Once'.") + color: UM.Theme.colors.text; + visible: base.printSequence == "all_at_once" + } + UM.SettingItem { id: profileSelection diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py b/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py index 06204e4b1c..132fb0d2f3 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py +++ b/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py @@ -3,6 +3,7 @@ from UM.Tool import Tool from UM.Scene.Selection import Selection +from UM.Application import Application from . import PerObjectSettingsModel @@ -10,7 +11,7 @@ class PerObjectSettingsTool(Tool): def __init__(self): super().__init__() - self.setExposedProperties("Model", "SelectedIndex") + self.setExposedProperties("Model", "SelectedIndex", "PrintSequence") def event(self, event): return False @@ -19,6 +20,10 @@ class PerObjectSettingsTool(Tool): return PerObjectSettingsModel.PerObjectSettingsModel() def getSelectedIndex(self): - selected_object_id = id(Selection.getSelectedObject(0)); + selected_object_id = id(Selection.getSelectedObject(0)) index = self.getModel().find("id", selected_object_id) - return index \ No newline at end of file + return index + + def getPrintSequence(self): + settings = Application.getInstance().getMachineManager().getActiveProfile() + return settings.getSettingValue("print_sequence") \ No newline at end of file From f29e03f7e7576b59cd1d8b9b3e0690edfe80eede Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Wed, 9 Dec 2015 15:40:57 +0100 Subject: [PATCH 44/44] Tweak Setting Category header size --- resources/themes/cura/theme.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index 9d37d28431..a3eb519e32 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -33,7 +33,7 @@ "family": "Proxima Nova Rg" }, "setting_category": { - "size": 1.0, + "size": 1.15, "family": "Proxima Nova Rg" }, "action_button": {