aboutsummaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/color.py4
-rw-r--r--src/gui/tasks/duration.py13
-rw-r--r--src/gui/tasks/table/model.py11
3 files changed, 23 insertions, 5 deletions
diff --git a/src/gui/color.py b/src/gui/color.py
index fa7df8e..f02fbae 100644
--- a/src/gui/color.py
+++ b/src/gui/color.py
@@ -12,3 +12,7 @@ hard_difficulty = red
low_priority = green
middle_priority = orange
high_priority = red
+
+short_duration = green
+medium_duration = orange
+long_duration = red
diff --git a/src/gui/tasks/duration.py b/src/gui/tasks/duration.py
index e863914..3ce8203 100644
--- a/src/gui/tasks/duration.py
+++ b/src/gui/tasks/duration.py
@@ -1,6 +1,9 @@
-import re
+from PyQt5 import QtGui
from typing import Optional
import math
+import re
+
+import gui.color
def format(minutes: int):
if minutes >= 60 * 24:
@@ -37,3 +40,11 @@ def parse(duration: str) -> Optional[int]:
return None
else:
return 0
+
+def color(minutes: int):
+ if minutes <= 15:
+ return gui.color.short_duration
+ elif minutes < 60:
+ return gui.color.medium_duration
+ else:
+ return gui.color.long_duration
diff --git a/src/gui/tasks/table/model.py b/src/gui/tasks/table/model.py
index 062ded6..8374d03 100644
--- a/src/gui/tasks/table/model.py
+++ b/src/gui/tasks/table/model.py
@@ -48,10 +48,13 @@ class TableModel(QtCore.QAbstractTableModel):
return priority.format(task.priority)
elif index.column() == 5:
return task.tag
- elif role == Qt.ForegroundRole and index.column() == 3:
- return QtGui.QBrush(difficulty_color(task.difficulty))
- elif role == Qt.ForegroundRole and index.column() == 4:
- return QtGui.QBrush(priority_color(task.priority))
+ elif role == Qt.ForegroundRole:
+ if index.column() == 2:
+ return QtGui.QBrush(gui.tasks.duration.color(task.duration))
+ elif index.column() == 3:
+ return QtGui.QBrush(difficulty_color(task.difficulty))
+ elif index.column() == 4:
+ return QtGui.QBrush(priority_color(task.priority))
else:
return QtCore.QVariant()