mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-25 15:44:04 -06:00
Merge branch 'master' of https://github.com/Ultimaker/Cura
This commit is contained in:
commit
f498f0237c
6 changed files with 590 additions and 267 deletions
|
@ -93,7 +93,10 @@ class CuraApplication(QtApplication):
|
||||||
self._open_file_queue = [] # Files to open when plug-ins are loaded.
|
self._open_file_queue = [] # Files to open when plug-ins are loaded.
|
||||||
|
|
||||||
# Need to do this before ContainerRegistry tries to load the machines
|
# Need to do this before ContainerRegistry tries to load the machines
|
||||||
SettingDefinition.addSupportedProperty("global_only", DefinitionPropertyType.Function, default = False)
|
SettingDefinition.addSupportedProperty("settable_per_mesh", DefinitionPropertyType.Any, default = True)
|
||||||
|
SettingDefinition.addSupportedProperty("settable_per_extruder", DefinitionPropertyType.Any, default = True)
|
||||||
|
SettingDefinition.addSupportedProperty("settable_per_meshgroup", DefinitionPropertyType.Any, default = True)
|
||||||
|
SettingDefinition.addSupportedProperty("settable_globally", DefinitionPropertyType.Any, default = True)
|
||||||
SettingDefinition.addSettingType("extruder", str, ast.literal_eval, UM.Settings.Validator)
|
SettingDefinition.addSettingType("extruder", str, ast.literal_eval, UM.Settings.Validator)
|
||||||
|
|
||||||
super().__init__(name = "cura", version = CuraVersion, buildtype = CuraBuildType)
|
super().__init__(name = "cura", version = CuraVersion, buildtype = CuraBuildType)
|
||||||
|
|
|
@ -51,13 +51,18 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
||||||
global_container_stack = UM.Application.getInstance().getGlobalContainerStack()
|
global_container_stack = UM.Application.getInstance().getGlobalContainerStack()
|
||||||
if not global_container_stack:
|
if not global_container_stack:
|
||||||
return #There is no machine to get the extruders of.
|
return #There is no machine to get the extruders of.
|
||||||
for index, extruder in enumerate(manager.getMachineExtruders(global_container_stack.getBottom())):
|
for extruder in manager.getMachineExtruders(global_container_stack.getBottom()):
|
||||||
material = extruder.findContainer({ "type": "material" })
|
material = extruder.findContainer({ "type": "material" })
|
||||||
colour = material.getMetaDataEntry("color_code", default = "#FFFF00") if material else "#FFFF00"
|
colour = material.getMetaDataEntry("color_code", default = "#FFFF00") if material else "#FFFF00"
|
||||||
|
position = extruder.getBottom().getMetaDataEntry("position", default = "0") #Position in the definition.
|
||||||
|
try:
|
||||||
|
position = int(position)
|
||||||
|
except ValueError: #Not a proper int.
|
||||||
|
position = -1
|
||||||
item = { #Construct an item with only the relevant information.
|
item = { #Construct an item with only the relevant information.
|
||||||
"name": extruder.getName(),
|
"name": extruder.getName(),
|
||||||
"colour": colour,
|
"colour": colour,
|
||||||
"index": index
|
"index": position
|
||||||
}
|
}
|
||||||
self.appendItem(item)
|
self.appendItem(item)
|
||||||
self.sort(lambda item: item["index"])
|
self.sort(lambda item: item["index"])
|
|
@ -190,11 +190,11 @@ Item {
|
||||||
{
|
{
|
||||||
if(text != "")
|
if(text != "")
|
||||||
{
|
{
|
||||||
listview.model.filter = {"global_only": false, "label": "*" + text}
|
listview.model.filter = {"settable_per_mesh": true, "label": "*" + text}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
listview.model.filter = {"global_only": false}
|
listview.model.filter = {"settable_per_mesh": true}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -219,7 +219,7 @@ Item {
|
||||||
containerId: Cura.MachineManager.activeDefinitionId
|
containerId: Cura.MachineManager.activeDefinitionId
|
||||||
filter:
|
filter:
|
||||||
{
|
{
|
||||||
"global_only": false
|
"settable_per_mesh": true
|
||||||
}
|
}
|
||||||
visibilityHandler: UM.SettingPreferenceVisibilityHandler {}
|
visibilityHandler: UM.SettingPreferenceVisibilityHandler {}
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,7 +24,11 @@
|
||||||
"description": "The extruder train used for printing. This is used in multi-extrusion.",
|
"description": "The extruder train used for printing. This is used in multi-extrusion.",
|
||||||
"type": "extruder",
|
"type": "extruder",
|
||||||
"default_value": 0,
|
"default_value": 0,
|
||||||
"minimum_value": "0"
|
"minimum_value": "0",
|
||||||
|
"settable_per_mesh": true,
|
||||||
|
"settable_per_extruder": false,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_nozzle_offset_x":
|
"machine_nozzle_offset_x":
|
||||||
{
|
{
|
||||||
|
@ -33,7 +37,10 @@
|
||||||
"type": "float",
|
"type": "float",
|
||||||
"unit": "mm",
|
"unit": "mm",
|
||||||
"default_value": 0,
|
"default_value": 0,
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_nozzle_offset_y":
|
"machine_nozzle_offset_y":
|
||||||
{
|
{
|
||||||
|
@ -42,7 +49,10 @@
|
||||||
"type": "float",
|
"type": "float",
|
||||||
"unit": "mm",
|
"unit": "mm",
|
||||||
"default_value": 0,
|
"default_value": 0,
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_extruder_start_code":
|
"machine_extruder_start_code":
|
||||||
{
|
{
|
||||||
|
@ -50,7 +60,10 @@
|
||||||
"description": "Start g-code to execute whenever turning the extruder on.",
|
"description": "Start g-code to execute whenever turning the extruder on.",
|
||||||
"type": "str",
|
"type": "str",
|
||||||
"default_value": "",
|
"default_value": "",
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_extruder_start_pos_abs":
|
"machine_extruder_start_pos_abs":
|
||||||
{
|
{
|
||||||
|
@ -58,7 +71,10 @@
|
||||||
"description": "Make the extruder starting position absolute rather than relative to the last-known location of the head.",
|
"description": "Make the extruder starting position absolute rather than relative to the last-known location of the head.",
|
||||||
"type": "bool",
|
"type": "bool",
|
||||||
"default_value": false,
|
"default_value": false,
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_extruder_start_pos_x":
|
"machine_extruder_start_pos_x":
|
||||||
{
|
{
|
||||||
|
@ -67,7 +83,10 @@
|
||||||
"type": "float",
|
"type": "float",
|
||||||
"unit": "mm",
|
"unit": "mm",
|
||||||
"default_value": 0,
|
"default_value": 0,
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_extruder_start_pos_y":
|
"machine_extruder_start_pos_y":
|
||||||
{
|
{
|
||||||
|
@ -76,7 +95,10 @@
|
||||||
"type": "float",
|
"type": "float",
|
||||||
"unit": "mm",
|
"unit": "mm",
|
||||||
"default_value": 0,
|
"default_value": 0,
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_extruder_end_code":
|
"machine_extruder_end_code":
|
||||||
{
|
{
|
||||||
|
@ -84,7 +106,10 @@
|
||||||
"description": "End g-code to execute whenever turning the extruder off.",
|
"description": "End g-code to execute whenever turning the extruder off.",
|
||||||
"type": "str",
|
"type": "str",
|
||||||
"default_value": "",
|
"default_value": "",
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_extruder_end_pos_abs":
|
"machine_extruder_end_pos_abs":
|
||||||
{
|
{
|
||||||
|
@ -92,7 +117,10 @@
|
||||||
"description": "Make the extruder ending position absolute rather than relative to the last-known location of the head.",
|
"description": "Make the extruder ending position absolute rather than relative to the last-known location of the head.",
|
||||||
"type": "bool",
|
"type": "bool",
|
||||||
"default_value": false,
|
"default_value": false,
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_extruder_end_pos_x":
|
"machine_extruder_end_pos_x":
|
||||||
{
|
{
|
||||||
|
@ -101,7 +129,10 @@
|
||||||
"type": "float",
|
"type": "float",
|
||||||
"unit": "mm",
|
"unit": "mm",
|
||||||
"default_value": 0,
|
"default_value": 0,
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
},
|
},
|
||||||
"machine_extruder_end_pos_y":
|
"machine_extruder_end_pos_y":
|
||||||
{
|
{
|
||||||
|
@ -110,7 +141,10 @@
|
||||||
"type": "float",
|
"type": "float",
|
||||||
"unit": "mm",
|
"unit": "mm",
|
||||||
"default_value": 0,
|
"default_value": 0,
|
||||||
"global_only": "True"
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": true,
|
||||||
|
"settable_per_meshgroup": false,
|
||||||
|
"settable_globally": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -110,8 +110,9 @@ Item
|
||||||
checked: base.currentExtruderIndex == index
|
checked: base.currentExtruderIndex == index
|
||||||
onClicked:
|
onClicked:
|
||||||
{
|
{
|
||||||
base.currentExtruderIndex = index
|
extruderSelection.focus = true; //Changing focus applies the currently-being-typed values so it can change the displayed setting values.
|
||||||
ExtruderManager.setActiveExtruderIndex(index)
|
base.currentExtruderIndex = index;
|
||||||
|
ExtruderManager.setActiveExtruderIndex(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
style: ButtonStyle {
|
style: ButtonStyle {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue