c4d.gui.TreeViewCustomGui

class c4d.gui.TreeViewCustomGui

The tree view GUI (CUSTOMGUI_TREEVIEW) is a very versatile list view interface.

New in version R13.029.

It looks like this:

../../../../_images/treeviewcustomgui_treeview.png

The settings are:

TREEVIEW_BORDER int Border type:
BORDER_NONE No border.
BORDER_THIN_IN Thin border inward.
BORDER_THIN_OUT Thin border outward.
BORDER_IN Normal border inward.
BORDER_OUT Normal border outward.
BORDER_GROUP_IN Group border inside.
BORDER_GROUP_OUT Group border outside.
BORDER_OUT2 Outward border 2.
BORDER_OUT3 Outward border 3
BORDER_BLACK Thin black line.
BORDER_ACTIVE_1 Active border 1.
BORDER_ACTIVE_2 Active border 2.
BORDER_ACTIVE_3 Active border 3.
BORDER_ACTIVE_4 Active border 4.
BORDER_GROUP_TOP Border along the top.
BORDER_ROUND Border with round corners.
BORDER_SCHEME_EDIT Edit field border like the shortcut gadget for example.
BORDER_SCHEME_EDIT_NUMERIC Edit field border that is open to the right like the link field for example.
BORDER_OUT3l Outward border 3, open to the left.
BORDER_OUT3r Outward border 3, open to the right.
BORDER_THIN_INb Thin border inward, open to the botton.
BORDER_MASK Masks out border type.
BORDER_TEXT_DOTTED
New in version R21:
Only used with GeDialog.AddStaticText().
Draws a dotted line at right of text, useful to visually connect the text with its parameter.
BORDER_WITH_TITLE_MONO Display group title with monospaced font.
BORDER_WITH_TITLE_BOLD Display group title with bold font.
BORDER_WITH_TITLE Display group title in the border.
TREEVIEW_OUTSIDE_DROP bool True if an object may be dropped under all the objects in the tree view.
TREEVIEW_HIDE_LINES bool True if no lines should be drawn.
TREEVIEW_CTRL_DRAG bool True if item may be duplicated by Ctrl + Drag.
TREEVIEW_NO_MULTISELECT bool True if no multiple selection is allowed.
TREEVIEW_HAS_HEADER bool True if the tree view may have a header line.
TREEVIEW_RESIZE_HEADER bool True if the column width can be changed by the user.
TREEVIEW_MOVE_COLUMN bool True if the user can move the columns.
TREEVIEW_FIXED_LAYOUT bool True if all lines have the same height.
TREEVIEW_NOAUTOCOLUMNS bool True if only the first line is asked for the columns width, resulting in a huge speedup.
TREEVIEW_NO_OPEN_CTRLCLK bool True if it is not allowed to open the complete tree with Ctrl + Click.
TREEVIEW_ALT_DRAG bool True if Alt should be used instead of Ctrl for drag and drop; implies item may be duplicated by Alt + Drag.
TREEVIEW_NO_BACK_DELETE bool Disable “delete pressed” messages if backspace was hit.
TREEVIEW_NO_DELETE bool Disable Delete Message Callback completely for backspace and delete.
TREEVIEW_ALTERNATE_BG bool Alternate background per line.
TREEVIEW_CURSORKEYS bool True if cursor keys should be processed. Note: The focus item has to be set to None if it is deleted and this flag is set.
TREEVIEW_NOENTERRENAME bool Suppresses the rename popup when the user presses enter.
TREEVIEW_NO_VERTICALSCROLL bool True to disable vertical scrolling and show the full list.
TREEVIEW_ADDROW bool Show an add new column row at the bottom of the list.
TREEVIEW_RESIZABLE bool The treeview is resizable from the bottom edge.

Methods Signatures

