diff options
Diffstat (limited to 'Playmidi.activity/playmidi.py')
-rw-r--r-- | Playmidi.activity/playmidi.py | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/Playmidi.activity/playmidi.py b/Playmidi.activity/playmidi.py index ccbbea2..e0180ab 100644 --- a/Playmidi.activity/playmidi.py +++ b/Playmidi.activity/playmidi.py @@ -4,7 +4,7 @@ import csndsugui import csnd from sugar.activity import activity -import gtk +import gtk, gobject class Playmidi(activity.Activity): @@ -16,13 +16,22 @@ class Playmidi(activity.Activity): white = (0xFFFF, 0xFFFF, 0xFFFF) win = csndsugui.CsoundGUI(self, bg) - win.text("Playing Sounds",colour=white) - bbox = win.box(False) + win.text("Playing MIDI",colour=white) + hbox = win.box(False, padding=400) + vbox = win.box(True, hbox, padding=400) + self.ndisp = win.numdisplay(vbox,"time",0.0) + bbox = win.box(False,vbox) win.filechooser(bbox,"midifile") self.p = None self.but = win.cbbutton(bbox, self.fcall, "load") self.w = win self.b = bbox + + + def time_callback(self,data): + self.time = self.w.score_time() + self.w.setnumdisp("time", self.time) + return True def fcall(self, widget): if self.p == None: @@ -30,9 +39,11 @@ class Playmidi(activity.Activity): self.p = self.w.button(self.b,"play") self.w.button(self.b,"pause") self.but.set_label("rewind/reload") + self.time = self.w.score_time() + self.w.set_timer(100, self.time_callback, self) else: self.w.reset() self.w.compile("gm.csd", ["-F%s" % self.w.filenames["midifile"]]) - + self.time = self.w.score_time() |