Class SplitLayout

A layout which arranges its widgets into resizable sections.

Hierarchy (view full)

Constructors

Properties

_alignment: SplitLayout.Alignment = 'start'
_box: null | IBoxSizing = null
_dirty: boolean = false
_fixed: number = 0
_handles: HTMLDivElement[] = []
_hasNormedSizes: boolean = false
_items: LayoutItem[] = []
_orientation: SplitLayout.Orientation = 'horizontal'
_sizers: BoxSizer[] = []
_spacing: number = 4

The renderer used by the split layout.

widgetOffset: number = 0

Accessors

  • get fitPolicy(): FitPolicy
  • Get the fit policy for the layout.

    Notes

    The fit policy controls the computed size constraints which are applied to the parent widget by the layout.

    Some layout implementations may ignore the fit policy.

    Returns FitPolicy

  • set fitPolicy(value): void
  • Set the fit policy for the layout.

    Notes

    The fit policy controls the computed size constraints which are applied to the parent widget by the layout.

    Some layout implementations may ignore the fit policy.

    Changing the fit policy will clear the current size constraint for the parent widget and then re-fit the parent.

    Parameters

    Returns void

  • get isDisposed(): boolean
  • Test whether the layout is disposed.

    Returns boolean

  • get parent(): null | Widget
  • Get the parent widget of the layout.

    Returns null | Widget

  • set parent(value): void
  • Set the parent widget of the layout.

    Notes

    This is set automatically when installing the layout on the parent widget. The parent widget should not be set directly by user code.

    Parameters

    Returns void

Methods

  • Update the layout position and size of the widgets.

    The parent offset dimensions should be -1 if unknown.

    Parameters

    • offsetWidth: number
    • offsetHeight: number

    Returns void

  • Get the absolute sizes of the widgets in the layout.

    Returns number[]

    A new array of the absolute sizes of the widgets.

    This method does not measure the DOM nodes.

  • Attach a widget to the parent's DOM node.

    Parameters

    • index: number

      The current index of the widget in the layout.

    • widget: Widget

      The widget to attach to the parent.

      Notes

      This is a reimplementation of the superclass method.

    Returns void

  • Detach a widget from the parent's DOM node.

    Parameters

    • index: number

      The previous index of the widget in the layout.

    • widget: Widget

      The widget to detach from the parent.

      Notes

      This is a reimplementation of the superclass method.

    Returns void

  • Insert a widget into the layout at the specified index.

    Parameters

    • index: number

      The index at which to insert the widget.

    • widget: Widget

      The widget to insert into the layout.

      Notes

      The index will be clamped to the bounds of the widgets.

      If the widget is already added to the layout, it will be moved.

      Undefined Behavior

      An index which is non-integral.

    Returns void

  • Move the offset position of a split handle.

    Parameters

    • index: number

      The index of the handle of the interest.

    • position: number

      The desired offset position of the handle.

      Notes

      The position is relative to the offset parent.

      This will move the handle as close as possible to the desired position. The sibling widgets will be adjusted as necessary.

    Returns void

  • Move a widget in the parent's DOM node.

    Parameters

    • fromIndex: number

      The previous index of the widget in the layout.

    • toIndex: number

      The current index of the widget in the layout.

    • widget: Widget

      The widget to move in the parent.

      Notes

      This is a reimplementation of the superclass method.

    Returns void

  • A message handler invoked on an 'after-attach' message.

    Notes

    The default implementation of this method forwards the message to all widgets. It assumes all widget nodes are attached to the parent widget node.

    This may be reimplemented by subclasses as needed.

    Parameters

    Returns void

  • A message handler invoked on an 'after-detach' message.

    Notes

    The default implementation of this method forwards the message to all widgets. It assumes all widget nodes are attached to the parent widget node.

    This may be reimplemented by subclasses as needed.

    Parameters

    Returns void

  • A message handler invoked on an 'after-hide' message.

    Notes

    The default implementation of this method forwards the message to all non-hidden widgets. It assumes all widget nodes are attached to the parent widget node.

    This may be reimplemented by subclasses as needed.

    Parameters

    Returns void

  • A message handler invoked on an 'after-show' message.

    Notes

    The default implementation of this method forwards the message to all non-hidden widgets. It assumes all widget nodes are attached to the parent widget node.

    This may be reimplemented by subclasses as needed.

    Parameters

    Returns void

  • A message handler invoked on a 'before-detach' message.

    Notes

    The default implementation of this method forwards the message to all widgets. It assumes all widget nodes are attached to the parent widget node.

    This may be reimplemented by subclasses as needed.

    Parameters

    Returns void

  • A message handler invoked on a 'before-hide' message.

    Notes

    The default implementation of this method forwards the message to all non-hidden widgets. It assumes all widget nodes are attached to the parent widget node.

    This may be reimplemented by subclasses as needed.

    Parameters

    Returns void

  • Process a message sent to the parent widget.

    Parameters

    • msg: Message

      The message sent to the parent widget.

      Notes

      This method is called by the parent widget to process a message.

      Subclasses may reimplement this method as needed.

    Returns void

  • Get the relative sizes of the widgets in the layout.

    Returns number[]

    A new array of the relative sizes of the widgets.

    Notes

    The returned sizes reflect the sizes of the widgets normalized relative to their siblings.

    This method does not measure the DOM nodes.

  • Remove a widget from the layout.

    Parameters

    • widget: Widget

      The widget to remove from the layout.

      Notes

      A widget is automatically removed from the layout when its parent is set to null. This method should only be invoked directly when removing a widget from a layout which has yet to be installed on a parent widget.

      This method does not modify the widget's parent.

    Returns void

  • Remove the widget at a given index from the layout.

    Parameters

    • index: number

      The index of the widget to remove.

      Notes

      A widget is automatically removed from the layout when its parent is set to null. This method should only be invoked directly when removing a widget from a layout which has yet to be installed on a parent widget.

      This method does not modify the widget's parent.

      Undefined Behavior

      An index which is non-integral.

    Returns void

  • Set the relative sizes for the widgets in the layout.

    Parameters

    • sizes: number[]

      The relative sizes for the widgets in the panel.

    • update: boolean = true

      Update the layout after setting relative sizes. Default is True.

      Notes

      Extra values are ignored, too few will yield an undefined layout.

      The actual geometry of the DOM nodes is updated asynchronously.

    Returns void

  • Update the item position.

    Parameters

    • i: number

      Item index

    • isHorizontal: boolean

      Whether the layout is horizontal or not

    • left: number

      Left position in pixels

    • top: number

      Top position in pixels

    • height: number

      Item height

    • width: number

      Item width

    • size: number

      Item size

    Returns void