rendered paste bodyimport gtk.gladeimport Globalsclass ExtensionManagerDialog: def __init__(self, parent): self.parent = parent self.wTree = gtk.glade.XML(Globals.GLADE_PATH, "ExtensionManagerDialog") signals = { "on_Close_clicked" : self.OnClose } self.wTree.signal_autoconnect(signals) self.dlg = self.wTree.get_widget("ExtensionManagerDialog") self.tree = self.wTree.get_widget("treeview1") self.AddColumn("Enabled", 0, 'toggle') self.AddColumn("Name", 1) self.AddColumn("Description", 2) self.AddColumn("Version", 3) self.model = gtk.ListStore(bool, str, str, str) self.tree.set_model(self.model) for extension in Globals.AVAILABLE_EXTENSIONS: self.model.append(extension) self.dlg.set_transient_for(self.parent.window) self.dlg.show() def OnClose(self, button): self.dlg.destroy() def AddColumn(self, title, modelId, cell_renderer='text'): if cell_renderer == 'toggle': renderer = gtk.CellRendererToggle() renderer.set_property('activatable', True) column = gtk.TreeViewColumn(title, renderer, active=modelId) else: column = gtk.TreeViewColumn(title, gtk.CellRendererText(), text=modelId) self.tree.append_column(column)