From 7e07482dec3373bf20bfa64277feef106ffceffd Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Mon, 3 Jul 2017 15:44:42 +0200 Subject: [PATCH 1/6] Added topbar to Cura CURA-3964 --- resources/qml/Cura.qml | 17 ++- resources/qml/Sidebar.qml | 215 ------------------------------- resources/qml/Topbar.qml | 208 ++++++++++++++++++++++++++++++ resources/themes/cura/styles.qml | 63 ++++++--- resources/themes/cura/theme.json | 2 + 5 files changed, 264 insertions(+), 241 deletions(-) create mode 100644 resources/qml/Topbar.qml diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index 612ef6b41b..779bb7d001 100755 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -329,7 +329,8 @@ UM.MainWindow tooltip: ''; anchors { - top: parent.top; + top: topbar.bottom; + topMargin: UM.Theme.getSize("default_margin").height; left: parent.left; } action: Cura.Actions.open; @@ -371,13 +372,21 @@ UM.MainWindow } } + Topbar + { + id: topbar + anchors.left:parent.left + anchors.right: parent.right + anchors.top: parent.top + } + Sidebar { id: sidebar; anchors { - top: parent.top; + top: topbar.bottom; bottom: parent.bottom; right: parent.right; } @@ -412,7 +421,7 @@ UM.MainWindow color: UM.Theme.getColor("viewport_overlay") anchors { - top: parent.top + top: topbar.bottom bottom: parent.bottom left:parent.left right: sidebar.left @@ -437,8 +446,6 @@ UM.MainWindow anchors.horizontalCenter: parent.horizontalCenter anchors.verticalCenter: parent.verticalCenter anchors.horizontalCenterOffset: - UM.Theme.getSize("sidebar").width / 2 - - } UM.MessageStack diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index ec187cef91..e446fba653 100755 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -88,221 +88,6 @@ Rectangle } } - // Printer selection and mode selection buttons for changing between Setting & Monitor print mode - Rectangle - { - id: sidebarHeaderBar - anchors.left: parent.left - anchors.right: parent.right - height: childrenRect.height - color: UM.Theme.getColor("sidebar_header_bar") - - Row - { - anchors.left: parent.left - anchors.right: parent.right - anchors.rightMargin: UM.Theme.getSize("default_margin").width - spacing: UM.Theme.getSize("default_margin").width - - ToolButton - { - id: machineSelection - text: Cura.MachineManager.activeMachineName - - width: parent.width - (showSettings.width + showMonitor.width + 2 * UM.Theme.getSize("default_margin").width) - height: UM.Theme.getSize("sidebar_header").height - tooltip: Cura.MachineManager.activeMachineName - - anchors.verticalCenter: parent.verticalCenter - style: ButtonStyle { - background: Rectangle { - color: { - if(control.pressed) { - return UM.Theme.getColor("sidebar_header_active"); - } else if(control.hovered) { - return UM.Theme.getColor("sidebar_header_hover"); - } else { - return UM.Theme.getColor("sidebar_header_bar"); - } - } - Behavior on color { ColorAnimation { duration: 50; } } - - Rectangle { - id: underline; - - anchors.left: parent.left - anchors.right: parent.right - anchors.bottom: parent.bottom - height: UM.Theme.getSize("sidebar_header_highlight").height - color: UM.Theme.getColor("sidebar_header_highlight_hover") - visible: control.hovered || control.pressed - } - - UM.RecolorImage { - id: downArrow - anchors.verticalCenter: parent.verticalCenter - anchors.right: parent.right - anchors.rightMargin: UM.Theme.getSize("default_margin").width - width: UM.Theme.getSize("standard_arrow").width - height: UM.Theme.getSize("standard_arrow").height - sourceSize.width: width - sourceSize.height: width - color: UM.Theme.getColor("text_reversed") - source: UM.Theme.getIcon("arrow_bottom") - } - Label { - id: sidebarComboBoxLabel - color: UM.Theme.getColor("text_reversed") - text: control.text; - elide: Text.ElideRight; - anchors.left: parent.left; - anchors.leftMargin: UM.Theme.getSize("default_margin").width - anchors.right: downArrow.left; - anchors.rightMargin: control.rightMargin; - anchors.verticalCenter: parent.verticalCenter; - font: UM.Theme.getFont("large") - } - } - label: Label{} - } - - menu: PrinterMenu { } - } - - Button - { - id: showSettings - width: height - height: UM.Theme.getSize("sidebar_header").height - onClicked: monitoringPrint = false - iconSource: UM.Theme.getIcon("tab_settings"); - property color overlayColor: "transparent" - property string overlayIconSource: "" - - checkable: true - checked: !monitoringPrint - exclusiveGroup: sidebarHeaderBarGroup - property string tooltipText: catalog.i18nc("@tooltip", "Print Setup

