ui-d.xsl 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!--
  3. This file is part of the DITA Open Toolkit project.
  4. Copyright 2004, 2005 IBM Corporation
  5. See the accompanying LICENSE file for applicable license.
  6. -->
  7. <xsl:stylesheet version="2.0"
  8. xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  9. <xsl:template match="*[contains(@class,' ui-d/screen ')]" name="topic.ui-d.screen">
  10. <xsl:apply-templates select="*[contains(@class,' ditaot-d/ditaval-startprop ')]" mode="out-of-line"/>
  11. <xsl:call-template name="spec-title-nospace"/>
  12. <pre class="screen">
  13. <xsl:call-template name="commonattributes"/>
  14. <xsl:call-template name="setscale"/>
  15. <xsl:call-template name="setidaname"/>
  16. <xsl:apply-templates/>
  17. </pre>
  18. <xsl:apply-templates select="*[contains(@class,' ditaot-d/ditaval-endprop ')]" mode="out-of-line"/>
  19. </xsl:template>
  20. <xsl:template match="*[contains(@class,' ui-d/uicontrol ')]" name="topic.ui-d.uicontrol">
  21. <!-- insert an arrow with leading/trailing spaces before all but the first uicontrol in a menucascade -->
  22. <xsl:if test="ancestor::*[contains(@class,' ui-d/menucascade ')]">
  23. <xsl:variable name="uicontrolcount"><xsl:number count="*[contains(@class,' ui-d/uicontrol ')]"/></xsl:variable>
  24. <xsl:if test="$uicontrolcount&gt;'1'">
  25. <xsl:variable name="a11y.text" as="text()?">
  26. <xsl:call-template name="getVariable">
  27. <xsl:with-param name="id" select="'a11y.and-then'"/>
  28. </xsl:call-template>
  29. </xsl:variable>
  30. <abbr>
  31. <xsl:if test="exists($a11y.text)">
  32. <xsl:attribute name="title" select="$a11y.text"/>
  33. </xsl:if>
  34. <xsl:call-template name="getVariable">
  35. <xsl:with-param name="id" select="'#menucascade-separator'"/>
  36. </xsl:call-template>
  37. </abbr>
  38. </xsl:if>
  39. </xsl:if>
  40. <span class="uicontrol">
  41. <xsl:call-template name="commonattributes"/>
  42. <xsl:call-template name="setidaname"/>
  43. <xsl:apply-templates/>
  44. </span>
  45. </xsl:template>
  46. <xsl:template match="*[contains(@class,' ui-d/wintitle ')]" name="topic.ui-d.wintitle">
  47. <span class="wintitle">
  48. <xsl:call-template name="commonattributes"/>
  49. <xsl:call-template name="setidaname"/>
  50. <xsl:apply-templates/>
  51. </span>
  52. </xsl:template>
  53. <xsl:template match="*[contains(@class,' ui-d/menucascade ')]" name="topic.ui-d.menucascade">
  54. <span class="menucascade">
  55. <xsl:call-template name="commonattributes"/>
  56. <xsl:call-template name="setidaname"/>
  57. <xsl:apply-templates/>
  58. </span>
  59. </xsl:template>
  60. <!-- Ignore text inside menucascade -->
  61. <xsl:template match="*[contains(@class,' ui-d/menucascade ')]/text()"/>
  62. <xsl:template match="*[contains(@class,' ui-d/shortcut ')]" name="topic.ui-d.shortcut">
  63. <span class="shortcut">
  64. <xsl:call-template name="commonattributes"/>
  65. <xsl:call-template name="setidaname"/>
  66. <xsl:apply-templates/>
  67. </span>
  68. </xsl:template>
  69. </xsl:stylesheet>