Unigine::Gui Class
Header: | #include <UnigineGui.h> |
Creates a GUI. Different types of GUI widgets can be either added to one of the following:
- To the system GUI (Unigine user interface) that is rendered on top of application window.
- To the GUI object positioned in the world. In this case, any postprocessing filter can be applied.
Gui Class
Enums
CALLBACK_INDEX#
Name | Description |
---|---|
SHOW = 0 | Callback is used when a widget is shown. Supported by all widgets. |
HIDE = 1 | Callback is used when a widget is removed via Gui::removeChild(). Supported by all widgets. |
FOCUS_IN = 2 | Callback is used when a widget is focused. Supported by all widgets. |
FOCUS_OUT = 3 | Callback is used when a widget loses focus. Supported by all widgets. |
CHANGED = 4 | Callback is used when a widget has changed its state. Supported by the following widgets:
|
CLICKED = 5 | Callback is used when the mouse is clicked somewhere on a widget. Supported by the following widgets:
|
DOUBLE_CLICKED = 6 | Callback is used when the mouse is double-clicked somewhere on a widget. Supported by the following widgets: |
PRESSED = 7 | Callback is used when a mouse button or ENTER (RETURN) is pressed, while the mouse pointer is somewhere on a widget. Supported by the following widgets: |
RELEASED = 8 | Callback is used when the mouse was released after clicking somewhere on a widget. Supported by the following widgets: |
KEY_PRESSED = 9 | Callback us used when a key is pressed while a widget is in focus. Supported by the following widgets: |
ENTER = 10 | Callback is used when the mouse pointer enters a widget. Supported by all widgets. |
LEAVE = 11 | Callback is used when the mouse pointer leaves a widget. Supported by all widgets. |
DRAG_MOVE = 12 | Callback is used when a focused widget is moved. |
DRAG_DROP = 13 | Callback is used when a drag-and-drop operation is performed with a widget. Supported by all widgets. A callback can receive dragged widgets inside additional arguments. Clicked or pressed callbacks receive a mouse button or a key inside an additional callback argument. |
NUM_CALLBACKS = 14 |
Members
Ptr<Gui> get ( ) #
Returns a pointer to the GUI.Return value
Pointer to the GUI.bool isActive ( ) const#
Returns a value indicating if any widget in the GUI is in focus.Return value
true if any widget is focused; otherwise, false.Ptr<Widget> getChild ( int num ) const#
Returns a child widget with a given number.Arguments
- int num - Child widget number.
Return value
Child widget.int isChild ( const Ptr<Widget> & widget ) const#
Checks if a given widget is a child of the current GUI.Arguments
Return value
Returns 1 if the given widget is a child; otherwise, 0.void setColor ( const Math::vec4 & color ) #
Sets a color for the global color multiplier. The default is equivalent to #ffffff (white).Arguments
- const Math::vec4 & color - Color multiplier.
Math::vec4 getColor ( ) const#
Returns the color of the global color multiplier.Return value
Color multiplier.void setDefaultAlpha ( float alpha ) #
Sets a standard alpha value for widgets.Arguments
- float alpha - Alpha value. 0 means completely transparent.
float getDefaultAlpha ( ) const#
Returns the standard alpha value of a widget.Return value
Alpha value.void setDefaultColor ( const Math::vec4 & color ) #
Sets a standard font color for widgets. The default is equivalent to #ddddff (blue-white).Arguments
- const Math::vec4 & color - Font color.
Math::vec4 getDefaultColor ( ) const#
Returns the standard font color of a widget.Return value
Font color.void setDefaultSize ( int size ) #
Sets a standard font size for widgets.Arguments
- int size - Font size.
int getDefaultSize ( ) const#
Returns the standard font size of a widget.Return value
Font size.void setDisabledAlpha ( float alpha ) #
Sets an alpha value for disabled widgets.Arguments
- float alpha - Alpha value. 0 means completely transparent.
float getDisabledAlpha ( ) const#
Returns the alpha value of a disabled widget.Return value
Alpha value.void setDisabledColor ( const Math::vec4 & color ) #
Sets a font color for disabled widgets. The default is equivalent to #869caa (light bluish).Arguments
- const Math::vec4 & color - Font color.
Math::vec4 getDisabledColor ( ) const#
Returns the font color of a disabled widget.Return value
Font color.void setDisabledEnabled ( bool enabled ) #
Sets a value indicating if a widget can be rendered as disabled (i.e. change its color accordingly), when necessary.Arguments
- bool enabled - Positive value if the widget can be rendered as disabled; otherwise, 0.
bool isDisabledEnabled ( ) const#
Returns a value indicating if a widget can be rendered as disabled (i.e. change its color accordingly), when necessary.Return value
1 if the widget can be rendered as disabled; otherwise, 0.void setEnabled ( bool enabled ) #
Sets a value indicating if a widget should be enabled/disabled.Arguments
- bool enabled - 1 to enable the GUI, 0 to disable it.
bool isEnabled ( ) const#
Returns a value indicating if the GUI is enabled.Return value
Return 1 if the GUI is enabled; otherwise, 0 is returned.void setExposeSpeed ( float speed ) #
Sets a duration of animation played when the widget appears.Arguments
- float speed - Duration in cycles per second, for example, 6 means that the duration is a 1/6 of a second.
float getExposeSpeed ( ) const#
Returns the duration of animation played when a widget appears.Return value
Duration in cycles per second.void setFadeInSpeed ( float speed ) #
Sets a duration of fade-in animation played when the widget gets focused.Arguments
- float speed - Duration in cycles per second, for example, 8 means that the duration is a 1/8 of a second.
float getFadeInSpeed ( ) const#
Returns the duration of fade-in animation played when a widget gets focused.Return value
Duration in cycles per second.void setFadeOutSpeed ( float speed ) #
Sets a duration of fade-out animation played when the widget loses focus.Arguments
- float speed - Duration in cycles per second, for example, 4 means that the duration is a 1/4 of a second.
float getFadeOutSpeed ( ) const#
Returns the duration of fade-out animation played when a widget loses focus.Return value
Duration in cycles per second.Ptr<Widget> getFocus ( ) const#
Returns the widget that is currently in focus.Return value
Focused widget smart pointer.void setFocusedAlpha ( float alpha ) #
Sets an alpha value for focused widgets. The default is 1 (completely opaque).Arguments
- float alpha - Alpha value. 0 means completely transparent.
float getFocusedAlpha ( ) const#
Returns the alpha value of a focused widget.Return value
Alpha value.void setFocusedColor ( const Math::vec4 & color ) #
Sets an font color for focused widgets. The default is equivalent to #ffffff (white).Arguments
- const Math::vec4 & color - Font color.
Math::vec4 getFocusedColor ( ) const#
Returns the font color of a focused widget.Return value
Font color.void setFocusedEnabled ( bool enabled ) #
Sets a value indicating if a widget can be rendered as focused on (i.e. change its color accordingly), when necessary.Arguments
- bool enabled - Positive value if the widget can be rendered as focused on; otherwise, 0.
bool isFocusedEnabled ( ) const#
Returns a value indicating if a widget can be rendered as focused on (i.e. change its color accordingly), when necessary.Return value
1 if the widget can be rendered as focused on; otherwise, 0.void setFocusedPermanent ( bool permanent ) #
Changes the permanent color of the focused widget.Arguments
- bool permanent - 1 - a font color is overridden with the global GUI focused color; 0 - a font color is unchanged.
bool isFocusedPermanent ( ) const#
Returns a value indicating if the permanent color of the focused widget is changed.Return value
1 if the font color is overridden with the global GUI focused color; 0 if the font color is unchanged.int setFont ( const char * name ) #
Changes the font used in the system GUI.Arguments
- const char * name - Path to the font file.
Return value
1 if the font is successfully changed; otherwise, 0.int getHeight ( ) const#
Returns the current screen height.Return value
Screen height, in pixels.void setHidden ( bool hidden ) #
Sets a value indicating if a widget should not be rendered.Arguments
- bool hidden - 1 to show the GUI, 0 to hide it.
bool isHidden ( ) const#
Returns a value indicating if a widget is rendered visible.Return value
1 if the widget is rendered; otherwise, 0.int getKeyActivity ( unsigned int key ) const#
Checks if a given key already has a special purpose for the widget in focus.Arguments
- unsigned int key - One of the standard ASCII control codes or one of the APP_KEY_* pre-defined variables.
Return value
1 if the key cannot be used; otherwise, 0.void setMouseButton ( int button ) #
Sets a mouse button, which input should be received.Arguments
- int button - APP_BUTTON_LEFT orAPP_BUTTON_RIGHT orAPP_BUTTON_MIDDLE.
int getMouseButton ( ) const#
Returns the mouse button, which input is received.Return value
APP_BUTTON_LEFT or APP_BUTTON_RIGHT or APP_BUTTON_MIDDLE.void setMouseCursor ( int cursor ) #
Sets a mouse pointer to display.Arguments
- int cursor - One of the CURSOR_* pre-defined variables.
int getMouseCursor ( ) const#
One of the CURSOR_* pre-defined variables.Return value
Returns the type of mouse pointer currently displayed.int getMouseDX ( ) const#
Returns the difference between the previous position of the mouse pointer and the current one along the X axis.Return value
Difference along the X axis.int getMouseDY ( ) const#
Returns the difference between the previous position of the mouse pointer and the current one along the Y axis.Return value
Difference along the Y axis.void setMouseEnabled ( bool enabled ) #
Enables or disables rendering of the mouse cursor.Arguments
- bool enabled - 1 to enable the mouse, 0 to disable it.
bool isMouseEnabled ( ) const#
Returns a value indicating if the mouse cursor is rendered.Return value
1 if the mouse is rendered; otherwise, 0.void setMouseGrab ( int grab ) #
Sets a value indicating if the mouse pointer is bound to the GUI.Arguments
- int grab - 1 if the mouse pointer cannot leave the GUI; otherwise, 0.
int getMouseGrab ( ) const#
Returns a value indicating if the mouse pointer is bound to the GUI.Return value
1 if the mouse pointer cannot leave the GUI; otherwise, 0.void setMouseSprite ( const Ptr<WidgetSprite> & sprite ) #
Sets a custom mouse pointer.Arguments
- const Ptr<WidgetSprite> & sprite - Sprite with a custom mouse pointer, or NULL to fall back to the standard mouse pointer.
Ptr<WidgetSprite> getMouseSprite ( ) const#
Returns the custom mouse pointer currently in use.Return value
Sprite with a custom mouse pointer, or NULL if the standard mouse pointer is used.int getMouseX ( ) const#
Returns the current X coordinate of the mouse pointer in the coordinate system of the application window.Return value
X coordinate of the mouse pointer.int getMouseY ( ) const#
Returns the current Y coordinate of the mouse pointer in the coordinate system of the application window.Return value
Y coordinate of the mouse pointer.int getNumChildren ( ) const#
Returns the number of widgets in the GUI.Return value
Number of widgets.Ptr<Widget> getOverlappedFocus ( ) const#
Returns the widget placed under the currently focused widget.Return value
Overlapped widget.Ptr<Widget> getPermanentFocus ( ) const#
Returns a widget that is always in focus.Return value
Widget always in focus.int setResource ( const char * name ) #
Changes the resource skin file used in the system GUI.Arguments
- const char * name - Path to the rc file.
Return value
1 if the resource file is successfully changed; otherwise, 0.int setSkin ( const char * name ) #
Changes the GUI skin used in the system GUI.Arguments
- const char * name - Path to the skin file (an RC file and textures).
Return value
1 if the skin is successfully changed; otherwise, 0.void setToolTip ( int x, int y, const char * str ) #
Sets a tooltip.Arguments
- int x - X coordinate of the tooltip position.
- int y - Y coordinate of the tooltip position.
- const char * str - ToolTip text.
void setToolTipAlpha ( float alpha ) #
Sets an alpha value for tooltips. The default is 0.95 (translucent).Arguments
- float alpha - Alpha value. 0 means completely transparent.
float getToolTipAlpha ( ) const#
Returns the alpha value of a tooltip.Return value
Alpha value.void setToolTipColor ( const Math::vec4 & color ) #
Sets a font color for tooltips. The default is equivalent to #000000 (black).Arguments
- const Math::vec4 & color - Font color.
Math::vec4 getToolTipColor ( ) const#
Returns the font color of a tooltip.Return value
Font color.void setToolTipEnabled ( bool enabled ) #
Sets a value indicating whether tooltips are available or not.Arguments
- bool enabled - 1 to enable tooltips; otherwise, 0.
bool isToolTipEnabled ( ) const#
Returns a value indicating if tooltips are available or not.Return value
Return 1 if tooltips are enabled; otherwise, 0.int getToolTipHeight ( const char * str ) const#
Returns a height of the given tooltip.Height of a single-line tooltip is equal to 21 pixels.
Arguments
- const char * str - A tooltip text.
Return value
Height of the given tooltip (in pixels).void setToolTipSize ( int size ) #
Sets a font size for widgets.Arguments
- int size - Font size.
int getToolTipSize ( ) const#
Returns the font size of a tooltip.Return value
Font size.void setToolTipText ( const char * text ) #
Sets a new text for the tooltip.Arguments
- const char * text - Text for the tooltip to be set.
const char * getToolTipText ( ) const#
Returns the text of the currently displayed tooltip.Return value
Text of the GUI tooltip.void setToolTipTime ( float time ) #
Sets a delay before tooltip appearance.Arguments
- float time - Delay in cycles per second.
float getToolTipTime ( ) const#
Returns the delay before tooltip appearing.Return value
Delay in cycles per second.void setToolTipWidth ( int width ) #
Sets the width for the tooltip.Arguments
- int width - New tooltip width.
int getToolTipWidth ( const char * str ) const#
Returns the current width of the tooltip.Arguments
- const char * str - A tooltip text.
Return value
Width of the tooltip.int getToolTipWidth ( ) const#
Returns the current width of the tooltip.Return value
Width of the tooltip.void setToolTipX ( int tooltipx ) #
Sets the ToolTip position along the X axis.Arguments
- int tooltipx - New X coordinate of the ToolTip to be set.
int getToolTipX ( ) const#
Returns the ToolTip position along the X axis.Return value
X coordinate of the ToolTip.void setToolTipY ( int tooltipy ) #
Sets the ToolTip position along the Y axis.Arguments
- int tooltipy - New Y coordinate of the ToolTip to be set.
int getToolTipY ( ) const#
Returns the ToolTip position along the Y axis.Return value
void setTransform ( const Math::mat4 & transform ) #
Sets the global GUI transformation matrix. This 2D matrix can be tilted, rotated, moved or modified in many ways in 3D space.Arguments
- const Math::mat4 & transform - Transformation matrix.
Math::mat4 getTransform ( ) const#
Returns the global GUI transformation matrix.Return value
GUI transformation matrix.void setTransparentAlpha ( float alpha ) #
Sets an alpha value for transparent widgets. A widget is transparent, if it uses blending. The default is 0.8 (translucent).Arguments
- float alpha - Alpha value. 0 means completely transparent.
float getTransparentAlpha ( ) const#
Returns the alpha value of a transparent widget. A widget is transparent, if it uses blending.Return value
Alpha value.void setTransparentColor ( const Math::vec4 & color ) #
Sets a font color for transparent widgets. A widget is transparent, if it uses blending. The default is equivalent to #869caa (light bluish).Arguments
- const Math::vec4 & color - Font color.
Math::vec4 getTransparentColor ( ) const#
Returns the font color of a transparent widget. A widget is transparent, if it uses blending.Return value
Font color of a transparent widget.void setTransparentEnabled ( bool enabled ) #
Sets a value indicating if a widget can be rendered as transparent (i.e. change its color accordingly), when necessary. For example, this function allows to control whether the drop-down list of combobox is transparent or not.Arguments
- bool enabled - Positive value if the widget can be rendered as transparent; otherwise, 0.
bool isTransparentEnabled ( ) const#
Returns a value indicating if a widget can be rendered as transparent (i.e. change its color accordingly), when necessary. For example, it can indicate whether the drop-down list of combobox is transparent or not.Return value
1 if the widget can be rendered as transparent; otherwise, 0.int getWidth ( ) const#
Returns the current screen width.Return value
Screen width, in pixels.Ptr<WidgetVBox> getVBox ( ) const#
Returns the root widget of the GUI (WidgetVBox).Return value
Root widget of the GUI.void addChild ( const Ptr<Widget> & widget, int flags = 0 ) #
Adds a given widget to the GUI.Arguments
- const Ptr<Widget> & widget - Widget to add.
- int flags - One of the ALIGN_* pre-defined variables. This is an optional parameter.
int addDictionary ( const char * name, const char * language = 0 ) #
Adds a new dictionary with localized interface strings. Dictionaries cannot be modified in run-time.Arguments
- const char * name - Path to the dictionary file.
- const char * language - Name of the dictionary language.
Return value
Returns 1 if the dictionary is added successfully; otherwise, 0.void clearDictionaries ( ) #
Clears all dictionaries.int clearTexture ( const char * name ) #
Clears the specified GUI texture file cache.Arguments
- const char * name - Texture name.
Return value
1 if the texture is successfully cleared; otherwise, 0.Ptr<Gui> create ( const char * name = 0 ) #
GUI constructor.Arguments
- const char * name - GUI skin name.
Return value
Pointer to the created GUI.void destroy ( ) #
Destroys all GUI resources.void disable ( ) #
Disables GUI rendering.void enable ( int width, int height ) #
Enables GUI rendering.Arguments
- int width - GUI width.
- int height - GUI height.
int hasTranslation ( const char * arg1 ) const#
Returns a value indicating if there is translation for a given string in the localization dictionary.Arguments
- const char * arg1 - String to check.
Return value
1 if there is translation for the given string; otherwise, 0.Math::vec4 parseColor ( const char * str ) const#
Converts a color string in the Web format (RRGGBB / #RRGGBB or RRGGBBAA / #RRGGBBAA) into its vec4 equivalent.Arguments
- const char * str - Color string in the Web format.
Return value
Color value as a vec4 vector (R, G, B, A).void removeChild ( const Ptr<Widget> & widget ) #
Removes the specified widget from the GUI.Arguments
void removeFocus ( ) #
Removes focus from the GUI.void render ( int mouse_x, int mouse_y, int mouse_button, int mouse_show ) #
Renders GUI with specified parameters.Arguments
- int mouse_x - X mouse position.
- int mouse_y - Y mouse position.
- int mouse_button - Pressed mouse button.
- int mouse_show - Show mouse cursor flag.
void replaceChild ( const Ptr<Widget> & widget, const Ptr<Widget> & old_widget, int flags = 0 ) #
Replaces a given widget in the GUI with another widget.Arguments
- const Ptr<Widget> & widget - Replacement widget.
- const Ptr<Widget> & old_widget - Widget to be replaced.
- int flags - One of the ALIGN_* pre-defined variables. This is an optional parameter.
int saveDictionary ( const char * name, const char * language = 0 ) #
Saves the current dictionary on disk. This function can be used to save the currently loaded dictionary into another file.Arguments
- const char * name - Name of the dictionary language.
- const char * language - Dictionary language name.
Return value
1 if the dictionary is saved successfully; otherwise, 0.const char * translate ( const char * str ) #
Returns the source string translated using the dictionary.Arguments
- const char * str - String to translate (source).
Return value
Target (translated) string if it is found in the localization dictionary; otherwise, the source string.void update ( float ifps ) #
Updates GUI.Arguments
- float ifps - Inverse FPS counter.
bool isRenderingBootScreen ( ) #
Returns a value indicating if the GUI currently renders the boot screen.Return value
true if the GUI currently renders the boot screen; otherwise, false.bool isRenderingSplashScreen ( ) #
Returns a value indicating if the GUI currently renders the splash screen.Return value
true if the GUI currently renders the splash screen; otherwise, false.bool isRenderingLoadingScreen ( ) #
Returns a value indicating if the GUI currently renders the loading screen.Return value
true if the GUI currently renders the loading screen; otherwise, false.Last update:
2021-12-13
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)