Example #1
0
 def __init__(self):
     # Setting up the PyQt window
     QtGui.QMainWindow.__init__(self)
     self.ui = TaskerMainWindow()
     self.ui.setupUi(self)
     self.SetList()
Example #2
0
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_()