plcopen/pou_variables.xslt
changeset 3868 e9807c28a788
parent 3802 8616ffd7c29d
equal deleted inserted replaced
3867:a070a9681961 3868:e9807c28a788
   200       <xsl:with-param name="type">
   200       <xsl:with-param name="type">
   201         <xsl:value-of select="@typeName"/>
   201         <xsl:value-of select="@typeName"/>
   202       </xsl:with-param>
   202       </xsl:with-param>
   203     </xsl:call-template>
   203     </xsl:call-template>
   204   </xsl:template>
   204   </xsl:template>
       
   205   <xsl:template mode="var_class" match="*[self::ppx:type or self::ppx:baseType]/*">
       
   206     <xsl:param name="default_class"/>
       
   207     <xsl:value-of select="$default_class"/>
       
   208   </xsl:template>
   205   <xsl:template mode="var_class" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
   209   <xsl:template mode="var_class" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
   206     <xsl:param name="default_class"/>
   210     <xsl:param name="default_class"/>
   207     <xsl:variable name="type_name" select="@name"/>
   211     <xsl:variable name="type_name" select="@name"/>
   208     <xsl:variable name="pou_infos" select="$all_types/ppx:pous/ppx:pou[@name=$type_name]"/>
   212     <xsl:variable name="pou_infos" select="$all_types/ppx:pous/ppx:pou[@name=$type_name]"/>
   209     <xsl:choose>
   213     <xsl:choose>
   216     </xsl:choose>
   220     </xsl:choose>
   217   </xsl:template>
   221   </xsl:template>
   218   <xsl:template mode="var_class" match="ppx:pou">
   222   <xsl:template mode="var_class" match="ppx:pou">
   219     <xsl:value-of select="@pouType"/>
   223     <xsl:value-of select="@pouType"/>
   220   </xsl:template>
   224   </xsl:template>
   221   <xsl:template mode="var_class" priority="-1.0" match="*[self::ppx:type or self::ppx:baseType]/*">
   225   <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType]/*">
   222     <xsl:param name="default_class"/>
   226     <xsl:value-of select="local-name()"/>
   223     <xsl:value-of select="$default_class"/>
       
   224   </xsl:template>
   227   </xsl:template>
   225   <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
   228   <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
   226     <xsl:value-of select="@name"/>
   229     <xsl:value-of select="@name"/>
   227   </xsl:template>
   230   </xsl:template>
   228   <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType]/ppx:array">
   231   <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType]/ppx:array">
   239     <xsl:text>STRING</xsl:text>
   242     <xsl:text>STRING</xsl:text>
   240   </xsl:template>
   243   </xsl:template>
   241   <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType]/ppx:wstring">
   244   <xsl:template mode="var_type" match="*[self::ppx:type or self::ppx:baseType]/ppx:wstring">
   242     <xsl:text>WSTRING</xsl:text>
   245     <xsl:text>WSTRING</xsl:text>
   243   </xsl:template>
   246   </xsl:template>
   244   <xsl:template mode="var_type" priority="-1.0" match="*[self::ppx:type or self::ppx:baseType]/*">
   247   <xsl:template mode="var_edit" match="*[self::ppx:type or self::ppx:baseType]/*">
   245     <xsl:value-of select="local-name()"/>
   248     <xsl:text>false</xsl:text>
   246   </xsl:template>
   249   </xsl:template>
   247   <xsl:template mode="var_edit" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
   250   <xsl:template mode="var_edit" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
   248     <xsl:variable name="type_name" select="@name"/>
   251     <xsl:variable name="type_name" select="@name"/>
   249     <xsl:variable name="pou_infos" select="$project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]"/>
   252     <xsl:variable name="pou_infos" select="$project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]"/>
   250     <xsl:choose>
   253     <xsl:choose>
   257     </xsl:choose>
   260     </xsl:choose>
   258   </xsl:template>
   261   </xsl:template>
   259   <xsl:template mode="var_edit" match="*[self::ppx:type or self::ppx:baseType]/ppx:array">
   262   <xsl:template mode="var_edit" match="*[self::ppx:type or self::ppx:baseType]/ppx:array">
   260     <xsl:apply-templates mode="var_edit" select="ppx:baseType"/>
   263     <xsl:apply-templates mode="var_edit" select="ppx:baseType"/>
   261   </xsl:template>
   264   </xsl:template>
   262   <xsl:template mode="var_edit" priority="-1.0" match="*[self::ppx:type or self::ppx:baseType]/*">
   265   <xsl:template mode="var_debug" match="*[self::ppx:type or self::ppx:baseType]/*">
   263     <xsl:text>false</xsl:text>
   266     <xsl:text>true</xsl:text>
   264   </xsl:template>
   267   </xsl:template>
   265   <xsl:template mode="var_debug" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
   268   <xsl:template mode="var_debug" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
   266     <xsl:variable name="type_name" select="@name"/>
   269     <xsl:variable name="type_name" select="@name"/>
   267     <xsl:variable name="datatype_infos" select="             $project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] |             $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]         "/>
   270     <xsl:variable name="datatype_infos" select="             $project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] |             $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]         "/>
   268     <xsl:choose>
   271     <xsl:choose>
   281     <xsl:text>false</xsl:text>
   284     <xsl:text>false</xsl:text>
   282   </xsl:template>
   285   </xsl:template>
   283   <xsl:template mode="var_debug" match="*[self::ppx:type or self::ppx:baseType]/ppx:struct">
   286   <xsl:template mode="var_debug" match="*[self::ppx:type or self::ppx:baseType]/ppx:struct">
   284     <xsl:text>false</xsl:text>
   287     <xsl:text>false</xsl:text>
   285   </xsl:template>
   288   </xsl:template>
   286   <xsl:template mode="var_debug" priority="-1.0" match="*[self::ppx:type or self::ppx:baseType]/*">
       
   287     <xsl:text>true</xsl:text>
       
   288   </xsl:template>
       
   289 </xsl:stylesheet>
   289 </xsl:stylesheet>