mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-12 11:59:02 +08:00
Merge branch 'master' of github.com:Ultimaker/Cura
This commit is contained in:
commit
34a2c7ca0f
@ -49,18 +49,6 @@ Item
|
|||||||
visibility_handler.addSkipResetSetting(currentMeshType)
|
visibility_handler.addSkipResetSetting(currentMeshType)
|
||||||
}
|
}
|
||||||
|
|
||||||
function setOverhangsMeshType()
|
|
||||||
{
|
|
||||||
if (infillOnlyCheckbox.checked)
|
|
||||||
{
|
|
||||||
setMeshType(infillMeshType)
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
setMeshType(cuttingMeshType)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function setMeshType(type)
|
function setMeshType(type)
|
||||||
{
|
{
|
||||||
UM.ActiveTool.setProperty("MeshType", type)
|
UM.ActiveTool.setProperty("MeshType", type)
|
||||||
@ -140,26 +128,43 @@ Item
|
|||||||
verticalAlignment: Text.AlignVCenter
|
verticalAlignment: Text.AlignVCenter
|
||||||
}
|
}
|
||||||
|
|
||||||
CheckBox
|
|
||||||
|
ComboBox
|
||||||
{
|
{
|
||||||
id: infillOnlyCheckbox
|
id: infillOnlyComboBox
|
||||||
|
width: parent.width / 2 - UM.Theme.getSize("default_margin").width
|
||||||
|
|
||||||
text: catalog.i18nc("@action:checkbox", "Infill only");
|
model: ListModel
|
||||||
|
{
|
||||||
|
id: infillOnlyComboBoxModel
|
||||||
|
|
||||||
style: UM.Theme.styles.checkbox;
|
Component.onCompleted: {
|
||||||
|
append({ text: catalog.i18nc("@item:inlistbox", "Infill mesh only") })
|
||||||
|
append({ text: catalog.i18nc("@item:inlistbox", "Cutting mesh") })
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
visible: currentMeshType === infillMeshType || currentMeshType === cuttingMeshType
|
visible: currentMeshType === infillMeshType || currentMeshType === cuttingMeshType
|
||||||
onClicked: setOverhangsMeshType()
|
|
||||||
|
|
||||||
|
onActivated:
|
||||||
|
{
|
||||||
|
if (index == 0){
|
||||||
|
setMeshType(infillMeshType)
|
||||||
|
} else {
|
||||||
|
setMeshType(cuttingMeshType)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Binding
|
Binding
|
||||||
{
|
{
|
||||||
target: infillOnlyCheckbox
|
target: infillOnlyComboBox
|
||||||
property: "checked"
|
property: "currentIndex"
|
||||||
value: currentMeshType === infillMeshType
|
value: currentMeshType === infillMeshType ? 0 : 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Column // Settings Dialog
|
Column // List of selected Settings to override for the selected object
|
||||||
{
|
{
|
||||||
// This is to ensure that the panel is first increasing in size up to 200 and then shows a scrollbar.
|
// This is to ensure that the panel is first increasing in size up to 200 and then shows a scrollbar.
|
||||||
// It kinda looks ugly otherwise (big panel, no content on it)
|
// It kinda looks ugly otherwise (big panel, no content on it)
|
||||||
|
@ -82,6 +82,7 @@ class PerObjectSettingsTool(Tool):
|
|||||||
selected_object.addDecorator(SettingOverrideDecorator())
|
selected_object.addDecorator(SettingOverrideDecorator())
|
||||||
stack = selected_object.callDecoration("getStack")
|
stack = selected_object.callDecoration("getStack")
|
||||||
|
|
||||||
|
settings_visibility_changed = False
|
||||||
settings = stack.getTop()
|
settings = stack.getTop()
|
||||||
for property_key in ["infill_mesh", "cutting_mesh", "support_mesh", "anti_overhang_mesh"]:
|
for property_key in ["infill_mesh", "cutting_mesh", "support_mesh", "anti_overhang_mesh"]:
|
||||||
if property_key != mesh_type:
|
if property_key != mesh_type:
|
||||||
@ -103,11 +104,14 @@ class PerObjectSettingsTool(Tool):
|
|||||||
new_instance.setProperty("value", 0)
|
new_instance.setProperty("value", 0)
|
||||||
new_instance.resetState() # Ensure that the state is not seen as a user state.
|
new_instance.resetState() # Ensure that the state is not seen as a user state.
|
||||||
settings.addInstance(new_instance)
|
settings.addInstance(new_instance)
|
||||||
visible = self.visibility_handler.getVisible()
|
settings_visibility_changed = True
|
||||||
visible.add(property_key)
|
|
||||||
self.visibility_handler.setVisible(visible)
|
|
||||||
elif old_mesh_type == "infill_mesh" and settings.getInstance(property_key) and settings.getProperty(property_key, "value") == 0:
|
elif old_mesh_type == "infill_mesh" and settings.getInstance(property_key) and settings.getProperty(property_key, "value") == 0:
|
||||||
settings.removeInstance(property_key)
|
settings.removeInstance(property_key)
|
||||||
|
settings_visibility_changed = True
|
||||||
|
|
||||||
|
if settings_visibility_changed:
|
||||||
|
self.visibility_handler.forceVisibilityChanged()
|
||||||
|
|
||||||
self.propertyChanged.emit()
|
self.propertyChanged.emit()
|
||||||
return True
|
return True
|
||||||
|
Loading…
x
Reference in New Issue
Block a user