Donut
The Donut is a CygNet-aware single-value control that displays real-time point data on a circular linear scale. Data is represented in a ring that fills the Donut in a clock-wise direction to a value between a lower and upper bound. The source of the lower value bound and upper value bound can be either hard-coded to an explicit value, or dynamically determined for each facility by sourcing the value from an attribute of the associated point (using an Indexed field, General data field, Minimum setpoint value (analog only) or Maximum setpoint value (analog only)). A Donut on a templated screen supports different bounds for each source facility. By using a point attribute to store the bounds (for example, Indexed 1 for the lower value bound and Indexed 2 for the upper value bound), you can have a templated screen without having to script the control.
Several other configurable properties are supported, including:
- A configurable value marker is displayed on the Donut to indicate the point value.
- A second inner ring is supported to show alarm ranges that correspond to the alarm setpoints for the associated point.
- A Donut can optionally be labeled with three tokenized text strings.
- The control can display a static text string, such as a label, legend, tooltip, or a dynamic text string based on point or facility attributes. Dynamic text is built using tokens, which can represent real-time CVS point properties, point configuration properties, and facility properties. In run mode, the tokens are replaced with the attribute's value.
- The control's color elements can be set to one of the following options: a) automatically follow the selected application theme regardless of the underlying color palette used, b) sourced from the point state color defined for the associated point, or c) be explicitly configured. The alarm limit range can optionally be configured to display point state color.
- Colors displayed in the control can be overridden when a custom color palette is selected for the screen.
- Font sizing, text styling, and text weighting are also configurable.
- Date, time, and value formatting for the text displayed on the control is supported.
- The control optionally can be hidden if the associated point tag is invalid.
- The ring or bar optionally can be hidden if any misconfiguration in the value bounds settings is detected and an "Invalid bounds" label will be displayed on the control.
- This control supports tooltips, which can be displayed as tokenized text, a Canvas object, or the tooltip can be scripted to retrieve and display values for related points or CygNet notes.
- In the Canvas Native view a context menu is available at runtime with access to CygNet point and alarm data, including alarm acknowledgment, current and history values, point and facility configuration, and trending point data on a default chart. Custom context menu items can be scripted allowing customized control behavior.
- In the CygNet TWC web view a context menu is available with access to CygNet point and alarm data, including current value details, alarm acknowledgment, alarm summary, and trending point data on a quick chart. The TWC context menu also supports adding any CygNet point presented in the main web view to an ad hoc chart.
This control is supported in the Canvas Native view and the CygNet TWC web view.
Donut Example
The following image shows a Tag Chooser, a Donut, and a CygNet Grid.
|
Sample Donut control with data passed in from Tag Chooser |
Property Inheritance
Property Inheritance
Property inheritance, or sending and receiving, is a widely used concept in Canvas. The application supports an explicit relationship between screens, objects, and controls, where certain property values, such as facilities and SiteService details, are passed from one element to another via an inheritance framework. Screens, objects, and controls can be configured as property senders or property receivers and provide configuration options where you can explicitly define the source of the facility and SiteService. Depending on how you have your screens, objects, and controls configured, the facility and SiteService may be received from any one of the following sources:
- from itself — indicated by selecting <Self> and then explicitly configuring the property
- received from the screen — indicated by selecting Screen, which is always present as a sender
- received from another control — indicated by selecting the Name of the sending control.
Broadcasting
Screens and objects support an additional notification option to broadcast their facility and SiteService selection changes to other open screens. If configured, a <Broadcast> option is available to source the screen's facility and SiteService properties from another open screen.
For example, a Text Tool can be configured to get its facility from the screen and the screen can be configured to get its facility from a Tag Chooser. Or Screen_A might source its facility from Screen_B, which gets its facility from a Tag Chooser.
Receiver or Sender
The Donut control supports property inheritance as a receiver of its SiteService and facility:
| Receive | Send | ||
|---|---|---|---|
| SiteService | Facility | SiteService | Facility |
| self screen |
self screen other controls |
none | none |
The Donut control does not send its SiteService or facility to other controls.
