def __init__(self, default_value): gtk.HBox.__init__(self) self.m_value = mpd.notename_to_int(default_value) self.g_label = gtk.Label(mpd.int_to_user_notename(self.m_value)) self.g_label.set_use_markup(1) frame = gtk.Frame() e = gtk.EventBox() frame.add(e) self.pack_start(frame, False) self.g_label.set_size_request(60, -1)#FIXME hardcoded value frame.set_shadow_type(gtk.SHADOW_IN) e.add(self.g_label) vbox = gtk.VBox() self.pack_start(vbox, False) # up self.g_up = gtk.Arrow(gtk.ARROW_UP, gtk.SHADOW_OUT) eb1 = gtk.EventBox() eb1.connect('button-press-event', self.on_up_press) eb1.connect('button-release-event', self.on_up_release) frame = gtk.Frame() frame.set_shadow_type(gtk.SHADOW_OUT) frame.add(self.g_up) eb1.add(frame) vbox.pack_start(eb1) # down self.g_down = gtk.Arrow(gtk.ARROW_DOWN, gtk.SHADOW_ETCHED_IN) eb2 = gtk.EventBox() eb2.connect('button-press-event', self.on_down_press) eb2.connect('button-release-event', self.on_down_release) frame = gtk.Frame() frame.set_shadow_type(gtk.SHADOW_OUT) frame.add(self.g_down) eb2.add(frame) vbox.pack_start(eb2) self.m_timeout = None
def up(self): self.m_value += 1 self.g_label.set_text(mpd.int_to_user_notename(self.m_value)) self.g_label.set_use_markup(1) self.emit('value-changed', self.m_value)
def set_value(self, val): self.m_value = val self.g_label.set_text(mpd.int_to_user_notename(val)) self.g_label.set_use_markup(1)