39 lines
873 B
Python
39 lines
873 B
Python
# Bryan Schumaker (10/11/2010)
|
|
|
|
import ocarina
|
|
gtk = ocarina.gtk
|
|
gobject = ocarina.gobject
|
|
update = None
|
|
seek = None
|
|
|
|
def set_fns():
|
|
global update
|
|
global get_time
|
|
global seek
|
|
update = ocarina.libsaria.audio.get_progress
|
|
seek = ocarina.libsaria.audio.seek
|
|
ocarina.libsaria.event.invite("POSTSTART", set_fns)
|
|
|
|
|
|
class PBar(gtk.HScale):
|
|
def __init__(self):
|
|
adj = gtk.Adjustment(0.0, 0.0, 100.0, 0.1, 1.0, 1.0)
|
|
gtk.HScale.__init__(self, adj)
|
|
|
|
self.set_size_request(150, 20)
|
|
self.set_draw_value(False)
|
|
self.set_range(0, 101)
|
|
self.set_update_policy(gtk.UPDATE_DISCONTINUOUS)
|
|
self.connect("change-value", self.change_value)
|
|
gobject.timeout_add(500, self.update)
|
|
self.show()
|
|
|
|
def update(self):
|
|
global update
|
|
self.set_value(update() * 100)
|
|
return True
|
|
|
|
def change_value(self, scale, type, value):
|
|
global seek
|
|
seek(value / 100.0)
|