def _set_label(self, item): if isinstance(item, (dict)): label = item.get("text", pango.parse_markup(item.get("markup", ""), -1, "0")[2]) else: label = item if label == self.label: return #have it already! idx = self.listitem.find(label) if idx != -1: ToggleButton.__setattr__(self, 'label', label) # mark current row if not self.listitem.current_row or self.listitem.current_row[0] != self.label: self.listitem.select(self.listitem.rows[idx]) self.emit("on-change", item)
def __setattr__(self, name, val): if name == "label": self._set_label(val) return if name == "rows": self.listitem.rows = val if val and hasattr(self, "label"): if self.label in val: self.listitem.select(self.listitem.rows[self.listitem.find(self.label)]) else: self._set_label(val[0]) # make sure we get pointer to the listitems treemodel ToggleButton.__setattr__(self, name, self.listitem.rows) return ToggleButton.__setattr__(self, name, val) if name == "drop_mark_width": self.padding_right = val
def __setattr__(self, name, val): if name == "label": self._set_label(val) return if name == "rows": self.listitem.rows = val if val and hasattr(self, "label"): if self.label in val: self.listitem.select(self.listitem.rows[self.listitem.find( self.label)]) else: self._set_label(val[0]) # make sure we get pointer to the listitems treemodel ToggleButton.__setattr__(self, name, self.listitem.rows) return ToggleButton.__setattr__(self, name, val) if name == "drop_mark_width": self.padding_right = val
def _set_label(self, item): if isinstance(item, (dict)): label = item.get( "text", pango.parse_markup(item.get("markup", ""), -1, "0")[2]) else: label = item if label == self.label: return #have it already! idx = self.listitem.find(label) if idx != -1: ToggleButton.__setattr__(self, 'label', label) # mark current row if not self.listitem.current_row or self.listitem.current_row[ 0] != self.label: self.listitem.select(self.listitem.rows[idx]) self.emit("on-change", item)