marnix / mytime

A simple time tracker, mostly controlled through the tray icon.

This URL has Read+Write access

mytime / README
100644 85 lines (58 sloc) 2.912 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
MyTime
======
 
LICENSE
-------
MyTime: A minimalistic time track tool usable from the system tray
Copyright (C) 2008 Marnix Klooster <marnix.klooster@gmail.com>
 
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
 
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
 
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
 
ACKNOWLEDGMENTS
---------------
Icons by http://dryicons.com (Aesthetica Icon Set, version 1.12,
http://dryicons.com/free-icons/preview/aesthetica/).
 
GOAL
----
 
MyTime is intended to be a minimalistic time track tool. For me, that
currently means the following:
 
 - During day-to-day work it takes up minimal screen space, so in a desktop
   environment it stays in the system tray.
 
 - It only has commands for the basic actions: start working on a new or on an
   existing task, stop working, and edit start/end times and task names for
   recent activities.
 
 - It generally stays out of the way until I use it once a week to generate a
   report of some kind.
   
However, I do also have the following requirements:
 
 - The tool should work cross-platform, at least Windows and Gnome-on-Linux
   should be supported.
 
 - It should be based on a well-defined, simple, and compact time log file
   format.
 
 - It should be flexible in the reports that can be generated (but not
   necessarily through the GUI: a command-line interface is OK as well).
 
So why did I start creating yet another time track tool? Well, I couldn't find
one that fit the above ideas perfectly. And it was also a good excuse to try
and create a simple GUI in Java, and to get to know Eclipse better, which I
need to do for my day-time job.
 
TODO
----
 
 * Build initial screen to indicate starting/stopping work.
 
 * Allow editing of start/end times of work.
 
 * Create an 'About' screen, with acknowledgments for DryIcons' icons.
 
 * Allow specification of a task name.
 
 * Design an initial version of the time log file format.
 
 * In the context menu, show a list of recent tasks, and start the timer on
   a task that is selected.
 
 * Make every task/time change persistent to a time log file. Read this file
   on start-up.
 
 * Add a multi-level 'undo' function to the UI (the time log is not rolled
   back, but an undo entry is added).
   
 * Add a multi-level 'redo' function.
 
 * Allow specification of 'tags' for each task name, to help in reporting.
 
 * Try to make the application respond to (configurable) global keystrokes.