aboutsummaryrefslogtreecommitdiff
path: root/core.py
diff options
context:
space:
mode:
authortassaron2017-06-15 11:36:26 -0400
committertassaron2017-06-15 11:36:26 -0400
commitcb639e5c7ccf42e654f1dda1b75b082478cf73d9 (patch)
treefc134c8b848e54d2fe1311110cdae933cd0abec5 /core.py
parent8846af57ba9635fe4a1c44778dc468f22277e538 (diff)
clear preset button, disable New Project during export
enable preset manager during export, and clear deleted presets from project files when opened
Diffstat (limited to 'core.py')
-rw-r--r--core.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/core.py b/core.py
index 9276f4a..8eb7d16 100644
--- a/core.py
+++ b/core.py
@@ -82,6 +82,12 @@ class Core():
index = compNames.index(compName)
return self.moduleIndexes[index]
+ def clearPreset(self, compIndex, loader=None):
+ '''Clears a preset from a component'''
+ self.selectedComponents[compIndex].currentPreset = None
+ if loader:
+ loader.updateComponentTitle(compIndex)
+
def openPreset(self, filepath, compIndex, presetName):
'''Applies a preset to a specific component'''
saveValueStore = self.getPreset(filepath)
@@ -112,6 +118,7 @@ class Core():
if errcode == 0:
for i, tup in enumerate(data['Components']):
name, vers, preset = tup
+ clearThis = False
# add loaded named presets to savedPresets dict
if 'preset' in preset and preset['preset'] != None:
@@ -119,7 +126,11 @@ class Core():
filepath2 = os.path.join(
self.presetDir, name, str(vers), nam)
origSaveValueStore = self.getPreset(filepath2)
- self.savedPresets[nam] = dict(origSaveValueStore)
+ if origSaveValueStore:
+ self.savedPresets[nam] = dict(origSaveValueStore)
+ else:
+ # saved preset was renamed or deleted
+ clearThis = True
# insert component into the loader
loader.insertComponent(
@@ -138,6 +149,10 @@ class Core():
print('%s missing value %s' %
(self.selectedComponents[-1], e))
+ if clearThis:
+ self.clearPreset(-1, loader)
+
+
elif errcode == 1:
typ, value, _ = data
if typ.__name__ == KeyError: