- def _set_selector_content(self, selector, handler, items=[]):
- """Updates selector widget content."""
-
- selector.handler_block(handler) # temporary block handler
- # setting new content
- # model: name, internal_name, type
- model = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_INT, \
- gobject.TYPE_STRING)
- for name, internal_name, item_type in items:
- model.append((name, internal_name, item_type))
- if selector.get_num_columns():
- selector.remove_column(0)
- selector.append_text_column(model, False)
- selector.unselect_all(0)
- selector.handler_unblock(handler) # reconnect callback
-
- def _set_box_content(self, box, items):
- """Updates box widget content."""
-
- def on_button_click(widget):
- self._show_item_dialog(widget.get_title(), \
- widget.get_data('internal_name'))
-
- for child in box.get_children():
- box.remove(child)
- for title, value, internal_name, item_type in items:
- button = create_button(title, value)
- button.connect('clicked', on_button_click)
- button.set_data('internal_name', internal_name)
- button.set_relief(gtk.RELIEF_NONE)
- button.show()
- box.pack_start(button, expand=False)
-