Project Description

Doxygen Browser is an add-in for Visual Studio 2005/2008/2010 that allows browsing into documentation generated by the tool Doxygen.

Features

  • Quick navigation to doxygen documentation from text code.
  • Browser of Doxygen documentation integrated in VS IDE

Why?

Why not? Visual Studio provides a navigation mode through the code, but i think that the format of doxygen documentation is clearer, it can also provide dependence and reference information.
This add-in is only a smart web browser of html-format doxygen documentation but i think that it can be useful for who uses the live documentation that doxygen provides.

Getting Start

1. After installing the addin you'll find a new submenu under the tools menu.
ToolMenuBar.jpg
2. We must open a solution. If the addin configuration for the solution exists, it will be opened, in other case, it can be created by the command "Doxygen Config"
3. In order to create a doxygen configuration, we must indicate the path of html-format doxygen documentation.
4. Once, it's configured, we will see the menu entry "Doxygen Browser" enabled. The command "Navigation from Here" is enabled, only if the file "Tokens.xml" is found.
5. From a code text view, the navigation from the code to the doxygen documentation is enabled using the shortcut 'control F1, control F2'.

How does it work?

A configuration file is created in the solution folder, it contains the location of html-format doxygen documentation.
In order to navigate from the code, the doxygen documentation must be created with the flag GENERATE_DOCSET enabled. When this flag is enabled, doxygen generates the file "Tokens.xml" which has the documentation pages indexed by code element. The add-in uses this data to resolve in which page and anchor the documentation of a code element is located.

<?xml version="1.0" encoding="UTF-8"?>
<Tokens version="1.0">
...
  <Token>
    <TokenIdentifier>
      <Name>Method2</Name>
      <APILanguage>csharp</APILanguage>
      <Type>clm</Type>
      <Scope>DoxTestSolution::ExampleClass1</Scope>
    </TokenIdentifier>
    <Path>a00001.html</Path>
    <Anchor>6791cb607ee06fa66203735d9fb5fe8a</Anchor>
  </Token>
...

Commands:

ScreenShots
  • Doxygen Config: It allows creating a configuration file with the location of doxygen documentation through solution path.
    • Use frames: If it checked the browser addin opens "main.html" as home of html-format doxygen documentation, in other case, it opens "index.html".
  • Doxygen Browser: It shows doxygen browser window with the main page of doxygen documentation.
  • Navigation from code (Shortcut: Cntrl F1, Cntrl F2): It allows to jump to the doxygen documentation from a code element (property, method, class, namespace...)

Additional notes

The generation of doxygen documentation is out scope of this addin. The addin retrieves the indexing data from tokens.xml when the solution is loaded, so if the documentation is regenerated the addin is not able to refresh data till the solution is reopened.

Instalation

The installer deploys the addin binaries in the folder [ProgramFilesFolder]\LiveDoc\DoxygenBrowserAddin. It also creates the following two entries in Windows Registry:
HKLM\Software\Microsoft\VisualStudio\8.0\AutomationOptions\LookInFolders\[TARGETDIR]
HKLM\Software\Microsoft\VisualStudio\9.0\AutomationOptions\LookInFolders\[TARGETDIR]
HKLM\Software\Microsoft\VisualStudio\10.0\AutomationOptions\LookInFolders\[TARGETDIR]
These entries allow Visual Studio to find the file DoxygenBrowserAddin.AddIn with the load configuration of the Addin.

Contact

javier.gallardo.rama@gmail.com

Acknowledgment

Thanks to Benjamin Peikes and Les Smith, who show how to deploy an addin for VS2005/2008 http://www.knowdotnet.com/articles/addininstallation_2.html

Last edited Jun 5, 2010 at 2:07 PM by jgallardo, version 29