| Name | Description | 
| GridNew | Create a new Widget of the type Grid. | 
| Declaration  Return Value Reference of the Grid component attached to the new Widget. | 
| ButtonNew | Create new Widget of the type Button. | 
| Declaration  Button *ButtonNew( ButtonType type )Parameters 
type: pecify the type of panel to create by setting its ButtonType. Return Value Reference of the Button component attached to the new Widget. | 
| LabelNew | Create a new Widget of the type Label. | 
| Declaration  Return Value Reference of the Label component attached to the new Widget. | 
| LayoutNew | Create new Widget of the type Layout. | 
| Declaration  Layout *LayoutNew( void )Return Value Reference of the Layout component attached to the new Widget. | 
| PanelNew | Create a new Widget of the type Panel. | 
| Declaration  Panel *PanelNew( PanelType type )Parameters 
type: Specify the type of panel to create by setting its PanelType. Return Value Reference of the Panel component attached to the new Widget. | 
| PictureNew | Create new Widget of the type Picture. | 
| Declaration  Picture *PictureNew( void )Return Value Reference of the Picture component attached to the new Widget. | 
| ScrollerNew | Create a new Widget of the type Scroller. | 
| Declaration  Scroller *ScrollerNew( ScrollerType type )Parameters 
type: Specify the type of scroller to create by setting its ScrollerType. Return Value Reference of the Scroller component attached to the new Widget. | 
| SplitterNew | Create new Widget of the type Splitter. | 
| Declaration  Splitter *SplitterNew( SplitterType type )Parameters 
type: Specify the type of splitter to create by setting its SplitterType. Return Value Reference of the Splitter component attached to the new Widget. | 
| TextBoxNew | Create a new Widget of the type TextBox. | 
| Declaration  TextBox *TextBoxNew( TextBoxType type )Parameters 
type: Specify the type of textbox to create by setting its TextBoxType. Return Value Reference of the TextBox component attached to the new Widget. | 
| TextAreaNew | Create new Widget of the type TextArea. | 
| Declaration  TextArea *TextAreaNew( void )Return Value Reference of the TextArea component attached to the new Widget. | 
| AreaNew | Create a new Widget of the type kArea. | 
| Declaration  Return Value Reference to the new empty kAreaWidget. | 
| UserNew | Create a new blank Widget without no component of the type kUser. | 
| Declaration  Return Value Reference of the new Widget. NoteThis type of Widget can simply be used as a container or can be extended by the user to create a new type of Widget. By manually creating a new type of Widget you are free to implement its properties and behaviors.
 | 
| BaseNew | Helper that creates a Widget of the type kBase. | 
| Declaration  Return Value Reference of the new Widget of the type kBase. NoteA kBaseWidget is usually used to identify by type the root of a complex GUI that contains many other Widget. Take in example the editors of the IDE, each of their root is Widget of the typekBase.
 | 
| WidgetNew | Function to manually create a new custom Widget based on the user parameters. | 
| Declaration  Widget *WidgetNew( const char *name, WidgetType type, unsigned char sub_type )Parameters 
name: The name of the Widget.type: Specify the WidgetType to for the new Widget.sub_type: Base on the type of Widget you want to create a sub type might be available; refer to the appropriate component help page to learn about their possible sub type. Return Value Reference of the newly created Widget. | 
| TextBufferNew | Create a new TextBuffer to be used by TextArea. | 
| Declaration  TextBuffer *TextBufferNew( bool read_only, bool history )Parameters 
read_only: Specify if the TextBuffer should be read-only.history: Determine if an history should be kept allowing the user to undo/redo. Return Value Reference to the newly created TextBuffer. | 
| TextBufferDelete | Delete an existing TextBuffer. | 
| Declaration  TextBuffer *TextBufferDelete( TextBuffer *textbuffer )Parameters Return Value nilif removed successfully; return its reference if it is still connected to other resources and cannot be deleted.
 | 
| DispatchSignal | Manually force a Signal to be dispatched. | 
| Declaration  bool DispatchSignal( Widget *widget, Signal signal )Parameters 
widget: Reference to the Widget to send the signal to.signal: The type of Signal that should be sent to the Widget. Return Value trueif the Signal have been dispatched and the Widget was able to respond to it; else returnfalse.
 | 
