Register a change listener (ModelChangeListener or legacy function).
Fires for every action, including direct model.doAction calls.
Update the node tree by performing the given action, Actions should be generated via static methods on the Actions class
the action to perform
added Node for Actions.addTab, layoutId for createPopout
Get the currently active tabset node
Gets the
Finds the first/top left tab set of the given node.
The top node you want to begin searching from, deafults to the root node
The first Tab Set
Get the currently maximized tabset node
Gets the root RowNode of the model
Removes a listener previously registered with addChangeListener (either a function or a
ModelChangeListener object)
the listener to remove
set callback called when a new TabSet is created. The tabNode can be undefined if it's the auto created first tabset in the root row (when the last tab is deleted, the root tabset can be recreated)
Optionalsize: numberVisits all the nodes in the model and calls the given function for each
a function that takes visited node and a integer level as parameters
StaticensurePairs the global attribute definitions with the node attribute definitions so that an inherited node attribute can resolve its type/description/default from the global attribute it maps to (and vice versa), e.g. tabEnableClose <-> enableClose. Idempotent; called automatically when the definitions are accessed.
StaticfromLoad a model from JSON.
OptionalpreviousModel: Model
optional; when given, matching tabs adopt its view state (no remount).
Class containing the Tree of Nodes used by the FlexLayout component