ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Main Area and Open Discussion > General Software Discussion

Looking for a very flexible timer

<< < (5/9) > >>

tomos:
Sounds great Edvard :up:
I added some numbers for easier reference:

[1] Right now, the clock is started and stopped via clicking on the clock text itself; the background changes between light green and pink to indicate the status.
--- End quote ---
seems good!
[1a] I'm presuming whichever Task is running is highlighted in some way?)


[2] The buttons on either side of the clock allow incrementing the seconds/minutes and I planned to add a third for changing the hours, but then I thought about leaving off the buttons, and just set the time manually, or would the buttons still be convenient?
--- End quote ---
no need for buttons.
[2a] By 'set the time manually', do you mean simply change the numbers in the time field?


[3] "New Task" sounds good.
[3a] when the "New Task" button is clicked, it stops the clock, enters the Task and Begin time in the next available row.  I had planned to make it add the End time and Total time when another Task is entered, but that got me thinking... is that really the best way?
--- End quote ---
Am I understanding correctly here:
you're talking about starting a new task when one is currently running; and saying that the old one would be stopped and given end-time etc.
So, re [3a] I'm unsure: what would / could be better there?


Regarding editing:
As it is now, once an entry is listed in the grid, it is not editable, because I assume that the time spent on any task is an important metric, and adjusting for breaks and whatnot should be restricted to within the time spent, not fudging the numbers after the fact; BUT:
[4a]  - Should I allow direct editing of the contents after the fact?  Of course, one could simply edit the exported text file if the desire arose, I just think it's too much opportunity for 'cheating' to allow in-grid editing, and besides, at that point why have a timer at all? Why not just fill in arbitrary numbers in an Excel spreadsheet?
[4b]  - How about deleting rows? (I'm actually OK with that idea).
--- End quote ---
-
[4a] is this correct:
the grid will show a start time, and end time, and a total. The total is *not* end-time minus start-time, but will be whatever was shown in the timer clock, based on starting/stopping of same, and including any modifications made by the user.
^IIUC, then, there would be no need to edit anything in the grid. The only thing that might beg editing would be the description i.e. the task name - but if that's in any way difficult, I would leave it out.
-
[4b] so deleting a row would delete a task?
Could confirmation be requested?


[5] menus sound good


[6] eport to CSV would be what I would use

Edvard:
[1a] I can add that

[2a] Yes, and the way the "String to Time" function works, you enter something like "10:47:20" or "5:30" or even "7 pm", but not "4".  I thought the buttons might be a good way to add or subtract a few minutes or seconds at a time, without having to re-enter the time manually.  I'll keep them for now.
Also, I'm thinking that the 'Reset' button should reset the clock to the 'Begin' time.

[3a] To explain: I'm finding a bit of a dance between starting/stopping the clock and the 'New Task' button.  As the code sits, stopping the clock adds the end time and total to the current row, but re-starting the clock and stopping later will amend it.  Clicking 'New Task' starts a new row, leaving the previous one locked, but there is a bit of a bug; if the clock had never been stopped on the previous Task, then clicking New Task will simply start a new row without 'finishing' the previous one or stopping the clock.  Describing it now, I think I know what to do:
1- 'New Task' starts a new row with the task title, but no time, and will set the 'Total' time for the previous task and stop the clock, unless it is the first entry in the list.  The 'Begin' time will not be set until:
2- Starting the clock sets the 'Begin' time, and stopping sets the 'End' time, but does not set 'Total', as the clock can be re-started, which will change the 'End' time entry.
3- To finish up a sheet of tasks, simply click 'New Task' with a blank entry.  That will finish off the last 'Total' entry and stop the clock.
Sound good?

[4a] The Total is End time minus Start time.  The timer counts from whatever time it is set to.  Should it be different?
Editing just the Task entry in-grid while locking the time entries may be problematic.

[4b] Correct.  I could add in confirmation, no problem.

[5] For the 'Edit' menu, I'll add in "Set time", "Reset", "Reset to 0".

[6] CSV it is.  The Grid component's built-in export format is CSV, so that'll be easy.

tomos:
2a & 3a sound great :up:

-----------------

[4a] sorry, I'm still confused here
How about this scenario:


* a) I start the clock on a task
* b) I stop it for a break
* c) start it again
* d) take a break and forget to stop it, so when I come back I stop it, and:
* e) I modify it manually (or manually using the buttons) to substract my break time
so the total would be (a to b) plus (c to d) minus (time adjusted in e)
-
Is that correct?

--------------------

4b / 5 / 6 sound great :up:

Edvard:
Wow, has it been 2 days?  :o

RE: [4a]
When you start a task, the start time is set.  When you take breaks, set the time back, etc. you are altering the End time, so when you finally stop the clock, your final end time is what gets calculated, which will reflect the breaks and fudges along the way, because you've done the adjustments "on the fly".  There will be no breakpoints in-between to add up.

I only get an hour or so coding time before bed, so I haven't made a ton of progress.  Currently reading up on the "TStringGrid" component, which is a somewhat complex beast.  Trying to get the highlighting on the current task, it doesn't automagically do it for you.  Also working out the kinks in the start/stop/new task workflow.  I think most of the business logic is done, I just have to make the pieces work together without causing more bugs, and I still have the exporting code to do.

I'll post more progress as I go...

tomos:
 :Thmbsup:

and yeah -
that with 4a is good then :up:

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version