Edit or review the settings for the active print job.") - - onHoveredChanged: { - if (hovered) - { - tooltipDelayTimer.item = showSettings - tooltipDelayTimer.text = tooltipText - tooltipDelayTimer.start(); - } - else - { - tooltipDelayTimer.stop(); - base.hideTooltip(); - } - } - - style: UM.Theme.styles.sidebar_header_tab - } - - Button - { - id: showMonitor - width: height - height: UM.Theme.getSize("sidebar_header").height - onClicked: monitoringPrint = true - iconSource: printerConnected ? UM.Theme.getIcon("tab_monitor_with_status") : UM.Theme.getIcon("tab_monitor") - property color overlayColor: - { - if(!printerAcceptsCommands) - { - return UM.Theme.getColor("status_unknown"); - } - - if(Cura.MachineManager.printerOutputDevices[0].printerState == "maintenance") - { - return UM.Theme.getColor("status_busy"); - } - switch(Cura.MachineManager.printerOutputDevices[0].jobState) - { - case "printing": - case "pre_print": - case "wait_cleanup": - case "pausing": - case "resuming": - return UM.Theme.getColor("status_busy"); - case "ready": - case "": - return UM.Theme.getColor("status_ready"); - case "paused": - return UM.Theme.getColor("status_paused"); - case "error": - return UM.Theme.getColor("status_stopped"); - case "offline": - return UM.Theme.getColor("status_offline"); - default: - return UM.Theme.getColor("text_reversed"); - } - } - property string overlayIconSource: - { - if(!printerConnected) - { - return ""; - } - else if(!printerAcceptsCommands) - { - return UM.Theme.getIcon("tab_status_unknown"); - } - - if(Cura.MachineManager.printerOutputDevices[0].printerState == "maintenance") - { - return UM.Theme.getIcon("tab_status_busy"); - } - - switch(Cura.MachineManager.printerOutputDevices[0].jobState) - { - case "printing": - case "pre_print": - case "wait_cleanup": - case "pausing": - case "resuming": - return UM.Theme.getIcon("tab_status_busy"); - case "ready": - case "": - return UM.Theme.getIcon("tab_status_connected") - case "paused": - return UM.Theme.getIcon("tab_status_paused") - case "error": - return UM.Theme.getIcon("tab_status_stopped") - case "offline": - return UM.Theme.getIcon("tab_status_offline") - default: - return "" - } - } - - checkable: true - checked: monitoringPrint - exclusiveGroup: sidebarHeaderBarGroup - property string tooltipText: catalog.i18nc("@tooltip", "Print Monitor

