Priority sorted task list control






4.76/5 (5 votes)
Color coded priority task list control for managing TODO lists
Introduction
This is one of several custom controls I have designed for a small utility I am currently developing. It offers a small, compact alternative to using full fledged TODO/TASK list organizers.
Features
- Tasks sorted by priority level
- Color coded priority for easy indication of level of importance
- Check box to indicate whether task has been completed
- 3 levels of priority, each can be assigned unique colors
- Drop down listbox adjusts width to automatically to fit all text
Future
- Remove items using delete key (VERY SOON)
- Drag and drop support
- In-place editing
Bugs
If you can fix any bug, please tell me how and i'll make sure to mention you in this article under credits.- When the mouse moves over items and the left mouse button is down the items sometime hilite but the text color remains
COLOR_WINDOWTEXT
, instead ofCOLOR_HIGHLIGHTTEXT
. This is what I think is going on anyways. - When you change the priority of any item the listbox does not automatically re-sort itself. I'm currently trying to figure this out, even a quick hack.
Interface
AddTask()
GetTask()
SetCheck()
GetCheck()
SetColors()
GetColorLevelX()
SetPriority()
GetPriority()
Example
The usage of this control is VERY trivial, just as easy as using aCComboBox
control. You should have no problems getting things going. Please refer to the demo app for more details.
Notes
The complexity of this control is just about at where I expect it to end. I don't plan on adding support for associating a time field with each item added to the list or anything of similar nature. I'd like to fix a few bugs and optimize wherever I can but thats about it. If you have any ideas you would like to see implemented you can contact me at the email address given inside the source files or post a message here at codeproject. I can't promise anything, but I will consider it, especially if it's really cool and of course i'd give you credit.Credits
Source code contains reference to the following where appropriate
- Chris Maunder
- Magnus Egelberg, Lundalogik
- Eric Sanchez