--- a/svghmi/detachable_pages.ysl2 Tue Mar 23 14:09:55 2021 +0100
+++ b/svghmi/detachable_pages.ysl2 Thu Mar 25 10:13:12 2021 +0100
@@ -93,10 +93,7 @@
const "required_list_elements", "func:refered_elements($hmi_lists[@id = $required_page_elements/@id])";
-const "required_elements",
- """//svg:defs/descendant-or-self::svg:*
- | $required_list_elements
- | $required_page_elements""";
+const "required_elements", "$defs | $required_list_elements | $required_page_elements"; const "discardable_elements", "//svg:*[not(@id = $required_elements/@id)]";
--- a/svghmi/gen_index_xhtml.xslt Tue Mar 23 14:09:55 2021 +0100
+++ b/svghmi/gen_index_xhtml.xslt Thu Mar 25 10:13:12 2021 +0100
@@ -303,7 +303,9 @@
- <xsl:variable name="geometry" select="ns:GetSVGGeometry()"/>
+ <xsl:variable name="all_geometry" select="ns:GetSVGGeometry()"/> + <xsl:variable name="defs" select="//svg:defs/descendant-or-self::svg:*"/> + <xsl:variable name="geometry" select="$all_geometry[not(@Id = $defs/@id)]"/> <xsl:template match="debug:geometry">
@@ -476,7 +478,7 @@
<xsl:variable name="hmi_lists_descs" select="$parsed_widgets/widget[@type = 'List']"/>
<xsl:variable name="hmi_lists" select="$hmi_elements[@id = $hmi_lists_descs/@id]"/>
<xsl:variable name="required_list_elements" select="func:refered_elements($hmi_lists[@id = $required_page_elements/@id])"/>
- <xsl:variable name="required_elements" select="//svg:defs/descendant-or-self::svg:* | $required_list_elements | $required_page_elements"/>
+ <xsl:variable name="required_elements" select="$defs | $required_list_elements | $required_page_elements"/> <xsl:variable name="discardable_elements" select="//svg:*[not(@id = $required_elements/@id)]"/>
<func:function name="func:sumarized_elements">
<xsl:param name="elements"/>
--- a/svghmi/geometry.ysl2 Tue Mar 23 14:09:55 2021 +0100
+++ b/svghmi/geometry.ysl2 Thu Mar 25 10:13:12 2021 +0100
@@ -5,7 +5,9 @@
// This retrieves geometry obtained through "inkscape -S"
// already parsed by python and presented as a list of
// <bbox x="0" y="0" w="42" h="42">
-const "geometry", "ns:GetSVGGeometry()";
+const "all_geometry", "ns:GetSVGGeometry()"; +const "defs", "//svg:defs/descendant-or-self::svg:*"; +const "geometry", "$all_geometry[not(@Id = $defs/@id)]";