Added read-only property to profiles

CURA-1585
This commit is contained in:
Jaime van Kessel 2016-06-03 11:19:33 +02:00
parent 113da81db5
commit 4fc565711d
11 changed files with 19 additions and 1 deletions

View file

@ -246,6 +246,15 @@ class MachineManagerModel(QObject):
return quality.getId() return quality.getId()
return "" return ""
## Check if a container is read_only
@pyqtSlot(str, result = bool)
def isReadOnly(self, container_id):
containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id=container_id)
if not containers or not self._global_container_stack:
return True
return containers[0].getMetaDataEntry("read_only", False) == "True"
@pyqtSlot(str) @pyqtSlot(str)
def setActiveMaterial(self, material_id): def setActiveMaterial(self, material_id):
containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id=material_id) containers = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id=material_id)

View file

@ -110,7 +110,7 @@ Item
Action Action
{ {
id: updateProfileAction; id: updateProfileAction;
enabled: Cura.MachineManager.isGlobalStackValid && !UM.ActiveProfile.readOnly && Cura.MachineManager.hasUserSettings enabled: Cura.MachineManager.isGlobalStackValid && Cura.MachineManager.hasUserSettings && !Cura.MachineManager.isReadOnly(Cura.MachineManager.activeQualityId)
text: catalog.i18nc("@action:inmenu menubar:profile","&Update Current Profile"); text: catalog.i18nc("@action:inmenu menubar:profile","&Update Current Profile");
onTriggered: UM.ActiveProfile.updateProfile(); onTriggered: UM.ActiveProfile.updateProfile();
} }

View file

@ -5,6 +5,7 @@ definition = fdmprinter
[metadata] [metadata]
type = quality type = quality
read_only = True
[values] [values]
layer_height = 0.06 layer_height = 0.06

View file

@ -5,6 +5,7 @@ definition = fdmprinter
[metadata] [metadata]
type = quality type = quality
read_only = True
[values] [values]
layer_height = 0.15 layer_height = 0.15

View file

@ -5,5 +5,6 @@ definition = fdmprinter
[metadata] [metadata]
type = quality type = quality
read_only = True
[values] [values]

View file

@ -7,6 +7,7 @@ definition = ultimaker2_plus
type = quality type = quality
material = generic_pla_ultimaker2_plus_0.25_mm material = generic_pla_ultimaker2_plus_0.25_mm
weight = -2 weight = -2
read_only = True
[values] [values]
layer_height = 0.06 layer_height = 0.06

View file

@ -7,6 +7,7 @@ definition = ultimaker2_plus
type = quality type = quality
material = generic_pla_ultimaker2_plus_0.4_mm material = generic_pla_ultimaker2_plus_0.4_mm
weight = -1 weight = -1
read_only = True
[values] [values]
layer_height = 0.15 layer_height = 0.15

View file

@ -7,6 +7,7 @@ definition = ultimaker2_plus
type = quality type = quality
material = generic_pla_ultimaker2_plus_0.4_mm material = generic_pla_ultimaker2_plus_0.4_mm
weight = -3 weight = -3
read_only = True
[values] [values]
layer_height = 0.06 layer_height = 0.06

View file

@ -7,6 +7,7 @@ definition = ultimaker2_plus
type = quality type = quality
material = generic_pla_ultimaker2_plus_0.4_mm material = generic_pla_ultimaker2_plus_0.4_mm
weight = -2 weight = -2
read_only = True
[values] [values]
layer_height = 0.1 layer_height = 0.1

View file

@ -7,6 +7,7 @@ definition = ultimaker2_plus
material = generic_pla_ultimaker2_plus_0.6_mm material = generic_pla_ultimaker2_plus_0.6_mm
type = quality type = quality
weight = -2 weight = -2
read_only = True
[values] [values]
layer_height = 0.15 layer_height = 0.15

View file

@ -7,6 +7,7 @@ definition = ultimaker2_plus
material = generic_pla_ultimaker2_plus_0.8_mm material = generic_pla_ultimaker2_plus_0.8_mm
type = quality type = quality
weight = -2 weight = -2
read_only = True
[values] [values]
layer_height = 0.2 layer_height = 0.2