UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Landscape Tool
Using Editor Tools for Specific Tasks
FAQ
Программирование
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
Math Functionality
Node-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
CIGI Client Plugin
Rendering-Related Classes

Unigine::WidgetTreeBox Class

Header:#include <UnigineWidgets.h>
Inherits:Widget

This class creates a box with a tree-like hierarchy. For example:

Source code (UnigineScript)
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.

Ptr<WidgetTreeBox> cast(const Ptr<Widget> & widget)

Casts a WidgetTreeBox out of the Widget instance.

Arguments

  • const Ptr<Widget> & widget - Pointer to Widget.

Return value

Pointer to WidgetTreeBox.

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 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(int editable)

Sets a value indicating if item hierarchy can be edited.

Arguments

  • int editable - 1 to make the hierarchy editable, 0 to make it read-only.

int 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.

void getImage(const Ptr<Image> & image)

Returns the image with mini-icons.

Arguments

  • const Ptr<Image> & image - 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 data for the given item. The data can be used as a text identifier of the item (instead of using the number of the item).

Arguments

  • int item - Item ID in range from 0 to the total number of items.
  • const char * str - Data to set.

const char * getItemData(int item)

Returns the data of the given item. The data can be used as a text identifier of the item (instead of using the number of the item).

Arguments

  • int item - Item ID in range from 0 to the total number of items.

Return value

Item 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(int selection)

Enables or disables multiple selection of items.

Arguments

  • int selection - 1 to enable multiple selection, 0 to disable it.

int 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.

int type()

WidgetTreeBox type.

Return value

WidgetTreeBox type identifier.
Last update: 10.08.2018