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

  • Rocket Mobile® for IBM i is an enterprise mobile application development and deployment platform for customers who rely on the IBM i system. Rocket Mobile for IBM i enables customers to leave proven applications in-place and rapidly repurpose them into new managed and secure mobile applications. Fast, easy creation of mobile, web, and hybrid mobile applications that deploy to any iOS, Android, or Windows mobile phone or tablet Built-in integration for seamless repurposing of existing IBM i applications …

  • Complex hybrid environments can make it difficult to track interdependencies, increasing the risk of disrupting critical business services. In this white paper by EMA, you'll learn how application discovery and dependency mapping can help you: Meet granular targets for availability, cost, and time-to-revenue for cloud services. Accelerate mean time to repair (MTTR) while communicating better with stakeholders. Manage even the most complex hybrid environments more efficiently and effectively Understand the …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date