Exemplo n.º 1
0
 def label_event(self, ev):
     if ev.type is events.KEY:
         if utils.key_check("Esc")(ev.data):
             events.post(events.CANCEL)
         else:
             name = utils.name_key(ev.data)
             if name is not None:
                 events.post(events.OK, name)
         return True
     return False
Exemplo n.º 2
0
 def label_event(self, ev):
     if ev.type is events.KEY:
         if utils.key_check("Esc")(ev.data):
             events.post(events.CANCEL)
         else:
             name = utils.name_key(ev.data)
             if name is not None:
                 events.post(events.OK, name)
         return True
     return False
Exemplo n.º 3
0
    def __init__(self, key, label, parent=None, console=None, x=0, y=0, width=0,
                 action=None, color_set=None):
        super(Button, self).__init__(parent, console, x, y, width, height=1, color_set=color_set)

        self.key_check = utils.key_check(key)
        if self.key_check is None:
            raise ValueError("Key '%s' does not appear to be a valid key!" % key)

        self.handlers['activate'] = action

        if self.color_set is None:
            self.color_set = button_cs

        label_text = self.color_set.sprintf("%%(1)c{%s}%%(0)c %s" % (key, label))
        self.label = Label(parent=self, x=1, text=label_text)
        if self.rect.width < 1:
            self.rect.resize(width=self.label.rect.width)
        elif self.rect.width < self.label.rect.width:
            raise ValueError("Button's assigned width is insufficient!")
        else:
            self.label.center_in_parent()