diff --git a/plugins/ChangeLogPlugin/ChangeLog.txt b/plugins/ChangeLogPlugin/ChangeLog.txt index 25880a66e4..d7d68e04a2 100755 --- a/plugins/ChangeLogPlugin/ChangeLog.txt +++ b/plugins/ChangeLogPlugin/ChangeLog.txt @@ -1,3 +1,13 @@ +[3.0.4] +*Bug fixes +- Fixed OpenGL issue that prevents Cura from starting. + +*License agreement on the first startup has been added + +[3.0.3] +*Bug fixes +- Add missing libraries for the MakePrintable plugin. + [3.0.0] *Faster start-up Start-up speed has been cut in half compared to the previous version. diff --git a/plugins/LayerView/LayerSliderLabel.qml b/plugins/LayerView/LayerSliderLabel.qml index 892f1775ea..c989679285 100644 --- a/plugins/LayerView/LayerSliderLabel.qml +++ b/plugins/LayerView/LayerSliderLabel.qml @@ -48,7 +48,7 @@ UM.PointingRectangle { anchors { left: parent.left - leftMargin: UM.Theme.getSize("default_margin").width / 2 + leftMargin: Math.floor(UM.Theme.getSize("default_margin").width / 2) verticalCenter: parent.verticalCenter } @@ -90,7 +90,7 @@ UM.PointingRectangle { anchors { left: parent.right - leftMargin: UM.Theme.getSize("default_margin").width / 2 + leftMargin: Math.floor(UM.Theme.getSize("default_margin").width / 2) verticalCenter: parent.verticalCenter } diff --git a/plugins/UM3NetworkPrinting/ClusterControlItem.qml b/plugins/UM3NetworkPrinting/ClusterControlItem.qml index 194337cca0..8ba7156da8 100644 --- a/plugins/UM3NetworkPrinting/ClusterControlItem.qml +++ b/plugins/UM3NetworkPrinting/ClusterControlItem.qml @@ -83,8 +83,7 @@ Component anchors.leftMargin: UM.Theme.getSize("default_margin").width anchors.right: parent.right anchors.rightMargin: UM.Theme.getSize("default_margin").width - //TODO; It's probably nicer to do this with a dynamic data model instead of hardcoding this. - //But you know the drill; time constraints don't result in elegant code. + Item { width: parent.width diff --git a/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml b/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml index b20d17a6d4..eb1bf786b0 100644 --- a/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml +++ b/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml @@ -114,7 +114,7 @@ Cura.MachineAction Column { - width: (parent.width * 0.5) | 0 + width: Math.floor(parent.width * 0.5) spacing: UM.Theme.getSize("default_margin").height ScrollView @@ -191,8 +191,6 @@ Cura.MachineAction anchors.left: parent.left anchors.right: parent.right wrapMode: Text.WordWrap - //: Tips label - //TODO: get actual link from webteam text: catalog.i18nc("@label", "If your printer is not listed, read the network printing troubleshooting guide").arg("https://ultimaker.com/en/troubleshooting"); onLinkActivated: Qt.openUrlExternally(link) } @@ -200,7 +198,7 @@ Cura.MachineAction } Column { - width: (parent.width * 0.5) | 0 + width: Math.floor(parent.width * 0.5) visible: base.selectedPrinter ? true : false spacing: UM.Theme.getSize("default_margin").height Label @@ -218,13 +216,13 @@ Cura.MachineAction columns: 2 Label { - width: (parent.width * 0.5) | 0 + width: Math.floor(parent.width * 0.5) wrapMode: Text.WordWrap text: catalog.i18nc("@label", "Type") } Label { - width: (parent.width * 0.5) | 0 + width: Math.floor(parent.width * 0.5) wrapMode: Text.WordWrap text: { @@ -249,25 +247,25 @@ Cura.MachineAction } Label { - width: (parent.width * 0.5) | 0 + width: Math.floor(parent.width * 0.5) wrapMode: Text.WordWrap text: catalog.i18nc("@label", "Firmware version") } Label { - width: (parent.width * 0.5) | 0 + width: Math.floor(parent.width * 0.5) wrapMode: Text.WordWrap text: base.selectedPrinter ? base.selectedPrinter.firmwareVersion : "" } Label { - width: (parent.width * 0.5) | 0 + width: Math.floor(parent.width * 0.5) wrapMode: Text.WordWrap text: catalog.i18nc("@label", "Address") } Label { - width: (parent.width * 0.5) | 0 + width: Math.floor(parent.width * 0.5) wrapMode: Text.WordWrap text: base.selectedPrinter ? base.selectedPrinter.ipAddress : "" } diff --git a/plugins/UM3NetworkPrinting/MonitorItem.qml b/plugins/UM3NetworkPrinting/MonitorItem.qml index ffa2e8c85d..f69df41dd4 100644 --- a/plugins/UM3NetworkPrinting/MonitorItem.qml +++ b/plugins/UM3NetworkPrinting/MonitorItem.qml @@ -17,10 +17,10 @@ Component } return (sourceSize.width / sourceSize.height) > (maximumWidth / maximumHeight); } - property real _width: Math.min(maximumWidth, sourceSize.width) - property real _height: Math.min(maximumHeight, sourceSize.height) - width: proportionalHeight ? _width : sourceSize.width * _height / sourceSize.height - height: !proportionalHeight ? _height : sourceSize.height * _width / sourceSize.width + property real _width: Math.floor(Math.min(maximumWidth, sourceSize.width)) + property real _height: Math.floor(Math.min(maximumHeight, sourceSize.height)) + width: proportionalHeight ? _width : Math.floor(sourceSize.width * _height / sourceSize.height) + height: !proportionalHeight ? _height : Math.floor(sourceSize.height * _width / sourceSize.width) anchors.horizontalCenter: parent.horizontalCenter onVisibleChanged: diff --git a/plugins/UM3NetworkPrinting/PrintCoreConfiguration.qml b/plugins/UM3NetworkPrinting/PrintCoreConfiguration.qml index 624c02f735..03ff4542e1 100644 --- a/plugins/UM3NetworkPrinting/PrintCoreConfiguration.qml +++ b/plugins/UM3NetworkPrinting/PrintCoreConfiguration.qml @@ -10,7 +10,7 @@ Item id: extruderInfo property var printCoreConfiguration - width: parent.width / 2 + width: Math.floor(parent.width / 2) height: childrenRect.height Label { diff --git a/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml b/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml index 1ced5e8233..7ae8520d19 100644 --- a/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml +++ b/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml @@ -86,7 +86,7 @@ Rectangle Rectangle { - width: parent.width / 3 + width: Math.floor(parent.width / 3) height: parent.height Label // Print job name @@ -131,7 +131,7 @@ Rectangle Rectangle { - width: parent.width / 3 * 2 + width: Math.floor(parent.width / 3 * 2) height: parent.height Label // Friendly machine name @@ -139,7 +139,7 @@ Rectangle id: printerNameLabel anchors.top: parent.top anchors.left: parent.left - width: parent.width / 2 - UM.Theme.getSize("default_margin").width - showCameraIcon.width + width: Math.floor(parent.width / 2 - UM.Theme.getSize("default_margin").width - showCameraIcon.width) text: printer.friendly_name font: UM.Theme.getFont("default_bold") elide: Text.ElideRight @@ -149,7 +149,7 @@ Rectangle { id: printerTypeLabel anchors.top: printerNameLabel.bottom - width: parent.width / 2 - UM.Theme.getSize("default_margin").width + width: Math.floor(parent.width / 2 - UM.Theme.getSize("default_margin").width) text: printer.machine_variant anchors.left: parent.left elide: Text.ElideRight @@ -183,7 +183,7 @@ Rectangle id: extruderInfo anchors.bottom: parent.bottom - width: parent.width / 2 - UM.Theme.getSize("default_margin").width + width: Math.floor(parent.width / 2 - UM.Theme.getSize("default_margin").width) height: childrenRect.height spacing: UM.Theme.getSize("default_margin").width @@ -217,7 +217,7 @@ Rectangle anchors.right: parent.right anchors.top: parent.top height: showExtended ? parent.height: printProgressTitleBar.height - width: parent.width / 2 - UM.Theme.getSize("default_margin").width + width: Math.floor(parent.width / 2 - UM.Theme.getSize("default_margin").width) border.width: UM.Theme.getSize("default_lining").width border.color: lineColor radius: cornerRadius diff --git a/plugins/UM3NetworkPrinting/PrinterVideoStream.qml b/plugins/UM3NetworkPrinting/PrinterVideoStream.qml index fe60d30dd4..6793d74ac5 100644 --- a/plugins/UM3NetworkPrinting/PrinterVideoStream.qml +++ b/plugins/UM3NetworkPrinting/PrinterVideoStream.qml @@ -57,7 +57,7 @@ Item { id: cameraImage width: Math.min(sourceSize.width === 0 ? 800 * screenScaleFactor : sourceSize.width, maximumWidth) - height: (sourceSize.height === 0 ? 600 * screenScaleFactor : sourceSize.height) * width / sourceSize.width + height: Math.floor((sourceSize.height === 0 ? 600 * screenScaleFactor : sourceSize.height) * width / sourceSize.width) anchors.horizontalCenter: parent.horizontalCenter anchors.verticalCenter: parent.verticalCenter z: 1 diff --git a/plugins/VersionUpgrade/VersionUpgrade30to31/VersionUpgrade30to31.py b/plugins/VersionUpgrade/VersionUpgrade30to31/VersionUpgrade30to31.py index d328b14367..4672cb1488 100644 --- a/plugins/VersionUpgrade/VersionUpgrade30to31/VersionUpgrade30to31.py +++ b/plugins/VersionUpgrade/VersionUpgrade30to31/VersionUpgrade30to31.py @@ -9,39 +9,39 @@ from UM.VersionUpgrade import VersionUpgrade #We're inheriting from this. # a list of all legacy "Not Supported" quality profiles _OLD_NOT_SUPPORTED_PROFILES = [ - "um2p_pp_0.25_normal.inst.cfg", - "um2p_tpu_0.8_normal.inst.cfg", - "um3_bb0.4_ABS_Fast_Print.inst.cfg", - "um3_bb0.4_ABS_Superdraft_Print.inst.cfg", - "um3_bb0.4_CPEP_Fast_Print.inst.cfg", - "um3_bb0.4_CPEP_Superdraft_Print.inst.cfg", - "um3_bb0.4_CPE_Fast_Print.inst.cfg", - "um3_bb0.4_CPE_Superdraft_Print.inst.cfg", - "um3_bb0.4_Nylon_Fast_Print.inst.cfg", - "um3_bb0.4_Nylon_Superdraft_Print.inst.cfg", - "um3_bb0.4_PC_Fast_Print.inst.cfg", - "um3_bb0.4_PLA_Fast_Print.inst.cfg", - "um3_bb0.4_PLA_Superdraft_Print.inst.cfg", - "um3_bb0.4_PP_Fast_Print.inst.cfg", - "um3_bb0.4_PP_Superdraft_Print.inst.cfg", - "um3_bb0.4_TPU_Fast_Print.inst.cfg", - "um3_bb0.4_TPU_Superdraft_Print.inst.cfg", - "um3_bb0.8_ABS_Fast_Print.inst.cfg", - "um3_bb0.8_ABS_Superdraft_Print.inst.cfg", - "um3_bb0.8_CPEP_Fast_Print.inst.cfg", - "um3_bb0.8_CPEP_Superdraft_Print.inst.cfg", - "um3_bb0.8_CPE_Fast_Print.inst.cfg", - "um3_bb0.8_CPE_Superdraft_Print.inst.cfg", - "um3_bb0.8_Nylon_Fast_Print.inst.cfg", - "um3_bb0.8_Nylon_Superdraft_Print.inst.cfg", - "um3_bb0.8_PC_Fast_Print.inst.cfg", - "um3_bb0.8_PC_Superdraft_Print.inst.cfg", - "um3_bb0.8_PLA_Fast_Print.inst.cfg", - "um3_bb0.8_PLA_Superdraft_Print.inst.cfg", - "um3_bb0.8_PP_Fast_Print.inst.cfg", - "um3_bb0.8_PP_Superdraft_Print.inst.cfg", - "um3_bb0.8_TPU_Fast_print.inst.cfg", - "um3_bb0.8_TPU_Superdraft_Print.inst.cfg", + "um2p_pp_0.25_normal", + "um2p_tpu_0.8_normal", + "um3_bb0.4_ABS_Fast_Print", + "um3_bb0.4_ABS_Superdraft_Print", + "um3_bb0.4_CPEP_Fast_Print", + "um3_bb0.4_CPEP_Superdraft_Print", + "um3_bb0.4_CPE_Fast_Print", + "um3_bb0.4_CPE_Superdraft_Print", + "um3_bb0.4_Nylon_Fast_Print", + "um3_bb0.4_Nylon_Superdraft_Print", + "um3_bb0.4_PC_Fast_Print", + "um3_bb0.4_PLA_Fast_Print", + "um3_bb0.4_PLA_Superdraft_Print", + "um3_bb0.4_PP_Fast_Print", + "um3_bb0.4_PP_Superdraft_Print", + "um3_bb0.4_TPU_Fast_Print", + "um3_bb0.4_TPU_Superdraft_Print", + "um3_bb0.8_ABS_Fast_Print", + "um3_bb0.8_ABS_Superdraft_Print", + "um3_bb0.8_CPEP_Fast_Print", + "um3_bb0.8_CPEP_Superdraft_Print", + "um3_bb0.8_CPE_Fast_Print", + "um3_bb0.8_CPE_Superdraft_Print", + "um3_bb0.8_Nylon_Fast_Print", + "um3_bb0.8_Nylon_Superdraft_Print", + "um3_bb0.8_PC_Fast_Print", + "um3_bb0.8_PC_Superdraft_Print", + "um3_bb0.8_PLA_Fast_Print", + "um3_bb0.8_PLA_Superdraft_Print", + "um3_bb0.8_PP_Fast_Print", + "um3_bb0.8_PP_Superdraft_Print", + "um3_bb0.8_TPU_Fast_print", + "um3_bb0.8_TPU_Superdraft_Print", ] diff --git a/resources/qml/AboutDialog.qml b/resources/qml/AboutDialog.qml index 534f0d016c..36cebe594a 100644 --- a/resources/qml/AboutDialog.qml +++ b/resources/qml/AboutDialog.qml @@ -132,6 +132,7 @@ UM.Dialog projectsModel.append({ name:"PySerial", description: catalog.i18nc("@label", "Serial communication library"), license: "Python", url: "http://pyserial.sourceforge.net/" }); projectsModel.append({ name:"python-zeroconf", description: catalog.i18nc("@label", "ZeroConf discovery library"), license: "LGPL", url: "https://github.com/jstasiak/python-zeroconf" }); projectsModel.append({ name:"Clipper", description: catalog.i18nc("@label", "Polygon clipping library"), license: "Boost", url: "http://www.angusj.com/delphi/clipper.php" }); + projectsModel.append({ name:"Requests", description: catalog.i18nc("@Label", "Python HTTP library"), license: "GPL", url: "http://docs.python-requests.org" }); projectsModel.append({ name:"Open Sans", description: catalog.i18nc("@label", "Font"), license: "Apache 2.0", url: "https://fonts.google.com/specimen/Open+Sans" }); projectsModel.append({ name:"Font-Awesome-SVG-PNG", description: catalog.i18nc("@label", "SVG icons"), license: "SIL OFL 1.1", url: "https://github.com/encharm/Font-Awesome-SVG-PNG" }); diff --git a/resources/qml/AskOpenAsProjectOrModelsDialog.qml b/resources/qml/AskOpenAsProjectOrModelsDialog.qml index 450ec0ea26..affef33fb1 100644 --- a/resources/qml/AskOpenAsProjectOrModelsDialog.qml +++ b/resources/qml/AskOpenAsProjectOrModelsDialog.qml @@ -63,11 +63,12 @@ UM.Dialog anchors.fill: parent anchors.leftMargin: 20 * screenScaleFactor anchors.rightMargin: 20 * screenScaleFactor - anchors.bottomMargin: 20 * screenScaleFactor + anchors.bottomMargin: 10 * screenScaleFactor spacing: 10 * screenScaleFactor Label { + id: questionText text: catalog.i18nc("@text:window", "This is a Cura project file. Would you like to open it as a project or import the models from it?") anchors.left: parent.left anchors.right: parent.right @@ -85,6 +86,7 @@ UM.Dialog // Buttons Item { + id: buttonBar anchors.right: parent.right anchors.left: parent.left height: childrenRect.height diff --git a/resources/qml/JobSpecs.qml b/resources/qml/JobSpecs.qml index 308316d3e9..426d9dd916 100644 --- a/resources/qml/JobSpecs.qml +++ b/resources/qml/JobSpecs.qml @@ -95,7 +95,7 @@ Item { { id: printJobTextfield anchors.right: printJobPencilIcon.left - anchors.rightMargin: UM.Theme.getSize("default_margin").width/2 + anchors.rightMargin: Math.floor(UM.Theme.getSize("default_margin").width/2) height: UM.Theme.getSize("jobspecs_line").height width: Math.max(__contentWidth + UM.Theme.getSize("default_margin").width, 50) maximumLength: 120 diff --git a/resources/qml/Settings/SettingTextField.qml b/resources/qml/Settings/SettingTextField.qml index 7c2317af63..cdc0588940 100644 --- a/resources/qml/Settings/SettingTextField.qml +++ b/resources/qml/Settings/SettingTextField.qml @@ -11,6 +11,14 @@ SettingItem id: base property var focusItem: input + property string textBeforeEdit + property bool textHasChanged + onFocusReceived: + { + textHasChanged = false; + textBeforeEdit = focusItem.text; + } + contents: Rectangle { id: control @@ -115,12 +123,22 @@ SettingItem Keys.onReleased: { - propertyProvider.setPropertyValue("value", text) + if (text != textBeforeEdit) + { + textHasChanged = true; + } + if (textHasChanged) + { + propertyProvider.setPropertyValue("value", text) + } } onEditingFinished: { - propertyProvider.setPropertyValue("value", text) + if (textHasChanged) + { + propertyProvider.setPropertyValue("value", text) + } } onActiveFocusChanged: diff --git a/resources/qml/SidebarSimple.qml b/resources/qml/SidebarSimple.qml index 34780d2219..020b75e3ce 100644 --- a/resources/qml/SidebarSimple.qml +++ b/resources/qml/SidebarSimple.qml @@ -310,6 +310,24 @@ Item } } } + + MouseArea + { + id: speedSliderMouseArea + anchors.fill: parent + hoverEnabled: true + enabled: Cura.SimpleModeSettingsManager.isProfileUserCreated + + onEntered: + { + var content = catalog.i18nc("@tooltip","A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab") + base.showTooltip(qualityRow, Qt.point(-UM.Theme.getSize("sidebar_margin").width, customisedSettings.height), content) + } + onExited: + { + base.hideTooltip(); + } + } } Label