Results 1 to 9 of 9

Thread: Todo Manager - Tips?

  1. #1

    Thread Starter
    PowerPoster
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    5,070

    Todo Manager - Tips?

    Hey,

    I'm working on a nice and simple Todo manager, which basically keeps a list of things I have to do and optionally 'pins' an item to the desktop (basically a window with some text on it, like a sticky note). Additionally, each todo item will belong to some category, and the user (me, really) can add or remove categories as required.

    I've worked on it for a short while and I've got all the underlying code done with a very simple GUI.
    I now want an extremely functional GUI. The basic GUI I have right now is just a main form with a TabControl, one tab shows the todo items in a grid, the other shows the categories. Both tabs have a ToolStrip with items such as Add, Edit, Remove and Search.

    You can open a todo item simply by using Edit or doubleclicking in the grid, and then you can change the name, description, priority, category, etc. Also, you can mark it 'completed' with a simple checkbox.

    In addition to being able to mark an item completed by opening it, you can also just select it (and others at the same time) and using the 'Toggle Completed State' toolstrip button. The same thing goes for showing the item in a sticky note window.


    So basically, I've got everything working OK, but it's just not as useful as a simple notepad with a pen... The only reason I'm doing this is because I've got lots of different things to do at work lately and I wanted to organize stuff a bit.

    At the moment I'm using pen and paper, obviously, but even though it's easy to write stuff down, I am now starting to lose the papers and it's hard to find stuff. Also, I don't tend to look at anything but the first page so all else gets forgotten There's also no useful way to keep track of a 'priority' for every item (some are more important than others).

    So what I really need from you guys is some ideas to make my todo manager just as useful as pen and paper, just as easy to use, except with added features such as being able to filter on category, sort on priority, etc, and without the constant danger of losing the papers

    Right now, finding the todo item I need is easy (filtering by category, priority etc), but to change or even just read it I need to open it by doubleclicking, get to the newly opened form, edit it, then save it back.
    This works fine for most business like applications (most database applications I've seen use this system), but with a todo manager it just feels as if I were better off just using pen and paper.

    What I really need is to have it ready whenever I need it, so I was thinking at least make it have a system tray icon, and maybe even have it open up by some shortcut. I could even go as far as letting the shortcut open a new todo item already. That way, whenever I think of something I need to do I can just hit the shortcut, type whatever I had in mind, hit enter to save and be done with it.

    For the sticky note windows I've also got the idea to place them all on top of each other, and cycle them every few seconds so that it 'loops' through all of them and I don't have to waste precious desktop space with 15 sticky note windows.

    But other than that I'm kinda out of ideas... You must have some ideas? Remember, I'm not looking for implementation details, just some ideas I can use to make this application that much more useful.

    Thanks!

  2. #2
    Pro Grammar chris128's Avatar
    Join Date
    Jun 2007
    Location
    England
    Posts
    7,604

    Re: Todo Manager - Tips?

    First thing that springs to mind is, if it isnt already, I would definitely recommend making it with WPF as you could add some much nicer GUI touches and functionality.

    But anyway, as for the features you mentioned - yeah I think the hotkey is a good idea and I also like the idea of switching between the notes every few seconds rather than having them all stuck all over the desktop.

    Here's my list of suggestions though, some of them you already touched on like the filter stuff. Also I have no idea how much text each of these notes has in it and how they are displayed when they are not being edited (or when they are being edited for that matter) so not sure how relevant some of these suggestions are. Perhaps you could post some screenshots of your current GUI with a few notes loaded?

    Search - as well as being able to filter by type, I think it might be handy to have a full text search that just searches the entire body of every note that you currently have for whatever word or phrase you entered. If that is not great on performance then might be worth using tags - have the option to assign tags to each note when you create/edit it and then when you do a search these tags are searched instead of searching the entire note text body.
    Icons - If you have lots of notes that all relate to different projects then perhaps you could add an option to specify an icon for each note, then this gets displayed next to the note title (assuming the notes have a title anyway) to help you quickly identify notes or identify which notes relate to which projects/categories.
    Auto Save - You mentioned that you dont like having to manually save the note once you have edited it, so maybe you could just make it so that the note is automatically saved as soon as you click out of the edit window or the window looses focus etc, or even save it on every key press if it doesnt cause any performance issues.
    Quick Edit - Not sure how applicable this is but I'm assuming you have two different views for the notes, one for when you are editing and one for actually displaying as a note. If that is the case then to make editing notes more efficient perhaps you could make it so that when you click on a note that is just in display mode then it instantly changes to a 'quick edit' view that is basically like a scaled down version of your standard edit mode that just lets you type into the note body but doesnt require a new window or anything like that.
    Alerts - if there is something in a note that needs to be done or needs your attention by a certain date/time then you could add an alert system that shows a window and plays a sound or something when it gets close to that date/time.
    My free .NET Windows API library (Version 2.2 Released 12/06/2011)

    Blog: cjwdev.wordpress.com
    Web: www.cjwdev.co.uk


  3. #3

    Thread Starter
    PowerPoster
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    5,070

    Re: Todo Manager - Tips?

    Thanks. I was going to do it in WPF but I gave up after I couldn't even get a Toolbar to dock... O
    I agree that it would be better in WPF... I just can't get myself to settle down and learn it. I'd rather do it quickly in winforms and spent the remaining time doing other stuff as I don't have too much time lately.

    I just went for a VS2010 look as I had the renders I made lying around anyway.

    This is the main window with todo items + 2 "sticky notes". The sticky notes are set up real quickly and will probably change. Their color is based on the category of the todo item (each category has its own color).

    I don't like how the grid looks at the moment, I was going to try to custom draw that too so it blends in more.

    The details for a todo item are quite boring, standard windows style. I was hoping to change that too but haven't got around to it yet:

    Don't mind the dates, they aren't saved to the database yet.


    As for your suggestions:

    Search - good idea, full text search will probably work just fine as I doubt it will be much text.
    Icons - Right now each category has a color, but I suppose an icon could work just as well, except that it is more work (for me as the user) to select an icon then it is to select a color. I think I'll stick with colors. My idea was also to show this color in the grid (like a colored square on the left side of the category cells) too.
    Auto Save - Hmm.. I suppose I could do that. Doesn't really make sense to do that with my current 'edit GUI' though so that would have to change radically.
    Quick Edit - I was going to try and make the sticky notes editable directly. Opening the todo items via the regular way gives you more details (priority and dates and probably more later) but editing the sticky note will be much easier and faster for the user.
    Alerts - Already got that planned but not implemented in any way yet.

    Thanks for your suggestions


    If I knew WPF I would have some great idea's but I know I'm never going to be able to implement them with my current knowledge (virtually non-existent) of WPF. For example, instead of the separate editing forms, I would just make a small 'expand' button in each row of the grid. Clicking that would expand that item and you can edit it right there in the grid itself, and it would be saved as soon as you deselect the item.
    Also, I could implement something like the windows 7 'aero peek' feature (or something). If you hover your mouse over a taskbar button, all windows are 'blanked out' (completely shown in glass) and only the selected window is visible. I could do something similar with the sticky notes, where only the selected sticky note is shown and the others become glass. In fact I think I could do that in winforms just fine too, perhaps without fancy animations but still

  4. #4
    Next Of Kin baja_yu's Avatar
    Join Date
    Aug 2002
    Location
    /dev/root
    Posts
    5,989

    Re: Todo Manager - Tips?

    Maybe have the note windows snap in regards to the screen edges, and other notes. Kinda like Winamp windows snap together, and to screen edges.

  5. #5

    Thread Starter
    PowerPoster
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    5,070

    Re: Todo Manager - Tips?

    Quote Originally Posted by baja_yu View Post
    Maybe have the note windows snap in regards to the screen edges, and other notes. Kinda like Winamp windows snap together, and to screen edges.
    Implemented that already Still a little buggy when snapping to other notes, but the functionality is there.

  6. #6
    PowerPoster JuggaloBrotha's Avatar
    Join Date
    Sep 2005
    Location
    Lansing, MI; USA
    Posts
    4,286

    Re: Todo Manager - Tips?

    I once ran into a very similar problem a few years ago and I made an access database and some forms (all self contained) but it was geared towards the programs I write, which I guess would translate into what you have for categories.

    I could send it your way if you're looking for ideas.

    I do have a suggestion, forget the sticky windows snapping to each other, could you make the sticky windows look like the Win7 Sticky Notes app? Also if your entire to do program could be minimized to the tray (not the taskbar) that would be an awesome feature.

    What about notifications? Like alert you at a specified expire time when one's due? or something similar.
    Currently using VS 2015 Enterprise on Win10 Enterprise x64.

    CodeBank: All ThreadsColors ComboBoxFading & Gradient FormMoveItemListBox/MoveItemListViewMultilineListBoxMenuButtonToolStripCheckBoxStart with Windows

  7. #7
    Stack Overflow mod​erator
    Join Date
    May 2008
    Location
    British Columbia, Canada
    Posts
    2,824

    Re: Todo Manager - Tips?

    Personally, I always just get rid of these kinds of things if they annoy me (like Google Desktop). You should give the ability for the notes to just shrink down into a tiny little corner, then just flash a small (but flashy) reminder across the top of the screen: "You have some notes! Show them?" when the user stops typing. Measure the average typing speed of the user, and wait until the average time is exceeded by about 2 seconds, like when someone gets up to leave, or when they log out (if you're writing this in .NET, use the FormClosing event, of course).

  8. #8

    Thread Starter
    PowerPoster
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    5,070

    Re: Todo Manager - Tips?

    Well you don't have to show the notes. The user can hide/show them as required, so if you were using it you simply wouldn't show the notes.

    I don't really know what you mean with the 'when the user stops typing' story. Typing where? And when they stop typing, do what?

  9. #9
    Stack Overflow mod​erator
    Join Date
    May 2008
    Location
    British Columbia, Canada
    Posts
    2,824

    Re: Todo Manager - Tips?

    When the user stops typing wherever, flash a message across the screen reminding them that they have notes, if the notes are hidden. You can detect that using GetAsyncKeyState and another thread.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width