Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/Playmidi.activity/playmidi.py
diff options
context:
space:
mode:
Diffstat (limited to 'Playmidi.activity/playmidi.py')
-rw-r--r--Playmidi.activity/playmidi.py19
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()