@maxgraph/core
    Preparing search index...

    Class StackLayout

    Extends GraphLayout to create a horizontal or vertical stack of the child vertices. The children do not need to be connected for this layout to work.

    Example:

    const layout = new StackLayout(graph, true);
    layout.execute(graph.getDefaultParent());

    Hierarchy (View Summary)

    Index

    Constructors

    • Parameters

      • graph: Graph
      • horizontal: null | boolean = null
      • spacing: null | number = null
      • x0: null | number = null
      • y0: null | number = null
      • border: null | number = null

      Returns StackLayout

    Properties

    allowGaps: boolean = false

    If gaps should be allowed in the stack.

    border: number = 0

    Border to be added if fill is true.

    borderCollapse: boolean = true

    If the strokeWidth should be ignored.

    fill: boolean = false

    Boolean indicating if dimension should be changed to fill out the parent cell.

    graph: Graph

    Reference to the enclosing Graph.

    gridSize: number = 0

    Grid size for alignment of position and size.

    horizontal: boolean

    Specifies the orientation of the layout.

    keepFirstLocation: boolean = false

    Boolean indicating if the location of the first cell should be kept, that is, it will not be moved to x0 or y0.

    marginBottom: number = 0

    Top margin for the child area.

    marginLeft: number = 0

    Top margin for the child area.

    marginRight: number = 0

    Top margin for the child area.

    marginTop: number = 0

    Top margin for the child area.

    parent: null | Cell = null

    The parent cell of the layout, if any

    null
    
    resizeLast: boolean = false

    If the last element should be resized to fill out the parent.

    resizeParent: boolean = false

    If the parent should be resized to match the width/height of the stack.

    resizeParentMax: boolean = false

    Use maximum of existing value and new value for resize of parent.

    spacing: number

    Specifies the spacing between the cells.

    useBoundingBox: boolean = true

    Boolean indicating if the bounding box of the label should be used if it iss available.

    true.
    
    wrap: null | number = null

    Value at which a new column or row should be created.

    x0: number

    Specifies the horizontal origin of the layout.

    y0: number

    Specifies the vertical origin of the layout.

    Methods

    • Returns the constraint for the given key and cell. The optional edge and source arguments are used to return inbound and outgoing routing- constraints for the given edge and vertex. This implementation always returns the value for the given key in the style of the given cell.

      Parameters

      • key: string

        Key of the constraint to be returned.

      • cell: Cell

        Cell whose constraint should be returned.

      • Optionaledge: Cell

        Optional Cell that represents the connection whose constraint should be returned. Default is null.

      • Optionalsource: boolean

        Optional boolean that specifies if the connection is incoming or outgoing. Default is null.

      Returns any

    • Returns true if the given parent is an ancestor of the given child.

      Parameters

      • parent: Cell

        Cell that specifies the parent.

      • child: null | Cell

        Cell that specifies the child.

      • OptionaltraverseAncestors: boolean

        boolean whether to

      Returns boolean

    • Returns a boolean indicating if the given Cell is movable or bendable by the algorithm. This implementation returns true if the given cell is movable in the graph.

      Parameters

      • cell: Cell

        Cell whose movable state should be returned.

      Returns boolean

    • Sets the new position of the given cell taking into account the size of the bounding box if useBoundingBox is true. The change is only carried out if the new location is not equal to the existing location, otherwise the geometry is not replaced with an updated instance. The new or old bounds are returned (including overlapping labels).

      Parameters

      • cell: Cell

        Cell whose geometry is to be set.

      • x: number

        Integer that defines the x-coordinate of the new location.

      • y: number

        Integer that defines the y-coordinate of the new location.

      Returns null | Rectangle

    • Traverses the (directed) graph invoking the given function for each visited vertex and edge. The function is invoked with the current vertex and the incoming edge as a parameter. This implementation makes sure each vertex is only visited once. The function may return false if the traversal should stop at the given vertex.

      Example:

      GlobalConfig.logger.show();
      const cell = graph.getSelectionCell();
      graph.traverse(cell, false, function(vertex, edge)
      {
      GlobalConfig.logger.debug(graph.getLabel(vertex));
      });

      Parameters

      • __namedParameters: GraphLayoutTraverseArgs

      Returns void