edouard@3929: Widget Types edouard@3929: ============ edouard@3929: edouard@3929: edouard@3929: HMI:Animate edouard@3929: ----------- edouard@3929: edouard@3929: edouard@3929: HMI:Animaterotation edouard@3929: ------------------- edouard@3929: edouard@3929: edouard@3929: HMI:Assign edouard@3929: ---------- edouard@3929: edouard@3929: edouard@3929: HMI:Back edouard@3929: -------- edouard@3929: edouard@3929: edouard@3929: HMI:Button edouard@3929: ---------- edouard@3929: edouard@3929: edouard@3929: HMI:Circularbar edouard@3929: --------------- edouard@3929: edouard@3929: edouard@3929: HMI:Circularslider edouard@3929: ------------------ edouard@3929: edouard@3929: edouard@3929: HMI:Custom edouard@3929: ---------- edouard@3929: edouard@3929: edouard@3929: HMI:Customhtml edouard@3929: -------------- edouard@3929: edouard@3929: edouard@3929: HMI:Display edouard@3929: ----------- edouard@3929: edouard@3929: edouard@3929: HMI:Dropdown edouard@3929: ------------ edouard@3929: edouard@3929: edouard@3929: HMI:Foreach edouard@3929: ----------- edouard@3929: edouard@3929: 44305363+kraskrom@4056: HMI:Image 44305363+kraskrom@4056: --------- 44305363+kraskrom@4056: | It is an SVG Image element with label 44305363+kraskrom@4056: | ``HMI:Image:variable`` 44305363+kraskrom@4056: | where ``variable`` contains the HTTP GET path to the image it should display. 44305363+kraskrom@4056: 44305363+kraskrom@4056: edouard@3929: HMI:Input edouard@3929: --------- edouard@3929: edouard@3929: 44305363+kraskrom@4056: HMI:JsonTable edouard@3929: ------------- 44305363+kraskrom@4056: | It is a SVG (group) element with label 44305363+kraskrom@4056: | ``HMI:JsonTable:path@notify_var@range_var@position_var@visible_var@filter_var`` 44305363+kraskrom@4056: | where: 44305363+kraskrom@4056: * ``path`` is HTTP POST path used to fetch JSON list response 44305363+kraskrom@4056: * ``range_var`` is a variable containing number of elements in a list 44305363+kraskrom@4056: * ``position_var`` is a variable containing index of the first element from the list shown in the table 44305363+kraskrom@4056: * ``visible_var`` is a variable with number of elements to be displayed in the table 44305363+kraskrom@4056: * ``filter_var`` is a variable containing the string which is posted in a request for JSON response, and it's used to filter the results 44305363+kraskrom@4056: | On render request, the widget does a POST request to the path. That request contains all the variables listed above. 44305363+kraskrom@4056: | Handler for the request should be written in such manner that it returns a JSON list containing defined number of elements. 44305363+kraskrom@4056: | Elements are objects with keys and values defined by a user. 44305363+kraskrom@4056: | SVG element itself contains another element group ``data``. All of the elements in that group are also groups, with name ``[i]`` where ``i`` goes from 0 to ``visible_var - 1``. Only the last one is actually created, others are just copy of it. 44305363+kraskrom@4056: | Elements from ``data`` can be placed in such manner to depict table rows. 44305363+kraskrom@4056: | Elements in ``[i]`` can emulate columns. They can be: 44305363+kraskrom@4056: * HMI:TextStyleList (label dictates the style and text content) 44305363+kraskrom@4056: * Image (label dictates path to the image) 44305363+kraskrom@4056: * Other SVG elements 44305363+kraskrom@4056: | Any of the above elements can have label with ``onClick[acknowledge]=var`` which means that on a click on such element, the same POST request is invoked, but among ``options`` posted now there is a variable ``onClick[acknowledge]`` and its value is ``var`` 44305363+kraskrom@4056: | Beside ``data`` element, there can also be ``action_reset`` group element with similar behavior as stated above: click invokes POST with ``action_reset`` among ``options``. 44305363+kraskrom@4056: | If it's needed to display images in a table, and those images should be loaded dynamically, one may use GET handler to load and return appropriate image. edouard@3929: edouard@3929: HMI:Jump edouard@3929: -------- edouard@3929: edouard@3929: edouard@3929: HMI:Keypad edouard@3929: ---------- edouard@3929: edouard@3929: edouard@3929: HMI:List edouard@3929: -------- edouard@3929: edouard@3929: edouard@3929: HMI:Listswitch edouard@3929: -------------- edouard@3929: edouard@3929: edouard@3929: HMI:Meter edouard@3929: --------- edouard@3929: edouard@3929: edouard@3929: HMI:Multistate edouard@3929: -------------- edouard@3929: edouard@3929: edouard@3929: HMI:Page edouard@3929: -------- edouard@3929: edouard@3929: edouard@3929: HMI:Pathslider edouard@3929: -------------- edouard@3929: edouard@3929: edouard@3929: HMI:Scrollbar edouard@3929: ------------- edouard@3929: edouard@3929: edouard@3929: HMI:Slider edouard@3929: ---------- edouard@3929: edouard@3929: edouard@3929: HMI:Switch edouard@3929: ---------- edouard@3929: edouard@3929: edouard@3929: HMI:Textlist edouard@3929: ------------ edouard@3929: edouard@3929: edouard@3929: HMI:Textstylelist edouard@3929: ----------------- edouard@3929: edouard@3929: edouard@3929: HMI:Tooglebutton edouard@3929: ---------------- edouard@3929: edouard@3929: edouard@3929: HMI:Xygraph edouard@3929: ----------- edouard@3929: