Skip to content

LayoutStrategy

Exposes a main public method calcLayoutResult that is used by the LayoutManager to perform layout. Returning undefined signals the LayoutManager to skip the layout.

In charge of calculating the bounding box of the passed objects.

Extended by

Constructors

new LayoutStrategy()

new LayoutStrategy(): LayoutStrategy

Returns

LayoutStrategy

Properties

type

static type: string = 'strategy'

override by subclass for persistence (TS does not support static abstract)

Defined in

src/LayoutManager/LayoutStrategies/LayoutStrategy.ts:25

Methods

calcBoundingBox()

calcBoundingBox(objects, context): undefined | LayoutStrategyResult

Override this method to customize layout.

Parameters

objects: FabricObject<Partial<FabricObjectProps>, SerializedObjectProps, ObjectEvents>[]

context: StrictLayoutContext

Returns

undefined | LayoutStrategyResult

Defined in

src/LayoutManager/LayoutStrategies/LayoutStrategy.ts:68


calcLayoutResult()

calcLayoutResult(context, objects): undefined | LayoutStrategyResult

Used by the LayoutManager to perform layout @TODO/fix: if this method is calcResult, should calc unconditionally. the condition to not calc should be evaluated by the layoutManager.

Parameters

context: StrictLayoutContext

objects: FabricObject<Partial<FabricObjectProps>, SerializedObjectProps, ObjectEvents>[]

Returns

undefined | LayoutStrategyResult

layout result OR undefined to skip layout

Defined in

src/LayoutManager/LayoutStrategies/LayoutStrategy.ts:33


getInitialSize()

getInitialSize(context, result): Point

Parameters

context: StrictLayoutContext & CommonLayoutContext & object

result: Pick<LayoutStrategyResult, "center" | "size">

Returns

Point

Defined in

src/LayoutManager/LayoutStrategies/LayoutStrategy.ts:58


shouldLayoutClipPath()

shouldLayoutClipPath(__namedParameters): undefined | boolean

Parameters

__namedParameters: StrictLayoutContext

Returns

undefined | boolean

Defined in

src/LayoutManager/LayoutStrategies/LayoutStrategy.ts:50


shouldPerformLayout()

shouldPerformLayout(__namedParameters): boolean

Parameters

__namedParameters: StrictLayoutContext

Returns

boolean

Defined in

src/LayoutManager/LayoutStrategies/LayoutStrategy.ts:42