equal
deleted
inserted
replaced
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 |