hhp.xsl revision 63af2322864967656993b04c56e50fd169dc72c7
66e48875fca2df6669dab4f2690ee36c6913c0ffnd Copyright 2003-2004 The Apache Software Foundation
66e48875fca2df6669dab4f2690ee36c6913c0ffnd Licensed under the Apache License, Version 2.0 (the "License");
66e48875fca2df6669dab4f2690ee36c6913c0ffnd you may not use this file except in compliance with the License.
66e48875fca2df6669dab4f2690ee36c6913c0ffnd You may obtain a copy of the License at
66e48875fca2df6669dab4f2690ee36c6913c0ffnd Unless required by applicable law or agreed to in writing, software
66e48875fca2df6669dab4f2690ee36c6913c0ffnd distributed under the License is distributed on an "AS IS" BASIS,
66e48875fca2df6669dab4f2690ee36c6913c0ffnd WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
66e48875fca2df6669dab4f2690ee36c6913c0ffnd See the License for the specific language governing permissions and
66e48875fca2df6669dab4f2690ee36c6913c0ffnd limitations under the License.
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- the accompanying server version -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- create nodeset for referencing later -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<xsl:variable name="htmlhelp.def" select="document('')/xsl:stylesheet
66e48875fca2df6669dab4f2690ee36c6913c0ffnd /xsl:template[@name='htmlhelp.def']" />
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- <sitemap> -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- Create CHM project file from sitemap -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- The file is an *.ini format text file -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- static information -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- **************************************************************** -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- resulting filename -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- compiler related -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- search related -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- title of the help file -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<xsl:value-of select="normalize-space($message[@id='apachehttpserver'])"/>&lf;&lf;
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- main window definition -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- title -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<xsl:value-of select="normalize-space($message[@id='apachehttpserver'])"/>
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- toc file -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- index file (currently none) -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- default file (startup) -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- Home button file -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- Jump 1 url, text -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- Jump 2 url, text -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- navigation pane style (0x1e357e) -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <xsl:with-param name="number" select="sum($htmlhelp.def/navigation/style
66e48875fca2df6669dab4f2690ee36c6913c0ffnd [@selected='yes'])" />
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- navigation pane initial width (px) -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- button mask -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <xsl:with-param name="number" select="sum($htmlhelp.def/buttons/button
66e48875fca2df6669dab4f2690ee36c6913c0ffnd [@visible='yes'])" />
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- Initial Position [Left, Top, Right, Bottom] -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- window style -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <xsl:with-param name="result" select="'0000'" /> <!-- << 16 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <xsl:with-param name="number" select="sum($htmlhelp.def/windowstyle/style
66e48875fca2df6669dab4f2690ee36c6913c0ffnd [@selected='yes'])" />
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- extended style -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- flag: navigation pane initial closed (=1) -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- unknown, default pane, unknown, unknown -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- file list -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- **************************************************************** -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- not automatically sucked in. (because only @import()ed) -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- include project file itself for easier recompiling -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- and now all sitemap-listed files -->
63af2322864967656993b04c56e50fd169dc72c7nd <xsl:apply-templates select="document($allmodules)/modulefilelist
63af2322864967656993b04c56e50fd169dc72c7nd /modulefile" />
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- /sitemap -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- files referenced in sitemap -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <xsl:when test="contains(@href, '#') and substring(@href,
66e48875fca2df6669dab4f2690ee36c6913c0ffnd string-length(substring-before(@href, '#')), 1) = '/'">
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <xsl:when test="substring(@href, string-length(@href), 1) = '/'">
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<xsl:value-of select="translate($filename, '/', '\')" />&lf;
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- /page[@href] -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- list module files -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<xsl:value-of select="substring-before(normalize-space(.), '.xml')" />
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- convert number to its hexadecimal representation. -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- I could not find a built-in function, so write our own ... *sigh* -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <xsl:with-param name="number" select="floor(number($number) div 16)" />
66e48875fca2df6669dab4f2690ee36c6913c0ffnd select="concat(substring('0123456789abcdef',
66e48875fca2df6669dab4f2690ee36c6913c0ffnd (number($number) mod 16) + 1, 1),
66e48875fca2df6669dab4f2690ee36c6913c0ffnd $result)" />
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <!-- if zero, don't print anything. hh.exe (the viewer) seems to -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <!-- prefer an empty value -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <xsl:if test="string-length(translate($result, '0', '')) > 0">
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- some of the values are derived from htmlhelp.h -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- do NOT call this template, it's referenced automagically via -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- document() function and acts as simple data container. -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- Hints: 'ni' means 'not implemented' (by the help viewer) -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- 'ns' means 'not useful for standalone help file' -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<!-- ==================================================================== -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<navigation>
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 32</style> <!-- use tri-pane win. << 5 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 256</style> <!-- toc auto sync << 8 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 1024</style> <!-- search tab << 10 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 4096</style> <!-- favorites tab << 12 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 65536</style> <!-- show menu << 16 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 131072</style> <!-- advanced search << 17 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 262144</style> <!-- safe user's win. size << 18 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style >268435456</style> <!-- window has margin (?) << 28 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd</navigation>
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <button visible="yes"> 2</button> <!-- expand/contract << 1 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <button visible="yes"> 2048</button> <!-- Sync TOC << 11 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <button visible="yes"> 4096</button> <!-- Options << 12 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <button visible="yes"> 8192</button> <!-- Print << 13 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <button visible="yes">1048576</button> <!-- (Font) Zoom << 20 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <!-- the following work only with binary toc, which unfortunately -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <!-- seems to eat the different icons ... -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd<windowstyle>
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <!-- all the stuff is additionally shifted << 16 (by the caller) -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 1</style> <!-- maximize box << 0 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 2</style> <!-- minimize box << 1 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 4</style> <!-- thick frame << 2 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 8</style> <!-- system menu << 3 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 64</style> <!-- dialog frame << 6 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 256</style> <!-- maximize << 8 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 4096</style> <!-- visible << 12 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd <style selected="yes"> 8192</style> <!-- minimize << 13 -->
66e48875fca2df6669dab4f2690ee36c6913c0ffnd</windowstyle>