Tabs

Inherits: Control < CanvasItem < Node < Object

Tabs control.

Description

Simple tabs control, similar to TabContainer but is only in charge of drawing tabs, not interacting with children.

Properties

int

current_tab

0

bool

drag_to_rearrange_enabled

false

bool

scrolling_enabled

true

TabAlign

tab_align

1

CloseButtonDisplayPolicy

tab_close_display_policy

0

Methods

void

add_tab ( String title=””, Texture icon=null )

void

ensure_tab_visible ( int idx )

bool

get_offset_buttons_visible ( ) const

int

get_previous_tab ( ) const

bool

get_select_with_rmb ( ) const

int

get_tab_count ( ) const

bool

get_tab_disabled ( int tab_idx ) const

Texture

get_tab_icon ( int tab_idx ) const

int

get_tab_offset ( ) const

Rect2

get_tab_rect ( int tab_idx ) const

String

get_tab_title ( int tab_idx ) const

int

get_tabs_rearrange_group ( ) const

void

move_tab ( int from, int to )

void

remove_tab ( int tab_idx )

void

set_select_with_rmb ( bool enabled )

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

StyleBox

button

StyleBox

button_pressed

Texture

close

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

StyleBox

panel

StyleBox

tab_bg

StyleBox

tab_disabled

StyleBox

tab_fg

int

top_margin

24

Signals

  • reposition_active_tab_request ( int idx_to )

Emitted when the active tab is rearranged via mouse drag. See drag_to_rearrange_enabled.


  • right_button_pressed ( int tab )

Emitted when a tab is right-clicked.


  • tab_changed ( int tab )

Emitted when switching to another tab.


  • tab_clicked ( int tab )

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


  • tab_close ( int tab )

Emitted when a tab is closed.


  • tab_hover ( int tab )

Emitted when a tab is hovered by the mouse.

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.

  • ALIGN_MAX = 3 —- Represents the size of the TabAlign enum.


enum CloseButtonDisplayPolicy:

  • CLOSE_BUTTON_SHOW_NEVER = 0 —- Never show the close buttons.

  • CLOSE_BUTTON_SHOW_ACTIVE_ONLY = 1 —- Only show the close button on the currently active tab.

  • CLOSE_BUTTON_SHOW_ALWAYS = 2 —- Show the close button on all tabs.

  • CLOSE_BUTTON_MAX = 3 —- Represents the size of the CloseButtonDisplayPolicy enum.

Property Descriptions

  • int current_tab

Default

0

Setter

set_current_tab(value)

Getter

get_current_tab()

Select tab at index tab_idx.


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


  • bool scrolling_enabled

Default

true

Setter

set_scrolling_enabled(value)

Getter

get_scrolling_enabled()

if true, the mouse’s scroll wheel can be used to navigate the scroll view.


Default

1

Setter

set_tab_align(value)

Getter

get_tab_align()

The alignment of all tabs. See TabAlign for details.


Default

0

Setter

set_tab_close_display_policy(value)

Getter

get_tab_close_display_policy()

Sets when the close button will appear on the tabs. See CloseButtonDisplayPolicy for details.

Method Descriptions

Adds a new tab.


  • void ensure_tab_visible ( int idx )

Moves the scroll view to make the tab visible.


  • bool get_offset_buttons_visible ( ) const

Returns true if the offset buttons (the ones that appear when there’s not enough space for all tabs) are visible.


  • int get_previous_tab ( ) const

Returns the previously active tab index.


  • bool get_select_with_rmb ( ) const

Returns true if select with right mouse button is enabled.


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


  • int get_tab_offset ( ) const

Returns the number of hidden tabs offsetted to the left.


  • Rect2 get_tab_rect ( int tab_idx ) const

Returns tab Rect2 with local position and size.


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 Tabs‘ rearrange group ID.


  • void move_tab ( int from, int to )

Moves a tab from from to to.


  • void remove_tab ( int tab_idx )

Removes the tab at index tab_idx.


  • void set_select_with_rmb ( bool enabled )

If true, enables selecting a tab with the right mouse button.


  • 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 it is 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.


  • void set_tabs_rearrange_group ( int group_id )

Defines the rearrange group ID. Choose for each Tabs the same value to dragging tabs between Tabs. Enable drag with set_drag_to_rearrange_enabled(true).