Semi-automatic task completion and project status
Would it be possible to change a task's completion field (if it's a project, its status too) depending on changes to its child tasks?
Also, could you ensure that a project's "Completed" status is automatically updated to reflect any changes to its own completed field (checkbox) and vice-versa?
Here are a few cases:
a task is not completed (if project, status is NOT "Completed"), and the last remaining ongoing child tasks are marked as completed or deleted:
- desired behaviour: prompt the user whether to mark the parent task as completed (and the project status to "Completed")
a task is already completed (if project, status is "Completed"), and a child task is added or an existing one is marked as not completed (checkbox is cleared):
- desired behaviour: mark the parent task as not completed (and set project status to "In Progress") and notify the user via a dialog or the status bar.
These should handle cascading updates up to a task's ancestors, which could complicate the implementation (but is arguably worth it).
I would also suggest allowing users to enable / disable this behaviour in Options -> General Application Options -> Behaviour.