From ffc5966042e1490930396dd541e4c9497a6b7a73 Mon Sep 17 00:00:00 2001 From: tassaron Date: Sat, 17 Jun 2017 11:15:24 -0400 Subject: ask to save changes before changing current project also limited total # of components to 50 --- core.py | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'core.py') diff --git a/core.py b/core.py index dcea783..e4a7a6c 100644 --- a/core.py +++ b/core.py @@ -79,6 +79,8 @@ class Core(): def insertComponent(self, compPos, moduleIndex): if compPos < 0: compPos = len(self.selectedComponents) -1 + if len(self.selectedComponents) > 50: + return None component = self.modules[moduleIndex].Component( moduleIndex, compPos) @@ -100,6 +102,10 @@ class Core(): self.selectedComponents.pop(i) self.componentListChanged() + def clearComponents(self): + self.selectedComponents = list() + self.componentListChanged() + def updateComponent(self, i): # print('updating %s' % self.selectedComponents[i]) self.selectedComponents[i].update() @@ -164,24 +170,27 @@ class Core(): clearThis = True # insert component into the loader - loader.insertComponent( + i = loader.insertComponent( self.moduleIndexFor(name), -1) + if i == None: + break + try: if 'preset' in preset and preset['preset'] != None: - self.selectedComponents[-1].loadPreset( + self.selectedComponents[i].loadPreset( preset ) else: - self.selectedComponents[-1].loadPreset( + self.selectedComponents[i].loadPreset( preset, preset['preset'] ) except KeyError as e: print('%s missing value %s' % - (self.selectedComponents[-1], e)) + (self.selectedComponents[i], e)) if clearThis: - self.clearPreset(-1, loader) + self.clearPreset(i, loader) except: errcode = 1 data = sys.exc_info() -- cgit v1.2.3