def __init__(self): # Setting up the PyQt window QtGui.QMainWindow.__init__(self) self.ui = TaskerMainWindow() self.ui.setupUi(self) self.SetList()
class MainUIWindow(QtGui.QMainWindow): def __init__(self): # Setting up the PyQt window QtGui.QMainWindow.__init__(self) self.ui = TaskerMainWindow() self.ui.setupUi(self) self.SetList() def SetList(self): # Loop through our tasks and feed them into the PyQt tree. global items self.ui.itemsListWidget.clear() for task in ListAllTasks(): items = QtGui.QTreeWidgetItem(self.ui.itemsListWidget) items.setText(0, task.UniModule) items.setText(1, task.Task) items.setText(2, task.DueDate) items.task = task if task.Status == "True": items.setCheckState(3, QtCore.Qt.Checked) # Unless task is True else: # consider not done items.setCheckState(3, QtCore.Qt.Unchecked) # Catching call from CheckState to change the task status in the db def on_itemsListWidget_itemChanged(self, items): _connection = dbconn try: if items.checkState(3): items.task.set(Status="True") else: items.task.set(Status="False") except AttributeError: # Supress AttributeError during app launch/setup pass # Safe to do this, not due to user error # Defining the button actions from the main window def on_itemsListWidget_doubleClicked(self, items, checked=None): EditTaskWindow = EditTaskUI() items = self.ui.itemsListWidget.currentItem() EditTaskWindow.GetTaskInfo(items.task.id, items.task.UniModule, items.task.Task, items.task.DueDate, items.task.Status) EditTaskWindow.exec_() self.SetList() def on_addTaskButton_released(self): AddTaskWindow = AddTaskUI() AddTaskWindow.exec_() self.SetList() def on_emailTaskButton_released(self): EmailTasksWindow = EmailTasks() EmailTasksWindow.exec_() def on_deleteTaskButton_released(self): try: taskid = self.ui.itemsListWidget.currentItem().task.id try: DeleteTask(taskid) except: print "Something went wrong!" except: BadDelete.callPopup() self.SetList() @QtCore.pyqtSignature("") # Specify the PyQt signal we listen to, stops multiple dialogs def on_actionAboutMenu_triggered(self): AboutWindowShow = AboutWindow() AboutWindowShow.exec_()