forked from nallath/PostProcessingPlugin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ScriptProfile.py
35 lines (26 loc) · 1.02 KB
/
ScriptProfile.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Copyright (c) 2015 Jaime van Kessel, Ultimaker B.V.
# The PostProcessingPlugin is released under the terms of the AGPLv3 or higher.
from UM.Signal import Signal, SignalEmitter
class ScriptProfile(SignalEmitter):
def __init__(self, script):
super().__init__()
self._changed_settings = {}
self._script = script
pass
def setSettingValue(self, key, value):
if key in self._changed_settings and self._changed_settings[key] == value:
return
self._changed_settings[key] = value
self.settingValueChanged.emit(key)
settingValueChanged = Signal()
def isReadOnly(self):
return False
def hasSettingValue(self, key):
return key in self._changed_settings
def getSettingValue(self, key):
setting = self._script.getSettingByKey(key)
if not setting:
return None
if key in self._changed_settings:
return setting.parseValue(self._changed_settings[key])
return setting.getDefaultValue()