ui-d.xsl 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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. <!-- Screen -->
  10. <xsl:template match="*[contains(@class,' ui-d/screen ')]" name="topic.ui-d.screen">
  11. <xsl:apply-templates select="*[contains(@class,' ditaot-d/ditaval-startprop ')]" mode="out-of-line"/>
  12. <xsl:call-template name="spec-title-nospace"/>
  13. <pre class="screen">
  14. <xsl:call-template name="commonattributes"/>
  15. <xsl:call-template name="setscale"/>
  16. <xsl:call-template name="setidaname"/>
  17. <xsl:apply-templates/>
  18. </pre>
  19. <xsl:apply-templates select="*[contains(@class,' ditaot-d/ditaval-endprop ')]" mode="out-of-line"/>
  20. <xsl:value-of select="$newline"/>
  21. </xsl:template>
  22. <!-- ui-domain.ent domain: uicontrol | wintitle | menucascade | shortcut -->
  23. <xsl:template match="*[contains(@class,' ui-d/uicontrol ')]" name="topic.ui-d.uicontrol">
  24. <!-- insert an arrow with leading/trailing spaces before all but the first uicontrol in a menucascade -->
  25. <xsl:if test="ancestor::*[contains(@class,' ui-d/menucascade ')]">
  26. <xsl:if test="exists(preceding-sibling::*[contains(@class,' ui-d/uicontrol ')])">
  27. <xsl:variable name="a11y.text" as="text()?">
  28. <xsl:call-template name="getVariable">
  29. <xsl:with-param name="id" select="'a11y.and-then'"/>
  30. </xsl:call-template>
  31. </xsl:variable>
  32. <abbr>
  33. <xsl:if test="exists($a11y.text)">
  34. <xsl:attribute name="title" select="$a11y.text"/>
  35. </xsl:if>
  36. <xsl:call-template name="getVariable">
  37. <xsl:with-param name="id" select="'#menucascade-separator'"/>
  38. </xsl:call-template>
  39. </abbr>
  40. </xsl:if>
  41. </xsl:if>
  42. <span class="uicontrol">
  43. <xsl:call-template name="commonattributes"/>
  44. <xsl:call-template name="setidaname"/>
  45. <xsl:apply-templates/>
  46. </span>
  47. </xsl:template>
  48. <xsl:template match="*[contains(@class,' ui-d/wintitle ')]" name="topic.ui-d.wintitle">
  49. <span class="wintitle">
  50. <xsl:call-template name="commonattributes"/>
  51. <xsl:call-template name="setidaname"/>
  52. <xsl:apply-templates/>
  53. </span>
  54. </xsl:template>
  55. <xsl:template match="*[contains(@class,' ui-d/menucascade ')]" name="topic.ui-d.menucascade">
  56. <span class="menucascade">
  57. <xsl:call-template name="commonattributes"/>
  58. <xsl:call-template name="setidaname"/>
  59. <xsl:apply-templates/>
  60. </span>
  61. </xsl:template>
  62. <!-- Ignore text inside menucascade -->
  63. <xsl:template match="*[contains(@class,' ui-d/menucascade ')]/text()"/>
  64. <xsl:template match="*[contains(@class,' ui-d/shortcut ')]" name="topic.ui-d.shortcut">
  65. <span class="shortcut">
  66. <xsl:call-template name="commonattributes"/>
  67. <xsl:call-template name="setidaname"/>
  68. <xsl:apply-templates/>
  69. </span>
  70. </xsl:template>
  71. </xsl:stylesheet>