def __init__(self): Gtk.EventBox.__init__(self) s, color = Gdk.Color.parse(data['configs']['bgcolor']) self.modify_bg(Gtk.StateType.NORMAL, color) self.confirm = False self.speech = BaseAudioGrab() self.set_events(Gdk.EventMask.BUTTON_PRESS_MASK) self.connect('button-press-event', self.button_pressed) self.canvasbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL) self.add(self.canvasbox) self.canvasbox.show() self.show() # Top part top = Gtk.Box() self.sentence = Gtk.Box() self.sentence.show() top.pack_start(self.sentence, True, True, 0) self.delbtn = OptionButton({ 'title': 'Borrar', 'image': 'OPUESTOS/no.png' }) top.pack_start(self.delbtn, False, True, 0) top.show() self.canvasbox.pack_start(top, True, True, 0) GObject.timeout_add(SPEED, self.update_selection) self.removable = [] self.boards = [data['boards'][0]] self.fill_board(data['boards'][0]) self.phrases = []
def fill_board(self, board): if len(self.boards) == 0: self.boards = [board] if self.boards[-1] != board: self.boards.append(board) self.selected = -1 self.buttons = [] for i in self.removable: self.canvasbox.remove(i) self.removable = [] elem = 0 box = None for i in board['options']: if elem == 0: box = Gtk.Box() box.show() self.canvasbox.pack_start(box, True, True, SEPARATION) self.removable.append(box) option = OptionButton(i) option.connect('clicked', self.button_pressed) self.buttons.append(option) box.pack_start(option, True, True, SEPARATION) elem += 1 if elem == MAX_PER_LINE: elem = 0