Simple File purpose comment macro

.

Environment: Visual C++ 6.0

Simple VC++ 6.0 macro to add a comment to a file

It is a good practice to have a header for each file in a project describing the contents ,purpose and modifications made. This simple macro will take reduce typing by filling up the necessary data to the header.It will pop up a dialog box asking for the purpose of the file.

To intall the macros copy both files into a macro file(it can be opened by going to tools->macros and select a file in the combo or create new file and select edit) and for ease of use make a tool bar button for the macro.



'------------------------------------------------------------------------------
'FILE DESCRIPTION: A simple macro to give file comments
'------------------------------------------------------------------------------


Sub FileC()
'DESCRIPTION: File Comments. - karthiksundar 
' check if any file is open 
	if (Windows.Count = 0) then
		MsgBox ("No file opened to comment")
		exit sub
	end if 
'Check if this is a CPP file
	if (FileType (ActiveDocument) = FALSE) then
		exit sub
	end if

	ActiveDocument.save
	File_Name = ActiveDocument.ActiveWindow.Caption

'macro starts here
	'Get the purpose of the function  from the user
	Purpose = InputBox("what is the Purpose of " & File_Name ,"Purpose of File",File_Name)
	if (Purpose = "") then
		exit sub
	End if
	Purpose = "Purpose		    : "+ Purpose
	ActiveDocument.Selection.StartOfDocument
	ActiveDocument.Selection.NewLine
	ActiveDocument.Selection.LineUp
	ActiveDocument.Selection = "/******************************************************************************************"
	ActiveDocument.Selection.NewLine
	ActiveDocument.Selection = "FileName		: " & File_Name
	ActiveDocument.Selection.NewLine
	ActiveDocument.Selection = "Author			: your name here"
	ActiveDocument.Selection.NewLine
	ActiveDocument.Selection = Purpose
	ActiveDocument.Selection.NewLine
	ActiveDocument.Selection = "Date Of Creation: "& date
	ActiveDocument.Selection.NewLine
	ActiveDocument.Selection = "Modification History :"
	ActiveDocument.Selection.NewLine
	ActiveDocument.Selection = "Date             Modifications"
	ActiveDocument.Selection.NewLine
	ActiveDocument.Selection = "******************************************************************************************/"
	ActiveDocument.Selection.NewLine
	ActiveDocument.save
	'End Recording
End Sub

Function FileType (ByVal doc)
	
	ext = doc.Name
	pos = Instr(ext, ".")
	if pos > 0 then
		Do While pos <> 1
			ext = Mid(ext, pos, Len(ext) - pos + 1)
			pos = Instr(ext, ".")
		Loop
		ext = LCase(ext)
	end if
	
	if ext = ".c" Or ext = ".cpp" Or ext = ".h"Then
		FileType = TRUE
		exit function
	else
		MsgBox ("This is not a "".cpp "","".c"","".h"" file")
		FileType = FALSE
	end if
End Function

Date Last Updated: February 3, 1999



Comments

  • Automatic insertion of the author's name?

    Posted by Legacy on 06/24/1999 12:00am

    Originally posted by: Andreas Jaeger

    It would be helpfull to allow the macro to retrieve the user name from the operation system (login name or similar) and use it in this macro. I have tried it, but was not successfull. Knows anybody how to do it?

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • With JRebel, developers get to see their code changes immediately, fine-tune their code with incremental changes, debug, explore and deploy their code with ease (both locally and remotely), and ultimately spend more time coding instead of waiting for the dreaded application redeploy to finish. Every time a developer tests a code change it takes minutes to build and deploy the application. JRebel keeps the app server running at all times, so testing is instantaneous and interactive.

  • The latest release of SugarCRM's flagship product gives users new tools to build extraordinary customer relationships. Read an in-depth analysis of SugarCRM's enhanced ability to help companies execute their customer-facing initiatives from Ovum, a leading technology research firm.

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds