source: GTP-Internal/trunk/Webpage/NOF/gtp_webpage/Styles/GameTools1-v18/template/siteStyle.xsl @ 714

Revision 714, 31.0 KB checked in by giegl, 18 years ago (diff)

GTP NOF webpage initial check in

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2
3<xsl:stylesheet xmlns:xsl= "http://www.w3.org/1999/XSL/Transform"
4                 xmlns:msxsl="urn:schemas-microsoft-com:xslt"
5                 xmlns:nof="http://netobjects.com/nof"
6                 version="1.0">
7
8<xsl:import href="decoratorStyle.xsl"/>
9
10<xsl:output method="html" encoding="iso-8859-1"/>
11<xsl:output cdata-section-elements="SCRIPT"/>
12<xsl:strip-space elements="*"/>
13
14<xsl:template match="SiteStyle">
15<html>
16<head>
17<meta http-equiv="Pragma" content="no-cache"/>
18<meta http-equiv="Cache-Control" content="no-cache"/>
19 <script language="JavaScript"> 
20    var fsiApp = new ActiveXObject("FSI.FSIApplication");
21    document.write(
22    "&lt;script language='javascript' src='" + fsiApp.AppDirectory + "NetObjects System/StyleView/js/scripts.js'&gt;&lt;\/script&gt;" +
23    " &lt;link rel='stylesheet' type='text/css' href='" + fsiApp.AppDirectory + "NetObjects System/StyleView/css/general_en.css' /&gt;" );
24
25    fsiApp = null;
26 </script>
27
28<link rel="stylesheet" href="display.css" type="text/css" />
29
30</head>
31
32<body onclick="NOF_StyleView_CallInspector(null)" id="author"> 
33<TABLE width="100%" border="0" cellpadding="0" cellspacing="0">
34  <TR>
35    <TD>
36       <table border="0" cellspacing="0" cellpadding="3" width="100%">
37         <tr>
38          <td width="100" valign="middle"><span class="title" id="styleView.label.author">Gestaltet von:</span></td>
39          <td valign="middle">           
40              <div id="{//Author/@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal">                       
41                   <xsl:apply-templates select="Author"/>                   
42              </div>
43 
44          </td>   
45          </tr>
46       </table>   
47    </TD>
48  </TR>
49  <TR>
50    <TD background="labels/sv_title_div.gif"><span class="title" id="styleView.label.banner">Banner</span></TD>
51  </TR>
52  <TR>
53    <TD><xsl:apply-templates select="Banners" /></TD>
54  </TR>
55  <TR>
56    <TD><IMG src="labels/spacer.gif" width="50" height="10"/></TD>
57  </TR>
58</TABLE>
59
60<TABLE width="100%" border="0" cellpadding="0" cellspacing="0">
61  <TR>
62    <TD background="labels/sv_title_div.gif"><span class="title"  id="styleView.label.navigation">Navigation</span></TD>
63  </TR>
64  <TR>
65    <TD><TABLE border="0" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF">
66        <TR>
67          <TD><img src="labels/spacer.gif" width="1" height="1" border="0"/></TD>
68          <TD><IMG src="labels/spacer.gif" width="10" height="20"/></TD>
69          <TD><span class="label" id="styleView.label.regular">Standard</span></TD>
70          <TD><IMG src="labels/spacer.gif" width="10" height="20"/></TD>
71          <TD><span class="label" id="styleView.label.regularRollover">Standard-Rollover</span></TD>
72          <TD><IMG src="labels/spacer.gif" width="10" height="20"/></TD>
73          <TD><span class="label" id="styleView.label.highlighted">Hervorgehoben</span></TD>
74          <TD><IMG src="labels/spacer.gif" width="10" height="20"/></TD>
75          <TD><span class="label" id="styleView.label.higlightedRollover">Hervorgehobenes Rollover</span></TD>
76        </TR>
77 
78        <xsl:apply-templates select="//Navbar/NavbarState" mode="buttonSet" />         
79     
80        <TR>
81          <TD colspan="10"><IMG src="labels/spacer.gif" width="20" height="10"/></TD>
82        </TR>
83        <TR>
84          <TD valign="top"><span class="label" id="styleView.label.preview">Vorschau</span></TD>
85          <TD><img src="labels/spacer.gif" width="1" height="1" border="0"/></TD>
86          <TD colspan="7" class="label" width="*">
87              <xsl:for-each select="//Navbar/NavbarState">
88                <xsl:value-of select="@name"/>
89                <xsl:apply-templates select="." mode="preview"/>
90              </xsl:for-each>
91           </TD>
92        </TR>
93      </TABLE></TD>
94  </TR>
95  <TR>
96    <TD><IMG src="labels/spacer.gif" width="50" height="10"/></TD>
97  </TR>
98</TABLE>
99<TABLE width="100%" border="0" cellpadding="0" cellspacing="0">
100  <TR>
101    <TD background="labels/sv_title_div.gif"><span class="title" id="styleView.label.tableStyles">Tabellen-Styles</span></TD>
102  </TR>
103  <TR>
104    <TD>   
105      <xsl:apply-templates select="TableStyles"/>     
106    </TD>
107  </TR>
108  <TR>
109    <TD><IMG src="labels/spacer.gif" width="50" height="10"/></TD>
110  </TR>
111</TABLE>
112<TABLE width="100%" border="0" cellpadding="0" cellspacing="0">
113  <TR>
114    <TD width="300" background="labels/sv_title_div.gif"><span class="title" id="styleView.label.pageBackground">Seiten-Hintergrund</span></TD>
115    <TD><IMG src="labels/spacer.gif" width="20" height="20"/></TD>
116    <TD background="labels/sv_title_div.gif"><span class="title" id="styleView.label.addPageElements">Zusätzliche Seiten-Elemente</span></TD>
117  </TR>
118  <TR>
119    <TD  valign="top"><!-- Page background -->
120      <div id="background" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal">
121        <table id="background" width="100%" height="100%"  border="0" cellpadding="0" cellspacing="0" class="background">
122            <tr>
123              <td  id="background" valign="top"><IMG src="labels/spacer.gif" alt="" name="styleThumb" width="250" height="150" id="background"/></td>
124            </tr>
125        </table>
126      </div>   
127    </TD>
128    <TD><img src="labels/spacer.gif" width="1" height="1" border="0"/></TD>
129    <!-- Additional Page Elements -->
130    <TD valign="top"><xsl:apply-templates select="header" mode="graphicView"/></TD>
131  </TR>
132  <TR>
133    <TD colspan="3"><IMG src="labels/spacer.gif" width="50" height="10"/></TD>
134  </TR>
135</TABLE>
136<TABLE width="100%" border="0" cellpadding="0" cellspacing="0">
137  <TR>
138    <TD width="300" background="labels/sv_title_div.gif"><span class="title" id="styleView.label.dataList">Datenlisten-Icons</span></TD>
139    <TD><IMG src="labels/spacer.gif" width="30" height="20"/></TD>
140    <TD background="labels/sv_title_div.gif"><span class="title" id="styleView.label.styledLine">Style-Linie</span></TD>
141  </TR>
142  <TR>
143    <TD valign="top" width="300">
144      <TABLE border="0" cellpadding="5" cellspacing="0" class="objSelected" width="300">
145        <TR>
146          <TD width="300">           
147            <xsl:apply-templates select="Bullet"/>
148          </TD>
149        </TR>
150      </TABLE></TD>
151    <TD><img src="labels/spacer.gif" width="5" height="1" border="0"/></TD>
152    <TD valign="top"><xsl:apply-templates select="Line"/></TD>
153  </TR>
154</TABLE>
155    </body>
156  </html> 
157</xsl:template>
158
159<xsl:template match="ButtonState" mode="textPreview">
160  <xsl:param name="rollCss">0</xsl:param>
161  <xsl:variable name="hAlign"><xsl:value-of select="./@hAlign"/></xsl:variable>
162  <xsl:variable name="voffset"><xsl:value-of select="./@vAlign"/></xsl:variable>
163  <xsl:variable name="hoffset"><xsl:value-of select="./@hoffset"/></xsl:variable>
164
165  <xsl:variable name="cssClass">
166  <xsl:choose>
167    <xsl:when test="$hAlign = 'left'">spanLeft</xsl:when>
168    <xsl:when test="$hAlign = 'right'">spanRight</xsl:when>
169    <xsl:otherwise>spanCenter</xsl:otherwise>
170  </xsl:choose><xsl:value-of select="self::node()/@id"/>
171  </xsl:variable>
172
173  <xsl:variable name="rollCssClass">
174  <xsl:choose>
175    <xsl:when test="$hAlign = 'left'">spanLeft</xsl:when>
176    <xsl:when test="$hAlign = 'right'">spanRight</xsl:when>
177    <xsl:otherwise>spanCenter</xsl:otherwise>
178  </xsl:choose><xsl:value-of select="$rollCss"/>
179  </xsl:variable>
180    <span onmouseover="rollImage(this);"
181    onmouseout="rollImage(this, true);"
182    roll="{$rollCssClass}"
183    rollOut="{$cssClass}"
184    class="{$cssClass}">Schltf.-Text</span>
185</xsl:template>
186
187<xsl:template match="//Navbar/NavbarState/Button" mode="preview">              
188<TABLE width="10" border="0" cellpadding="0" cellspacing="0">
189  <TR>
190    <TD>
191  <div name="modePreview">
192  <xsl:choose> <!-- Button set type Text-->
193      <xsl:when test="./ButtonState[@type = 'Text']">
194       <table onclick="NOF_StyleView_CallInspector(document.getElementById('{../@id}'), 'graphic')"  width="600" id="NavbarState.{../@id}" name="modePreview" border="{../Border/@size}" cellpadding="{../Space/@size}" cellspacing="{../Space/@size}" height="20">
195        <tr><td align="center"><div class="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/@id}"
196        onmouseover="rollImage(this);"
197        onmouseout="rollImage(this, true);"
198        roll="{./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/@id}"
199        rollOut="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/@id}" style="padding: 5px">
200        <xsl:apply-templates select="./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']" mode="textPreview">
201            <xsl:with-param name="rollCss">
202              <xsl:value-of select="./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/@id"/>
203            </xsl:with-param>
204        </xsl:apply-templates></div>       
205         </td><td align="center"> 
206         <div class="{./ButtonState[@name = 'Highlighted' or @name = 'SecondaryHighlighted']/@id}"
207        onMouseOver="rollImage(this);"
208        onMouseOut="rollImage(this, true);"
209        roll="{./ButtonState[@name = 'HighlightedRollover' or @name = 'SecondaryHighlightedRollover']/@id}"
210        rollOut="{./ButtonState[@name = 'Highlighted' or @name = 'SecondaryHighlighted']/@id}"  style="padding: 5px">       
211          <xsl:apply-templates select="./ButtonState[@name = 'Highlighted' or @name = 'SecondaryHighlighted']" mode="textPreview">
212            <xsl:with-param name="rollCss">
213              <xsl:value-of select="./ButtonState[@name = 'HighlightedRollover' or @name = 'SecondaryHighlightedRollover']/@id"/>
214            </xsl:with-param>
215        </xsl:apply-templates></div>
216    </td><td align="center"><div class="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/@id}"
217        onmouseover="rollImage(this);"
218        onmouseout="rollImage(this, true);"
219        roll="{./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/@id}"
220        rollOut="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/@id}"  style="padding: 5px">
221        <xsl:apply-templates select="./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']" mode="textPreview">
222              <xsl:with-param name="rollCss">
223        <xsl:value-of select="./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/@id"/>
224        </xsl:with-param>
225        </xsl:apply-templates></div>
226    </td><td align="center"><div class="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/@id}" 
227        onmouseover="rollImage(this);"
228        onmouseout="rollImage(this, true);"
229        roll="{./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/@id}"
230        rollOut="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/@id}"  style="padding: 5px">
231        <xsl:apply-templates select="./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']" mode="textPreview">
232              <xsl:with-param name="rollCss">
233        <xsl:value-of select="./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/@id"/>
234        </xsl:with-param></xsl:apply-templates></div>
235     </td>       
236        </tr>                                         
237      </table>
238        </xsl:when>
239   <xsl:otherwise><!-- Button set type Image-->       
240    <table onclick="NOF_StyleView_CallInspector(document.getElementById('{../@id}'), 'graphic')" id="NavbarState.{../@id}" name="modePreview" border="{../Border/@size}" cellpadding="{../Space/@size}" cellspacing="{../Space/@size}" height="20">
241      <tr><td>
242        <img name="modePreview" src="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/Image/@path}"
243            onmouseover="rollImage(this);"
244            onmouseout="rollImage(this, true);"
245            roll="{./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/Image/@path}"
246            rollOut="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/Image/@path}" />
247             
248        <img name="modePreview" src="{./ButtonState[@name = 'Highlighted' or @name = 'SecondaryHighlighted']/Image/@path}"
249            onMouseOver="rollImage(this);"
250            onMouseOut="rollImage(this, true);"
251            roll="{./ButtonState[@name = 'HighlightedRollover' or @name = 'SecondaryHighlightedRollover']/Image/@path}"
252            rollOut="{./ButtonState[@name = 'Highlighted' or @name = 'SecondaryHighlighted']/Image/@path}"/>
253       
254        <img name="modePreview" src="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/Image/@path}"
255            onmouseover="rollImage(this);"
256            onmouseout="rollImage(this, true);"
257            roll="{./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/Image/@path}"
258            rollOut="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/Image/@path}" />
259       
260        <img name="modePreview" src="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/Image/@path}"
261            onmouseover="rollImage(this);"
262            onmouseout="rollImage(this, true);"
263            roll="{./ButtonState[@name = 'Rollover' or @name = 'SecondaryRollover']/Image/@path}"
264            rollOut="{./ButtonState[@name = 'Regular' or @name = 'SecondaryRegular']/Image/@path}" />
265      </td></tr>                               
266             
267    </table>   
268    </xsl:otherwise>
269  </xsl:choose>       
270  </div>       
271
272</TD></TR></TABLE> 
273</xsl:template>
274
275<!-- Template :: Button Set   -->
276<xsl:template match="//Navbar/NavbarState" mode="buttonSet">  
277   <tr>       
278      <td align="left"><span class="labelLink"><div id="{@id}" style="height:30" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal"><xsl:value-of select="@name"/></div></span></td>
279      <td><img src="labels/spacer.gif" width="10" height="1" border="0"/></td>     
280      <xsl:apply-templates select="*" mode="generate"/> 
281   </tr>
282   <tr><td colspan="10"><image src="labels/spacer.gif" height="5" width="5" border="0"/></td></tr>
283</xsl:template>
284
285<!-- Template :: Button State   -->
286<xsl:template match="ButtonState" mode="generate">      
287    <td align="left" valign="middle" width="150" id="Button.{@id}">     
288        <xsl:apply-templates select="."/>       
289    </td><td width="10"><img src="labels/spacer.gif" width="10" height="1" border="0"/></td>
290</xsl:template>
291
292<!-- Template :: Button State   -->
293<xsl:template match="ButtonState">          
294    <xsl:choose>       
295      <xsl:when test="@type = 'Text'">
296        <xsl:variable name="hAlign"><xsl:value-of select="@hAlign"/></xsl:variable>
297        <xsl:variable name="spanAlign">
298          <xsl:choose>
299            <xsl:when test="$hAlign = 'left'">spanLeft<xsl:value-of select="@id"/></xsl:when>
300            <xsl:when test="$hAlign = 'right'">spanRight<xsl:value-of select="@id"/></xsl:when>
301            <xsl:otherwise>spanCenter<xsl:value-of select="@id"/></xsl:otherwise>
302          </xsl:choose>
303        </xsl:variable>                   
304        <div id="{@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal" style="{./Font/@css}">
305           <span  id="{@id}" class="{$spanAlign}">Schltf.-Text</span></div>
306           <style>
307             .<xsl:value-of select="@id"/>{<xsl:value-of select="./Font/@css"/>}
308         
309              .spanLeft<xsl:value-of select="@id"/>{<xsl:value-of select="./Font/@css"/>;
310              padding: <xsl:value-of select="@vAlign"/>px 0px 0px <xsl:value-of select="@hoffset"/>px}
311         
312              .spanRight<xsl:value-of select="@id"/>{<xsl:value-of select="./Font/@css"/>;
313              padding: <xsl:value-of select="@vAlign"/>px <xsl:value-of select="@hoffset"/>px 0px 0px}
314         
315              .spanCenter<xsl:value-of select="@id"/>{<xsl:value-of select="./Font/@css"/>;
316              padding: <xsl:value-of select="@vAlign"/>px 0px 0px 0px} 
317          </style>       
318      </xsl:when>           
319      <xsl:otherwise>
320        <div id="{@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal"><img id="{@id}"  src="{./Image/@path}" border="0"/></div>     
321      </xsl:otherwise>       
322    </xsl:choose>           
323</xsl:template>
324   
325<!-- Template :: Banner   --> 
326<xsl:template match="Banners">
327    <xsl:for-each select="*">
328     <table><tr><td>
329      <div id="Banner.{./@id}">
330        <xsl:apply-templates select="."/>
331      </div>
332      </td></tr></table>
333    </xsl:for-each>
334</xsl:template>
335
336<xsl:template match="Banner">
337   <SPAN class="label"><xsl:value-of select="@name"/></SPAN>
338    <xsl:choose> 
339      <xsl:when test="@type = 'Image'">
340        <div id="{@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal">
341            <img id="{@id}" src="{./Image/@path}" />
342        </div>
343      </xsl:when>       
344      <xsl:when test="@type = 'Text'">   
345        <div id="{@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal">
346  <img src="labels/spacer.gif" width="1" height="1"/><xsl:apply-templates select="." mode="bannerText"/></div>
347      </xsl:when>     
348      <xsl:otherwise>
349        <div id="{@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal">
350         <img id="{@id}" src="{./Image/@path}" />
351        </div> 
352      </xsl:otherwise>
353    </xsl:choose>
354</xsl:template>
355
356<xsl:template match="Banner" mode="bannerText"> 
357  <xsl:variable name="hAlign"><xsl:value-of select="./@hAlign"/></xsl:variable>
358  <xsl:variable name="voffset"><xsl:value-of select="./@vAlign"/></xsl:variable>
359  <xsl:variable name="hoffset"><xsl:value-of select="./@hoffset"/></xsl:variable>
360
361  <xsl:variable name="cssClass">
362  <xsl:choose>
363    <xsl:when test="$hAlign = 'left'">;padding: <xsl:value-of select="$voffset"/>px 0px 0px <xsl:value-of select="$hoffset"/>px</xsl:when>
364    <xsl:when test="$hAlign = 'right'">;padding: <xsl:value-of select="$voffset"/>px <xsl:value-of select="$hoffset"/>px 0px 0px</xsl:when>
365    <xsl:otherwise>;padding: <xsl:value-of select="$voffset"/>px 0px 0px 0px</xsl:otherwise>
366  </xsl:choose>
367  </xsl:variable>
368   <span  style="{./Font/@css}{$cssClass}">Text Banner</span>
369</xsl:template>
370
371<!-- Template :: Bullet  -->
372<xsl:template match="Bullet">
373 <table border="0" cellspacing="0">
374   <tr><td>
375        <div id="{@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal">
376           <table  border="0" cellspacing="1" cellpadding="1" id="{@id}">
377             <tr>
378                <td width="10" align="left" scope="col" id="{@id}"><img  id="{@id}" src="{@path}"/></td>
379                <td width="100" align="left" scope="col" id="{@id}" class="dataList">Datenlisten-Icon</td>
380             </tr>     
381             <tr>
382                <td width="10" align="left" scope="col" id="{@id}"><img  id="{@id}" src="{@path}"/></td>
383                <td width="100" align="left" scope="col" id="{@id}" class="dataList">Datenlisten-Icon</td>             
384             </tr>
385             <tr>
386                <td width="10" align="left" scope="col" id="{@id}"><img  id="{@id}" src="{@path}"/></td>
387                <td width="100" align="left" scope="col" id="{@id}" class="dataList">Datenlisten-Icon</td>             
388             </tr>                     
389           </table>
390        </div> 
391    </td>
392    <td width="*"></td>
393    </tr>
394  </table>
395</xsl:template>
396
397<!-- Template :: Bullet  mode=preview-->
398<xsl:template match="Bullet" mode="preview">
399 <table border="0" cellspacing="0">
400   <tr><td>       
401           <table  border="0" cellspacing="1" cellpadding="1" id="{@id}">
402             <tr>
403                <td width="10" align="left" scope="col" id="{@id}"><img  id="{@id}" src="{@path}"/></td>
404                <td width="100" align="left" scope="col" id="{@id}" class="dataList">Datenlisten-Icon</td>
405             </tr>     
406             <tr>
407                <td width="10" align="left" scope="col" id="{@id}"><img  id="{@id}" src="{@path}"/></td>
408                <td width="100" align="left" scope="col" id="{@id}" class="dataList">Datenlisten-Icon</td>             
409             </tr>
410             <tr>
411                <td width="10" align="left" scope="col" id="{@id}"><img  id="{@id}" src="{@path}"/></td>
412                <td width="100" align="left" scope="col" id="{@id}" class="dataList">Datenlisten-Icon</td>             
413             </tr>                     
414           </table>       
415    </td>
416    <td width="*"></td>
417    </tr>
418  </table>
419</xsl:template>
420 
421<xsl:template match="Line">
422 <table border="0" cellspacing="0">
423   <tr><td>
424       <div id="{@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" class="objNormal"><img id="{@id}" src="{@path}"/></div>   
425    </td>
426    <td width="*"></td>
427    </tr>
428  </table>     
429</xsl:template>
430
431
432<xsl:template match="Author">                          
433       <span id="{@id}"><font class="label"><xsl:value-of select="@name"/></font></span>                             
434</xsl:template>
435
436<xsl:template match="TableStyles">
437    <table class="objNormal">
438      <tr>
439        <xsl:for-each select="TableStyle">
440          <xsl:if test="position() mod 4 = 0">
441            <xsl:text disable-output-escaping="yes">&lt;/td&gt;</xsl:text>
442            <xsl:text disable-output-escaping="yes">&lt;tr&gt;</xsl:text>
443          </xsl:if>         
444          <td>               
445            <div id="{./@id}" onclick="NOF_StyleView_CallInspector(this, 'graphic')" onmousedown="NOF_StyleView_TsRightClick({./@id})" class="objNormal" bgcolor="#FFFFFF">
446              <table border="0" cellspacing="0" cellpadding="0">
447                <tr>
448                  <xsl:apply-templates select="."/>                 
449                </tr>
450              </table>
451            </div> 
452          </td>
453        </xsl:for-each>
454    </tr>
455  </table>       
456</xsl:template>
457
458
459<xsl:template match="TableStyle[position() != 1 and position() mod 3 = 1]">
460  <xsl:text disable-output-escaping="yes">&lt;/tr&gt;</xsl:text>
461  <xsl:text disable-output-escaping="yes">&lt;tr&gt;</xsl:text>
462  <xsl:call-template name="TableDescription"/>
463</xsl:template>
464<xsl:template match="TableStyle[position() = 1 or position() mod 3 != 1]">
465  <xsl:call-template name="TableDescription"/>
466</xsl:template>
467
468<xsl:template name="TableDescription"> 
469  <td align="left">         
470      <B>
471        <img src="labels/spacer.gif" width="5" height="1"/>
472        <font class="label"><xsl:value-of select="./@name" /></font>
473      </B>
474      <table cellpadding="2" cellspacing="2" border="1" bordercolor="#FFFFFF">                                 
475        <xsl:for-each select="TableLayout">                     
476          <xsl:apply-templates select="."/>                                     
477        </xsl:for-each>                         
478      </table>         
479  </td>
480</xsl:template>
481
482<xsl:variable name="ROWS">5</xsl:variable>
483<xsl:variable name="COLUMNS">5</xsl:variable>
484
485<xsl:template match="TableLayout">              
486  <xsl:variable name="pTop"><xsl:value-of select="parent::TableStyle/RepeatRegion/top"/></xsl:variable>
487  <xsl:variable name="pBottom"><xsl:value-of select="parent::TableStyle/RepeatRegion/bottom"/></xsl:variable>
488  <xsl:variable name="pLeft"><xsl:value-of select="parent::TableStyle/RepeatRegion/left"/></xsl:variable>
489  <xsl:variable name="pRight"><xsl:value-of select="parent::TableStyle/RepeatRegion/right"/></xsl:variable>
490
491  <xsl:variable name="h"><xsl:value-of select="count(parent::TableStyle/TableLayout/row)"/></xsl:variable>
492  <xsl:variable name="w"><xsl:value-of select="count(parent::TableStyle/TableLayout/row/cell) div $h"/></xsl:variable>
493  <xsl:variable name="rrW"><xsl:value-of select="$pRight - $pLeft + 1"/></xsl:variable>
494  <xsl:variable name="rrH"><xsl:value-of select="$pBottom - $pTop + 1"/></xsl:variable>
495 
496       
497  <!-- display row before counting      -->     
498  <xsl:for-each select="row[position() &lt; $pTop]">     
499    <xsl:apply-templates select=".">
500      <xsl:with-param name="pRepeatRegion">0</xsl:with-param>
501      <xsl:with-param name="pLeft"><xsl:value-of select="$pLeft"/></xsl:with-param>
502      <xsl:with-param name="pRight"><xsl:value-of select="$pRight"/></xsl:with-param>                   
503      <xsl:with-param name="pRRWidth"><xsl:value-of select="$rrW"/></xsl:with-param>
504      <xsl:with-param name="pWidth"><xsl:value-of select="$w"/></xsl:with-param>
505    </xsl:apply-templates>
506  </xsl:for-each>       
507   
508 
509  <xsl:call-template name="repeatRows">
510    <xsl:with-param name="pTop"><xsl:value-of select="$pTop"/></xsl:with-param>
511    <xsl:with-param name="pBottom"><xsl:value-of select="$pBottom"/></xsl:with-param>
512    <xsl:with-param name="pLeft"><xsl:value-of select="$pLeft"/></xsl:with-param>
513    <xsl:with-param name="pRight"><xsl:value-of select="$pRight"/></xsl:with-param>
514    <xsl:with-param name="pRRWidth"><xsl:value-of select="$rrW"/></xsl:with-param>
515    <xsl:with-param name="pRRHeight"><xsl:value-of select="$rrH"/></xsl:with-param>
516    <xsl:with-param name="pWidth"><xsl:value-of select="$w"/></xsl:with-param>
517    <xsl:with-param name="pHeight"><xsl:value-of select="$h - $rrH"/></xsl:with-param>
518  </xsl:call-template>
519 
520
521  <!-- display row after counting       -->     
522  <xsl:for-each select="row[position() &gt; $pBottom]">
523    <xsl:apply-templates select=".">
524      <xsl:with-param name="pRepeatRegion">0</xsl:with-param>
525      <xsl:with-param name="pLeft"><xsl:value-of select="$pLeft"/></xsl:with-param>
526      <xsl:with-param name="pRight"><xsl:value-of select="$pRight"/></xsl:with-param>
527      <xsl:with-param name="pRRWidth"><xsl:value-of select="$rrW"/></xsl:with-param>
528      <xsl:with-param name="pWidth"><xsl:value-of select="$w"/></xsl:with-param>
529    </xsl:apply-templates>
530  </xsl:for-each>       
531 
532</xsl:template>
533
534<xsl:template name="repeatRows">
535  <xsl:param name="pTop">1</xsl:param>
536  <xsl:param name="pBottom">1</xsl:param>
537  <xsl:param name="pLeft">1</xsl:param>
538  <xsl:param name="pRight">1</xsl:param>
539  <xsl:param name="pRRWidth">0</xsl:param>
540  <xsl:param name="pRRHeight">0</xsl:param>                     
541  <xsl:param name="pWidth">0</xsl:param>
542  <xsl:param name="pHeight">0</xsl:param>                       
543 
544  <xsl:for-each select="row[(position() &gt;= $pTop) and (position() &lt;= $pBottom)]">
545    <xsl:if test="(position() &lt;= $pRRHeight) and ((position() + $pHeight) &lt;= $ROWS)">
546      <xsl:apply-templates select=".">
547        <xsl:with-param name="pRepeatRegion">1</xsl:with-param>
548        <xsl:with-param name="pLeft"><xsl:value-of select="$pLeft"/></xsl:with-param>
549        <xsl:with-param name="pRight"><xsl:value-of select="$pRight"/></xsl:with-param>                 
550        <xsl:with-param name="pRRWidth"><xsl:value-of select="$pRRWidth"/></xsl:with-param>
551        <xsl:with-param name="pWidth"><xsl:value-of select="$pWidth"/></xsl:with-param>
552      </xsl:apply-templates>
553    </xsl:if>
554  </xsl:for-each>       
555  <xsl:if test="($pHeight + $pRRHeight) &lt; $ROWS">
556    <xsl:call-template name="repeatRows">
557      <xsl:with-param name="pTop"><xsl:value-of select="$pTop"/></xsl:with-param>
558      <xsl:with-param name="pBottom"><xsl:value-of select="$pBottom"/></xsl:with-param>
559      <xsl:with-param name="pLeft"><xsl:value-of select="$pLeft"/></xsl:with-param>
560      <xsl:with-param name="pRight"><xsl:value-of select="$pRight"/></xsl:with-param>                   
561      <xsl:with-param name="pRRWidth"><xsl:value-of select="$pRRWidth"/></xsl:with-param>
562      <xsl:with-param name="pRRHeight"><xsl:value-of select="$pRRHeight"/></xsl:with-param>
563      <xsl:with-param name="pWidth"><xsl:value-of select="$pWidth"/></xsl:with-param>
564      <xsl:with-param name="pHeight"><xsl:value-of select="$pRRHeight + $pHeight"/></xsl:with-param>                   
565    </xsl:call-template>
566  </xsl:if>
567</xsl:template>
568
569
570<xsl:template match="row">
571  <xsl:param name="pRepeatRegion">0</xsl:param>
572  <xsl:param name="pLeft">1</xsl:param>
573  <xsl:param name="pRight">1</xsl:param>
574  <xsl:param name="pRRWidth">1</xsl:param>
575  <xsl:param name="pWidth">1</xsl:param>
576 
577  <xsl:text disable-output-escaping="yes">&lt;tr&gt;</xsl:text>
578 
579  <xsl:for-each select="cell[position() &lt; $pLeft]">                 
580    <xsl:apply-templates select=".">
581      <xsl:with-param name="borderColor">#000000</xsl:with-param>
582    </xsl:apply-templates>             
583    </xsl:for-each>
584
585 
586  <xsl:call-template name="repeatCols">
587    <xsl:with-param name="pRepeatRegion"><xsl:value-of select="$pRepeatRegion"/></xsl:with-param>
588    <xsl:with-param name="pLeft"><xsl:value-of select="$pLeft"/></xsl:with-param>
589    <xsl:with-param name="pRight"><xsl:value-of select="$pRight"/></xsl:with-param>
590    <xsl:with-param name="pRRWidth"><xsl:value-of select="$pRRWidth"/></xsl:with-param>
591    <xsl:with-param name="pWidth"><xsl:value-of select="$pWidth - $pRRWidth"/></xsl:with-param>
592  </xsl:call-template>
593
594
595  <xsl:for-each select="cell[position() &gt; $pRight]">         
596    <xsl:apply-templates select=".">
597      <xsl:with-param name="borderColor">#000000</xsl:with-param>
598    </xsl:apply-templates>             
599    </xsl:for-each>
600   
601  <xsl:text disable-output-escaping="yes">&lt;/tr&gt;</xsl:text>
602   
603</xsl:template>
604
605
606<xsl:template name="repeatCols">
607  <xsl:param name="pRepeatRegion">0</xsl:param>
608  <xsl:param name="pLeft">1</xsl:param>
609  <xsl:param name="pRight">1</xsl:param>
610  <xsl:param name="pRRWidth">0</xsl:param>
611  <xsl:param name="pWidth">0</xsl:param>
612   
613  <xsl:for-each select="cell[(position() &gt;= $pLeft) and (position() &lt;= $pRight)]">
614    <xsl:if test="(position() &lt;= $pRRWidth) and ((position() + $pWidth) &lt;= $COLUMNS)">
615      <xsl:choose>
616        <xsl:when test="$pRepeatRegion = 1">
617          <xsl:apply-templates select=".">
618            <xsl:with-param name="borderColor">#FF0000</xsl:with-param>
619          </xsl:apply-templates>
620        </xsl:when>
621        <xsl:otherwise>
622          <xsl:apply-templates select=".">
623            <xsl:with-param name="borderColor">#000000</xsl:with-param>
624          </xsl:apply-templates>
625        </xsl:otherwise>
626      </xsl:choose>
627    </xsl:if>
628  </xsl:for-each>       
629  <xsl:if test="($pWidth + $pRRWidth) &lt; $COLUMNS">
630    <xsl:call-template name="repeatCols">
631      <xsl:with-param name="pRepeatRegion"><xsl:value-of select="$pRepeatRegion"/></xsl:with-param>             
632      <xsl:with-param name="pLeft"><xsl:value-of select="$pLeft"/></xsl:with-param>
633      <xsl:with-param name="pRight"><xsl:value-of select="$pRight"/></xsl:with-param>
634      <xsl:with-param name="pRRWidth"><xsl:value-of select="$pRRWidth"/></xsl:with-param>
635      <xsl:with-param name="pWidth"><xsl:value-of select="$pWidth + $pRRWidth"/></xsl:with-param>                       
636    </xsl:call-template>
637  </xsl:if>
638</xsl:template>
639
640
641<xsl:template match="cell">
642  <xsl:param name="borderColor">
643    #FFFFFF
644  </xsl:param>
645  <td bgcolor="{@bgcolor}" background="{@background}" width="40" height="30" bordercolor="{$borderColor}" align="center" valign="center">               
646    <xsl:if test="Font/@italic = 1">
647      <xsl:text disable-output-escaping="yes">&lt;I&gt;</xsl:text>
648    </xsl:if>
649    <xsl:if test="Font/@underline = 1">
650      <xsl:text disable-output-escaping="yes">&lt;U&gt;</xsl:text>
651    </xsl:if>
652     
653    <Font face="{Font/@face}" color="{Font/@color}">
654      Text
655    </Font>
656       
657    <xsl:if test="Font/@italic = 1">
658      <xsl:text disable-output-escaping="yes">&lt;/I&gt;</xsl:text>
659    </xsl:if>
660    <xsl:if test="Font/@underline = 1">
661      <xsl:text disable-output-escaping="yes">&lt;/U&gt;</xsl:text>
662    </xsl:if>           
663  </td>
664</xsl:template>
665
666</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.