-
-
Notifications
You must be signed in to change notification settings - Fork 7
Timers
Timecard needs to be able to maintain multiple separate timers. This will be critical for implementing a few future features, including:
- Track time paused.
- Task switching.
A Timer object will need to be defined, such that multiple timers may exist simultaneously. The program should be able to switch which is viewed at any given time.
A Timer object should have the following properties:
- Timestamp (of start)
- Activity
- Duration
- Pause Duration
- Alert-Enabled
- Switcher: A drop-down box should display the status of all active timers and their corresponding activities.
- Tray Icon: Should display all active timers, with separate control for each.
- A second, smaller time display should show how long a timer has been paused for.
- Once Alerts have been implemented, it should be possible to toggle whether Alerts "notice" a timer using a toggle button.
A timer should know, not just how long it has been running, but how long it has been paused. This should be stored in the time logs, and be editable in the same manner as duration.
As mentioned in Interface Changes, a smaller (possibly red) time display should show how long a timer has been paused for. This would not be displayed in the Switcher or Tray Icon, however, just to avoid confusing the user.
If time paused is tracked, it should be stored as a subfield of duration. That way, any time logs/entries without that subfield are still valid.
2020-1-3-11-20-29|00:20:46|Do something cool
2020-1-3-13-14-43|00:42:19/00:12:13|Do something else
The first entry has no pause time stored. The second entry has 12 minutes and 13 seconds of pause time stored.
It should be possible to have multiple timers running at a time, and allow switching which one is being viewed via the Switcher. One use case for this would be pausing one activity, switching to another, and then switching back.