ui.Dialog.nextEvent
Waits for a dialog event.
Syntax
nextEvent()
RETURNS STRING
- event is the name of the dialog event that raised.
Usage
The nextEvent()
waits for a dialog event to occur, and returns a string that
identifies the dialog event that is raised.
This method must be used in a WHILE
loop, to implement a dynamic dialog.
The method can return NULL
, if a dialog error occurs, or if the dialog
terminates (with ui.Dialog.close()
).
The nextEvent()
method returns only basic event description. For detailed
information about the last event that has occurred, use the ui.Dialog.getEventDescription()
method.
WHILE
loop is to test for
nulls:DEFINE d ui.Dialog,
t STRING
...
WHILE (t := d.nextEvent()) IS NOT NULL
CASE t
WHEN "BEFORE FIELD cust_name"
...
A dialog event can be a user-defined trigger such as "ON ACTION print"
, or an
implicit trigger such as "BEFORE ROW"
, corresponding to the control blocks that can
be defined in static dialog instructions such as DISPLAY ARRAY
.
User-defined triggers are added to the dynamic dialog with the addTrigger()
method:
Trigger name | Description | Dialog block equivalent |
---|---|---|
ON ACTION action-name |
Action handler for the action identified by action-name. | ON ACTION block |
ON APPEND |
Row addition action handler for a display array dynamic dialog. | ON APPEND block |
ON DELETE |
Row deletion action handler for a display array dynamic dialog. | ON DELETE block |
ON FILL BUFFER |
Trigger to fill the current page of a paged mode display array dynamic dialog. | ON FILL BUFFER block |
ON INSERT |
Row insertion action handler for a display array dynamic dialog. | ON INSERT block |
ON IDLE seconds |
Idle timout trigger. | ON IDLE block |
ON SORT |
Rowset sort event. | ON SORT block |
ON TIMER seconds |
Timer trigger. | ON TIMER block |
ON UPDATE |
Row modification action handler for a display array dynamic dialog. | ON UPDATE block |
Implicit dialog triggers are predefined and can be detected and handled in the dialog
WHILE
loop if needed:
Trigger name | Description | Dialog block equivalent |
---|---|---|
BEFORE DIALOG |
Initialization of the multiple dynamic dialog. | BEFORE DIALOG
block |
AFTER DIALOG |
End of the multiple dynamic dialog. | AFTER DIALOG
block |
BEFORE DISPLAY |
In singular dynamic dialog, initialization of the display array. In multiple dynamic dialog, when display array gets focus. | BEFORE DISPLAY
block |
AFTER DISPLAY |
In singular dynamic dialog, end of the display array. In multiple dynamic dialog, when display array loses focus. | AFTER DISPLAY
block |
BEFORE INPUT |
In singular dynamic dialog, initialization of the input by name. In multiple dynamic dialog, when input by name gets focus. | BEFORE INPUT
block |
AFTER INPUT |
In singular dynamic dialog, end of the input by name. In multiple dynamic dialog, when input by name loses focus. | AFTER INPUT block |
BEFORE CONSTRUCT |
In singular dynamic dialog, initialization of the construct. In multiple dynamic dialog, when contruct gets focus. | BEFORE INPUT
block |
AFTER CONSTRUCT |
In singular dynamic dialog, end of the construct. In multiple dynamic dialog, when construct loses focus. | AFTER INPUT
block |
BEFORE ROW |
Moving to a new row in a display array or input array dynamic dialog. | BEFORE ROW block |
AFTER ROW |
Leaving the current row in a display array or input array dynamic dialog. | AFTER ROW block |
BEFORE INSERT |
Before a new row is created in an input array dynamic dialog. | BEFORE INSERT
block |
AFTER INSERT |
After a new row is created in an input array dynamic dialog. | AFTER INSERT
block |
BEFORE DELETE |
Before a new row is deleted in an input array dynamic dialog. | BEFORE DELETE
block |
AFTER DELETE |
After a new row is deleted in an input array dynamic dialog. | AFTER DELETE
block |
BEFORE FIELD field-name |
Entering the field field-name in an input dynamic dialog. | BEFORE FIELD
block |
AFTER FIELD field-name |
Leaving the field field-name in an input dynamic dialog. | AFTER FIELD block |
ON CHANGE field-name |
Value of field field-name changed in an input dynamic dialog. | ON CHANGE block |