-rw-r--r-- | bin/kdepim/timetrackerhowto.txt | 68 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 10 | ||||
-rw-r--r-- | korganizer/mainwindow.h | 1 | ||||
-rw-r--r-- | libkcal/todo.cpp | 4 |
4 files changed, 80 insertions, 3 deletions
diff --git a/bin/kdepim/timetrackerhowto.txt b/bin/kdepim/timetrackerhowto.txt new file mode 100644 index 0000000..69fe1ea --- a/dev/null +++ b/bin/kdepim/timetrackerhowto.txt @@ -0,0 +1,68 @@ + +KO/Pi timetracker HowTo + +In KO/Pi you can set a todo in a "running" state to track your working time on that todo. +This Howto is about to use that timetracking feature. + +CONTENT: + +0) Tracking time - setting a todo to started and stopped +1) Getting the time information +2) Overview and analysis of the timetracking data + +******************************************** +0) Tracking time - setting a todo to started +******************************************** + +To track time open the todo view in KO/Pi. +There you can set a todo to the "running" state. +You can do this by choosing "Start/Stop todo.." from the context menu for that todo or by double clicking on the start time or start date column of that todo. +A started todo is displayed green and the start time and date values in the todo list are displaying the start time. +If a parent todo with a running sub todo is displayed closed in the todo view that parent todo is displayed green as well. +If a todo is running the running information is stored every five minutes (not configureable). +(Nothing is changed in the todo itself: If the todo has a start datetime set only the display changes for the time this todo is set to running.) +You can edit a running todo as usual. +If you delete a running todo its running information is saved automatically +You can set the todo to "stopped" in the same way. +If a todo is set to "stopped" within 30 seconds after the start, nothing is stored. +If a todo is set to stopped, its running information is stored in the directory +<yourhome>/kdepim/apps/timetrackerdir/ +If you close the application all running todos are set to stopped and the running information is stored automatically. +That does mean: If you start KO/Pi there will be no todo in the "running" state. + +******************************************** +1) Getting the time information +******************************************** + +All data is stored in the dir +<yourhome>/kdepim/apps/timetrackerdir/ + +There are two kind of files: +E.g. +20050417-090628-libkcal-1503885238.271.ics +and +libkcal-1387036159.309.ics + +The filenames with the datetime at the beginning contains the actual tracking data: +The datetime part of the filename is the start datetime of this run of that todo. +The same value you can find in the file as "DTSTART" value. +The end datetime of the tracking you can find in the file as the "DUE" value. + +A file without a datetime at the beginning +(libkcal-1387036159.309.ics in our example) +contains no timetracking information and contains only information about a parent todo of a todo with timetracking information. +This file is needed to display the parent-child relationchip you can see in the KO/Pi todo view in the timetracking overview application: + +******************************************** +2) Overview and analysis of the timetracking data +******************************************** + +Because every timetracking run is stored in a single file it is easy to merge the data from several computers of the same person or from several persons by copying all the files into the same directory. +There is an application which reads the content of that directory and displays the running information of each todo in a so called timetable "Gantt" view. +It makes it possible to create and print reports for specific time frames. +The default display is exactly like the parent-child relationchip displayed in the KO/Pi todo view, but it is possible to sort items by categories and by attendees. +This program will only be available for the desktop (Windows and Linux). +This program is not free open source software. +There are no decisions about the distribution model (licence model and price) yet. +You can find more information about that program after the beginning of June 2005 at www.pi-sync.net. +
\ No newline at end of file diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index ffc4d9a..8e5d108 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp @@ -1085,9 +1085,13 @@ void MainWindow::initActions() SLOT( keyBindings() ) ); action = new QAction( "Storage Howto", i18n("Storage HowTo..."), 0,this ); action->addTo( helpMenu ); connect( action, SIGNAL( activated() ), - SLOT( storagehowto() ) ); + SLOT( storagehowto() ) ); + action = new QAction( "Timetracking Howto", i18n("Timetracking HowTo..."), 0,this ); + action->addTo( helpMenu ); + connect( action, SIGNAL( activated() ), + SLOT( timetrackinghowto() ) ); action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this ); action->addTo( helpMenu ); connect( action, SIGNAL( activated() ), SLOT( synchowto() ) ); @@ -1400,8 +1404,12 @@ void MainWindow::usertrans() void MainWindow::storagehowto() { KApplication::showFile( "KDE-Pim/Pi Storage HowTo", "kdepim/storagehowto.txt" ); } +void MainWindow::timetrackinghowto() +{ + KApplication::showFile( "KO/Pi Timetracking HowTo", "kdepim/timetrackerhowto.txt" ); +} void MainWindow::kdesynchowto() { KApplication::showFile( "KDE-Pim/Pi Synchronization HowTo", "kdepim/Zaurus-KDE_syncHowTo.txt" ); } diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h index 3151f50..f2a6c60 100644 --- a/korganizer/mainwindow.h +++ b/korganizer/mainwindow.h @@ -67,8 +67,9 @@ class MainWindow : public QMainWindow void usertrans(); void features(); void synchowto(); void storagehowto(); + void timetrackinghowto(); void kdesynchowto(); void multisynchowto(); void whatsNew(); void keyBindings(); diff --git a/libkcal/todo.cpp b/libkcal/todo.cpp index 6a6c137..002d3f2 100644 --- a/libkcal/todo.cpp +++ b/libkcal/todo.cpp @@ -94,9 +94,9 @@ void Todo::saveRunningInfoToFile() file.replace ( QRegExp (" "), "0" ); file += uid(); //qDebug("File %s ",file.latin1() ); CalendarLocal cal; - cal.setTimeZoneId( " 00:00 Europe/London(UTC)" ); + cal.setLocalTime(); Todo * to = (Todo*) clone(); to->setFloats( false ); to->setDtStart( mRunStart ); to->setHasStartDate( true ); @@ -128,9 +128,9 @@ void Todo::saveParents() saveTodo = true; } if ( saveTodo ) { CalendarLocal cal; - cal.setTimeZoneId( " 00:00 Europe/London(UTC)" ); + cal.setLocalTime(); Todo * par = (Todo *) to->clone(); cal.addIncidence( par ); ICalFormat format; format.save( &cal, file ); |