TabContainer

Inherits: Container < Control < CanvasItem < Node < Object

Tabbed container.

Description

Sets the active tab’s visible property to the value true. Sets all other children’s to false.

Ignores non-Control children.

Individual tabs are always visible unless you use set_tab_disabled and set_tab_title to hide it.

To hide only a tab’s content, nest the content inside a child Control, so it receives the TabContainer‘s visibility setting instead.

Properties

bool

all_tabs_in_front

false

int

current_tab

0

bool

drag_to_rearrange_enabled

false

TabAlign

tab_align

1

bool

tabs_visible

true

bool

use_hidden_tabs_for_min_size

false

Methods

Control

get_current_tab_control ( ) const

Popup

get_popup ( ) const

int

get_previous_tab ( ) const

Control

get_tab_control ( int tab_idx ) const

int

get_tab_count ( ) const

bool

get_tab_disabled ( int tab_idx ) const

Texture

get_tab_icon ( int tab_idx ) const

String

get_tab_title ( int tab_idx ) const

int

get_tabs_rearrange_group ( ) const

void

set_popup ( Node popup )

void

set_tab_disabled ( int tab_idx, bool disabled )

void

set_tab_icon ( int tab_idx, Texture icon )

void

set_tab_title ( int tab_idx, String title )

void

set_tabs_rearrange_group ( int group_id )

Theme Properties

Texture

decrement

Texture

decrement_highlight

Font

font

Color

font_color_bg

Color( 0.69, 0.69, 0.69, 1 )

Color

font_color_disabled

Color( 0.9, 0.9, 0.9, 0.2 )

Color

font_color_fg

Color( 0.94, 0.94, 0.94, 1 )

int

hseparation

4

Texture

increment

Texture

increment_highlight

int

label_valign_bg

2

int

label_valign_fg

0

Texture

menu

Texture

menu_highlight

StyleBox

panel

int

side_margin

8

StyleBox

tab_bg

StyleBox

tab_disabled

StyleBox

tab_fg

int

top_margin

24

Signals

  • pre_popup_pressed ( )

Emitted when the TabContainer‘s Popup button is clicked. See set_popup for details.


  • tab_changed ( int tab )

Emitted when switching to another tab.


  • tab_selected ( int tab )

Emitted when a tab is selected, even if it is the current tab.

Enumerations

enum TabAlign:

  • ALIGN_LEFT = 0 —- Align the tabs to the left.

  • ALIGN_CENTER = 1 —- Align the tabs to the center.

  • ALIGN_RIGHT = 2 —- Align the tabs to the right.

Property Descriptions

  • bool all_tabs_in_front

Default

false

Setter

set_all_tabs_in_front(value)

Getter

is_all_tabs_in_front()

If true, all tabs are drawn in front of the panel. If false, inactive tabs are drawn behind the panel.


  • int current_tab

Default

0

Setter

set_current_tab(value)

Getter

get_current_tab()

The current tab index. When set, this index’s Control node’s visible property is set to true and all others are set to false.


  • bool drag_to_rearrange_enabled

Default

false

Setter

set_drag_to_rearrange_enabled(value)

Getter

get_drag_to_rearrange_enabled()

If true, tabs can be rearranged with mouse drag.


Default

1

Setter

set_tab_align(value)

Getter

get_tab_align()

The alignment of all tabs in the tab container. See the TabAlign constants for details.


Default

true

Setter

set_tabs_visible(value)

Getter

are_tabs_visible()

If true, tabs are visible. If false, tabs’ content and titles are hidden.


  • bool use_hidden_tabs_for_min_size

Default

false

Setter

set_use_hidden_tabs_for_min_size(value)

Getter

get_use_hidden_tabs_for_min_size()

If true, children Control nodes that are hidden have their minimum size take into account in the total, instead of only the currently visible one.

Method Descriptions

  • Control get_current_tab_control ( ) const

Returns the child Control node located at the active tab index.


  • Popup get_popup ( ) const

Returns the Popup node instance if one has been set already with set_popup.


  • int get_previous_tab ( ) const

Returns the previously active tab index.


Returns the Control node from the tab at index tab_idx.


  • int get_tab_count ( ) const

Returns the number of tabs.


  • bool get_tab_disabled ( int tab_idx ) const

Returns true if the tab at index tab_idx is disabled.


Returns the Texture for the tab at index tab_idx or null if the tab has no Texture.


Returns the title of the tab at index tab_idx. Tab titles default to the name of the indexed child node, but this can be overridden with set_tab_title.


  • int get_tabs_rearrange_group ( ) const

Returns the TabContainer rearrange group id.


  • void set_popup ( Node popup )

If set on a Popup node instance, a popup menu icon appears in the top-right corner of the TabContainer. Clicking it will expand the Popup node.


  • void set_tab_disabled ( int tab_idx, bool disabled )

If disabled is false, hides the tab at index tab_idx.

Note: Its title text will remain, unless also removed with set_tab_title.


Sets an icon for the tab at index tab_idx.


  • void set_tab_title ( int tab_idx, String title )

Sets a title for the tab at index tab_idx. Tab titles default to the name of the indexed child node, but this can be overridden with set_tab_title.


  • void set_tabs_rearrange_group ( int group_id )

Defines rearrange group id, choose for each TabContainer the same value to enable tab drag between TabContainer. Enable drag with set_drag_to_rearrange_enabled(true).