class TicketManagerWidget(BaseManagerWidget): def __init__(self, parent, db, *args): self.db = db self.manager = TicketManager(self.db) BaseManagerWidget.__init__(self, parent, db, TicketView, 'TicketManager') self.initToolbar() self.dialogs = {} def initlistView(self): self.listView.setRootIsDecorated(True) fields = ['title', 'author', 'created'] for field in fields: self.listView.addColumn(field) self.refreshlistView() def refreshlistView(self): self.listView.clear() fields = ['title', 'author', 'created'] rows = self.manager.get_tickets() print len(rows) for row in rows: drow = [str(row[field]) for field in fields] KListViewItem(self.listView, *drow) def initActions(self): collection = self.actionCollection() self.newAction = KStdAction.openNew(self.slotNew, collection) def initMenus(self): menu = KPopupMenu(self) self.newAction.plug(menu) self.menuBar().insertItem('&Main', menu) self.menuBar().insertItem('&Help', self.helpMenu('')) def initToolbar(self): toolbar = self.toolBar() actions = [self.newAction] for action in actions: action.plug(toolbar) def selectionChanged(self): current = self.listView.currentItem() print current def slotNew(self): dlg = TicketDialog(self) self.connect(dlg, SIGNAL('okClicked()'), self.create_ticket) self.dialogs['new-ticket'] = dlg def create_ticket(self): dlg = self.dialogs['new-ticket'] title = str(dlg.titleEdit.text()) data = str(dlg.dataEdit.text()) self.manager.create_ticket(title, data) self.refreshlistView()
def __init__(self, parent, db, *args): self.db = db self.manager = TicketManager(self.db) BaseManagerWidget.__init__(self, parent, db, TicketView, 'TicketManager') self.initToolbar() self.dialogs = {}