Adding modifier and visibility information to html output

Topics: Developer Forum, User Forum
Aug 5, 2009 at 6:47 PM

Hi Eric,

First of all, kudos! This is a great tool.   I have the SHFB up and running and I would like to know if it is possible to automatically include the access and type modifiers as columns in the members class table without having to add additional markup to every class member?  Currently, I can only get the description in there.   It is annoying that visual studio will allow me to view all of this in a class diagram but not output it with the modifier information included in the table.  I am trying to generate an api "changelog" of sorts for a customer and would like to be able to do this without having to enter the information by hand.

so for example currently it shows

widgetclass.widgetsetting somedescription

I would like it to output:

widgetclass.widgetsetting public bool  somedescription.

 

Any help would be greatly appreciated!

 

Regards,

 

Brendan

Coordinator
Aug 5, 2009 at 9:23 PM

Hi Brendan,

You'd have to modify the actual Sandcastle presentation style XSL transformations to change the layout of the API topics.  Getting the access and type modifiers to show up would also depend on whether or not the information was available in the reflection information.  I'm pretty sure the member pages are generated off of the <element> items for the type which may or may not include that information.

Eric

 

Aug 6, 2009 at 6:01 AM
Eric,

Thank you for the information. Unfortunately, I am still somewhat unsure
of what the syntax would be for altering the sandcastle transform.
However, I believe the code I need to alter (for the VS2005) format is
in the
Sandcastle\Presentation\vs2005\transforms\utilities_reference.xsl
file, specifically, I identified the code:








<!-- add a row for each member of the current
subgroup-visibility -->
<xsl:apply-templates select="$members" mode="memberlistRow">
<xsl:with-param name="showParameters"
select="$showParameters" />
<xsl:sort select="apidata/@name" />
</xsl:apply-templates>

 

<include item="typeNameHeader"/>

<include item="typeDescriptionHeader" />


as the code which creates the table structure and then adds rows. I
have not been working with XSL long, if you could give a code sample of
how to pull the type modifier data into the member template, I would
greatly appreciate it and could probably work from there.



Brendan