svghmi/detachable_pages.ysl2
branchsvghmi
changeset 3121 8094494113b6
parent 3117 f058542d0caa
child 3161 edd558965f58
equal deleted inserted replaced
3119:17a9c7a334f7 3121:8094494113b6
   107     }
   107     }
   108     | }
   108     | }
   109 }
   109 }
   110 
   110 
   111 const "forEach_widgets_ids", "$parsed_widgets/widget[@type = 'ForEach']/@id";
   111 const "forEach_widgets_ids", "$parsed_widgets/widget[@type = 'ForEach']/@id";
   112 const "forEach_widgets", "$hmi_elements[@id = $forEach_widgets_ids]";
   112 const "forEach_widgets", "$hmi_widgets[@id = $forEach_widgets_ids]";
   113 const "in_forEach_widget_ids", "func:refered_elements($forEach_widgets)[not(@id = $forEach_widgets_ids)]/@id";
   113 const "in_forEach_widget_ids", "func:refered_elements($forEach_widgets)[not(@id = $forEach_widgets_ids)]/@id";
   114 
   114 
   115 template "svg:*", mode="page_desc" {
   115 template "svg:*", mode="page_desc" {
   116     if "ancestor::*[@id = $hmi_pages/@id]" error > HMI:Page «@id» is nested in another HMI:Page
   116     if "ancestor::*[@id = $hmi_pages/@id]" error > HMI:Page «@id» is nested in another HMI:Page
   117 
   117 
   119     const "page", ".";
   119     const "page", ".";
   120     const "p", "$geometry[@Id = $page/@id]";
   120     const "p", "$geometry[@Id = $page/@id]";
   121 
   121 
   122     const "page_all_elements", "func:all_related_elements($page)";
   122     const "page_all_elements", "func:all_related_elements($page)";
   123 
   123 
   124     const "all_page_widgets","$hmi_elements[@id = $page_all_elements/@id and @id != $page/@id]";
   124     const "all_page_widgets","$hmi_widgets[@id = $page_all_elements/@id and @id != $page/@id]";
   125     const "page_managed_widgets","$all_page_widgets[not(@id=$in_forEach_widget_ids)]";
   125     const "page_managed_widgets","$all_page_widgets[not(@id=$in_forEach_widget_ids)]";
   126     const "page_relative_widgets",
   126     const "page_relative_widgets",
   127         "$page_managed_widgets[func:is_descendant_path(func:widget(@id)/path/@value, $desc/path/@value)]";
   127         "$page_managed_widgets[func:is_descendant_path(func:widget(@id)/path/@value, $desc/path/@value)]";
   128 
   128 
   129     // Take closest ancestor in detachable_elements
   129     // Take closest ancestor in detachable_elements