TimeTracker/TimeTrackerWidget.py

Fri, 19 Oct 2012 13:06:56 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Fri, 19 Oct 2012 13:06:56 +0200
changeset 1
a0beac325e5a
child 2
058c6a316ca8
permissions
-rw-r--r--

Added a few source files.

1
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
3 # Copyright (c) 2012 Detlev Offenbach <detlev@die-offenbachs.de>
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing the time tracker widget.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 from PyQt4.QtCore import pyqtSlot, QPoint
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11 from PyQt4.QtGui import QWidget, QMenu
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 from .Ui_TimeTrackerWidget import Ui_TimeTrackerWidget
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 class TimeTrackerWidget(QWidget, Ui_TimeTrackerWidget):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 Class implementing the time tracker widget.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 def __init__(self, tracker, parent=None):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 Constructor
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 @param tracker reference to the time tracker (TimeTracker)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 @param parent reference to the parent widget (QWidget)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 super().__init__(parent)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 self.setupUi(self)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 self.__tracker = tracker
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 @pyqtSlot(str)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 def on_taskCombo_editTextChanged(self, p0):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 Slot documentation goes here.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 @pyqtSlot(str)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 def on_commentCombo_editTextChanged(self, p0):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 Slot documentation goes here.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 @pyqtSlot(bool)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 def on_pauseButton_toggled(self, checked):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 Slot documentation goes here.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 @pyqtSlot()
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 def on_newButton_clicked(self):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 Slot documentation goes here.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 @pyqtSlot(QPoint)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 def on_entriesList_customContextMenuRequested(self, pos):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 Private slot to create the context menu and show it.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 @param pos position the menu should be shown at (QPoint)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 menu = QMenu()
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 menu.addAction(self.tr("Edit"), self.__editEntry).setEnabled(
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 len(self.entriesList.selectedItems()) == 1)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 menu.addAction(self.tr("Delete"), self.__deleteSelectedEntries)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 menu.addSeparator()
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 menu.addAction(self.tr("Save"), self.__saveEntries)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 menu.addSeparator()
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 menu.addAction(self.tr("Import"), self.__importEntries)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80 menu.addAction(self.tr("Export Selected"), self.__exportSelectedEntries)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81 menu.addAction(self.tr("Export All"), self.__exportAllEntries)
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
83 def __editEntry(self):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
84 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
85 Private slot to edit the selected tracker entry.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
86 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
87 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
88 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
89
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
90 def __deleteSelectedEntries(self):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
91 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
92 Private slot to delete the selected tracker entries.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
93 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
94 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
95 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97 def __saveEntries(self):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 Private slot to save the tracker entries.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104 def __importEntries(self):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
105 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106 Private slot to import tracker entries.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
107 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
110
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
111 def __exportSelectedEntries(self):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
113 Private slot to export the selected tracker entries.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
114 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
115 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
116 raise NotImplementedError
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
118 def __exportAllEntries(self):
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
119 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
120 Private slot to export all tracker entries.
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121 """
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
122 # TODO: not implemented yet
a0beac325e5a Added a few source files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
123 raise NotImplementedError

eric ide

mercurial