diff -r 8a9d4c794cba -r fe945f1f48b7 svghmi/analyse_widget.xslt --- a/svghmi/analyse_widget.xslt Mon May 03 00:14:38 2021 +0200 +++ b/svghmi/analyse_widget.xslt Tue May 18 09:22:17 2021 +0200 @@ -145,9 +145,529 @@ + + + + + + AnimateRotation - DEPRECATED, do not use. + + Doesn't follow WYSIWYG principle, and forces user to add animateTransform tag in SVG (using inkscape XML editor for exemple) + + + + AnimateRotation - DEPRECATED + + + speed + + + + + + + + Back widget brings focus back to previous page in history when clicked. + + + + Jump to previous page + + + + + + + + Button widget takes one boolean variable path, and reflect current true + + or false value by showing "active" or "inactive" labeled element + + respectively. Pressing and releasing button changes variable to true and + + false respectively. Potential inconsistency caused by quick consecutive + + presses on the button is mitigated by using a state machine that wait for + + previous state change to be reflected on variable before applying next one. + + + + Push button reflecting consistently given boolean variable + + + Boolean variable + + + + + + + + CircularBar widget changes the end angle of a "path" labeled arc according + + to value of the single accepted variable. + + + + If "min" a "max" labeled texts are provided, then they are used as + + respective minimum and maximum value. Otherwise, value is expected to be + + in between 0 and 100. + + + + If "value" labeled text is found, then its content is replaced by value. + + + + Change end angle of Inkscape's arc + + + Value to display + + + + + + + + CircularSlider - DEPRECATED, to be replaced by PathSlider + + This widget moves "handle" labeled group along "range" labeled + + arc, according to value of the single accepted variable. + + + + If "min" a "max" labeled texts are provided, or if first and second + + argument are given, then they are used as respective minimum and maximum + + value. Otherwise, value is expected to be in between 0 and 100. + + + + If "value" labeled text is found, then its content is replaced by value. + + During drag, "setpoint" labeled group is moved to position defined by user + + while "handle" reflects current value from variable. + + + + CircularSlider - DEPRECATED + + + minimum value + + + maximum value + + + Value to display + + + + + + + + CustomHtml widget allows insertion of HTML code in a svg:foreignObject. + + Widget content is replaced by foreignObject. HTML code is obtained from + + "code" labeled text content. HTML insert position and size is given with + + "container" labeled element. + + + + Custom HTML insert + + + + + + + + If Display widget is a svg:text element, then text content is replaced by + + value of given variables, space separated. + + + + Otherwise, if Display widget is a group containing a svg:text element + + labelled "format", then text content is replaced by printf-like formated + + string. In other words, if "format" labeled text is "%d %s %f", then 3 + + variables paths are expected : HMI_IN, HMI_STRING and HMI_REAL. + + + + In case Display widget is a svg::text element, it is also possible to give + + format string as first argument. + + + + Printf-like formated text display + + + printf-like format string when not given as svg:text + + + variables to be displayed + + + + + + + + DropDown widget let user select an entry in a list of texts, given as + + arguments. Single variable path is index of selection. + + + + It needs "text" (svg:text), "box" (svg:rect), "button" (svg:*), + + and "highlight" (svg:rect) labeled elements. + + + + When user clicks on "button", "text" is duplicated to display enties in the + + limit of available space in page, and "box" is extended to contain all + + texts. "highlight" is moved over pre-selected entry. + + + + When only one argument is given, and argment contains "#langs" then list of + + texts is automatically set to the list of human-readable languages supported + + by this HMI. + + + + Let user select text entry in a drop-down menu + + + drop-down menu entries + + + selection index + + + + + + + + ForEach widget is used to span a small set of widget over a larger set of + + repeated HMI_NODEs. + + + + Idea is somewhat similar to relative page, but it all happens inside the + + ForEach widget, no page involved. + + + + Together with relative Jump widgets it can be used to build a menu to reach + + relative pages covering many identical HMI_NODES siblings. + + + + ForEach widget takes a HMI_CLASS name as argument and a HMI_NODE path as + + variable. + + + + Direct sub-elements can be either groups of widget to be spanned, labeled + + "ClassName:offset", or buttons to control the spanning, labeled + + "ClassName:+/-number". + + + + span widgets over a set of repeated HMI_NODEs + + + HMI_CLASS name + + + where to find HMI_NODEs whose HMI_CLASS is class_name + + + + + + + + Input widget takes one variable path, and displays current value in + + optional "value" labeled sub-element. + + + + Click on optional "edit" labeled element opens keypad to edit value. + + + + Operation on current value is performed when click on sub-elements with + + label starting with '=', '+' or '-' sign. Value after sign is used as + + operand. + + + + Input field with predefined operation buttons + + + optional printf-like format + + + single variable to edit + + + + + + + + Send given variables as POST to http URL argument, spread returned JSON in + + SVG sub-elements of "data" labeled element. + + + + Documentation to be written. see svbghmi exemple. + + + + Http POST variables, spread JSON back + + + + + + single variable to edit + + + + + + + + Jump widget brings focus to a different page. Mandatory single argument + + gives name of the page. + + + + Optional single path is used as new reference when jumping to a relative + + page, it must point to a HMI_NODE. + + + + "active"+"inactive" labeled elements can be provided and reflect current + + page being shown. + + + + "disabled" labeled element, if provided, is shown instead of "active" or + + "inactive" widget when pointed HMI_NODE is null. + + + + Jump to given page + + + name of page to jump to + + + reference for relative jump + + + + + + + + Keypad - to be written + + + + Keypad + + + keypad can input those types + + + + + + + + + + + + + Meter widget moves the end of "needle" labeled path along "range" labeled + + path, according to value of the single accepted variable. + + + + Needle is reduced to a single segment. If "min" a "max" labeled texts + + are provided, or if first and second argument are given, then they are used + + as respective minimum and maximum value. Otherwise, value is expected to be + + in between 0 and 100. + + + + If "value" labeled text is found, then its content is replaced by value. + + + + Moves "needle" along "range" + + + minimum value + + + maximum value + + + Value to display + + + + + + + + ScrollBar - documentation to be written + + + + ScrollBar + + + value + + + range + + + visible + + + + + + + + Slider - DEPRECATED - use ScrollBar or PathSlider instead + + + + Slider - DEPRECATED - use ScrollBar instead + + + value + + + range + + + visible + + + + + + + + Switch widget hides all subelements whose label do not match given + + variable current value representation. For exemple if given variable type + + is HMI_INT and value is 1, then elements with label '1' will be displayed. + + Label can have comments, so '1#some comment' would also match. If matching + + variable of type HMI_STRING, then double quotes must be used. For exemple, + + '"hello"' or '"hello"#another comment' match HMI_STRING 'hello'. + + + + Show elements whose label match value. + + + value to compare to labels + + + + + + + + Button widget takes one boolean variable path, and reflect current true + + or false value by showing "active" or "inactive" labeled element + + respectively. Clicking or touching button toggles variable. + + + + Toggle button reflecting given boolean variable + + + Boolean variable + + + + + + + + + + + + + + + + + + + - +