Hierarchical Table of Contents Plug-In |
Note |
---|
The Hierarchical TOC plug-in is not compatible with MS Help Viewer output. The problem is that the table of contents is generated off of the help topics when the help viewer file is installed and, since there are no physical topics for the namespace nodes added to the intermediate TOC file by the plug-in, they do not appear in the help file. The project namespace grouping options supersede this plug-in and fix the above issue as topics are generated for the namespace group entries. As such, this plug-in is deprecated and will not receive further changes. It will be available for the time being to support the older presentation styles that do not support MS Help Viewer output or the namespace grouping project options. |
This plug-in can be used to rearrange the table of contents such that namespaces are nested within their parent namespaces rather than appearing as a flat list of all namespaces at the root level. The plug-in has two configuration options:
This option lets you specify at what level container namespace entries should start being created for namespaces with a common root namespace. By default, entries in the table of contents are only created for namespaces with content. For example, consider the following namespaces in a table of contents:
MyCompany.MyProduct
MyCompany.MyProduct.Web.Controls
MyCompany.MyProduct.Web.Design
MyCompany.MyProduct.Windows.Forms
Since no classes exist in the MyCompany.MyProduct.Web or MyCompany.MyProduct.Windows namespaces, no namespace entries exists for them. When this option is set to two, the default, the plug-in will create a container namespace in the table of contents called MyCompany.MyProduct.Web and will nest the MyCompany.MyProduct.Web.Controls and MyCompany.MyProduct.Web.Design namespaces beneath it. The created container will have no page associated with it as it just serves to further group the namespaces with a common root name. This will only occur if two or more namespaces would appear. Since there would only be one namespace under MyCompany.MyProduct.Windows, no container entry is created for it.
If set to one, an additional container for the MyCompany namespace would be created at the root level and all of the other namespaces would be nested below it. The MyCompany.MyProduct.Web namespace container would also be created as before. By setting the number to a higher value, you can delay the point at which it creates the containers or prevent it from doing so altogether. For example, if set to three in the above example, the additional MyCompany.MyProduct.Web container would not be created and, since there are no common root namespaces with four or more parts no other additional containers would be created either.
As its name implies, if this option is checked, the nested namespaces will be inserted below the parent namespace's content. If unchecked, the default, the namespaces are inserted ahead of the parent's content.