Storyboard supports a stock list of common events. These events are all prefixed with “gre.” and can be used by your application.
The system has been initialized and is ready. This is the first event set in the system.
Data:
No data payload
An area of the screen has been damaged (visible data has changed). A redraw event may not cause actual screen drawing if the control which has changed is hidden or offscreen.
Data:
int x
int y
int width
int height
If the values are all 0 then the entire screen has been damaged
The following events are generated in response to a device such as a mouse or a touchscreen. These events are targeted at specific controls based upon the controls location and sensitivity.
A mouse/touchscreen has been pressed.
Data
unsigned button (this will be a combination of the following)
GR_EVENT_BTN_LEFT - 0x0001: if this is a touchscreen then the button is always left
GR_EVENT_BTN_MIDDLE - 0x0002
GR_EVENT_BTN_RIGHT - 0x0004
unsigned timestamp
This is an event timestamp which is in milliseconds from application start.
int16 subtype
GR_EVENT_RELEASE_IN
GR_EVENT_RELEASE_OUT
int16 x
int16 y
int16 z
This paramter is render manager dependent.
A mouse/trouchscreen has been released.
unsigned button (this will be a combination of the following)
GR_EVENT_BTN_LEFT - 0x0001: if this is a touchscreen then the button is always left
GR_EVENT_BTN_MIDDLE - 0x0002
GR_EVENT_BTN_RIGHT - 0x0004
unsigned timestamp
This is an event timestamp which is in milliseconds from application start.
int16 subtype
GR_EVENT_RELEASE_IN
GR_EVENT_RELEASE_OUT
int16 x
int16 y
int16 z
This paramter is render manager dependent.
If a mouse/touchscreen presses and then releases on the same control then a touch event will be generated. This is useful for activating button style elements. If the release is found to intersect a different control then a touch event is not generated.
unsigned button (this will be a combination of the following)
GR_EVENT_BTN_LEFT - 0x0001
unsigned timestamp
This is an event timestamp which is in milliseconds from application start.
int16 subtype
GR_EVENT_RELEASE_IN
GR_EVENT_RELEASE_OUT
int16 x
int16 y
int16 z
This paramter is render manager dependent.
A mouse/touchscreen is generating motion or drag events. This can happen with or without a button pressed when the source is a mouse.
Data:
unsigned button (this will be a combination of the following)
GR_EVENT_BTN_LEFT - 0x0001: if this is a touchscreen then the button is always left
GR_EVENT_BTN_MIDDLE - 0x0002
GR_EVENT_BTN_RIGHT - 0x0004
unsigned timestamp
This is an event timestamp which is in milliseconds from application start.
int16 subtype
GR_EVENT_RELEASE_IN
GR_EVENT_RELEASE_OUT
int16 x
int16 y
int16 z
This paramter is render manager dependent.
A mouse/touchscreen has entered a control (if dragging a pointer or finger). This event is generated once the coordinates enter a control boundary. If mouse motion events are disabled in the render manager then this event will not be generated.
Data:
unsigned button (this will be a combination of the following)
GR_EVENT_BTN_LEFT - 0x0001: if this is a touchscreen then the button is always left
GR_EVENT_BTN_MIDDLE - 0x0002
GR_EVENT_BTN_RIGHT - 0x0004
unsigned timestamp
This is an event timestamp which is in milliseconds from application start.
int16 subtype
GR_EVENT_RELEASE_IN
GR_EVENT_RELEASE_OUT
int16 x
int16 y
int16 z
This paramter is render manager dependent.
A mouse/touchscreen has left a control (if dragging a pointer or finger). This event is generated once the coordinates leave a control boundary. If mouse motion events are disabled in the render manager then this event will not be generated.
Data:
unsigned button (this will be a combination of the following)
GR_EVENT_BTN_LEFT - 0x0001: if this is a touchscreen then the button is always left
GR_EVENT_BTN_MIDDLE - 0x0002
GR_EVENT_BTN_RIGHT - 0x0004
unsigned timestamp
This is an event timestamp which is in milliseconds from application start.
int16 subtype
GR_EVENT_RELEASE_IN
GR_EVENT_RELEASE_OUT
int16 x
int16 y
int16 z
This paramter is render manager dependent.
The following events are generated if a keyboard is present and supported by the render manager.
A key is in the pressed state
Data:
unsigned code
UTF-8 key
unsigned modifiers
GR_EVENT_KEYMOD_ALT
GR_EVENT_KEYMOD_CTRL
GR_EVENT_KEYMOD_SHIFT
A key which was previously pressed has been released
Data:
unsigned code
UTF-8 key
unsigned modifiers
GR_EVENT_KEYMOD_ALT
GR_EVENT_KEYMOD_CTRL
GR_EVENT_KEYMOD_SHIFT
The following events are generated by the Screen Manager during screen transitions. These events are generated in the following order:
GR_EVENT_SCREEN_SHOW_PRE delivered to new Screen
GR_EVENT_SCREEN_HIDE_PRE delivered to current Screen
Screen transition occurs
GR_EVENT_SCREEN_SHOW_POST delivered to new Screen
GR_EVENT_SCREEN_HIDE_POST delivered to current Screen
A screen is being shown. This event is triggered before the screen is shown and signifies that a transition may be starting
Data:
char *name
The screen which is being shown
A screen has been shown. This event is triggered after the screen is shown and signifies that a transition has ended.
Data:
char *name
The screen which has been shown
A screen is being hidden. This event is triggered before the screen is hidden and signifies that a transition may be starting.
Data:
char *name
The screen which is being hidden
The following events are generated on a change of control focus. If there is no focusable control on the current screen then these events will not be generated. These events are targeted at the currently or last focused control. When focus shifts from one control to another the lost focus event is sent first followed by the got focus event.
The following events are generated by a Table control. If no table control is present then these events will not be generated.
A table has been resized via the table resize action. This event notifies the system of the new table size and visible area.
Data:
uint32_t top_row; /// Top row visible uint32_t left_col; /// Left column visible uint32_t bot_row; /// Bottom row visible uint32_t right_col; /// Right column visible char *table
The table which has generated the event
A table cell has received focus and is the currently active cell.
Data:
uint32_t row; /// current row uint32_t col; /// current col char *table
The table which has generated the event
The following events are generated by optional Storyboard plugins.
Timer events are generated as a result of a timer action. See documentation on the gra.timer action for further information about configuring timers.
The timer event name will be formatted as timer.[name] where name is the value set as the name of the timer when the action was defined.