Click here to Skip to main content
Licence 
First Posted 24 Jun 2004
Views 47,721
Bookmarked 18 times

Improved Method Documentation for Visual C++

By | 24 Jun 2004 | Article
Customizable method documentation generator

    Introduction

    In my previous documentation article Method Documentation Utility for Visual C++ 6 I received comments that the Add-in does not support Doxygen format. The truth is that it didn’t support any format, it was totally hard coded.

    This new Add-in gives the user the option to decide his own format for the documentation using a simple configuration screen. The default format will be Doxygen.

    Description

    Like the previous Add-in, here you will be able to press a toolbar button (or any shortcut key you assigned to it) and a skeleton for documentation will appear above the method/function. The documentation will contain the following parts:

    • General – general description of the method
    • Return value – explain what will be the return value
    • Parameter – any parameter can be documented
    • See also – reference for another method or parts in the code
    • Documentation start – beginning of documentation
    • Documentation end – end of documentation

    The Doxygen format which most of you know and it’s the default format for the Add-in look like this:

    //! Method description
    /*!
    \param nF - description
    \param nS - description
    \return bool - description
    \sa func2()
    */
    bool func(int nF, int nS);

    There are other formats but I chose this one because I am used to it.

    All you have to do to generate the documentation is to put the cursor one line before the method or on the same line as the method like this:

    [Cursor Here] 
    bool func(int nF, int nS); 
    

    Then press the Add-in's left button or your selected keyboard shortcut.

    The Add-in extracts the method’s text. It starts with the next line of the cursor and collects the text until it reaches ‘)’. It then parses the text. Currently I am parsing only the return value and the parameters list. If any need for additional information like: virtual/const will arise it will be added to the tool.

    Customizing The Documentation

    The customization dialog looks like this:

    Sample Image - MethodDoc2.jpg

    To reach this screen, just press the right button of the addin.

    Here you can change the template of the documentation. It is based on tags, each tag represents a different element in the documentation:

    Parameter, returned value...

    To change the value of a tag just select the tag and enter your own text in the textbox at the buttom. The right box shows you an example of how the documentation will look like.

    Installing the Add-in

    To install the binary and use it under Visual C++ 6 please read the Readme.txt file added in both zip files

    The code was tested under Windows2000/XP only and it may work under windows 98 but who knows for sure…

    License

    This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

    A list of licenses authors might use can be found here

    About the Author

    Ilan Shapira

    Web Developer

    Israel Israel

    Member



    Sign Up to vote   Poor Excellent
    Add a reason or comment to your vote: x
    Votes of 3 or less require a comment

    Comments and Discussions

     
    You must Sign In to use this message board. (secure sign-in)
     
    Search this forum  
     FAQ
        Noise  Layout  Per page   
      Refresh
    QuestionVC++ 2005 PinmemberDean DSA11:47 10 Nov '06  
    Generaladvanced param parsing PinsussMichael Schoenherr19:05 27 Jun '04  
    GeneralRe: advanced param parsing PinmemberIlan Shapira20:15 27 Jun '04  
    GeneralRe: advanced param parsing Pinmemberpeterchen22:33 27 Jun '04  
    GeneralRe: advanced param parsing PinmemberIlan Shapira7:46 28 Jun '04  
    GeneralMethod Documentation Util PinmemberVeena Katti9:57 27 Jun '04  
    GeneralRe: Method Documentation Util PinmemberIlan Shapira10:24 27 Jun '04  
    GeneralRe: MSXML Pinmemberallting4:48 15 Sep '05  
    GeneralSuggestion PinmemberHans Dietrich14:28 26 Jun '04  
    GeneralRe: Suggestion PinmemberIlan Shapira9:37 27 Jun '04  
    GeneralRe: Suggestion Pinmembervladfein7:36 28 Jun '04  
    GeneralFiles where uploaded PinmemberIlan Shapira5:30 26 Jun '04  
    GeneralBoth download links are broken PinmemberHans Dietrich15:40 25 Jun '04  
    GeneralRe: Both download links are broken PinmemberIlan Shapira4:21 26 Jun '04  
    GeneralRe: Both download links are broken Pinmembermkcx0:43 29 Jun '04  
    GeneralRe: Both download links are broken PinmemberIlan Shapira1:59 29 Jun '04  

    General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

    Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

    Permalink | Advertise | Privacy | Mobile
    Web04 | 2.5.120517.1 | Last Updated 25 Jun 2004
    Article Copyright 2004 by Ilan Shapira
    Everything else Copyright © CodeProject, 1999-2012
    Terms of Use
    Layout: fixed | fluid