mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-08-04 04:23:58 -06:00
Merge branch 'main' into CURA-10475_engineplugin
This commit is contained in:
commit
43322ff249
12 changed files with 117 additions and 95 deletions
Binary file not shown.
Before Width: | Height: | Size: 381 KiB After Width: | Height: | Size: 417 KiB |
|
@ -40,7 +40,9 @@ class ThreeMFWorkspaceWriter(WorkspaceWriter):
|
|||
|
||||
# Indicate that the 3mf mesh writer should not close the archive just yet (we still need to add stuff to it).
|
||||
mesh_writer.setStoreArchive(True)
|
||||
mesh_writer.write(stream, nodes, mode)
|
||||
if not mesh_writer.write(stream, nodes, mode):
|
||||
self.setInformation(mesh_writer.getInformation())
|
||||
return False
|
||||
|
||||
archive = mesh_writer.getArchive()
|
||||
if archive is None: # This happens if there was no mesh data to write.
|
||||
|
@ -98,7 +100,7 @@ class ThreeMFWorkspaceWriter(WorkspaceWriter):
|
|||
Logger.error("No permission to write workspace to this stream.")
|
||||
return False
|
||||
except EnvironmentError as e:
|
||||
self.setInformation(catalog.i18nc("@error:zip", "The operating system does not allow saving a project file to this location or with this file name."))
|
||||
self.setInformation(catalog.i18nc("@error:zip", str(e)))
|
||||
Logger.error("EnvironmentError when writing workspace to this stream: {err}".format(err = str(e)))
|
||||
return False
|
||||
mesh_writer.setStoreArchive(False)
|
||||
|
|
|
@ -241,9 +241,9 @@ class ThreeMFWriter(MeshWriter):
|
|||
archive.writestr(model_file, scene_string)
|
||||
archive.writestr(content_types_file, b'<?xml version="1.0" encoding="UTF-8"?> \n' + ET.tostring(content_types))
|
||||
archive.writestr(relations_file, b'<?xml version="1.0" encoding="UTF-8"?> \n' + ET.tostring(relations_element))
|
||||
except Exception as e:
|
||||
except Exception as error:
|
||||
Logger.logException("e", "Error writing zip file")
|
||||
self.setInformation(catalog.i18nc("@error:zip", "Error writing 3mf file."))
|
||||
self.setInformation(str(error))
|
||||
return False
|
||||
finally:
|
||||
if not self._store_archive:
|
||||
|
|
|
@ -5514,7 +5514,9 @@
|
|||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default_value": 0.0,
|
||||
"maximum_value": "extruderValue(support_extruder_nr, 'support_offset')",
|
||||
"maximum_value": "extruderValue(support_extruder_nr, 'support_offset') if support_structure == 'normal' else None",
|
||||
"minimum_value_warning": "-1 * machine_nozzle_size",
|
||||
"maximum_value_warning": "10 * machine_nozzle_size",
|
||||
"limit_to_extruder": "support_interface_extruder_nr",
|
||||
"enabled": "support_interface_enable and (support_enable or support_meshes_present)",
|
||||
"settable_per_mesh": false,
|
||||
|
@ -5529,7 +5531,9 @@
|
|||
"type": "float",
|
||||
"default_value": 0.0,
|
||||
"value": "extruderValue(support_roof_extruder_nr, 'support_interface_offset')",
|
||||
"maximum_value": "extruderValue(support_extruder_nr, 'support_offset')",
|
||||
"maximum_value": "extruderValue(support_extruder_nr, 'support_offset') if support_structure == 'normal' else None",
|
||||
"minimum_value_warning": "-1 * machine_nozzle_size",
|
||||
"maximum_value_warning": "10 * machine_nozzle_size",
|
||||
"limit_to_extruder": "support_roof_extruder_nr",
|
||||
"enabled": "support_roof_enable and (support_enable or support_meshes_present)",
|
||||
"settable_per_mesh": false,
|
||||
|
@ -5543,7 +5547,9 @@
|
|||
"type": "float",
|
||||
"default_value": 0.0,
|
||||
"value": "extruderValue(support_bottom_extruder_nr, 'support_interface_offset')",
|
||||
"maximum_value": "extruderValue(support_extruder_nr, 'support_offset')",
|
||||
"maximum_value": "extruderValue(support_extruder_nr, 'support_offset') if support_structure == 'normal' else None",
|
||||
"minimum_value_warning": "-1 * machine_nozzle_size",
|
||||
"maximum_value_warning": "10 * machine_nozzle_size",
|
||||
"limit_to_extruder": "support_bottom_extruder_nr",
|
||||
"enabled": "support_bottom_enable and (support_enable or support_meshes_present)",
|
||||
"settable_per_mesh": false,
|
||||
|
|
|
@ -822,12 +822,26 @@ UM.MainWindow
|
|||
}
|
||||
}
|
||||
|
||||
property var wizardDialog
|
||||
Component
|
||||
{
|
||||
id: addMachineDialogLoader
|
||||
|
||||
Cura.WizardDialog
|
||||
{
|
||||
id: addMachineDialog
|
||||
title: catalog.i18nc("@title:window", "Add Printer")
|
||||
maximumWidth: Screen.width * 2
|
||||
maximumHeight: Screen.height * 2
|
||||
model: CuraApplication.getAddPrinterPagesModel()
|
||||
progressBarVisible: false
|
||||
onVisibleChanged:
|
||||
{
|
||||
if(!visible)
|
||||
{
|
||||
wizardDialog = null
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Cura.WizardDialog
|
||||
|
@ -852,9 +866,8 @@ UM.MainWindow
|
|||
target: Cura.Actions.addMachine
|
||||
function onTriggered()
|
||||
{
|
||||
// Make sure to show from the first page when the dialog shows up.
|
||||
addMachineDialog.resetModelState()
|
||||
addMachineDialog.show()
|
||||
wizardDialog = addMachineDialogLoader.createObject()
|
||||
wizardDialog.show()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -55,6 +55,7 @@ UM.TooltipArea
|
|||
}
|
||||
|
||||
ScrollBar.vertical: UM.ScrollBar {}
|
||||
clip: true
|
||||
|
||||
TextArea.flickable: TextArea
|
||||
{
|
||||
|
@ -70,6 +71,7 @@ UM.TooltipArea
|
|||
selectionColor: UM.Theme.getColor("text_selection")
|
||||
selectedTextColor: UM.Theme.getColor("text")
|
||||
wrapMode: TextEdit.NoWrap
|
||||
padding: UM.Theme.getSize("narrow_margin").height + backgroundRectangle.border.width
|
||||
|
||||
onActiveFocusChanged:
|
||||
{
|
||||
|
@ -81,8 +83,9 @@ UM.TooltipArea
|
|||
|
||||
background: Rectangle
|
||||
{
|
||||
id: backgroundRectangle
|
||||
|
||||
anchors.fill: parent
|
||||
anchors.margins: -border.width //Wrap the border around the parent.
|
||||
|
||||
color: UM.Theme.getColor("detail_background")
|
||||
border.color:
|
||||
|
|
|
@ -20,6 +20,7 @@ Item
|
|||
width: childrenRect.width;
|
||||
height: childrenRect.height;
|
||||
id: checkboxTooltipArea
|
||||
x: check.height
|
||||
UM.CheckBox
|
||||
{
|
||||
id: check
|
||||
|
@ -40,7 +41,7 @@ Item
|
|||
{
|
||||
width: height
|
||||
height: check.height
|
||||
anchors.left: checkboxTooltipArea.right
|
||||
anchors.right: checkboxTooltipArea.left
|
||||
anchors.leftMargin: 2 * screenScaleFactor
|
||||
|
||||
text:
|
||||
|
@ -82,7 +83,7 @@ Item
|
|||
|
||||
source: UM.Theme.getIcon("Information")
|
||||
|
||||
color: UM.Theme.getColor("primary_button_text")
|
||||
color: UM.Theme.getColor("small_button_text")
|
||||
}
|
||||
|
||||
visible: provider.properties.enabled == "False"
|
||||
|
|
|
@ -40,7 +40,7 @@ Item
|
|||
Cura.TextField
|
||||
{
|
||||
id: filter
|
||||
height: parent.height
|
||||
implicitHeight: parent.height
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
topPadding: height / 4
|
||||
|
@ -337,7 +337,7 @@ Item
|
|||
}
|
||||
function onShowTooltip(text) { base.showTooltip(delegate, Qt.point(-settingsView.x - UM.Theme.getSize("default_margin").width, 0), text) }
|
||||
function onHideTooltip() { base.hideTooltip() }
|
||||
function onShowAllHiddenInheritedSettings()
|
||||
function onShowAllHiddenInheritedSettings(category_id)
|
||||
{
|
||||
var children_with_override = Cura.SettingInheritanceManager.getChildrenKeysWithOverride(category_id)
|
||||
for(var i = 0; i < children_with_override.length; i++)
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
import QtQuick 2.10
|
||||
import QtQuick.Controls 2.3
|
||||
import QtQuick.Layouts 2.3
|
||||
|
||||
import UM 1.5 as UM
|
||||
import Cura 1.1 as Cura
|
||||
|
@ -15,9 +16,7 @@ import Cura 1.1 as Cura
|
|||
Item
|
||||
{
|
||||
id: base
|
||||
height: networkPrinterInfo.height + controlsRectangle.height
|
||||
|
||||
property alias maxItemCountAtOnce: networkPrinterListView.maxItemCountAtOnce
|
||||
property var currentItem: (networkPrinterListView.currentIndex >= 0)
|
||||
? networkPrinterListView.model[networkPrinterListView.currentIndex]
|
||||
: null
|
||||
|
@ -29,35 +28,32 @@ Item
|
|||
Item
|
||||
{
|
||||
id: networkPrinterInfo
|
||||
height: networkPrinterListView.visible ? networkPrinterListView.height : noPrinterLabel.height
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.top: parent.top
|
||||
anchors.bottom: separator.top
|
||||
|
||||
UM.Label
|
||||
{
|
||||
id: noPrinterLabel
|
||||
height: UM.Theme.getSize("setting_control").height + UM.Theme.getSize("default_margin").height
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: UM.Theme.getSize("default_margin").width
|
||||
anchors.fill: parent
|
||||
anchors.margins: UM.Theme.getSize("default_margin").width
|
||||
text: catalog.i18nc("@label", "There is no printer found over your network.")
|
||||
visible: networkPrinterListView.count == 0 // Do not show if there are discovered devices.
|
||||
verticalAlignment: Text.AlignTop
|
||||
}
|
||||
|
||||
ListView
|
||||
{
|
||||
id: networkPrinterListView
|
||||
anchors.top: parent.top
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
height: Math.min(contentHeight, (maxItemCountAtOnce * UM.Theme.getSize("action_button").height) - UM.Theme.getSize("default_margin").height)
|
||||
anchors.fill: parent
|
||||
|
||||
ScrollBar.vertical: UM.ScrollBar
|
||||
{
|
||||
id: networkPrinterScrollBar
|
||||
}
|
||||
clip: true
|
||||
property int maxItemCountAtOnce: 8 // show at max 8 items at once, otherwise you need to scroll.
|
||||
visible: networkPrinterListView.count > 0
|
||||
|
||||
model: contentLoader.enabled ? CuraApplication.getDiscoveredPrintersModel().discoveredPrinters: undefined
|
||||
|
@ -138,7 +134,7 @@ Item
|
|||
{
|
||||
id: separator
|
||||
anchors.left: parent.left
|
||||
anchors.top: networkPrinterInfo.bottom
|
||||
anchors.bottom: controlsRectangle.top
|
||||
anchors.right: parent.right
|
||||
height: UM.Theme.getSize("default_lining").height
|
||||
color: UM.Theme.getColor("lining")
|
||||
|
@ -149,7 +145,7 @@ Item
|
|||
id: controlsRectangle
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.top: separator.bottom
|
||||
anchors.bottom: parent.bottom
|
||||
|
||||
height: UM.Theme.getSize("message_action_button").height + UM.Theme.getSize("default_margin").height
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
import QtQuick 2.10
|
||||
import QtQuick.Controls 2.3
|
||||
import QtQuick.Layouts 2.3
|
||||
|
||||
import UM 1.5 as UM
|
||||
import Cura 1.1 as Cura
|
||||
|
@ -17,14 +18,23 @@ Item
|
|||
|
||||
property var goToUltimakerPrinter
|
||||
|
||||
ColumnLayout
|
||||
{
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: UM.Theme.getSize("wide_margin").height
|
||||
anchors.bottom: backButton.top
|
||||
anchors.bottomMargin: UM.Theme.getSize("default_margin").height
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
|
||||
spacing: UM.Theme.getSize("default_margin").height
|
||||
|
||||
DropDownWidget
|
||||
{
|
||||
id: addNetworkPrinterDropDown
|
||||
|
||||
anchors.top: parent.top
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.topMargin: UM.Theme.getSize("wide_margin").height
|
||||
Layout.fillWidth: true
|
||||
Layout.fillHeight: contentShown
|
||||
|
||||
title: catalog.i18nc("@label", "Add a networked printer")
|
||||
contentShown: true // by default expand the network printer list
|
||||
|
@ -42,8 +52,6 @@ Item
|
|||
{
|
||||
id: networkPrinterScrollView
|
||||
|
||||
maxItemCountAtOnce: 9 // show at max 9 items at once, otherwise you need to scroll.
|
||||
|
||||
onRefreshButtonClicked:
|
||||
{
|
||||
UM.OutputDeviceManager.startDiscovery()
|
||||
|
@ -70,10 +78,8 @@ Item
|
|||
{
|
||||
id: addLocalPrinterDropDown
|
||||
|
||||
anchors.top: addNetworkPrinterDropDown.bottom
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.topMargin: UM.Theme.getSize("default_margin").height
|
||||
Layout.fillWidth: true
|
||||
Layout.fillHeight: contentShown
|
||||
|
||||
title: catalog.i18nc("@label", "Add a non-networked printer")
|
||||
|
||||
|
@ -89,7 +95,7 @@ Item
|
|||
AddLocalPrinterScrollView
|
||||
{
|
||||
id: localPrinterView
|
||||
height: backButton.y - addLocalPrinterDropDown.y - UM.Theme.getSize("expandable_component_content_header").height - UM.Theme.getSize("default_margin").height
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,7 +22,7 @@ Item
|
|||
id: base
|
||||
|
||||
implicitWidth: 200 * screenScaleFactor
|
||||
height: header.contentShown ? (header.height + contentRectangle.height) : header.height
|
||||
implicitHeight: contentShown ? (header.height + contentRectangle.implicitHeight) : header.height
|
||||
|
||||
property var contentComponent: null
|
||||
property alias contentItem: contentLoader.item
|
||||
|
@ -56,12 +56,14 @@ Item
|
|||
Cura.RoundedRectangle
|
||||
{
|
||||
id: contentRectangle
|
||||
anchors.top: header.bottom
|
||||
// Move up a bit (exactly the width of the border) to avoid double line
|
||||
y: header.height - UM.Theme.getSize("default_lining").width
|
||||
anchors.topMargin: -UM.Theme.getSize("default_lining").width
|
||||
anchors.left: header.left
|
||||
anchors.right: header.right
|
||||
anchors.bottom: parent.bottom
|
||||
// Add 2x lining, because it needs a bit of space on the top and the bottom.
|
||||
height: contentLoader.item ? contentLoader.item.height + 2 * UM.Theme.getSize("thick_lining").height : 0
|
||||
anchors.bottomMargin: UM.Theme.getSize("thick_lining").height
|
||||
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
|
@ -73,9 +75,7 @@ Item
|
|||
Loader
|
||||
{
|
||||
id: contentLoader
|
||||
anchors.top: parent.top
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.fill: parent
|
||||
// Keep a small margin with the Rectangle container so its content will not overlap with the Rectangle
|
||||
// border.
|
||||
anchors.margins: UM.Theme.getSize("default_lining").width
|
||||
|
|
|
@ -32,11 +32,6 @@ Window
|
|||
property var model: null // Needs to be set by whoever is using this dialog.
|
||||
property alias progressBarVisible: wizardPanel.progressBarVisible
|
||||
|
||||
function resetModelState()
|
||||
{
|
||||
model.resetState()
|
||||
}
|
||||
|
||||
WizardPanel
|
||||
{
|
||||
id: wizardPanel
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue