Creating a comfortable ToDo list in Visual C++.






1.30/5 (10 votes)
May 29, 2001
3 min read

140781
Using this tutorial you will be able to create a ToDo file wich writes the dates and marks the done tasks. All this using macros.

Terms of
Agreement: By using this article, you agree to the following terms:
| ||
First of all about the picture. What you have used to see as Breakpoint, means in this task list a ToDo task. The first date is the date you added the Task to ToDo, the second date is when you finished the task. Before we start you have to choose your Todo file. Just create an empty text file, in the program I will refer to it as [filename], remember to replace it with your file name. The path to the file will appear as [path] in the tutorial and so you have to replace it as well with your path. An example to [filename] is: Todo.txt An example to [path] is: C:\Todo.txt Lets start with the real thing now. Go to your macro file (.dsm) and add the following sub to it: <CODE> Sub OpenTodoList() 'DESCRIPTION: Opens the todo. Documents.Open "[path]", "Text" End Sub Remember to replace the path with the path to your text file just like in the exampleWhen you run it, the macro will open the text file which you will be using as your ToDo file. If you wish create now a button on the toolbar of "Visual C++" that will run this macro. Now lets go for the second macro, again go to the macro file and add the following Sub to it: <CODE> Sub WriteDate() 'DESCRIPTION: Writes the date, duh. ShortName=ActiveDocument.Name If ShortName="[filename]" Then Line = ActiveDocument.Selection.CurrentLine Column = ActiveDocument.Selection.CurrentColumn 'Finding the bottom ActiveDocument.Selection.SelectAll Bottom = ActiveDocument.Selection.BottomLine ActiveDocument.Selection.GoToLine Line 'Find the place for the date Do ActiveDocument.Selection.LineDown ActiveDocument.Selection.StartOfLine ActiveDocument.Selection.CharRight dsExtend Loop Until ActiveDocument.Selection = "*" ActiveDocument.Selection.LineUp ActiveDocument.Selection.EndOfLine ActiveDocument.Selection = " (" & CStr(Date) & ")" 'Find the place to do the BreakPoint ActiveDocument.Selection.LineDown Do ActiveDocument.Selection.LineUp ActiveDocument.Selection.StartOfLine ActiveDocument.Selection.CharRight dsExtend Loop Until ActiveDocument.Selection = "*" ExecuteCommand "DebugToggleBreakpoint" 'Moving back ActiveDocument.Selection.GoToLine Line ActiveDocument.Selection.CharRight dsMove, Column Else ExecuteCommand "DebugToggleBreakpoint" End If Remember to replace the path with the path to your text file just like in the exampleThis is the important macro of the program, it will simulate regular Breakpoint for your programs, however, for your ToDo file it will work in a special way. To continue go to Visual C++ costumize and assign the key F9 to that macro (WriteDate in this tutorial). Now you try to use F9 in your programs and you'll see that it works as usual (just to make sure). The format of the tasks in the ToDo file has to be in a specific format if you want it to work as planned: - Every task has to start with the '*' character. - Tasks can be longer then one line, the '*' character says when a new task begins. - There should be no space lines between tasks (As on the picture). - The last line of the macro should be any line that begins with '*'. In my picture it is: "*************** END OF TASKS *************". After you write your task, mark it as ToDo by having the marker anywhere on the task and pressing F9. The Task will be marked with the Breakpoint mark and the starting date will appear in the end of the task. When you finish the task move the marker to there and press F9 again. The Breakpoint mark will be removed and the ending date will be added to the end of the task. TIP: You might want to cause the finished mark to disappear instead. I hope that you found this tutorial helping and if you did then please vote for it. Thanks. |