svghmi/gen_index_xhtml.xslt
branchsvghmi
changeset 2885 f398896b7ebf
parent 2883 8e3d130399b0
child 2886 6c82fad8be65
equal deleted inserted replaced
2884:50b9832c51fc 2885:f398896b7ebf
   130           </xsl:for-each>
   130           </xsl:for-each>
   131         </widget>
   131         </widget>
   132       </xsl:if>
   132       </xsl:if>
   133     </xsl:variable>
   133     </xsl:variable>
   134     <func:result select="exsl:node-set($ast)"/>
   134     <func:result select="exsl:node-set($ast)"/>
       
   135   </func:function>
       
   136   <func:function name="func:parselabels">
       
   137     <xsl:param name="nodes"/>
       
   138     <xsl:choose>
       
   139       <xsl:when test="$nodes">
       
   140         <func:result select="func:parselabel($nodes[1]/@inkscape:label)&#10;                      | func:parselabels($nodes[position()!=1])"/>
       
   141       </xsl:when>
       
   142       <xsl:otherwise>
       
   143         <func:result select="/.."/>
       
   144       </xsl:otherwise>
       
   145     </xsl:choose>
   135   </func:function>
   146   </func:function>
   136   <xsl:template mode="testtree" match="*">
   147   <xsl:template mode="testtree" match="*">
   137     <xsl:param name="indent" select="''"/>
   148     <xsl:param name="indent" select="''"/>
   138     <xsl:value-of select="$indent"/>
   149     <xsl:value-of select="$indent"/>
   139     <xsl:text> </xsl:text>
   150     <xsl:text> </xsl:text>
   312   <xsl:template mode="page_desc" match="svg:*">
   323   <xsl:template mode="page_desc" match="svg:*">
   313     <xsl:variable name="desc" select="func:parselabel(@inkscape:label)/widget"/>
   324     <xsl:variable name="desc" select="func:parselabel(@inkscape:label)/widget"/>
   314     <xsl:variable name="page" select="."/>
   325     <xsl:variable name="page" select="."/>
   315     <xsl:variable name="p" select="$geometry[@Id = $page/@id]"/>
   326     <xsl:variable name="p" select="$geometry[@Id = $page/@id]"/>
   316     <xsl:variable name="page_all_elements" select="func:all_related_elements($page)"/>
   327     <xsl:variable name="page_all_elements" select="func:all_related_elements($page)"/>
   317     <xsl:variable name="all_page_widgets" select="$hmi_elements[@id = $page_all_elements/@id and @id != $page/@id]"/>
   328     <xsl:variable name="all_page_widgets" select="$hmi_elements[@id = $page_all_elements/@id and @id != $page/@id][not(func:parselabels(ancestor::svg:*)/widget/@type = 'ForEach')]"/>
   318     <xsl:variable name="page_relative_widgets" select="$all_page_widgets[func:is_descendant_path(func:parselabel(@inkscape:label)/widget/path/@value, $desc/path/@value)]"/>
   329     <xsl:variable name="page_relative_widgets" select="$all_page_widgets[func:is_descendant_path(func:parselabel(@inkscape:label)/widget/path/@value, $desc/path/@value)]"/>
   319     <xsl:variable name="required_detachables" select="func:sumarized_elements($page_all_elements)/&#10;           ancestor-or-self::*[@id = $detachable_elements/@id]"/>
   330     <xsl:variable name="required_detachables" select="func:sumarized_elements($page_all_elements)/&#10;           ancestor-or-self::*[@id = $detachable_elements/@id]"/>
   320     <xsl:text>  "</xsl:text>
   331     <xsl:text>  "</xsl:text>
   321     <xsl:value-of select="$desc/arg[1]/@value"/>
   332     <xsl:value-of select="$desc/arg[1]/@value"/>
   322     <xsl:text>": {
   333     <xsl:text>": {