Class: TabPanelLayout

.ui.TabPanelLayout(name, configopt)

new TabPanelLayout(name, configopt)

TabPanelLayouts are used within index layouts to create tab panels that users can select and display from the index's optional tab navigation. TabPanels are usually not instantiated directly, rather extended to include the required content and functionality. Each tab panel must have a unique symbolic name, which is passed to the constructor. In addition, the tab panel's tab item is customized (with a label) using the #setupTabItem method. See IndexLayout for an example.
Parameters:
Name Type Attributes Description
name string Unique symbolic name of tab panel
config Object <optional>
Configuration options
Properties
Name Type Attributes Description
label jQuery | string | function | OO.ui.HtmlSnippet <optional>
Label for tab panel's tab
Source:

Extends

Methods

focus()

Focus the panel layout The default implementation just focuses the first focusable element in the panel
Inherited From:
Source:

getClosestScrollableElementContainer() → {HTMLElement}

Get closest scrollable container.
Inherited From:
Source:
Returns:
Closest scrollable container
Type
HTMLElement

getData() → {Mixed}

Get element data.
Inherited From:
Source:
Returns:
Element data
Type
Mixed

getElementDocument() → {HTMLDocument}

Get the DOM document.
Inherited From:
Source:
Returns:
Document object
Type
HTMLDocument

getElementGroup() → {OO.ui.mixin.GroupElement|null}

Get group element is in.
Inherited From:
Source:
Returns:
Group element, null if none
Type
OO.ui.mixin.GroupElement | null

getElementId() → {string}

Ensure that the element has an 'id' attribute, setting it to an unique value if it's missing, and return its value.
Inherited From:
Source:
Returns:
Type
string

getElementWindow() → {Window}

Get the DOM window.
Inherited From:
Source:
Returns:
Window object
Type
Window

getName() → {string}

Get the symbolic name of the tab panel.
Source:
Returns:
Symbolic name of tab panel
Type
string

getTabItem() → {OO.ui.TabOptionWidget|null}

Get tab item. The tab item allows users to access the tab panel from the index's tab navigation. The tab item itself can be customized (with a label, level, etc.) using the #setupTabItem method.
Source:
Returns:
Tab option widget
Type
OO.ui.TabOptionWidget | null

getTagName() → {string}

Get the HTML tag name. Override this method to base the result on instance information.
Inherited From:
Source:
Returns:
HTML tag name
Type
string

isActive() → {boolean}

Check if tab panel is active. Tab panels become active when they are shown in a index layout that is configured to display only one tab panel at a time. Additional CSS is applied to the tab panel's tab item to reflect the active state.
Source:
Returns:
Tab panel is active
Type
boolean

isElementAttached() → {boolean}

Check if the element is attached to the DOM
Inherited From:
Source:
Returns:
The element is attached to the DOM
Type
boolean

isVisible() → {boolean}

Check if element is visible.
Inherited From:
Source:
Returns:
element is visible
Type
boolean

(protected) restorePreInfuseState(state)

Restore the pre-infusion dynamic state for this widget. This method is called after #$element has been inserted into DOM. The parameter is the return value of #gatherPreInfuseState.
Parameters:
Name Type Description
state Object
Inherited From:
Source:

scrollElementIntoView(configopt) → {jQuery.Promise}

Scroll element into view.
Parameters:
Name Type Attributes Description
config Object <optional>
Configuration options
Inherited From:
Source:
Returns:
Promise which resolves when the scroll is complete
Type
jQuery.Promise

setActive(active)

Set the tab panel to its 'active' state. Tab panels become active when they are shown in a index layout that is configured to display only one tab panel at a time. Additional CSS is applied to the tab item to reflect the tab panel's active state. Outside of the index context, setting the active state on a tab panel does nothing.
Parameters:
Name Type Description
active boolean Tab panel is active
Source:
Fires:

setData(data)

Set element data.
Parameters:
Name Type Description
data Mixed Element data
Inherited From:
Source:

setElementGroup(group)

Set group element is in.
Parameters:
Name Type Description
group OO.ui.mixin.GroupElement | null Group element, null if none
Inherited From:
Source:

setElementId(id)

Set the element has an 'id' attribute.
Parameters:
Name Type Description
id string
Inherited From:
Source:

setTabItem(tabItem)

Set or unset the tab item. Specify a tab option to set it, or `null` to clear the tab item. To customize the tab item itself (e.g., to set a label or tab level), use #setupTabItem instead of this method.
Parameters:
Name Type Description
tabItem OO.ui.TabOptionWidget | null Tab option widget, null to clear
Source:

setupTabItem(tabItem)

Set up the tab item. Use this method to customize the tab item (e.g., to add a label or tab level). To set or unset the tab item itself (with a tab option or `null`), use the #setTabItem method instead.
Parameters:
Name Type Description
tabItem OO.ui.TabOptionWidget Tab option widget to set up
Source:

supports(methods) → {boolean}

Check if element supports one or more methods.
Parameters:
Name Type Description
methods string | Array.<string> Method or list of methods to check
Inherited From:
Source:
Returns:
All methods are supported
Type
boolean

toggle(showopt)

Toggle visibility of an element.
Parameters:
Name Type Attributes Description
show boolean <optional>
Make element visible, omit to toggle visibility
Inherited From:
Source:
Fires:
  • event:visible

updateThemeClasses()

Update the theme-provided classes.
Inherited From:
Source: