Protected
Optional
_Readonly
collapseSide panels can be collapsed by clicking on the currently selected tab. This signal is emitted when the mouse is released on the selected tab without initiating a drag.
Protected
contentThe selection behavior when inserting a tab.
Protected
isProtected
Optional
mouseProtected
needsReadonly
nodeGet the DOM node owned by the widget.
Protected
openProtected
openProtected
Optional
pendingThe selection behavior when removing a tab.
Readonly
rendererThe renderer used by the tab bar.
Protected
scrollProtected
Optional
Readonly
scrollbarReadonly
tabEmitted when a tab is added to the tab bar.
Protected
tabReadonly
tabsEmitted when the set of overflowing/hidden tabs changes.
Protected
Optional
tabsProtected
Readonly
toProtected
topProtected
Static
Readonly
DRAG_Whether the add button is enabled.
Set whether the add button is enabled.
A signal emitted when the tab bar add button is clicked.
A signal emitted when the current tab is changed.
This signal is emitted when the currently selected tab is changed either through user or programmatic interaction.
Notably, this signal is not emitted when the index of the current tab changes due to tabs being inserted, removed, or moved. It is only emitted when the actual current tab node is changed.
The dataset for the widget's DOM node.
A signal emitted when the widget is disposed.
The document to use with the tab bar.
The default is the global document
instance.
Tab bars of the left and right side panel are arranged vertically by rotating their labels.
Rotation is realized with the CSS transform
property, which disrupts the browser's ability
to arrange the involved elements automatically. Therefore the elements are arranged explicitly
by the TabBarRenderer using inline height
and top
styles. However, the size of labels
must still be computed by the browser, so the rendering is performed in two steps: first the
tab bar is rendered horizontally inside a hidden content node, then it is rendered again
vertically inside the proper content node. After the first step, size information is gathered
from all labels so it can be applied during the second step.
Get the method for hiding the widget.
Get the id of the widget's DOM node.
Set the id of the widget's DOM node.
Test whether the widget's node is attached to the DOM.
Test whether the widget has been disposed.
Test whether the widget is explicitly hidden.
Get the name of the tab bar.
Set the name of the tab bar.
Get the orientation of the tab bar.
This controls whether the tabs are arranged in a row or column.
Set the orientation of the tab bar.
This controls whether the tabs are arranged in a row or column.
Get the parent of the widget.
Set the parent of the widget.
Children are typically added to a widget by using a layout, which means user code will not normally set the parent widget directly.
The widget will be automatically removed from its old parent.
This is a no-op if there is no effective parent change.
A signal emitted when a tab is clicked by the user.
If the clicked tab is not the current tab, the clicked tab will be
made current and the currentChanged
signal will be emitted first.
This signal is emitted even if the clicked tab is the current tab.
A signal emitted when a tab close icon is clicked.
This signal is not emitted unless the tab title is closable
.
A signal emitted when a tab is dragged beyond the detach threshold.
This signal is emitted when the user drags a tab with the mouse, and mouse is dragged beyond the detach threshold.
The consumer of the signal should call releaseMouse
and remove
the tab in order to complete the detach.
This signal is only emitted once per drag cycle.
A signal emitted when a tab is moved by the user.
This signal is emitted when a tab is moved by user interaction.
This signal is not emitted when a tab is moved programmatically.
The title object for the widget.
The title object is used by some container widgets when displaying the widget alongside some title, such as a tab panel or side bar.
Since not all widgets will use the title, it is created on demand.
The owner
property of the title is set to this widget.
Whether the titles can be user-edited.
Set whether titles can be user edited.
Protected
cancelCreate an iterator over the widget's children.
A new iterator over the children of the widget.
The widget must have a populated layout in order to have children.
If a layout is not installed, the returned iterator will be empty.
Remove all tabs from the tab bar.
Protected
computeTest whether a widget is a descendant of this widget.
The descendant widget of interest.
true
if the widget is a descendant, false
otherwise.
Dispose of the resources held by the widget.
Protected
doThe following event processing is used to generate collapseRequested
signals
when the mouse goes up on the currently selected tab without too much movement
between mousedown
and mouseup
. The movement threshold is the same that
is used by the superclass to detect a drag event. The allowDeselect
option
of the TabBar constructor cannot be used here because it is triggered when the
mouse goes down, and thus collides with dragging.
Test whether the widget's DOM node has the given class name.
The class name of interest.
true
if the node has the class, false
otherwise.
Hide the widget and make it hidden to its parent widget.
This causes the isHidden property to be true
.
If the widget is explicitly hidden, this is a no-op.
Protected
hideHide overflowing tabs and return the index of the first hidden tab.
Protected
notifyProtected
onA message handler invoked on an 'activate-request'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on an 'after-attach'
message.
The default implementation of this handler is a no-op.
Protected
onProtected
onA message handler invoked on an 'after-hide'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on an 'after-show'
message.
The default implementation of this handler is a no-op.
Protected
onProtected
onA message handler invoked on a 'before-detach'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'before-hide'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'before-show'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'child-added'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'child-removed'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'close-request'
message.
The default implementation unparents or detaches the widget.
Protected
onHandles viewContainerPart
drag enter.
Protected
onHandle viewContainerPart
drag over,
Defines the appropriate dropAction
and opens the tab on which the mouse stands on for more than 800 ms.
Protected
onA message handler invoked on a 'fit-request'
message.
The default implementation of this handler is a no-op.
Protected
onProtected
onProtected
onProtected
onA message handler invoked on a 'resize'
message.
The default implementation of this handler is a no-op.
Protected
onProtected
renderRender the tab bar using the given DOM element as host. The optional renderData
is forwarded
to the TabBarRenderer.
Optional
renderData: Partial<SideBarRenderData>[]Reveal the tab with the given index by moving it into the non-overflowing tabBar section if necessary.
Show the widget and make it visible to its parent widget.
This causes the isHidden property to be false
.
If the widget is not explicitly hidden, this is a no-op.
Test whether the given widget flag is set.
This will not typically be called directly by user code.
Toggle a class name on the widget's DOM node.
The class name to toggle on the node.
Optional
force: booleanWhether to force add the class (true
) or force
remove the class (false
). If not provided, the presence of
the class will be toggled from its current state.
true
if the class is now present, false
otherwise.
The class name must not contain whitespace.
Protected
updateRender the tab bar in the hidden content node (see hiddenContentNode
for explanation),
then gather size information for labels and render it again in the proper content node.
A specialized tab bar for side areas.