Calendar coloring

- Now all due tasks are colorized.
- Setting due=0 now colorizes all due tasks in reports.
This commit is contained in:
Federico Hernandez 2010-01-08 16:49:18 +01:00
parent 7ef5233547
commit 1b60c20bad
3 changed files with 14 additions and 4 deletions

View file

@ -40,6 +40,8 @@
days with overdue tasks and weekend days in the calendar: days with overdue tasks and weekend days in the calendar:
'calendar.color.today', 'color.calendar.due', 'calendar.color.today', 'color.calendar.due',
'calendar.calendar.overdue' and 'color.calendar.weekend'. 'calendar.calendar.overdue' and 'color.calendar.weekend'.
+ The coloring of due tasks in reports can now be enabled for all tasks, and not
only the imminent ones, by setting the configuration variable due=0.
+ Fixed bug #316 which caused the timesheet report to display an oddly sorted + Fixed bug #316 which caused the timesheet report to display an oddly sorted
list. list.
+ Fixed bug #317 which colored tasks in the 'completed' report according to + Fixed bug #317 which colored tasks in the 'completed' report according to

View file

@ -385,13 +385,18 @@ int getDueState (const std::string& due)
// rightNow is the current date + time. // rightNow is the current date + time.
Date rightNow; Date rightNow;
Date midnight (rightNow.month (), rightNow.day (), rightNow.year ()); Date thisDay (rightNow.month (), rightNow.day (), rightNow.year ());
if (dt < midnight) if (dt < thisDay)
return 2; return 2;
Date nextweek = midnight + context.config.get ("due", 7) * 86400; int imminentperiod = context.config.get ("due", 7);
if (dt < nextweek)
if (imminentperiod == 0)
return 1;
Date imminentDay = thisDay + imminentperiod * 86400;
if (dt < imminentDay)
return 1; return 1;
} }

View file

@ -1686,6 +1686,9 @@ int handleReportCalendar (std::string &outs)
report_filter += " due.after:" + after + " due.before:" + before; report_filter += " due.after:" + after + " due.before:" + before;
context.config.set ("report." + report + ".filter", report_filter); context.config.set ("report." + report + ".filter", report_filter);
// Display all due task in the report colorized not only the imminet ones
context.config.set ("due", 0);
context.args.clear (); context.args.clear ();
context.filter.clear (); context.filter.clear ();
context.sequence.clear (); context.sequence.clear ();