Monitor the state of the connected printer and the print job in progress.") - - onHoveredChanged: { - if (hovered) - { - tooltipDelayTimer.item = showMonitor - tooltipDelayTimer.text = tooltipText - tooltipDelayTimer.start(); - } - else - { - tooltipDelayTimer.stop(); - base.hideTooltip(); - } - } - - style: UM.Theme.styles.sidebar_header_tab - } - ExclusiveGroup { id: sidebarHeaderBarGroup } - } - } - SidebarHeader { id: header width: parent.width diff --git a/resources/qml/Topbar.qml b/resources/qml/Topbar.qml new file mode 100644 index 0000000000..3c305b522a --- /dev/null +++ b/resources/qml/Topbar.qml @@ -0,0 +1,208 @@ +// Copyright (c) 2017 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.2 as UM +import Cura 1.0 as Cura +import "Menus" + +Rectangle +{ + id: base + anchors.left: parent.left + anchors.right: parent.right + height: UM.Theme.getSize("sidebar_header").height + color: UM.Theme.getColor("sidebar_header_bar") + + property bool printerConnected: Cura.MachineManager.printerOutputDevices.length != 0 + property bool printerAcceptsCommands: printerConnected && Cura.MachineManager.printerOutputDevices[0].acceptsCommands + + Row + { + anchors.left: parent.left + anchors.right: machineSelection.left + anchors.rightMargin: UM.Theme.getSize("default_margin").width + spacing: UM.Theme.getSize("default_margin").width + + Button + { + id: showSettings + height: UM.Theme.getSize("sidebar_header").height + onClicked: monitoringPrint = false + iconSource: UM.Theme.getIcon("tab_settings"); + property color overlayColor: "transparent" + property string overlayIconSource: "" + text: "Prepare" + checkable: true + checked: !monitoringPrint + exclusiveGroup: sidebarHeaderBarGroup + + style: UM.Theme.styles.topbar_header_tab + } + + Button + { + id: showMonitor + height: UM.Theme.getSize("sidebar_header").height + onClicked: monitoringPrint = true + text: "Print" + iconSource: printerConnected ? UM.Theme.getIcon("tab_monitor_with_status") : UM.Theme.getIcon("tab_monitor") + property color overlayColor: + { + if(!printerAcceptsCommands) + { + return UM.Theme.getColor("status_unknown"); + } + + if(Cura.MachineManager.printerOutputDevices[0].printerState == "maintenance") + { + return UM.Theme.getColor("status_busy"); + } + switch(Cura.MachineManager.printerOutputDevices[0].jobState) + { + case "printing": + case "pre_print": + case "wait_cleanup": + case "pausing": + case "resuming": + return UM.Theme.getColor("status_busy"); + case "ready": + case "": + return UM.Theme.getColor("status_ready"); + case "paused": + return UM.Theme.getColor("status_paused"); + case "error": + return UM.Theme.getColor("status_stopped"); + case "offline": + return UM.Theme.getColor("status_offline"); + default: + return UM.Theme.getColor("text_reversed"); + } + } + property string overlayIconSource: + { + if(!printerConnected) + { + return ""; + } + else if(!printerAcceptsCommands) + { + return UM.Theme.getIcon("tab_status_unknown"); + } + + if(Cura.MachineManager.printerOutputDevices[0].printerState == "maintenance") + { + return UM.Theme.getIcon("tab_status_busy"); + } + + switch(Cura.MachineManager.printerOutputDevices[0].jobState) + { + case "printing": + case "pre_print": + case "wait_cleanup": + case "pausing": + case "resuming": + return UM.Theme.getIcon("tab_status_busy"); + case "ready": + case "": + return UM.Theme.getIcon("tab_status_connected") + case "paused": + return UM.Theme.getIcon("tab_status_paused") + case "error": + return UM.Theme.getIcon("tab_status_stopped") + case "offline": + return UM.Theme.getIcon("tab_status_offline") + default: + return "" + } + } + + checkable: true + checked: monitoringPrint + exclusiveGroup: sidebarHeaderBarGroup + + style: UM.Theme.styles.topbar_header_tab + } + + ExclusiveGroup { id: sidebarHeaderBarGroup } + } + + ToolButton + { + id: machineSelection + text: Cura.MachineManager.activeMachineName + + width: UM.Theme.getSize("sidebar").width; + height: UM.Theme.getSize("sidebar_header").height + tooltip: Cura.MachineManager.activeMachineName + + anchors.verticalCenter: parent.verticalCenter + anchors.right: parent.right + style: ButtonStyle + { + background: Rectangle + { + color: + { + if(control.pressed) + { + return UM.Theme.getColor("sidebar_header_active"); + } else if(control.hovered) + { + return UM.Theme.getColor("sidebar_header_hover"); + } else + { + return UM.Theme.getColor("sidebar_header_bar"); + } + } + Behavior on color { ColorAnimation { duration: 50; } } + + Rectangle + { + id: underline; + + anchors.left: parent.left + anchors.right: parent.right + anchors.bottom: parent.bottom + height: UM.Theme.getSize("sidebar_header_highlight").height + color: UM.Theme.getColor("sidebar_header_highlight_hover") + visible: control.hovered || control.pressed + } + + UM.RecolorImage + { + id: downArrow + anchors.verticalCenter: parent.verticalCenter + anchors.right: parent.right + anchors.rightMargin: UM.Theme.getSize("default_margin").width + width: UM.Theme.getSize("standard_arrow").width + height: UM.Theme.getSize("standard_arrow").height + sourceSize.width: width + sourceSize.height: width + color: UM.Theme.getColor("text_reversed") + source: UM.Theme.getIcon("arrow_bottom") + } + Label + { + id: sidebarComboBoxLabel + color: UM.Theme.getColor("text_reversed") + text: control.text; + elide: Text.ElideRight; + anchors.left: parent.left; + anchors.leftMargin: UM.Theme.getSize("default_margin").width + anchors.right: downArrow.left; + anchors.rightMargin: control.rightMargin; + anchors.verticalCenter: parent.verticalCenter; + font: UM.Theme.getFont("large") + } + } + label: Label {} + } + + menu: PrinterMenu { } + } +} \ No newline at end of file diff --git a/resources/themes/cura/styles.qml b/resources/themes/cura/styles.qml index c4c441da43..d161d33d56 100755 --- a/resources/themes/cura/styles.qml +++ b/resources/themes/cura/styles.qml @@ -138,11 +138,11 @@ QtObject { } } - property Component sidebar_header_tab: Component { + property Component topbar_header_tab: Component { ButtonStyle { background: Item { - implicitWidth: Theme.getSize("button").width; - implicitHeight: Theme.getSize("button").height; + implicitWidth: Theme.getSize("topbar_button").width; + implicitHeight: Theme.getSize("topbar_button").height; Rectangle { id: buttonFace; @@ -174,27 +174,48 @@ QtObject { } } - label: Item { - UM.RecolorImage { - color: UM.Theme.getColor("text_reversed") - anchors.centerIn: parent - opacity: !control.enabled ? 0.2 : 1.0 - source: control.iconSource - width: Theme.getSize("button_icon").width - height: Theme.getSize("button_icon").height + label: Item + { - sourceSize: Theme.getSize("button_icon") - } - UM.RecolorImage { - visible: control.overlayIconSource != "" - color: control.overlayColor - anchors.centerIn: parent - opacity: !control.enabled ? 0.2 : 1.0 - source: control.overlayIconSource - width: Theme.getSize("button_icon").width + implicitHeight: Theme.getSize("button_icon").height + implicitWidth: Theme.getSize("topbar_button").width; + Item + { + anchors.horizontalCenter: parent.horizontalCenter + anchors.verticalCenter: parent.verticalCenter; + width: childrenRect.width height: Theme.getSize("button_icon").height + UM.RecolorImage + { + id: icon + color: UM.Theme.getColor("text_reversed") + opacity: !control.enabled ? 0.2 : 1.0 + source: control.iconSource + width: Theme.getSize("button_icon").width + height: Theme.getSize("button_icon").height - sourceSize: Theme.getSize("button_icon") + sourceSize: Theme.getSize("button_icon") + } + UM.RecolorImage + { + visible: control.overlayIconSource != "" + color: control.overlayColor + opacity: !control.enabled ? 0.2 : 1.0 + source: control.overlayIconSource + width: Theme.getSize("button_icon").width + height: Theme.getSize("button_icon").height + + sourceSize: Theme.getSize("button_icon") + } + Label + { + text: control.text; + anchors.left: icon.right + anchors.leftMargin: Theme.getSize("default_margin").width + anchors.verticalCenter: parent.verticalCenter; + font: UM.Theme.getFont("large"); + color: UM.Theme.getColor("text_reversed") + } } } } diff --git a/resources/themes/cura/theme.json b/resources/themes/cura/theme.json index a36f271fe8..60b542dbf4 100644 --- a/resources/themes/cura/theme.json +++ b/resources/themes/cura/theme.json @@ -291,6 +291,8 @@ "button_icon": [2.5, 2.5], "button_lining": [0, 0], + "topbar_button": [17, 4], + "button_tooltip": [1.0, 1.3], "button_tooltip_arrow": [0.25, 0.25], From 680cceb6f50aa432b795f241cb520ddf60e6f41c Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Mon, 3 Jul 2017 16:12:19 +0200 Subject: [PATCH 2/6] Switching to monitor tab now shows the correct sidebar again CURA-3964 --- resources/qml/Cura.qml | 11 ++++++++++- resources/qml/Sidebar.qml | 11 ----------- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index 779bb7d001..9a630da2fa 100755 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -19,6 +19,16 @@ UM.MainWindow title: catalog.i18nc("@title:window","Cura"); viewportRect: Qt.rect(0, 0, (base.width - sidebar.width) / base.width, 1.0) property bool monitoringPrint: false + + Connections + { + target: Printer + onShowPrintMonitor: + { + monitoringPrint = show; + } + } + Component.onCompleted: { CuraApplication.setMinimumWindowSize(UM.Theme.getSize("window_minimum_size")) @@ -391,7 +401,6 @@ UM.MainWindow right: parent.right; } z: 1 - onMonitoringPrintChanged: base.monitoringPrint = monitoringPrint width: UM.Theme.getSize("sidebar").width; } diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index e446fba653..64127d2163 100755 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -15,18 +15,7 @@ Rectangle id: base; property int currentModeIndex; - property bool monitoringPrint: false; // When adding more "tabs", one want to replace this bool with a ListModel property bool hideSettings: PrintInformation.preSliced - Connections - { - target: Printer - onShowPrintMonitor: - { - base.monitoringPrint = show; - showSettings.checked = !show; - showMonitor.checked = show; - } - } // Is there an output device for this printer? property bool printerConnected: Cura.MachineManager.printerOutputDevices.length != 0 From ec25164731084586878975f6eb3c0ec480f8a3d2 Mon Sep 17 00:00:00 2001 From: Arjen Hiemstra Date: Tue, 4 Jul 2017 11:37:04 +0200 Subject: [PATCH 3/6] Cleanup monitoringPrint stuff by properly passing things as properties Instead of relying on the property magically being propagated from the root object, which causes crashes. Contributes to CURA-3964 --- resources/qml/Cura.qml | 10 +++++++--- resources/qml/Sidebar.qml | 2 ++ resources/qml/Topbar.qml | 13 ++++++++----- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index 9a630da2fa..4f1e0f34a3 100755 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -18,14 +18,14 @@ UM.MainWindow //: Cura application window title title: catalog.i18nc("@title:window","Cura"); viewportRect: Qt.rect(0, 0, (base.width - sidebar.width) / base.width, 1.0) - property bool monitoringPrint: false + property bool showPrintMonitor: false Connections { target: Printer onShowPrintMonitor: { - monitoringPrint = show; + base.showPrintMonitor = show; } } @@ -388,6 +388,9 @@ UM.MainWindow anchors.left:parent.left anchors.right: parent.right anchors.top: parent.top + monitoringPrint: base.showPrintMonitor + onStartMonitoringPrint: base.showPrintMonitor = true + onStopMonitoringPrint: base.showPrintMonitor = false } Sidebar @@ -402,6 +405,7 @@ UM.MainWindow } z: 1 width: UM.Theme.getSize("sidebar").width; + monitoringPrint: base.showPrintMonitor } Button @@ -451,7 +455,7 @@ UM.MainWindow Loader { sourceComponent: Cura.MachineManager.printerOutputDevices.length > 0 ? Cura.MachineManager.printerOutputDevices[0].monitorItem: null - visible: base.monitoringPrint + visible: base.showPrintMonitor anchors.horizontalCenter: parent.horizontalCenter anchors.verticalCenter: parent.verticalCenter anchors.horizontalCenterOffset: - UM.Theme.getSize("sidebar").width / 2 diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index 64127d2163..a1781fe1c5 100755 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -22,6 +22,8 @@ Rectangle property bool printerAcceptsCommands: printerConnected && Cura.MachineManager.printerOutputDevices[0].acceptsCommands property int backendState: UM.Backend.state; + property bool monitoringPrint: false + color: UM.Theme.getColor("sidebar") UM.I18nCatalog { id: catalog; name:"cura"} diff --git a/resources/qml/Topbar.qml b/resources/qml/Topbar.qml index 3c305b522a..1d51c8eccc 100644 --- a/resources/qml/Topbar.qml +++ b/resources/qml/Topbar.qml @@ -20,6 +20,9 @@ Rectangle property bool printerConnected: Cura.MachineManager.printerOutputDevices.length != 0 property bool printerAcceptsCommands: printerConnected && Cura.MachineManager.printerOutputDevices[0].acceptsCommands + property bool monitoringPrint: false + signal startMonitoringPrint() + signal stopMonitoringPrint() Row { @@ -32,13 +35,13 @@ Rectangle { id: showSettings height: UM.Theme.getSize("sidebar_header").height - onClicked: monitoringPrint = false + onClicked: base.stopMonitoringPrint() iconSource: UM.Theme.getIcon("tab_settings"); property color overlayColor: "transparent" property string overlayIconSource: "" text: "Prepare" checkable: true - checked: !monitoringPrint + checked: !base.monitoringPrint exclusiveGroup: sidebarHeaderBarGroup style: UM.Theme.styles.topbar_header_tab @@ -48,7 +51,7 @@ Rectangle { id: showMonitor height: UM.Theme.getSize("sidebar_header").height - onClicked: monitoringPrint = true + onClicked: base.startMonitoringPrint() text: "Print" iconSource: printerConnected ? UM.Theme.getIcon("tab_monitor_with_status") : UM.Theme.getIcon("tab_monitor") property color overlayColor: @@ -122,7 +125,7 @@ Rectangle } checkable: true - checked: monitoringPrint + checked: base.monitoringPrint exclusiveGroup: sidebarHeaderBarGroup style: UM.Theme.styles.topbar_header_tab @@ -205,4 +208,4 @@ Rectangle menu: PrinterMenu { } } -} \ No newline at end of file +} From 1627a655132d566ff189b50a1e806f2e3567ba89 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Tue, 4 Jul 2017 11:58:04 +0200 Subject: [PATCH 4/6] Viewport overlay now shows correctly when switching between monitor & settings CURA-3964 --- resources/qml/Cura.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index 4f1e0f34a3..b1e5c8f2f2 100755 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -440,7 +440,7 @@ UM.MainWindow right: sidebar.left } visible: opacity > 0 - opacity: base.monitoringPrint ? 0.75 : 0 + opacity: base.showPrintMonitor ? 0.75 : 0 Behavior on opacity { NumberAnimation { duration: 100; } } From d0ef97b02c41baf0970dcaba2181a554f5c3a531 Mon Sep 17 00:00:00 2001 From: Lipu Fei Date: Tue, 4 Jul 2017 13:06:11 +0200 Subject: [PATCH 5/6] Remove invalid anchoring for SidebarHeader CURA-3964 sidebarHeaderBar has been removed and the anchor line is not needed. --- resources/qml/Sidebar.qml | 2 -- 1 file changed, 2 deletions(-) diff --git a/resources/qml/Sidebar.qml b/resources/qml/Sidebar.qml index a1781fe1c5..b57b56c292 100755 --- a/resources/qml/Sidebar.qml +++ b/resources/qml/Sidebar.qml @@ -83,8 +83,6 @@ Rectangle id: header width: parent.width - anchors.top: sidebarHeaderBar.bottom - onShowTooltip: base.showTooltip(item, location, text) onHideTooltip: base.hideTooltip() } From 19495de7e82de32bccf5b79cad06a94d3d7b7d74 Mon Sep 17 00:00:00 2001 From: Lipu Fei Date: Tue, 4 Jul 2017 13:24:12 +0200 Subject: [PATCH 6/6] Fix machine_nozzle_offset_y value CURA-3964 This is such an obvious bug... --- cura/BuildVolume.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index de36b80123..046fb505cc 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -727,7 +727,7 @@ class BuildVolume(SceneNode): offset_x = extruder.getProperty("machine_nozzle_offset_x", "value") if offset_x is None: offset_x = 0 - offset_y = -extruder.getProperty("machine_nozzle_offset_y", "value") + offset_y = extruder.getProperty("machine_nozzle_offset_y", "value") if offset_y is None: offset_y = 0 else: