Sat, 01 May 2021 20:28:00 +0200
Modernized some more code (Tasks).
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
7923
91e843545d9a
Updated copyright for 2021.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
3 | # Copyright (c) 2005 - 2021 Detlev Offenbach <detlev@die-offenbachs.de> |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a class to store task data. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
10 | import contextlib |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
11 | import enum |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | import os |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | import time |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | |
3990
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
15 | from PyQt5.QtCore import Qt, QUuid |
3656
441956d8fce5
Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3178
diff
changeset
|
16 | from PyQt5.QtWidgets import QTreeWidgetItem |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | import UI.PixmapCache |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | import Preferences |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
22 | class TaskType(enum.IntEnum): |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
23 | """ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
24 | Class defining the task types. |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
25 | """ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
26 | NONE = 255 |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
27 | FIXME = 0 |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
28 | TODO = 1 |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
29 | WARNING = 2 |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
30 | NOTE = 3 |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
31 | TEST = 4 |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
32 | DOCU = 5 |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
33 | |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
34 | |
8269
87f521f359d5
Modernized some more code and marked code to be modernized.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8240
diff
changeset
|
35 | # TODO: separate into Task and TaskItem(QTreeWidgetItem) (eric7) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | class Task(QTreeWidgetItem): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | Class implementing the task data structure. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | """ |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
40 | # TODO: add IntEnum for priority |
7663
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
41 | |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
42 | TaskType2IconName = { |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
43 | TaskType.FIXME: "taskFixme", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
44 | TaskType.TODO: "taskTodo", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
45 | TaskType.WARNING: "taskWarning", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
46 | TaskType.NOTE: "taskNote", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
47 | TaskType.TEST: "taskTest", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
48 | TaskType.DOCU: "taskDocu", # __NO-TASK__ |
7663
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
49 | } |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
50 | TaskType2ColorName = { |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
51 | TaskType.FIXME: "TasksFixmeColor", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
52 | TaskType.TODO: "TasksTodoColor", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
53 | TaskType.WARNING: "TasksWarningColor", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
54 | TaskType.NOTE: "TasksNoteColor", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
55 | TaskType.TEST: "TasksTestColor", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
56 | TaskType.DOCU: "TasksDocuColor", # __NO-TASK__ |
7663
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
57 | } |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
58 | TaskType2MarkersName = { |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
59 | TaskType.FIXME: "TasksFixmeMarkers", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
60 | TaskType.TODO: "TasksTodoMarkers", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
61 | TaskType.WARNING: "TasksWarningMarkers", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
62 | TaskType.NOTE: "TasksNoteMarkers", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
63 | TaskType.TEST: "TasksTestMarkers", # __NO-TASK__ |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
64 | TaskType.DOCU: "TasksDocuMarkers", # __NO-TASK__ |
7663
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
65 | } |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | |
2197
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
67 | def __init__(self, summary, priority=1, filename="", lineno=0, |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | completed=False, _time=0, isProjectTask=False, |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
69 | taskType=TaskType.TODO, project=None, description="", |
3990
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
70 | uid="", parentUid=""): |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | Constructor |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
74 | @param summary summary text of the task |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
75 | @type str |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | @param priority priority of the task (0=high, 1=normal, 2=low) |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
77 | @type int |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
78 | @param filename filename containing the task |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
79 | @type str |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
80 | @param lineno line number containing the task |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
81 | @type int |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
82 | @param completed flag indicating completion status |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
83 | @type bool |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
84 | @param _time creation time of the task (if 0 use current time) |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
85 | @type float |
2965
d133c7edd88a
Continued correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
86 | @param isProjectTask flag indicating a task related to the current |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
87 | project |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
88 | @type bool |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
89 | @param taskType type of the task |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
90 | @type TaskType |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
91 | @param project reference to the project object |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
92 | @type Project |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
93 | @param description explanatory text of the task |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
94 | @type str |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
95 | @param uid unique id of the task |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
96 | @type str |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
97 | @param parentUid unique id of the parent task |
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
98 | @type str |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | """ |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
100 | super().__init__() |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | |
2197
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
102 | self.summary = summary |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | self.description = description |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | if priority in [0, 1, 2]: |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | self.priority = priority |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | else: |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | self.priority = 1 |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | self.filename = filename |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
109 | self.lineno = lineno |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | self.completed = completed |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | self.created = _time and _time or time.time() |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | self._isProjectTask = isProjectTask |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | self.taskType = taskType |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | self.project = project |
3990
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
115 | if uid: |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
116 | self.uid = uid |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
117 | else: |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
118 | self.uid = QUuid.createUuid().toString() |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
119 | self.parentUid = parentUid |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | if isProjectTask: |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | self.filename = self.project.getRelativePath(self.filename) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8011
diff
changeset
|
124 | self.setData(0, Qt.ItemDataRole.DisplayRole, "") |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8011
diff
changeset
|
125 | self.setData(1, Qt.ItemDataRole.DisplayRole, "") |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8011
diff
changeset
|
126 | self.setData(2, Qt.ItemDataRole.DisplayRole, self.summary) |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8011
diff
changeset
|
127 | self.setData(3, Qt.ItemDataRole.DisplayRole, self.filename) |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8011
diff
changeset
|
128 | self.setData(4, Qt.ItemDataRole.DisplayRole, self.lineno or "") |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
129 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | if self.completed: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
131 | self.setIcon(0, UI.PixmapCache.getIcon("taskCompleted")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | strikeOut = True |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | else: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
134 | self.setIcon(0, UI.PixmapCache.getIcon("empty")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | strikeOut = False |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | for column in range(2, 5): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
137 | f = self.font(column) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | f.setStrikeOut(strikeOut) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
139 | self.setFont(column, f) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
140 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | if self.priority == 1: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
142 | self.setIcon(1, UI.PixmapCache.getIcon("empty")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
143 | elif self.priority == 0: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
144 | self.setIcon(1, UI.PixmapCache.getIcon("taskPrioHigh")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | elif self.priority == 2: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
146 | self.setIcon(1, UI.PixmapCache.getIcon("taskPrioLow")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | else: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
148 | self.setIcon(1, UI.PixmapCache.getIcon("empty")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | |
7663
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
150 | try: |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
151 | self.setIcon(2, UI.PixmapCache.getIcon( |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
152 | Task.TaskType2IconName[self.taskType])) |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
153 | except KeyError: |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
154 | self.setIcon(2, UI.PixmapCache.getIcon("empty")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | self.colorizeTask() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8011
diff
changeset
|
157 | self.setTextAlignment(4, Qt.AlignmentFlag.AlignRight) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
159 | def colorizeTask(self): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
161 | Public slot to set the colors of the task item. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
162 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | boldFont = self.font(0) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
164 | boldFont.setBold(True) |
4457
6faeea06e9b6
Fixed a little bug related to styling of a task item.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
165 | nonBoldFont = self.font(0) |
6faeea06e9b6
Fixed a little bug related to styling of a task item.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
166 | nonBoldFont.setBold(False) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
167 | for col in range(5): |
8240
93b8a353c4bf
Applied some more code simplifications suggested by the new Simplify checker (Y105: use contextlib.suppress) (batch 1).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8218
diff
changeset
|
168 | with contextlib.suppress(KeyError): |
3656
441956d8fce5
Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3178
diff
changeset
|
169 | self.setBackground( |
7663
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
170 | col, Preferences.getTasks( |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
171 | Task.TaskType2ColorName[self.taskType])) |
b4d5234f92e7
Tasks: added separate task categories for 'Test' and 'Documentation' tasks
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
172 | |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
173 | if self._isProjectTask: |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
174 | self.setFont(col, boldFont) |
4457
6faeea06e9b6
Fixed a little bug related to styling of a task item.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
175 | else: |
6faeea06e9b6
Fixed a little bug related to styling of a task item.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
176 | self.setFont(col, nonBoldFont) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
177 | |
2197
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
178 | def setSummary(self, summary): |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
180 | Public slot to update the description. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | |
2197
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
182 | @param summary summary text of the task (string) |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
183 | """ |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
184 | self.summary = summary |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
185 | self.setText(2, self.summary) |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
186 | |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
187 | def setDescription(self, description): |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
188 | """ |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
189 | Public slot to update the description field. |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
190 | |
c4f24f8f34c0
Some harminisation of nomenclature in the various Task dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2000
diff
changeset
|
191 | @param description descriptive text of the task (string) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
192 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
193 | self.description = description |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
194 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
195 | def setPriority(self, priority): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
196 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | Public slot to update the priority. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
198 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | @param priority priority of the task (0=high, 1=normal, 2=low) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
201 | if priority in [0, 1, 2]: |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | self.priority = priority |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
203 | else: |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
204 | self.priority = 1 |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
205 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
206 | if self.priority == 1: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
207 | self.setIcon(1, UI.PixmapCache.getIcon("empty")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
208 | elif self.priority == 0: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
209 | self.setIcon(1, UI.PixmapCache.getIcon("taskPrioHigh")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
210 | elif self.priority == 2: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
211 | self.setIcon(1, UI.PixmapCache.getIcon("taskPrioLow")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
212 | else: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
213 | self.setIcon(1, UI.PixmapCache.getIcon("empty")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
214 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
215 | def setCompleted(self, completed): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
216 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | Public slot to update the completed flag. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
218 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
219 | @param completed flag indicating completion status (boolean) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
220 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | self.completed = completed |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | if self.completed: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
223 | self.setIcon(0, UI.PixmapCache.getIcon("taskCompleted")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
224 | strikeOut = True |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
225 | else: |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
226 | self.setIcon(0, UI.PixmapCache.getIcon("empty")) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | strikeOut = False |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
228 | for column in range(2, 5): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
229 | f = self.font(column) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | f.setStrikeOut(strikeOut) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | self.setFont(column, f) |
3990
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
232 | |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
233 | # set the completion status for all children |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
234 | for index in range(self.childCount()): |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
235 | self.child(index).setCompleted(completed) |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | def isCompleted(self): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | Public slot to return the completion status. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | @return flag indicating the completion status (boolean) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
243 | return self.completed |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
244 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
245 | def getFilename(self): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | """ |
3990
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
247 | Public method to retrieve the task's filename. |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
249 | @return filename (string) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
251 | if self._isProjectTask and self.filename: |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
252 | return os.path.join(self.project.getProjectPath(), self.filename) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
253 | else: |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
254 | return self.filename |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | |
3990
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
256 | def isFileTask(self): |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
257 | """ |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
258 | Public slot to get an indication, if this task is related to a file. |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
259 | |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
260 | @return flag indicating a file task (boolean) |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
261 | """ |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
262 | return self.filename != "" |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
263 | |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
264 | def getLineno(self): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | """ |
3990
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
266 | Public method to retrieve the task's linenumber. |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | @return linenumber (integer) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
269 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | return self.lineno |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | |
3990
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
272 | def getUuid(self): |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
273 | """ |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
274 | Public method to get the task's uid. |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
275 | |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
276 | @return uid (string) |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
277 | """ |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
278 | return self.uid |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
279 | |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
280 | def getParentUuid(self): |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
281 | """ |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
282 | Public method to get the parent task's uid. |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
283 | |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
284 | @return parent uid (string) |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
285 | """ |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
286 | return self.parentUid |
5dd6edf8540a
Aadded capability to add sub-tasks (i.e. a task hierarchy) for manually generated tasks to the task viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
287 | |
1819
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
288 | def setProjectTask(self, pt): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
289 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
290 | Public method to set the project relation flag. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
291 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
292 | @param pt flag indicating a project task (boolean) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
293 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
294 | self._isProjectTask = pt |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
295 | self.colorizeTask() |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
296 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
297 | def isProjectTask(self): |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
298 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
299 | Public slot to return the project relation status. |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
300 | |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
301 | @return flag indicating the project relation status (boolean) |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
302 | """ |
cfcfd617216a
Changed the tasks handling to allow for more fine grained task designations.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
303 | return self._isProjectTask |
2000
a81bf687e4ee
Fixed an issue with the task manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1819
diff
changeset
|
304 | |
a81bf687e4ee
Fixed an issue with the task manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1819
diff
changeset
|
305 | def isProjectFileTask(self): |
a81bf687e4ee
Fixed an issue with the task manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1819
diff
changeset
|
306 | """ |
2997
7f0ef975da9e
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
307 | Public slot to get an indication, if this task is related to a |
7f0ef975da9e
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
308 | project file. |
2000
a81bf687e4ee
Fixed an issue with the task manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1819
diff
changeset
|
309 | |
a81bf687e4ee
Fixed an issue with the task manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1819
diff
changeset
|
310 | @return flag indicating a project file task (boolean) |
a81bf687e4ee
Fixed an issue with the task manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1819
diff
changeset
|
311 | """ |
a81bf687e4ee
Fixed an issue with the task manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1819
diff
changeset
|
312 | return self._isProjectTask and self.filename != "" |
8011
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
313 | |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
314 | def toDict(self): |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
315 | """ |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
316 | Public method to convert the task data to a dictionary. |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
317 | |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
318 | @return dictionary containing the task data |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
319 | @rtype dict |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
320 | """ |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
321 | return { |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
322 | "summary": self.summary.strip(), |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
323 | "description": self.description.strip(), |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
324 | "priority": self.priority, |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
325 | "lineno": self.lineno, |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
326 | "completed": self.completed, |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
327 | "created": self.created, |
8278
e647b71b393f
Modernized some more code (Tasks).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8269
diff
changeset
|
328 | "type": self.taskType.value, |
8011
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
329 | "uid": self.uid, |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
330 | "parent_uid": self.parentUid, |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
331 | "expanded": self.isExpanded(), |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
332 | "filename": self.getFilename(), |
630a173cb137
Implemented the JSON based tasks files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
333 | } |