TreeViewCustomGui.SetRoot(self, root, functions, ...) Initializes the tree.
TreeViewCustomGui.SetLayout(self, columns, data) Sets the layout for the tree view.
TreeViewCustomGui.Refresh(self) Refreshes the tree view.
TreeViewCustomGui.SetHeaderText(self, lColumnID, str) Set the header text for a column.
TreeViewCustomGui.MakeVisible(self, pObj) Scrolls to pObj and expands the tree if necessary.
TreeViewCustomGui.ShowObject(self, pObj) Expands the tree to pObj.
TreeViewCustomGui.GetVisibleScrollArea(self) Queries the internal scroll group for its currently visible region.
TreeViewCustomGui.SetVisibleScrollArea(self, x1, y1, x2, y2) Sets the internal scroll group currently visible region, a rectangle between (x1, y1) and (x2, y2).
TreeViewCustomGui.GetVisibleLineCount(self) Gets the number of currently visible lines related to folded and unfolded items of the tree.
TreeViewCustomGui.SetFocusItem(self, pItem) Sets the focus item.
TreeViewCustomGui.IsFocusItem(self, pItem) Checks if pItem is the focus item.

Inheritance

Inheritance

Parent Class:

Methods Documentation

TreeViewCustomGui.SetRoot(self, root, functions, userdata)

Initializes the tree.

Parameters:
Return type:

bool

Returns:

True if successful, otherwise False.

TreeViewCustomGui.SetLayout(self, columns, data)

Sets the layout for the tree view.

Parameters:
  • columns (int) – Number of columns.
  • data (c4d.BaseContainer) –

    Column data container, with one column type entry for each column:

    LV_TREE Tree or list.
    LV_USERTREE User tree. If set, the tree view calls TreeViewFunctions.DrawCell() for the left cell of each line (otherwise it would display the object’s name in the cell).
    LV_USER Custom.
    LV_CHECKBOX Checkbox. If set, the tree view calls TreeViewFunctions.IsChecked() and TreeViewFunctions.SetCheck() for each column and row.
    LV_CHECKBOXUSER Checkbox. If set, the tree view calls TreeViewFunctions.IsChecked() and TreeViewFunctions.SetCheck() for each column and row. User draw by TreeViewFunctions.DrawCell().
    LV_SLIDER Slider. If set, the tree view calls TreeViewFunctions.GetFloatValue and TreeViewFunctions.SetFloatValue() for each column and row. NOT AVAILABLE IN PYTHON.
    LV_DROPDOWN Dropdown cycle box. If set, the tree view calls TreeViewFunctions.GetDropDownMenu() and TreeViewFunctions.SetDropDownMenu() for each column and row. NOT AVAILABLE IN PYTHON.
Return type:

bool

Returns:

True if successful, otherwise False.

TreeViewCustomGui.Refresh(self)

Refreshes the tree view.

TreeViewCustomGui.SetHeaderText(self, lColumnID, str)

Set the header text for a column.

Parameters:
  • lColumnID (int) – Column index.
  • str (str) – Header text.
Return type:

bool

Returns:

True if successful, otherwise False.

TreeViewCustomGui.MakeVisible(self, pObj)

Scrolls to pObj and expands the tree if necessary.

Parameters:pObj (any) – The object to scroll to.
Return type:bool
Returns:True if successful, otherwise False.
TreeViewCustomGui.ShowObject(self, pObj)

Expands the tree to pObj.

Parameters:pObj (any) – The object to expand to.
Return type:bool
Returns:True if successful, otherwise False.
TreeViewCustomGui.GetVisibleScrollArea(self)

Queries the internal scroll group for its currently visible region.

New in version R17.048.

Return type:tuple(int,int,int,int)
Returns:The X and Y coordinates of the top/bottom left/right visible corner: tuple(x1,y1,x2,y2).
TreeViewCustomGui.SetVisibleScrollArea(self, x1, y1, x2, y2)

Sets the internal scroll group currently visible region, a rectangle between (x1, y1) and (x2, y2).

New in version R18.020.

Parameters:
  • x1 (int) – The left X value.
  • y1 (int) – The top Y value.
  • x2 (int) – The right X value.
  • y2 (int) – The bottom Y value.
Return type:

bool

Returns:

True if successful, otherwise False.

TreeViewCustomGui.GetVisibleLineCount(self)

Gets the number of currently visible lines related to folded and unfolded items of the tree.

New in version R17.048.

Return type:int
Returns:The number of visible lines.
TreeViewCustomGui.SetFocusItem(self, pItem)

Sets the focus item.

Parameters:pItem (any) – The new focus item.
TreeViewCustomGui.IsFocusItem(self, pItem)

Checks if pItem is the focus item.

Parameters:pItem (any) – The item to check.
Return type:bool
Returns:True if pItem is the focus item, otherwise False.