Details
-
Feature
-
Should have
-
Obs Mgt & Controls
-
-
-
Inter Program
-
4
-
4
-
0
-
Team_CREAM
-
Sprint 5
-
-
-
-
23.6
-
Demonstrated, Accepted by FO
-
-
taranta
Description
The synoptics widget (aka svg) should be extended along the following lines (in order by importance):
- colors of SVG elements (shapes border and area, lines) should be able to change based on runtime conditions (eg. values of Tango attributes that change). This will be achieved by adding CSS propertie to the SVG element, in a way that is compatible with how Taurus does it (we are using the same svg handling code as Taurus).
- svg components (subfiles referred to inside an svg in the image/href or object/href tags) should be able to change based on runtime conditions (eg. values of Tango attributes that change).
- we will achieve this via layers in the svg.
- the structure of the SVG would not change dynamically; what changes are visual properties, including whether part of the SVG is displayed or not.
- the widget should be configured to display Tango enums strings rather than numbers
- to enable processing in js within the svg "file" of json values returned by tango attributes (e.g. to extract values out of a key-based dictionaries)
- a representation of the json query will be included in the svg.
- to enable end users to click on a SVG component and open a specified dashboard (this would allow users to click on an image representing a component, and open a running dashboard for that component)
- to support geometric and semantic zooming (zoom-in/out, with keyboard and with on-screen commands)
- to support manual activation of 1 or more layers with explicit buttons
The same changes will be made also to the Synoptic front-end application within Taranta (as opposed to doing them only to the synoptic widget).
During PI planning we decided the following (I amended the above description accordingly today 2024-07-24):
- that point n. 2 in the above description will be achieved through layers - the structure of the SVG would not change dynamically; what changes are visual properties, including whether part of the SVG is displayed or not
- that point n. 1 will be achieved by a user-defined mapping of device.value pairs (where 'value' might be an enum symbol) to CSS properties
- the same user-defined mapping could include a specification of how to extract, from a complex json value, some of its values - with the same mechanism that now is available for the Attribute Reader widget)
- that all the stretch points will be done as well
- that all these features will be made available both in the synoptic widget as well as the synoptic view.