| KeyPress | Manually send a key press signal. | 
| Declaration  void KeyPress( unsigned char ascii )Parameters 
ascii: The ASCII value of the event. | 
| KeyRelease | Manually send a key release signal. | 
| Declaration  void KeyRelease( unsigned char ascii )Parameters 
ascii: The ASCII value of the event. | 
| SpecialPress | Manually send a press of a special key such as ShiftorF1etc... | 
| Declaration  void SpecialPress( KeyCode special )Parameters 
special: Value of the KeyCode to send to the signal. | 
| SpecialRelease | Manually send a release of a special key such as ShiftorF1etc... | 
| Declaration  void SpecialRelease( KeyCode special )Parameters 
special: Value of the KeyCode to send to the signal. | 
| MousePress | Manually send a mouse press signal. | 
| Declaration  void MousePress( MouseButton mouse_button, int x, int y )Parameters 
mouse_button: Specify the MouseButton that is pressed.xy: The coordinate of the pointing device in window space. | 
| MouseRelease | Manually send a release of a pointing device release signal. | 
| Declaration  void MouseRelease( MouseButton mouse_button, int x, int y )Parameters 
mouse_button: Specify the MouseButton that is released.xy: The coordinate where the pointing device was released. | 
| MousePress | Manually send a mouse press signal. | 
| Declaration  void MousePress( MouseButton mouse_button, int x, int y )Parameters 
mouse_button: Specify the MouseButton that is pressed.xy: The coordinate of the pointing device in window space. | 
| MouseMove | Manually send a mouse move signal from the pointing device. | 
| Declaration  void MouseMove( MouseButton mouse_button, int x, int y )Parameters 
mouse_button: Specify the MouseButton that is pressed.xy: The coordinate of the pointing device was released. | 
| SetFocus | Focus a specific Widget. | 
| Declaration  void SetFocus( Widget *widget )Parameters 
widget: Reference to Widget to focus. | 
| GetWidget | Retrieve a Widget reference by name. | 
| Declaration  Widget *GetWidget( const char *name )Parameters 
name: The name of the Widget to retrieve. Return Value nilif no Widget matches the name received in parameter; else return the reference to the Widget.
 | 
| GetWidgetAt | Function that retrieves a Widget based on its index. | 
| Declaration  Widget *GetWidgetAt( unsigned int index )Parameters 
index: Index of the Widget to retrieve. Return Value nilif the index provided is invalid; else return the Widget reference.
 | 
| GetWidgetIndex | Retrieve the internal index of a Widget reference. | 
| Declaration  int GetWidgetIndex( const Widget *widget )Parameters 
widget: Valid reference to an existing Widget. Return Value -1if the reference provided to the function is invalid; else return the Widget index.
 | 
| GetTextBuffer | Retrieve a TextBuffer reference using its name as key. | 
| Declaration  TextBuffer *GetTextBuffer( const char *name )Parameters Return Value nilif no TextBuffer name matches the one received in parameter by the function; else return the TextBuffer reference.
 | 
| Update | Force a manual update of the GUI. | 
| Declaration  | 
| Redraw | Force a full redraw of the GUI. | 
| Declaration  WarningCalling this function will stall the drawing pipeline; use it with care.
 | 
| DispatchSignals | Function that allows you to enable or disable dispatching all signals. | 
| Declaration  void DispatchSignals( bool enabled )Parameters 
enabled: Enable or disable dispatching signals. | 
| CancelSignals | Cancel a specific signal next time it happen. | 
| Declaration  void CancelSignals( Signal signal )Parameters 
signal: Specify the Signal to skip. | 
| AddTrigger | Create a Trigger that will call an event after a specific amount of time. | 
| Declaration  void AddTrigger( Widget *widget, Signal signal, const char *L_callback, unsigned int timeout, bool recursive )Parameters 
widget: The Widget reference involved with the Trigger.signal: Specify the Signal that should be dispatched.L_callback: The scripting command to call (most likely a function).timeout: Amount of delay in milliseconds before executing the Trigger.recursive: Determine wether or not the Trigger is recursive. | 
| Name | Description | 
| type | The current Signal type. | 
| Declaration  | 
| mouse | Coordinate of the pointing device when the Signal occur. | 
| Declaration  | 
| mouse_delta | Mouse delta at the time of the Signal. | 
| Declaration  | 
| resize_delta | Amount of pixel the GUI window have been resized. | 
| Declaration  | 
| mouse_button | The MouseButton currently pressed. | 
| Declaration  | 
| ascii | Current ASCII pressed or released. | 
| Declaration  | 
| special | Bit mask of KeyCode currently pressed or released. | 
| Declaration  | 
| widget | Reference to the Widget currently handling the Signal. | 
| Declaration  | 
| selected | Current Widget under the pointing device which can receive event and can eventually be focused. | 
| Declaration  | 
| focused | Reference to the active focused Widget. | 
| Declaration  | 
| trigger | Reference to the active Trigger that call the Signal. | 
| Declaration  | 
| delta_time | Amount of time elapsed since the last event sync. | 
| Declaration  | 
| click_time | Last time a mouse button have been pressed. | 
| Declaration  | 
| gui_time | Active GUI time. | 
| Declaration  | 
| click_time | Last time the GUI update. | 
| Declaration  |