def make_label(text, handler, visible=True): if visible: lab = ClickableLabel(text) lab.connect('clicked', handler) return lab # if the widget isn't visible, then we stick in an empty string--we just # need a placeholder so that things don't move around when the item state # changes. lab = Label("") lab.set_size(0.77) return lab
def __init__(self, text, size=0.77, color=WHITE): Widget.__init__(self) self.set_widget(gtk.EventBox()) self.label = Label(text) self._widget.add(self.label._widget) self.label._widget.show() self._widget.set_above_child(False) self._widget.set_visible_window(False) self.set_size(size) self.set_color(color) self.wrapped_widget_connect('button-release-event', self.on_click) self.wrapped_widget_connect('enter-notify-event', self.on_enter_notify) self.wrapped_widget_connect('leave-notify-event', self.on_leave_notify) self.wrapped_widget_connect('unmap', self.on_unmap) self.create_signal('clicked')