diff options
Diffstat (limited to 'TamTamMini.activity/Mini')
-rw-r--r-- | TamTamMini.activity/Mini/InstrumentPanel.py | 26 | ||||
-rw-r--r-- | TamTamMini.activity/Mini/miniTamTamMain.py | 16 |
2 files changed, 22 insertions, 20 deletions
diff --git a/TamTamMini.activity/Mini/InstrumentPanel.py b/TamTamMini.activity/Mini/InstrumentPanel.py index 7f7ebf0..b6c1229 100644 --- a/TamTamMini.activity/Mini/InstrumentPanel.py +++ b/TamTamMini.activity/Mini/InstrumentPanel.py @@ -15,23 +15,22 @@ InstrumentSize = 116 Tooltips = Config.Tooltips class InstrumentPanel( gtk.EventBox ): - def __init__(self,setInstrument = None, playInstrument = None, enterMode = False, micRec = None, synthRec = None, rowLen = 8, _instDic = None, force_load = True ): + def __init__(self,setInstrument=None): gtk.EventBox.__init__(self) self.instrumentDB = InstrumentDB.getRef() self.setInstrument = setInstrument - self.playInstrument = playInstrument - self.micRec = micRec - self.synthRec = synthRec - self.rowLen = rowLen - self.enterMode = enterMode + self.playInstrument = None + self.micRec = None + self.synthRec = None + self.rowLen = None + self.enterMode = False - self.instDic = _instDic + self.instDic = None self.loaded = False self.loadData = {} self.loadStage = [0,0,0] - if force_load: self.load() def configure( self, setInstrument = None, playInstrument = None, enterMode = False, micRec = None, synthRec = None, rowLen = 8, width = -1 ): @@ -42,12 +41,13 @@ class InstrumentPanel( gtk.EventBox ): if width != -1: rowLen = width / InstrumentSize + if self.rowLen == rowLen: + return + + self.rowLen = rowLen - if self.rowLen != rowLen: - self.rowLen = rowLen - self.prepareInstrumentTable( self.category ) - else: - self.rowLen = rowLen + if self.loaded: + self.prepareInstrumentTable(self.category) def load( self, timeout = -1 ): if self.loaded: return True diff --git a/TamTamMini.activity/Mini/miniTamTamMain.py b/TamTamMini.activity/Mini/miniTamTamMain.py index bc0ea37..8232e75 100644 --- a/TamTamMini.activity/Mini/miniTamTamMain.py +++ b/TamTamMini.activity/Mini/miniTamTamMain.py @@ -48,6 +48,7 @@ class miniTamTamMain(gtk.EventBox): def __init__(self, activity): gtk.EventBox.__init__(self) + self.instrumentPanel = None self.activity = activity #self.set_border_width(Config.MAIN_WINDOW_PADDING) @@ -318,14 +319,16 @@ class miniTamTamMain(gtk.EventBox): def load_ls_instrument(self, soundName): self.csnd.load_ls_instrument(soundName) - def setInstrumentPanel( self, instrumentPanel ): + def updateInstrumentPanel(self): + if self.instrumentPanel is None: + self.instrumentPanel = InstrumentPanel() + self.leftBox.pack_start(self.instrumentPanel) + width = gtk.gdk.screen_width() - self.rightBox.get_size_request()[0] - instrumentPanel.configure( self.setInstrument,self.playInstrumentNote, False, self.micRec, width = width ) - self.instrumentPanel = instrumentPanel - self.leftBox.pack_start( instrumentPanel ) + self.instrumentPanel.configure(self.setInstrument, + self.playInstrumentNote, False, self.micRec, width=width) - def releaseInstrumentPanel( self ): - self.leftBox.remove( self.instrumentPanel ) + self.instrumentPanel.load() def micRec(self, widget, mic): self.csnd.inputMessage("i5600 0 4") @@ -595,7 +598,6 @@ class miniTamTamMain(gtk.EventBox): def onDeactivate( self ): SubActivity.onDeactivate( self ) - self.releaseInstrumentPanel() self.csnd.loopPause() self.csnd.loopClear() |