Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/Jam/JamMain.py
diff options
context:
space:
mode:
authoramartin <olpc@xo-05-28-21.localdomain>2007-08-08 07:04:24 (GMT)
committer amartin <olpc@xo-05-28-21.localdomain>2007-08-08 07:04:24 (GMT)
commitfbd47da49acd5d08f6a44e457f1e648769f06d7a (patch)
tree08724808155904724471e550c96fe6b70b05184e /Jam/JamMain.py
parent95ad802c9bb41b7f5165346ccd683f2617482147 (diff)
Jam drawing
Diffstat (limited to 'Jam/JamMain.py')
-rw-r--r--Jam/JamMain.py39
1 files changed, 24 insertions, 15 deletions
diff --git a/Jam/JamMain.py b/Jam/JamMain.py
index 8c203a1..ac1fb12 100644
--- a/Jam/JamMain.py
+++ b/Jam/JamMain.py
@@ -6,7 +6,7 @@ import gtk
from SubActivity import SubActivity
from Jam.Desktop import Desktop
-from Jam.Picker import Picker
+import Jam.Picker as Picker
class JamMain(SubActivity):
@@ -37,10 +37,13 @@ class JamMain(SubActivity):
self.GUI["bankVBox"].pack_start( self.GUI["bankTabs"], False, False )
self.GUI["bankInstrumentsTab"] = gtk.RadioButton( None, "Instruments" )
+ self.GUI["bankInstrumentsTab"].connect( "clicked", lambda w: self.setPicker( Picker.Instrument, None ) )
self.GUI["bankTabs"].pack_start( self.GUI["bankInstrumentsTab"] )
self.GUI["bankDrumsTab"] = gtk.RadioButton( self.GUI["bankInstrumentsTab"], "Drums" )
+ self.GUI["bankDrumsTab"].connect( "clicked", lambda w: self.setPicker( Picker.Drum ) )
self.GUI["bankTabs"].pack_start( self.GUI["bankDrumsTab"] )
self.GUI["bankLoopsTab"] = gtk.RadioButton( self.GUI["bankInstrumentsTab"], "Loops" )
+ self.GUI["bankLoopsTab"].connect( "clicked", lambda w: self.setPicker( Picker.Loop ) )
self.GUI["bankTabs"].pack_start( self.GUI["bankLoopsTab"] )
if True: # Picker
@@ -48,23 +51,16 @@ class JamMain(SubActivity):
self.GUI["bankPicker"].set_size_request( -1, 149 )
self.GUI["bankVBox"].pack_start( self.GUI["bankPicker"], False, False )
- self.GUI["bankScrollLeft"] = gtk.Button( "<" )
- self.GUI["bankPicker"].pack_start( self.GUI["bankScrollLeft"], False, False )
-
- self.GUI["bankScrolledWindow"] = gtk.ScrolledWindow()
- self.GUI["bankScrolledWindow"].set_policy( gtk.POLICY_ALWAYS, gtk.POLICY_NEVER )
- self.GUI["bankPicker"].pack_start( self.GUI["bankScrolledWindow"] )
-
- self.GUI["bankScrollRight"] = gtk.Button( ">" )
- self.GUI["bankPicker"].pack_start( self.GUI["bankScrollRight"], False, False )
-
- self.GUI["pickerInstruments"] = Picker( self, Picker.INSTRUMENTS )
- self.GUI["pickerInstruments"].show_all()
-
- self.GUI["bankScrolledWindow"].add_with_viewport( self.GUI["pickerInstruments"] )
+ self.pickers = {}
+ self.pickerScroll = {}
+ for type in [ Picker.Instrument, Picker.Drum, Picker.Loop ]:
+ self.pickers[type] = type( self )
self.show_all()
+ self.curPicker = None
+ self.setPicker( Picker.Instrument )
+
def onActivate( self, arg ):
pass
@@ -76,3 +72,16 @@ class JamMain(SubActivity):
def getDesktop( self ):
return self.desktop
+
+ def setPicker( self, type, filter = None ):
+ if self.curPicker == type:
+ if self.pickers[self.curPicker].getFilter() == filter:
+ return
+ self.pickers[self.curPicker].setFilter( filter )
+ else:
+ if self.curPicker != None:
+ self.GUI["bankPicker"].remove( self.pickers[self.curPicker] )
+
+ self.GUI["bankPicker"].pack_start( self.pickers[type] )
+ self.curPicker = type
+