Unigine::WidgetTreeBox Class
Header: | #include <UnigineWidgets.h> |
Inherits: | Widget |
This class creates a box with a tree-like hierarchy. For example:
int init() {
Gui gui = engine.getGui();
WidgetTreeBox tree = new WidgetTreeBox(gui);
tree.addItem("1st item"); // Add items into the tree.
tree.addItem("2nd item");
tree.addItem("3rd item");
tree.addItem("4th item");
tree.addItemChild(0,1); // Make a 2nd item a child of the 1st one.
tree.setItemFolded(0,1); // Collapse children of the 1st child.
WidgetWindow window = new WidgetWindow(gui); // Create a window.
gui.addChild(window,GUI_ALIGN_CENTER);
window.addChild(tree,GUI_ALIGN_CENTER); // Render a tree in the window.
return 1;
}
As a result, you will get:
WidgetTreeBox in a window
WidgetTreeBox Class
Members
static WidgetTreeBoxPtr create ( const Ptr<Gui> & gui ) #
Constructor. Creates an empty tree box.Arguments
- const Ptr<Gui> & gui - GUI, to which the new tree box will belong.
void setCurrentItem ( int item ) #
Places focus on a given item (multi-selection mode).Arguments
- int item - Item ID.
int getCurrentItem ( ) #
Returns the item currently in focus (multi-selection mode).Return value
Item ID.const char * getCurrentItemData ( ) #
Returns the text data of the currently focused item (multi-selection mode). The data can be used as a text identifier of the item (instead of using the number of the item).Return value
Item data.const char * getCurrentItemText ( ) #
Returns the text of the currently focused item (multi-selection mode).Return value
Item text.void setEditable ( bool editable ) #
Sets a value indicating if item hierarchy can be edited.Arguments
- bool editable - 1 to make the hierarchy editable, 0 to make it read-only.
bool isEditable ( ) #
Returns a value indicating if item hierarchy can be edited. The default is 0.Return value
1 if the hierarchy can be edited; otherwise, 0.void setImage ( const Ptr<Image> & image ) #
Sets an image with mini-icons to be used with items. The image is a vertical strip of square icons.Arguments
- const Ptr<Image> & image - Image to set.
Ptr<Image> getImage ( ) #
Returns the image with mini-icons.Return value
Image with mini-icons (the vertical strip of square icons).int getItem ( int num ) #
Returns the ID of a given item by its number. The IDs are unique, and the numbers simply point at the place in the list of all items.Arguments
- int num - Item ID in range from 0 to the total number of items.
Return value
Item ID.int getItemChild ( int item, int num ) #
Returns a child of a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int num - Child number in the list of children in range from 0 to the total number.
Return value
Child item ID.int isItemChild ( int item, int child ) #
Checks if a given item is a child of another specified item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int child - Child item ID.
Return value
1 if child is actually a child of the item; otherwise, 0.void setItemColor ( int item, const Math::vec4 & color ) #
Sets a custom color for a given item.Arguments
- int item - Item number in range from 0 to the total number of items.
- const Math::vec4 & color - Color to set.
Math::vec4 getItemColor ( int item ) #
Returns a color set to a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
Color.void setItemData ( int item, const char * str ) #
Sets a custom text data for the given item. The data can be used as a text identifier of the item (instead of using the item number).Arguments
- int item - Item ID in range from 0 to the total number of items.
- const char * str - Text data to be set.
const char * getItemData ( int item ) #
Returns the text data of the item with the specified ID. The data can be used as a text identifier of the item (instead of using the item number).Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
Item text data.void setItemFolded ( int item, int folded ) #
Expands or collapses an hierarchy of a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int folded - 1 to collapse the item hierarchy, 0 to expand it.
int isItemFolded ( int item ) #
Returns a value indicating if a given item is collapsed.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
1 if the item is collapsed; otherwise, 0.void setItemHidden ( int item, int hidden ) #
Sets a value indicating if a given item is hidden.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int hidden - 1 to hide the item, 0 to show it.
int isItemHidden ( int item ) #
Returns a value indicating if an item is hidden or not.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
1 if the item is hidden; otherwise, 0.void setItemParent ( int item, int parent ) #
Sets a parent for a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int parent - Parent item ID. -1 removes the current parent.
int getItemParent ( int item ) #
Returns the parent of a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
Parent item ID.void getItems ( Vector< int > & items ) #
Returns all items in the tree box.Arguments
- Vector< int > & items - An array with item IDs.
void setItemSelectable ( int item, int selectable ) #
Sets a value indicating if a given item can be selected.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int selectable - 1 to set the item as selectable, 0 to set it as unselectable.
int isItemSelectable ( int item ) #
Returns a value indicating if a given item can be selected.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
1 if the item is selectable; otherwise, 0.void setItemSelected ( int item, int selected ) #
Selects or deselects a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int selected - 1 to select the item, 0 to deselect it.
int isItemSelected ( int item ) #
Returns a value indicating if a given item is selected.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
1 if the item is selected; otherwise, 0.void setItemText ( int item, const char * str ) #
Sets a text for a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- const char * str - Item text.
const char * getItemText ( int item ) #
Returns the text of a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
Item text.void setItemTexture ( int item, int texture ) #
Sets an icon for a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int texture - Zero-based ID of the icon (i.e. number of the icon in the icon texture).
int getItemTexture ( int item ) #
Returns the icon of a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
Zero-based ID of the icon (i.e. number of the icon in the icon texture).void setMultiSelection ( bool selection ) #
Enables or disables multiple selection of items.Arguments
- bool selection - 1 to enable multiple selection, 0 to disable it.
bool isMultiSelection ( ) #
Returns a value indicating if multiple selection of items is enabled. The default is 0.Return value
1 if several items can be selected at once; otherwise, 0.int getNumItemChildren ( int item ) #
Returns the number of child items of a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
Return value
Number of child items.int getNumItems ( ) #
Returns the number of visible items in the tree box. Items that are currently collapsed to a parent level are not returned.Return value
Number of items.int getNumSelectedItems ( ) #
Returns number of selected items in the box (multi-selection mode).Return value
Number of selected items.int getSelectedItem ( int num ) #
Returns ID of a selected item (multi-selection mode).Arguments
- int num - Number of an item in the list of selected items.
Return value
ID of the selected item.void setTexture ( const char * texture ) #
Sets a texture with mini-icons to be used with items. The texture is a vertical strip of square icons.Arguments
- const char * texture - Path to a texture file.
const char * getTexture ( ) #
Returns file name of the image with mini-icons. The texture is a vertical strip of square icons.Return value
Path to the texture file.int addItem ( const char * str, int texture = -1 ) #
Adds a new item with a given text and and an icon.Arguments
- const char * str - Item text.
- int texture - Zero-based ID of the icon (i.e. number of the icon in the icon texture). -1 means that an item has no icon.
Return value
ID of the added item.void addItemChild ( int item, int child ) #
Adds a child to a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int child - Child item ID.
void clear ( ) #
Removes all items from the tree box.void clearSelection ( ) #
Clears list of selected items.void removeItem ( int item ) #
Removes a given item from the tree box. Children items will be kept.Arguments
- int item - Item ID in range from 0 to the total number of items.
void removeItemChild ( int item, int child ) #
Removes a child of a given item.Arguments
- int item - Item ID in range from 0 to the total number of items.
- int child - Child item ID.
void showItem ( int item ) #
Scrolls a tree box so that a given item is visible.Arguments
- int item - Item ID in range from 0 to the total number of items.
void setSelectionColor ( const Math::vec4 & color ) #
Sets the color to be used to highlight the current selection for the widget.Arguments
- const Math::vec4 & color - Four-component vector specifying the color in the RGBA format.
Math::vec4 getSelectionColor ( ) #
Returns the current color used to highlight the current selection for the widget.Return value
Four-component vector specifying the color in the RGBA format.Last update:
2020-04-10
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)