Additional features
Miscellaneous features of dynamic dialogs.
Defining cell attributes
In order to display array cells with
colors in a list controlled by a dynamic dialog, you can define a two-dimensional dynamic
array to hold cell attributes:
DEFINE attrs DYNAMIC ARRAY WITH DIMENSION 2 OF STRING
...
LET attrs[row,col] = "red reverse"
...
CALL d.setArrayAttributes("custlist", attrs)
If all cells of the array must get the same display attributes, use a simple DYNAMIC
ARRAY OF STRING
.
Handling rowset sorting
With a dynamic dialog controlling a list container that allows rowset sorting (like a
TABLE
), the sort event can be detected with the "ON SORT"
event
name.
When the
"ON SORT"
event occurs, the dynamic dialog can perform the same
operations as when in a static DISPLAY ARRAY
or INPUT ARRAY
using
the ON SORT
interaction
block: CALL d.addTrigger("ON SORT")
...
WHILE (t := d.nextEvent()) IS NOT NULL
CASE t
...
WHEN "ON SORT"
MESSAGE SFMT( "Row: %1/%2",
d.arrayToVisualIndex( "sr", d.getCurrentRow("sr") ),
d.getArrayLength( "sr" )
)
...