Symbol List
A Symbol List is used to bind elements of an array to a symbol. The Symbol List repeats the symbol instance repeatedly for each element of the array to which it is bound.
The Symbol List shown in the 'List' category of the 'Properties' tab provides the properties described in the following table:
Example of Symbol List properties
Symbol List property | Description |
---|---|
Data variable | Array variable that is associated to the Symbol List. The parameters of the row symbol instance are bound to the corresponding elements of the selected array.Property is disabled if the 'Text list' property is set (see below). |
Text list | Text list that is associated to the Symbol List. The parameters of the row symbol instance are bound to the corresponding entries of the selected text list.Property is disabled if the 'Data variable' property is set (see above) |
Symbol | HMI symbol instance that is repeated for each element of the 'Data variable' array or text list entry. |
Direction | Defines whether the selected HMI symbol is repeated vertically or horizontally within the Symbol List. |
Padding | Defines the space around each row element. |
Horizontal line color / width | Line color and line width of each row element. |
Select enabled | Enables/disables selecting a symbol used in the symbol list. If checked (default setting), selecting the HMI symbol instance that is repeated for each element of the 'Data variable' array is possible. |
Selected index variable | The selected numeric variable provides the zero-based index of the selected row at runtime. If no variable is selected, the value is -1. |
Displayed index variable | When the value of the associated variable changes, the item selected with the numeric variable (zero-based index of the item) is scrolled into view. |
Scroll enabled | Enables/disables scrolling via dragging gesture in the appellation. If checked (default setting), scrolling the elements of the 'Data variable' array is possible via dragging gesture. |
Scroll bar mode | Controls whether or not scroll bars are displayed. There are three values for the property: 'Hide', 'Show', and 'Auto'.With the value 'Auto', the scroll bars are only shown if there are more items than are visible on the screen. |
Virtual symbol count variable / Virtual scroll position variable | Both properties are used for the implementation of the scroll bar element of the symbol list. Dragging the scroll bar element in the HMI scrolls the content of the symbol list.The two properties allows you to use the 'Data variable' associated to the symbol list as a "window" in a (mostly larger) virtual amount of data. The numeric read-only variable connected to the 'Virtual symbol count variable' property returns the total number of "virtually" scrollable symbols in the amount of data. The numeric variable (read/write access) connected to the 'Virtual scroll position variable' property indicates the current position of the "window" in the virtual amount of data. |
Show selection mode | Controls whether the selected item in the list is visually highlighted. There are three values for the property: 'Always', 'Focus', and 'Never'.With the value 'Focus', the selected row is shown when the symbol list has the focus. If the symbol list has lost the focus, the visual cue is removed. |
When configuring a Symbol List object, observe the following:
- The properties 'Data Variable' and 'Symbol' are mandatory. If any of the properties is not defined, a corresponding error is reported in the Error List (MESSAGES window).
- All symbol parameters defined for the associated symbol must have a valid value assigned (otherwise a corresponding error is reported).
Like for standard symbol instances, the symbol parameters are configured on the 'Parameters' tab of the Symbol List object. The 'Source Type' is pre-defined to 'Field' and the 'Source Value' content is based on the 'Data variable' selected on the 'Properties' tab. For an array of structure, the supported elements are provided for selection and for an array of elementary/enumeration types, the entry "." is available.