Simple ToDo program

Community Forums/Showcase/Simple ToDo program

Perturbatio(Posted 2003) [#1]
Inspired by the thread about getting work done (and because I was bored), I knocked up a simple ToDo program.

It would be nice if someone could test if for me (thoroughly if possible) and post any issues here (I don't expect there to be many).


The application is freeware with the following exceptions:

It is not free for the owners of SCO (formerly known as Caldera) or their employees or employees families, or any affiliates of SCO. (Unless they can prove without a doubt (in my mind) that they are against the current SCO/Linux law action).


fredborg(Posted 2003) [#2]
I like this a lot! I don't know if it's a bug or not, but when nothing is ticked, there is no exclamation mark in the top box.

I'm gonna use this!

[edit]It would be really nice, if it was possible to rearrange the order of the subjects. So it isn't nescessary to recreate an item, if you want it to be placed elsewhere. A simple cut and paste (entire item) function would do it, but a drag and drop thingy would rule![/edit]


Barnabius(Posted 2003) [#3]
Works OK on my home and office computer, both running Windows XP.

The only problem is that I can't use some special characters used in my native language (Croatian) but that's something I can easily live with.

Thank you for this nice and useful little utility.

Barney


Kuron(Posted 2003) [#4]
spent two full days last week cruising shareware sites looking for something like this. Thank you a million! This is awesome!!


Perturbatio(Posted 2003) [#5]
I'll see if I can add something to allow you to move tree items about.

Thanks for the feedback :)

*EDIT*
The exclamation mark shows that not all the items have been ticked, if none have been ticked then the root node will not have a symbol


Mustang(Posted 2003) [#6]
Coolness - how about adding colored text support or something like progress bar, as sometimes/often ToDo things are *partially* done, but not fully? "10% done" looks so much better than 0% :)


Bot Builder(Posted 2003) [#7]
Very nice. will use. You could also have status text like "started","mid-way","almost done", and "finished"


Perturbatio(Posted 2003) [#8]
One thing at a time... :)

I've had no problem getting dragging and dropping done except that the states won't bleedin' update once the drag operation is complete. I can force the update for the selected node, but not the children. I'm sure I'll get there, but it's a bit frustrating.


Caff(Posted 2003) [#9]
You could also have status text like "started","mid-way","almost done", and "finished"

In other words, you want to be able to put something off for as long as possible :)


Paul "Taiphoz"(Posted 2003) [#10]
this is nice.

I think im gona make one for myself, there are a few things id like to add that you dont have, thing specific to ma own project.

Would you be releasing the source ?


ragtag(Posted 2003) [#11]
Looks very promising, though there are a bug or two and a few things I'd love to see to make it real usefull.

- When you type text longer then a single line it doesn't show up when you re-load the project. Basicaly, it ends at the Return. The whole text is actually saved in the .todo file though.

- If you directly right click on an entry to add or delete an Item, it will add to or delete the currently selected Item, not the one you clicked on. E.g. if "Camera incorrect" is selected and you right click "Create Main Engine" and choose Add Item, the new item gets added under "Camera incorrect".

- I would love to be able to drag and drop tree and items around to sort them.

- Adding an entry between others would be great too. Currently they always get added at the bottom of that branch, so you can't easily add an item between "Solve inertia issue" and "Camera incorrect".

- You really need to be able to copy a tree or branch. For instance if you have 10 characters in your project, each with Model, Texture, Rig, Animate entries under them, you need to recreate that same branch 10 times. It would be great if you could just make 9 copies of Bob, and rename them to Diane, Paul, Police Officer I, Crazy Baker etc. etc.

Keep up the good work.

Ragnar

p.s. Didn't know what the SCO/Linux thing was, till I did a search on it after reading your license. Sounds like SCO is up to some dum stuff.


Wiebo(Posted 2003) [#12]
This is really cool! Thanks a bunch


mrtricks(Posted 2003) [#13]
This is great... I started work on a prog like this more like a sheduler, with dates and deadlines etc, but got bored. This'll help a lot. One thing -- in the right click menu, "Add Item" and "Add Root Item" seem to be the wrong way round.


Zo Zo Zee Zar(Posted 2003) [#14]
have you got a todo list for your todo list proggie?


Perturbatio(Posted 2003) [#15]

how about adding colored text support or something like progress bar


On the ToDo (not my highest priority) :)


Would you be releasing the source ?


Maybe... I have decided yet, but then, let's face it, it isn't *that* hard to write is it? (written in Delphi btw) :)


When you type text longer then a single line ...


Added to the todo, will try and solve this one soon



If you directly right click on an entry to add or delete an Item...


This is actually by design, but I will add an option to toggle it.

I would love to be able to drag and drop tree and items around to sort them

On the ToDo already.


Adding an entry between others would be great too.


Insert has been added to the ToDo



You really need to be able to copy a tree or branch.


And this has been added to ToDo


p.s. Didn't know what the SCO/Linux thing was, till I did a search on it after reading your license. Sounds like SCO is up to some dum stuff.



Yeah, it's not like I actually expect anyone from the company to use it, but it at least registers my disgust at their actions.


in the right click menu, "Add Item" and "Add Root Item" seem to be the wrong way round


In what way? do you mean physically on the menu?


have you got a todo list for your todo list proggie?


Yes I do :)


Wiebo(Posted 2003) [#16]
It would be cool to have a keyboard shortcut to add the current time and date into a text field. nice for worklogs, etc.


Perturbatio(Posted 2003) [#17]
Insert Date/Time has been added to the todo


Bot Builder(Posted 2003) [#18]
another problem is that once you add a task, all the checkmarks disappear.


Perturbatio(Posted 2003) [#19]

another problem is that once you add a task, all the checkmarks disappear.


That doesn't happen for me.
Could you explain this further?


Bot Builder(Posted 2003) [#20]
hmmm. never mind. I must have accidently hit my root group, causing it to erase checkmarks.


Perturbatio(Posted 2003) [#21]
ok then :)

It should be noted that the tree can be navigated with the cursor keys and a node checked or unchecked with the spacebar (so be careful not to press space unless you mean it).


Bremer(Posted 2003) [#22]
Is it possible we can get an updated beta version?


Perturbatio(Posted 2003) [#23]
Patience my young paddywagon... the farce is strong within this one and all that...

I want to sort several things before uploading another version.

Multi-line is sorted, but the file format had to change, so anything previously created will not work.

Still trying to find a way to update the Node state on drag and drop, it's probably glaringly obvious, but I can't currently see it.


mrtricks(Posted 2003) [#24]
in the right click menu, "Add Item" and "Add Root Item" seem to be the wrong way round

Oops, my mistake. Had a bit of a dyslexic moment and got muddled about the meaning of Root. No probs now.


Perturbatio(Posted 2003) [#25]
Ok, I've uploaded a newer version with the following changes:

File format has changed so old ToDo files will not work (this *should* be the last time it will change unless something else gets added that needs to be stored, but even then, I should be able to write a convertor)
Support has been added to the file format for colour and priority, but these things have not been added yet (I haven't quite decided how I'm going to implement them.

Item Insert has been added (needs thorough testing)

Drag and Drop of items should now be fully working.

Right click on entries has hopefully been solved.

Multiline text issue has now been solved.

Insert Date/Time has been added to Title and Memo popups (CTRL+D/CTRL+T)

Added a toolbar (can show/hide it via view menu)

Any change made to the file *should* now be detected, it would be appreciated if people could test this one thoroughly also.

Added Expand All and Collapse All to tree popup

*EDIT*
observant people might notice a copy and paste item option on the treeview popup, it's not enabled because it's still buggy (it only copies the currently selected node, not it's children).


fredborg(Posted 2003) [#26]
Even better! I'm using it all the time... But on my keyboard, the Delete key has no effect. This applies to both the one on the numpad and on the PgUp/PgDn area of the keyboard. Does anyone else get the same behavior?


Perturbatio(Posted 2003) [#27]
I think I know what's happening with delete, I'll see if I can sort it.

I'm working on a new update anyway.

I have already added priority assignment and Percentage Complete with recursive calculation of completion (i.e. change a childs Percentage Complete and the parent will work out it's completion state automatically).

Copying nodes is proving much more awkward that I first thought it would be, there is no method for doing this within the treeview control itself.


Perturbatio(Posted 2003) [#28]
Ok, I've uploaded the new version, again, testing is needed.

Added:
Set Node Priority via right click
Set % Complete by dragging the progressbar for the selected node. (NOTE: adjusting % complete for a parent node will not work since the parent nodes completion status is calculated automatically and it will be reset).

Copy and Paste Nodes has been added (please test this thoroughly).

Possible memory leak solved (data associated with a node was not being fully freed when the node was removed).

Colour preferences (for priorities) can currently be altered via the registry in HKEY_LOCAL_MACHINE\SOFTWARE\Perturbatio\ToDo
I will add support for modifying the colours in the program sometime.

*EDIT*

Issue with Delete is solved too (was to do with a the standard action Delete having the same key as a shortcut key, it was overriding the default action and so only working on text that is selected).


CopperCircle(Posted 2003) [#29]
Perturbatio, this is a really useful tool, you should speak to Ed about intergrating it into Visual Blitz.


Perturbatio(Posted 2003) [#30]
I had *considered* finding a way to make it integrate with any editor
i.e. click a button then select the editor window, then it finds the active richedit control in the window and voila! but that would be hellish.

Does Visual Blitz IDE support plugins?


WolRon(Posted 2003) [#31]
Two things:

Program should always SAVE CHANGES on exit or at least ask for confirmation.

Would be nice if tree automatically expanded on file open (at least first level).

A bit clunky, but I like it.


Paul "Taiphoz"(Posted 2003) [#32]
I did something like this ages ago in Delphi, Mine had a bit more things built into and one thing I wanted but never got round to adding.

they were.

Project Avitar (64*64 Icon.)
Project Title
Project Start Date
Project Status [50% complete < based on number of tasks and number of them complete]
Item Title
Item Comments.
Item Check box.

There were some more things in it. BUT the most important thing I wanted to add that never got a chance to was networking.

My plan was simple.

Have the App connect to some webspace, load the data from it, then if changed upload the new data file.

This way anyone else in the Dev Team would have been able to see new tasks and get them started. as well as being able to set them as complete when they were finished.

Just an idea for you.. I hope some of this help's..

And Ill ask again, would you be releasing the source ?


Perturbatio(Posted 2003) [#33]

Program should always SAVE CHANGES on exit or at least ask for confirmation.



What change did you make that it did not detect?
(It should ask you if you want to save when closing, I must've missed some).


Would be nice if tree automatically expanded on file open (at least first level).



I've been trying to get it to expand to its previously displayed state (i.e. when you last saved it), but the tree control is not as functional as I would like it to be, setting the expanded property of each node does not seem to do it.


@Yavin:

if I were adding multi-developer support, I would like to do it properly with project synchronization and other such things (including the ability to ftp to a remote host).

As for the source, my answer remains the same: I don't know yet.


Perturbatio(Posted 2003) [#34]
Ok, I've decided I am going to release the source (this way I don't have to work on it regularly).

NOTE it uses a 3rd party component (free) called TgfglTreeView (which I got from www.torry.net here)

There are conditions regarding it's use though.

Any modified source should be sent to me (me@ <myusername> .co.uk) so that I can keep the software up to date.

The distributed software must remain free as per the restrictions of use posted in this thread (and now in the readme)

here it is (Delphi 7 source) (Download ONLY if you agree to these terms.)

*EDIT*
Note also that the source is a little messy and badly commented.
I think there are some things in its' uses clause that it no longer needs as well.


Paul "Taiphoz"(Posted 2003) [#35]
Sweet. Ill grab that when I get home. EVEN better that its done in Delphi. Any code I update will be sent back to you. and the first thing Ill probably add will be the server code. to keep the full team upto date on the todo list..

I cant access the torry delphi page, could you supply a link to the extra component. ?

Thanks.


Perturbatio(Posted 2003) [#36]
You can get it here here

It also appears to be available here (the page I found that link on is in chinese, but it certainly looks like the same component).


Perturbatio(Posted 2003) [#37]
Oops! If anyone has downloaded the source, they might want to re-download it, there were a few things missing from it (one being a unit that was in my global lib folder and not in the source folder).


Koriolis(Posted 2003) [#38]
Does Visual Blitz IDE support plugins?
BlitzView does, to some extent.


Perturbatio(Posted 2003) [#39]
In what way?


Perturbatio(Posted 2003) [#40]
I've uploaded (even more) modified source, since I've noticed a bug when double-clicking a todo file

Changes:

in procedure TfrmToDo.CheckPreferences;
change:
if AppRegTo <> Application.ExeName+' %1' then
To:
if AppRegTo <> Application.ExeName+' "%1"' then


and in procedure TfrmToDo.AddFileAssoc;

change:
myReg.WriteString('ToDoFile\shell\open\command','',Application.ExeName+' %1');
To:
myReg.WriteString('ToDoFile\shell\open\command','',Application.ExeName+' "%1"');


This will allow filenames with spaces to be loaded correctly (oops!)


Paul "Taiphoz"(Posted 2003) [#41]
you got JvLookup ?

Still some things missing from the zip that we need.


Koriolis(Posted 2003) [#42]
[quote]In what way?[quote]IIRC you can write a DLL that will get called from the editor, and that can get information such as the current opened project, the currently selected file, you can also get the list of functions in the projects. You can't get a handle for a richedit of the editor though, so I don't know if you'll be happy with that.


Perturbatio(Posted 2003) [#43]
jvLookup is part of the JEDI Project, but I don't recall using it, I think that's one of the redundant uses (I might have added it at one point then removed it, but it wasn't removed from uses).


Perturbatio(Posted 2003) [#44]

You can't get a handle for a richedit of the editor though, so I don't know if you'll be happy with that


That's what I'd need since the ToDo's would have to be stored in comments (otherwise there's no point in integrating with the editor).


Paul "Taiphoz"(Posted 2003) [#45]
Ahh right .. cool I removed the call .. works ok now.

Thanks.


Koriolis(Posted 2003) [#46]
That's what I'd need since the ToDo's would have to be stored in comments (otherwise there's no point in integrating with the editor).
Depends. You could by example directly load a given todo file that resides in the directory of the project, or if you could attach parts of the items to specific files, you could display only the items for the currently selected .bb file.
Not so usefull though, I have to admit.

BTW, did you look at your direct "opponent"? Its app is pretty good, I like it a lot I must say.


Agamer(Posted 2003) [#47]
Has any one done anything to this has anything be updated has anyone put the ftp think in yet

This is so kwl


Rimmsy(Posted 2003) [#48]
[edit] I feel a bit bad. so deleted.


Perturbatio(Posted 2003) [#49]
the latest version is here (not updated since my last post).


WolRon(Posted 2003) [#50]
Program should always SAVE CHANGES on exit or at least ask for confirmation.

What change did you make that it did not detect?
(It should ask you if you want to save when closing, I must've missed some).

It doesn't detect a change made to the comment area of an item (unless of course, something else was modified too).


Perturbatio(Posted 2003) [#51]
I'm not experiencing this issue, do you have the latest version?


WolRon(Posted 2003) [#52]
I have this version:
the latest version is here (not updated since my last post). (Posted 2003-11-29 02:26:43)


Create a file with some items, save it.
Open the file and type into the comment area ONLY and then close. It will not ask to save changes.
Maybe this only happens on sub items?


Perturbatio(Posted 2003) [#53]
Ok, try downloading again, I've put the same version I'm using up (perhaps I made changes but forgot to upload).


WolRon(Posted 2003) [#54]
It saves changes now. You must not have had the most recent version there.

BTW, you really should have a version number listed somewhere in the program so that something like this could be avoided. :)


Perturbatio(Posted 2003) [#55]
BTW, you really should have a version number listed somewhere in the program so that something like this could be avoided. :)


Yeah, I know :) Maybe I'll get round to putting an about box on there at some point.


LuckyPhil(Posted 2003) [#56]
Hey there,

Firstly, great program!!!

Is there any chance of the export function being completed sometime soon??It would be great to 'export' my todo list into a text file or html file that I can use on my project status page, without having to manually type it all in. :)

Cheers,
LuckyPhil.


LuckyPhil(Posted 2003) [#57]
I've found a bug in the Todo Program.

If you tick a task as being done, it sets the complete to 100%, however it doesn't seem to save this as if you select another item and then go back to the completed task, it says it is now 0% complete. It also doesn't update the project's total % complete either.

However if you manually drag the completed bar to 100% everything works aas it should.

this bug only occurs if the task has children.

Cheers,
LuckyPhil.


Perturbatio(Posted 2003) [#58]
Thanks, have added that bug to the ToDo, HTML export was next on the ToDo list for it.

I have another idea though, I was thinking of implementing template exports so that you can decide what format the data will be in. It would require more work and more time, but once completed, would allow export to any format you desire, HTML, XML, TXT, custom format.


Perturbatio(Posted 2003) [#59]
Updated, should have now fixed the child node %complete propogation bug. Also a minor addition, an about box with version number.


WolRon(Posted 2003) [#60]
But where is it? It's not on either of your websites or listed in your signature. Are we supposed to click on the link 10 posts prior (Nov 29)?


Perturbatio(Posted 2003) [#61]
Moan, moan, moan, moan, moan! ;)

You managed to scroll all the way down here didn't you? ;)