source: BMXNET_RPMS_dotNET_UTILITIES-BMX/branch/IHS BMX Framework/IndianHealthService.BMXNet.GeneratedDocumentation/Help/Presentation/Style/Transforms/globalTemplates.xsl@ 1146

Last change on this file since 1146 was 1146, checked in by Sam Habiel, 13 years ago

Initial Import of BMX4

File size: 11.7 KB
Line 
1<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
2 xmlns:MSHelp="http://msdn.microsoft.com/mshelp"
3 xmlns:mshelp="http://msdn.microsoft.com/mshelp"
4 xmlns:ddue="http://ddue.schemas.microsoft.com/authoring/2003/5"
5 xmlns:xlink="http://www.w3.org/1999/xlink"
6 xmlns:msxsl="urn:schemas-microsoft-com:xslt"
7 >
8
9 <xsl:template name="autogenSeeAlsoLinks">
10
11 <!-- a link to the containing type on all list and member topics -->
12 <xsl:if test="($group='member' or $group='list')">
13 <xsl:variable name="typeTopicId">
14 <xsl:choose>
15 <xsl:when test="/document/reference/topicdata/@typeTopicId">
16 <xsl:value-of select="/document/reference/topicdata/@typeTopicId"/>
17 </xsl:when>
18 <xsl:otherwise>
19 <xsl:value-of select="/document/reference/containers/type/@api"/>
20 </xsl:otherwise>
21 </xsl:choose>
22 </xsl:variable>
23 <div class="seeAlsoStyle">
24 <referenceLink target="{$typeTopicId}" display-target="format">
25 <include item="SeeAlsoTypeLinkText">
26 <parameter>{0}</parameter>
27 <parameter>
28 <xsl:choose>
29 <xsl:when test="/document/reference/topicdata/@typeTopicId">
30 <xsl:value-of select="/document/reference/apidata/@subgroup"/>
31 </xsl:when>
32 <xsl:otherwise>
33 <xsl:value-of select="/document/reference/containers/type/apidata/@subgroup"/>
34 </xsl:otherwise>
35 </xsl:choose>
36 </parameter>
37 </include>
38 </referenceLink>
39 </div>
40 <!--
41 <div class="seeAlsoStyle">
42 <include item="SeeAlsoTypeLinkText">
43 <parameter>
44 <referenceLink target="{$typeTopicId}" />
45 </parameter>
46 <parameter>
47 <xsl:choose>
48 <xsl:when test="/document/reference/topicdata/@typeTopicId">
49 <xsl:value-of select="/document/reference/apidata/@subgroup"/>
50 </xsl:when>
51 <xsl:otherwise>
52 <xsl:value-of select="/document/reference/containers/type/apidata/@subgroup"/>
53 </xsl:otherwise>
54 </xsl:choose>
55 </parameter>
56 </include>
57 </div>
58 -->
59 </xsl:if>
60
61 <!-- a link to the type's All Members list -->
62 <xsl:variable name="allMembersTopicId">
63 <xsl:choose>
64 <xsl:when test="/document/reference/topicdata/@allMembersTopicId">
65 <xsl:value-of select="/document/reference/topicdata/@allMembersTopicId"/>
66 </xsl:when>
67 <xsl:when test="$group='member' or ($group='list' and $subgroup='overload')">
68 <xsl:value-of select="/document/reference/containers/type/topicdata/@allMembersTopicId"/>
69 </xsl:when>
70 </xsl:choose>
71 </xsl:variable>
72 <xsl:if test="normalize-space($allMembersTopicId) and not($allMembersTopicId=$key)">
73 <div class="seeAlsoStyle">
74 <referenceLink target="{$allMembersTopicId}" display-target="format">
75 <include item="SeeAlsoMembersLinkText">
76 <parameter>{0}</parameter>
77 </include>
78 </referenceLink>
79 </div>
80 <!--
81 <div class="seeAlsoStyle">
82 <include item="SeeAlsoMembersLinkText">
83 <parameter>
84 <referenceLink target="{$allMembersTopicId}" />
85 </parameter>
86 </include>
87 </div>
88 -->
89 </xsl:if>
90
91 <xsl:if test="/document/reference/memberdata/@overload">
92 <!-- a link to the overload topic -->
93 <div class="seeAlsoStyle">
94 <referenceLink target="{/document/reference/memberdata/@overload}" display-target="format" show-parameters="false">
95 <include item="SeeAlsoOverloadLinkText">
96 <parameter>{0}</parameter>
97 </include>
98 </referenceLink>
99 </div>
100 </xsl:if>
101
102 <!-- a link to the namespace topic -->
103 <xsl:variable name="namespaceId">
104 <xsl:value-of select="/document/reference/containers/namespace/@api"/>
105 </xsl:variable>
106 <xsl:if test="normalize-space($namespaceId)">
107 <div class="seeAlsoStyle">
108 <referenceLink target="{$namespaceId}" display-target="format">
109 <include item="SeeAlsoNamespaceLinkText">
110 <parameter>{0}</parameter>
111 </include>
112 </referenceLink>
113 </div>
114 <!--
115 <div class="seeAlsoStyle">
116 <include item="SeeAlsoNamespaceLinkText">
117 <parameter>
118 <referenceLink target="{$namespaceId}" />
119 </parameter>
120 </include>
121 </div>
122 -->
123 </xsl:if>
124
125 </xsl:template>
126
127 <xsl:variable name="typeId">
128 <xsl:choose>
129 <xsl:when test="/document/reference/topicdata[@group='api'] and /document/reference/apidata[@group='type']">
130 <xsl:value-of select="$key"/>
131 </xsl:when>
132 <xsl:when test="/document/reference/topicdata/@typeTopicId">
133 <xsl:value-of select="/document/reference/topicdata/@typeTopicId"/>
134 </xsl:when>
135 <xsl:otherwise>
136 <xsl:value-of select="/document/reference/containers/type/@api"/>
137 </xsl:otherwise>
138 </xsl:choose>
139 </xsl:variable>
140
141 <!-- indent by 2*n spaces -->
142 <xsl:template name="indent">
143 <xsl:param name="count" />
144 <xsl:if test="$count &gt; 1">
145 <xsl:text>&#160;&#160;</xsl:text>
146 <xsl:call-template name="indent">
147 <xsl:with-param name="count" select="$count - 1" />
148 </xsl:call-template>
149 </xsl:if>
150 </xsl:template>
151
152 <!-- Gets the substring after the last occurence of a period in a given string -->
153 <xsl:template name="subString">
154 <xsl:param name="name" />
155
156 <xsl:choose>
157 <xsl:when test="contains($name, '.')">
158 <xsl:call-template name="subString">
159 <xsl:with-param name="name" select="substring-after($name, '.')" />
160 </xsl:call-template>
161 </xsl:when>
162 <xsl:otherwise>
163 <xsl:value-of select="$name" />
164 </xsl:otherwise>
165 </xsl:choose>
166
167 </xsl:template>
168
169 <xsl:template name="codeSection">
170 <xsl:param name="codeLang" />
171 <div class="code">
172 <span codeLanguage="{$codeLang}">
173 <table width="100%" cellspacing="0" cellpadding="0">
174 <tr>
175 <th>
176 <xsl:variable name="codeLangLC" select="translate($codeLang,'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz ')"/>
177 <!-- Added JavaScript to look for AJAX snippets as JScript represents javascript snippets-->
178 <xsl:if test="$codeLangLC='visualbasic' or $codeLangLC='csharp' or $codeLangLC='managedcplusplus' or $codeLangLC='jsharp' or $codeLangLC='jscript' or $codeLangLC='javascript' or $codeLangLC='xaml'">
179 <include item="{$codeLang}"/>
180 </xsl:if>
181 <xsl:text>&#xa0;</xsl:text>
182 </th>
183 <th>
184 <span class="copyCode" onclick="CopyCode(this)" onkeypress="CopyCode_CheckKey(this, event)" onmouseover="ChangeCopyCodeIcon(this)" onmouseout="ChangeCopyCodeIcon(this)" tabindex="0">
185 <img class="copyCodeImage" name="ccImage" align="absmiddle">
186 <includeAttribute name="title" item="copyImage" />
187 <includeAttribute name="src" item="iconPath">
188 <parameter>copycode.gif</parameter>
189 </includeAttribute>
190 </img>
191 <include item="copyCode"/>
192 </span>
193 </th>
194 </tr>
195 <tr>
196 <td colspan="2">
197 <!-- alansm: fix bug 321956 - use apply-templates rather than copy-of, so ddue:codeFeaturedElement nodes are transformed -->
198 <pre><xsl:text/><xsl:apply-templates/><!--<xsl:copy-of select="node()"/>--><xsl:text/></pre>
199 </td>
200 </tr>
201 </table>
202 </span>
203 </div>
204
205 </xsl:template>
206
207 <!-- sireeshm: fix bug 361746 - use copy-of, so that span class="keyword", "literal" and "comment" nodes are copied to preserve code colorization in snippets -->
208 <xsl:template match="ddue:span[@class='keyword' or @class='literal' or @class='comment']">
209 <xsl:copy-of select="."/>
210 </xsl:template>
211
212 <xsl:template name="nonScrollingRegionTypeLinks">
213 <include item="nonScrollingTypeLinkText">
214 <parameter>{0}</parameter>
215 <parameter>
216 <xsl:choose>
217 <xsl:when test="/document/reference/topicdata/@typeTopicId">
218 <xsl:value-of select="/document/reference/apidata/@subgroup"/>
219 </xsl:when>
220 <xsl:otherwise>
221 <xsl:value-of select="/document/reference/containers/type/apidata/@subgroup"/>
222 </xsl:otherwise>
223 </xsl:choose>
224 </parameter>
225 </include>
226 </xsl:template>
227
228 <xsl:template name="mshelpCodelangAttributes">
229 <xsl:param name="snippets" />
230 <xsl:for-each select="$snippets">
231
232 <xsl:if test="not(@language=preceding::*/@language)">
233 <xsl:variable name="codeLang">
234 <xsl:choose>
235 <xsl:when test="@language = 'VBScript' or @language = 'vbs'">
236 <xsl:text>VBScript</xsl:text>
237 </xsl:when>
238 <xsl:when test="@language = 'VisualBasic' or @language = 'vb' or @language = 'vb#' or @language = 'VB' or @language = 'kbLangVB'" >
239 <xsl:text>kbLangVB</xsl:text>
240 </xsl:when>
241 <xsl:when test="@language = 'CSharp' or @language = 'c#' or @language = 'cs' or @language = 'C#'" >
242 <xsl:text>CSharp</xsl:text>
243 </xsl:when>
244 <xsl:when test="@language = 'ManagedCPlusPlus' or @language = 'cpp' or @language = 'cpp#' or @language = 'c' or @language = 'c++' or @language = 'C++' or @language = 'kbLangCPP'" >
245 <xsl:text>kbLangCPP</xsl:text>
246 </xsl:when>
247 <xsl:when test="@language = 'JSharp' or @language = 'j#' or @language = 'jsharp' or @language = 'VJ#'">
248 <xsl:text>VJ#</xsl:text>
249 </xsl:when>
250 <xsl:when test="@language = 'JScript' or @language = 'js' or @language = 'jscript#' or @language = 'jscript' or @language = 'JScript' or @language = 'kbJScript'">
251 <xsl:text>kbJScript</xsl:text>
252 </xsl:when>
253 <xsl:when test="@language = 'XAML' or @language = 'xaml'">
254 <xsl:text>XAML</xsl:text>
255 </xsl:when>
256 <xsl:when test="@language = 'JavaScript' or @language = 'javascript'">
257 <xsl:text>JavaScript</xsl:text>
258 </xsl:when>
259 <xsl:when test="@language = 'xml'">
260 <xsl:text>xml</xsl:text>
261 </xsl:when>
262 <xsl:when test="@language = 'html'">
263 <xsl:text>html</xsl:text>
264 </xsl:when>
265 <xsl:when test="@language = 'vb-c#'">
266 <xsl:text>visualbasicANDcsharp</xsl:text>
267 </xsl:when>
268 <xsl:otherwise>
269 <xsl:text>other</xsl:text>
270 </xsl:otherwise>
271 </xsl:choose>
272 </xsl:variable>
273 <xsl:choose>
274 <xsl:when test="$codeLang='other'" />
275 <!-- If $codeLang is already authored, then do nothing -->
276 <xsl:when test="/document/metadata/attribute[@name='codelang']/text() = $codeLang" />
277 <xsl:otherwise>
278 <xsl:call-template name="codeLang">
279 <xsl:with-param name="codeLang" select="$codeLang" />
280 </xsl:call-template>
281 </xsl:otherwise>
282 </xsl:choose>
283 </xsl:if>
284
285 </xsl:for-each>
286 </xsl:template>
287
288 <xsl:template name="codeLang">
289 <xsl:param name="codeLang" />
290 <MSHelp:Attr Name="codelang" Value="{$codeLang}" />
291 </xsl:template>
292
293</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.