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
Members
Ptr<Gui> get( )
Returns a pointer to the GUI.Return value
Pointer to the GUI.int getActivity( )
Returns a value indicating if any widget in the GUI is in focus.Return value
1 if any widget is focused; otherwise, 0.Ptr<Widget> getChild( int num )
Returns a child widget with a given number.Arguments
- int num - Child widget number.
Return value
Child widget.int isChild( const Ptr<Widget> & widget )
Checks if a given widget is a child of the current GUI.Arguments
- const Ptr<Widget> & widget - Widget to check.
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( )
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( )
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( )
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( )
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( )
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( )
Returns the font color of a disabled widget.Return value
Font color.void setDisabledEnabled( int enabled )
Sets a value indicating if a widget can be rendered as disabled (i.e. change its color accordingly), when necessary.Arguments
- int enabled - Positive value if the widget can be rendered as disabled; otherwise, 0.
int isDisabledEnabled( )
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( int enabled )
Sets a value indicating if a widget should be enabled/disabled.Arguments
- int enabled - 1 to enable the GUI, 0 to disable it.
int isEnabled( )
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( )
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( )
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( )
Returns the duration of fade-out animation played when a widget loses focus.Return value
Duration in cycles per second.Ptr<Widget> getFocus( )
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( )
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( )
Returns the font color of a focused widget.Return value
Font color.void setFocusedEnabled( int enabled )
Sets a value indicating if a widget can be rendered as focused on (i.e. change its color accordingly), when necessary.Arguments
- int enabled - Positive value if the widget can be rendered as focused on; otherwise, 0.
int isFocusedEnabled( )
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( int permanent )
Changes the permanent color of the focused widget.Arguments
- int permanent - 1 - a font color is overridden with the global GUI focused color; 0 - a font color is unchanged.
int isFocusedPermanent( )
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( )
Returns the current screen height.Return value
Screen height, in pixels.void setHidden( int hidden )
Sets a value indicating if a widget should not be rendered.Arguments
- int hidden - 1 to show the GUI, 0 to hide it.
int isHidden( )
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 )
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( )
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( )
One of the CURSOR_* pre-defined variables.Return value
Returns the type of mouse pointer currently displayed.int getMouseDX( )
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( )
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( int enabled )
Enables or disables rendering of the mouse cursor.Arguments
- int enabled - 1 to enable the mouse, 0 to disable it.
int isMouseEnabled( )
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( )
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( )
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( )
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( )
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( )
Returns the number of widgets in the GUI.Return value
Number of widgets.Ptr<Widget> getOverlappedFocus( )
Returns the widget placed under the currently focused widget.Return value
Overlapped widget.int isOwner( )
Ptr<Widget> getPermanentFocus( )
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( )
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( )
Returns the font color of a tooltip.Return value
Font color.void setToolTipEnabled( int enabled )
Sets a value indicating whether tooltips are available or not.Arguments
- int enabled - 1 to enable tooltips; otherwise, 0.
int isToolTipEnabled( )
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 )
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( )
Returns the font size of a tooltip.Return value
Font size.const char * getToolTipText( )
Gets GUI ToolTip text.Return value
GUI ToolTip text.void setToolTipTime( float time )
Sets a delay before tooltip appearance.Arguments
- float time - Delay in cycles per second.
float getToolTipTime( )
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 )
Returns the current width of the tooltip.Arguments
- const char * str - A tooltip text.
Return value
Width of the tooltip.int getToolTipWidth( )
Returns the current width of the tooltip.Return value
Width of the tooltip.int getToolTipX( )
Gets GUI ToolTip X position.Return value
GUI ToolTip X position.int getToolTipY( )
Gets GUI ToolTip Y position.Return value
GUI ToolTip Y position.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( )
Returns 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( )
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( )
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( int 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
- int enabled - Positive value if the widget can be rendered as transparent; otherwise, 0.
int isTransparentEnabled( )
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( )
Returns the current screen width.Return value
Screen width, in pixels.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.
void grab( )
Sets the owner flag to 1 for the GUI pointer. The GUI should not be handled by the class after this function is calledint hasTranslation( const char * arg1 )
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 )
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 in vec4.void release( )
Sets the owner flag to 0 for the GUI pointer. The GUI should be handled by the class after this function is called.void removeChild( const Ptr<Widget> & widget )
Removes a child widget from the list of children.Arguments
- const Ptr<Widget> & widget - Child widget to be removed.
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
Returns 1 if the dictionary is saved successfully; otherwise, 0.const char * translate( const char * str )
Translates the string using dictionary.Arguments
- const char * str - String to translate.
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.
Last update:
2020-01-14
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)