BRL.EventQueue: | Globals | Functions | Source |
The event queue is a simple first-in, first-out queue that is used to collect TEvent objects emitted by your application.
The PollEvent and WaitEvent commands can be used to receive the next event from the event queue, while the PeekEvent command can be used to check if the event queue is empty.
Events are added to the event queue using PostEvent.
CurrentEvent | Current Event |
PeekEvent | Examine the next event in the event queue |
PollEvent | Get the next event from the event queue |
WaitEvent | Get the next event from the event queue, waiting if necessary |
PostEvent | Post an event to the event queue |
EventID | Get current event id |
EventData | Get current event data |
EventMods | Get current event modifiers |
EventX | Get current event x value |
EventY | Get current event y value |
EventExtra | Get current event extra value |
EventText | Get current event extra value converted to a string |
EventSource | Get current event source object |
EventSourceHandle | Get current event source object handle |
Global CurrentEvent:TEvent=NullEvent | |
Description | Current Event |
Information | The CurrentEvent global variable contains the event most recently returned by PollEvent or WaitEvent. |
Function PeekEvent:TEvent() | |
Description | Examine the next event in the event queue |
Information |
PeekEvent examines the next event in the event queue, without removing it from the
event queue or modifying the CurrentEvent global variable.
If there are no events in the event queue, PeekEvent returns Null. |
Function PollEvent() | |
Returns | The id of the next event in the event queue, or 0 if the event queue is empty |
Description | Get the next event from the event queue |
Information |
PollEvent removes an event from the event queue and updates the CurrentEvent
global variable.
If there are no events in the event queue, PollEvent returns 0. |
Function WaitEvent() | |
Returns | The id of the next event in the event queue |
Description | Get the next event from the event queue, waiting if necessary |
Information |
WaitEvent removes an event from the event queue and updates the CurrentEvent
global variable.
If there are no events in the event queue, WaitEvent halts program execution until an event is available. |
Function PostEvent( event:TEvent,update=False ) | |
Description | Post an event to the event queue |
Information | PostEvent adds an event to the end of the event queue.
The update flag can be used to update an existing event. If update is True and an event with the same id and source is found in the event queue, the existing event will be updated instead of event being added to the event queue. This can be useful to prevent high frequency events such as timer events from flooding the event queue. |
Function EventID() | |
Returns | The id field of the CurrentEvent global variable |
Description | Get current event id |
Function EventData() | |
Returns | The data field of the CurrentEvent global variable |
Description | Get current event data |
Function EventMods() | |
Returns | The mods field of the CurrentEvent global variable |
Description | Get current event modifiers |
Function EventX() | |
Returns | The x field of the CurrentEvent global variable |
Description | Get current event x value |
Function EventY() | |
Returns | The y field of the CurrentEvent global variable |
Description | Get current event y value |
Function EventExtra:Object() | |
Returns | The extra field of the CurrentEvent global variable |
Description | Get current event extra value |
Function EventText$() | |
Returns | The extra field of the CurrentEvent global variable converted to a string |
Description | Get current event extra value converted to a string |
Function EventSource:Object() | |
Returns | The source field of the CurrentEvent global variable |
Description | Get current event source object |
Function EventSourceHandle() | |
Returns | The source field of the CurrentEvent global variable converted to an integer handle |
Description | Get current event source object handle |