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

boolall_tabs_in_frontfalse
intcurrent_tab0
booldrag_to_rearrange_enabledfalse
TabAligntab_align1
booltabs_visibletrue
booluse_hidden_tabs_for_min_sizefalse

Methods

Controlget_current_tab_control ( ) const
Popupget_popup ( ) const
intget_previous_tab ( ) const
Controlget_tab_control ( int tab_idx ) const
intget_tab_count ( ) const
boolget_tab_disabled ( int tab_idx ) const
Textureget_tab_icon ( int tab_idx ) const
Stringget_tab_title ( int tab_idx ) const
intget_tabs_rearrange_group ( ) const
voidset_popup ( Node popup )
voidset_tab_disabled ( int tab_idx, bool disabled )
voidset_tab_icon ( int tab_idx, Texture icon )
voidset_tab_title ( int tab_idx, String title )
voidset_tabs_rearrange_group ( int group_id )

Theme Properties

Texturedecrement 
Texturedecrement_highlight 
Fontfont 
Colorfont_color_bgColor( 0.69, 0.69, 0.69, 1 )
Colorfont_color_disabledColor( 0.9, 0.9, 0.9, 0.2 )
Colorfont_color_fgColor( 0.94, 0.94, 0.94, 1 )
inthseparation4
Textureincrement 
Textureincrement_highlight 
intlabel_valign_bg2
intlabel_valign_fg0
Texturemenu 
Texturemenu_highlight 
StyleBoxpanel 
intside_margin8
StyleBoxtab_bg 
StyleBoxtab_disabled 
StyleBoxtab_fg 
inttop_margin24

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
Defaultfalse
Setterset_all_tabs_in_front(value)
Getteris_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
Default0
Setterset_current_tab(value)
Getterget_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
Defaultfalse
Setterset_drag_to_rearrange_enabled(value)
Getterget_drag_to_rearrange_enabled()

If true, tabs can be rearranged with mouse drag.


Default1
Setterset_tab_align(value)
Getterget_tab_align()

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


Defaulttrue
Setterset_tabs_visible(value)
Getterare_tabs_visible()

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


  • bool use_hidden_tabs_for_min_size
Defaultfalse
Setterset_use_hidden_tabs_for_min_size(value)
Getterget_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).