diff options
| author | tassaron | 2017-06-12 22:34:37 -0400 |
|---|---|---|
| committer | tassaron | 2017-06-12 22:34:37 -0400 |
| commit | 307d499f9ae2729c790fe9258d88aca72331cdf6 (patch) | |
| tree | 105dedf7aa84c1841d8a87f304f43d7a616fa32a /components/__base__.py | |
| parent | dbbefbf70ec9fad1735ee7199992ca6123bd54be (diff) | |
adding an asterisk to modified, unsaved presets
flags for unsaved changes saved in project files
Diffstat (limited to 'components/__base__.py')
| -rw-r--r-- | components/__base__.py | 38 |
1 files changed, 26 insertions, 12 deletions
diff --git a/components/__base__.py b/components/__base__.py index 3ccb5dc..b32c120 100644 --- a/components/__base__.py +++ b/components/__base__.py @@ -1,9 +1,15 @@ -from PyQt4 import QtGui +from PyQt4 import QtGui, QtCore +class Component(QtCore.QObject): + '''A base class for components to inherit from''' -class Component: - def __init__(self): + # modified = QtCore.pyqtSignal(int, bool) + + def __init__(self, moduleIndex, compPos): + super().__init__() self.currentPreset = None + self.moduleIndex = moduleIndex + self.compPos = compPos def __str__(self): return self.__doc__ @@ -13,12 +19,27 @@ class Component: return 1 def cancel(self): - # make sure your component responds to these variables in frameRender() + # please stop any lengthy process in response to this variable self.canceled = True def reset(self): self.canceled = False + def update(self): + self.modified.emit(self.compPos, True) + # use super().update() then read your widget values here + + def loadPreset(self, presetDict, presetName): + '''Children should take (presetDict, presetName=None) as args''' + + # Use super().loadPreset(presetDict, presetName) + # Then update your widgets using the preset dict + self.currentPreset = presetName \ + if presetName != None else presetDict['preset'] + + def savePreset(self): + return {} + def preFrameRender(self, **kwargs): for var, value in kwargs.items(): exec('self.%s = value' % var) @@ -62,7 +83,7 @@ class Component: return page def update(self): - # read widget values + super().update() self.parent.drawPreview() def previewRender(self, previewWorker): @@ -77,13 +98,6 @@ class Component: image = Image.new("RGBA", (width, height), (0,0,0,0)) return image - def loadPreset(self, presetDict, presetName=None): - self.currentPreset = presetName - # update widgets using a preset dict - - def savePreset(self): - return {} - def cancel(self): self.canceled = True |
