Interface IWorkflowBpmnLayoutSubProcessBuilder
-
- All Superinterfaces:
IWorkflowBpmnLayoutAnnotatedElementBuilder<IWorkflowBpmnLayoutSubProcessBuilder>,IWorkflowBpmnLayoutNamedBuilder<IWorkflowBpmnLayoutSubProcessBuilder>,IWorkflowBpmnLayoutPortDirectionOptionsBuilder<IWorkflowBpmnLayoutSubProcessBuilder>
public interface IWorkflowBpmnLayoutSubProcessBuilder extends IWorkflowBpmnLayoutPortDirectionOptionsBuilder<IWorkflowBpmnLayoutSubProcessBuilder>, IWorkflowBpmnLayoutAnnotatedElementBuilder<IWorkflowBpmnLayoutSubProcessBuilder>, IWorkflowBpmnLayoutNamedBuilder<IWorkflowBpmnLayoutSubProcessBuilder>
Builder for the layout of a BPMNSubProcess. A sub process consists of a bodyalignment itemand optionalboundary eventson the four sides of the sub process (north, east, south, west). This builder offers various methods to configure the position of the body and the boundary events.- Since:
- 8.4.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IWorkflowBpmnLayoutSubProcessBuilderaddFlowPadding()Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderaddFlowPadding(double spacingFactor)Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderaddFlowPadding(double flowDirectionFactor, double crossFlowDirectionFactor)Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderaddFlowPadding(double flowDirectionFactor, double crossFlowDirectionFactor, double reverseFlowDirectionFactor, double reverseCrossFlowDirectionFactor)Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderaddFlowPaddingHalfForBoundaryEvents()Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderaddFlowPaddingHalfForBoundaryEvents(double spacingFactor)Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderaddFlowPaddingHalfForBoundaryEvents(double flowDirectionFactor, double crossFlowDirectionFactor)Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderaddFlowPaddingHalfForBoundaryEvents(double flowDirectionFactor, double crossFlowDirectionFactor, double reverseFlowDirectionFactor, double reverseCrossFlowDirectionFactor)Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderaddMargin(double margin)Adds the given amount of margin in all directions to the body.IWorkflowBpmnLayoutSubProcessBuilderaddMargin(ECardinalDirection2D direction, double margin)Adds the given amount of margin in the given directions to the body.IWorkflowBpmnLayoutSubProcessBuilderaddMargin(ICardinalDirection2DMapDouble margin)Sets the (minimum) margin of the sub process.IWorkflowBpmnLayoutSubProcessBuilderaddPadding(double padding)Adds the given amount of padding in all directions to the body.IWorkflowBpmnLayoutSubProcessBuilderaddPadding(ECardinalDirection2D direction, double padding)Adds the given amount of padding in the given directions to the body.IWorkflowBpmnLayoutSubProcessBuilderaddPadding(ICardinalDirection2DMapDouble padding)Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.IWorkflowBpmnLayoutSubProcessBuilderalignBodyCrossFlow(double alignment)Aligns the body incross flow direction.IWorkflowBpmnLayoutSubProcessBuilderalignBodyFlow(double alignment)Aligns the body in flow direction.IWorkflowBpmnLayoutSubProcessBuilderalignBodyX(double alignX)Aligns the body in the x direction.IWorkflowBpmnLayoutSubProcessBuilderalignBodyY(double alignY)Aligns the body in the y direction.IWorkflowBpmnLayoutSubProcessBuilderappendBoundaryEvent(ECardinalDirection2D side, double position, de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent event, IWorkflowBpmnAlignmentItem<?,?> item)Appends a boundary event to the sub process at the given position on the given side.IWorkflowBpmnLayoutSubProcessBuilderappendBoundaryEventAtEdge(ECardinalDirection2D side, EAxisPolarity direction, de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent event, IWorkflowBpmnAlignmentItem<?,?> item)Appends aboundary eventat one of the foursidesof the sub process, either at the beginning or at the end of that side, depending on the given direction.IAnnotatedNamedBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent>appendBoundaryEventAtEdge(ECardinalDirection2D side, EAxisPolarity direction, de.xima.bpmn_model.api.element.bpmn.events.EventDefinition<?> eventDefinition, String name)Appends aboundary eventat one of the foursidesof the sub process, either at the beginning or at the end of that side, depending on the given direction.IWorkflowBpmnLayoutSubProcessBuilderappendBoundaryEventAtEdge(ECardinalDirection2D side, EAxisPolarity direction, IBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> event)Appends aboundary eventat one of the foursidesof the sub process, either at the beginning or at the end of that side, depending on the given direction.IWorkflowBpmnLayoutSubProcessBuilderappendBoundaryEventNextToEvent(ECardinalDirection2D side, EAxisPolarity direction, int boundaryEventIndex, de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent event, IWorkflowBpmnAlignmentItem<?,?> item)Appends aboundary eventnext to an existing boundary event on one of the foursidesof the sub process; either before or after the boundary event, depending on the given direction.IAnnotatedNamedBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent>appendBoundaryEventNextToEvent(ECardinalDirection2D side, EAxisPolarity direction, int boundaryEventIndex, de.xima.bpmn_model.api.element.bpmn.events.EventDefinition<?> eventDefinition, String name)Appends aboundary eventnext to an existing boundary event on one of the foursidesof the sub process; either before or after the boundary event, depending on the given direction.IWorkflowBpmnLayoutSubProcessBuilderappendBoundaryEventNextToEvent(ECardinalDirection2D side, EAxisPolarity direction, int boundaryEventIndex, IBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> event)Appends aboundary eventnext to an existing boundary event on one of the foursidesof the sub process; either before or after the boundary event, depending on the given direction.IWorkflowBpmnLayoutSubProcessBuilderappendBoundaryEventNextToPort(EAxisPolarity portSide, EAxisPolarity direction, de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent event, IWorkflowBpmnAlignmentItem<?,?> item)Appends aboundary eventnext to the in or out port of the sub process; either before or after the port, depending on the given direction.IAnnotatedNamedBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent>appendBoundaryEventNextToPort(EAxisPolarity portSide, EAxisPolarity direction, de.xima.bpmn_model.api.element.bpmn.events.EventDefinition<?> eventDefinition, String name)Appends aboundary eventnext to the in or out port of the sub process; either before or after the port, depending on the given direction.IWorkflowBpmnLayoutSubProcessBuilderappendBoundaryEventNextToPort(EAxisPolarity portSide, EAxisPolarity direction, IBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> event)Appends aboundary eventnext to the in or out port of the sub process; either before or after the port, depending on the given direction.IWorkflowBpmnLayoutSubProcessBuilderbody(IWorkflowBpmnAlignmentItem<?,?> body)Sets the item representing the body content of the sub process.IWorkflowBpmnLayoutSubProcessBuilderbodyWithStartAndEndEvent(IWorkflowBpmnAlignmentItem<?,?> body, String startEventName, String endEventName)de.xima.bpmn_model.api.element.bpmn.events.BoundaryEventboundaryEvent(ECardinalDirection2D side, int index)Gets the nthBoundaryEventBPMN element at the given side.intboundaryEventCount(ECardinalDirection2D side)Gets the number of boundary events on the given side.doubleboundaryEventPosition(ECardinalDirection2D side, int index)Gets the position of the nth boundary event on the given side<S extends de.xima.bpmn_model.api.element.bpmn.activities.SubProcess<?>>
ISubProcessBpmnElementLayout<S>build(S subProcess)Creates the layout for the given sub process, using the current layout settings.IWorkflowBpmnLayoutSubProcessBuilderchangeInPort(double inPort)Override the position of the in port.IWorkflowBpmnLayoutSubProcessBuilderchangeOutPort(double outPort)Override the position of the out port.IWorkflowBpmnLayoutSubProcessBuilderchangePortToItem(Object value)Looks for theIWorkflowBpmnAlignmentItemin the children of thebody.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerHeightBottom(double height)Increases the inner height of the sub process to the given value by adding new space at the bottom.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerHeightBottomBy(double amount)Increases the inner height of the sub process by the given amount, adding new space at the bottom.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerHeightTop(double height)Increases the inner height of the sub process to the given value by adding new space at the top.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerHeightTopBy(double amount)Increases the inner height of the sub process by the given amount, adding new space at the top.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerLength(ECardinalDirection2D side, double length)Increases the inner length of the sub process to the given value by adding new space at the given side.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerLength(ECartesianAxis2D axis, EAxisPolarity direction, double length)Increases the inner length of the sub process to the given value by adding new space at the given side.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerLengthBy(ECardinalDirection2D side, double amount)Increases the inner length of the sub process by the given amount at the given side, adding new space at that side.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerLengthBy(ECartesianAxis2D axis, EAxisPolarity direction, double amount)Increases the inner length of the sub process by the given amount at the given side, adding new space at that side.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerWidthLeft(double width)Increases the inner width of the sub process to the given value by adding new space at the left.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerWidthLeftBy(double amount)Increases the inner width of the sub process by adding new space at the left.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerWidthRight(double width)Increases the inner width of the sub process to the given value by adding new space at the right.IWorkflowBpmnLayoutSubProcessBuilderenlargeInnerWidthRightBy(double amount)Increases the inner width of the sub process by adding new space at the right.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterHeightBottom(double height)Increases the outer height of the sub process to the given value by adding new space at the bottom.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterHeightBottomBy(double amount)Increases the outer height of the sub process by the given amount, adding new space at the bottom.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterHeightTop(double height)Increases the outer height of the sub process to the given value by adding new space at the top.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterHeightTopBy(double amount)Increases the outer height of the sub process by the given amount, adding new space at the top.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterLength(ECardinalDirection2D side, double length)Increases the outer length of the sub process to the given value by adding new space at the given side.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterLength(ECartesianAxis2D axis, EAxisPolarity direction, double length)Increases the outer length of the sub process to the given value by adding new space at the given side.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterLengthBy(ECardinalDirection2D side, double amount)Increases the outer length of the sub process by the given amount at the given side, adding new space at that side.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterLengthBy(ECartesianAxis2D axis, EAxisPolarity direction, double amount)Increases the outer length of the sub process by the given amount at the given side, adding new space at that side.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterWidthLeft(double width)Increases the outer width of the sub process to the given value by adding new space at the left.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterWidthLeftBy(double amount)Increases the outer width of the sub process by adding new space at the left.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterWidthRight(double width)Increases the outer width of the sub process to the given value by adding new space at the right.IWorkflowBpmnLayoutSubProcessBuilderenlargeOuterWidthRightBy(double amount)Increases the outer width of the sub process by adding new space at the right.booleanhasBoundaryEvents(ECardinalDirection2D side)Checks whether the sub process has any boundary events on the given side.Rectangular2DDoubleinnerBoundingBox()Gets the current inner width and inner height of the sub process.doubleinnerHeight()Gets the current inner height of the sub process.doubleinnerWidth()Gets the current inner width of the sub process.DoubleinPort()Gets the current position of the in port.Rectangular2DDoubleouterBoundingBox()Gets the current outer width and outer height of the sub process.doubleouterHeight()Gets the current outer height of the sub process.doubleouterWidth()Gets the current outer width of the sub process.DoubleoutPort()Gets the current position of the out port.ECardinalDirection2DportDirection()Gets the current port direction, either the default direction or the direction set byportDirection(side).IWorkflowBpmnLayoutSubProcessBuilderspaceBoundaryEventsEvenly(ECardinalDirection2D side)Repositions all boundary events on the given side that were added viaappendBoundaryEvent.IWorkflowBpmnLayoutSubProcessBuilderuseInPortOfBody()IWorkflowBpmnLayoutSubProcessBuilderuseOutPortOfBody()IWorkflowBpmnLayoutSubProcessBuilderusePortsOfBody()-
Methods inherited from interface de.xima.fc.interfaces.workflow.bpmn.IWorkflowBpmnLayoutAnnotatedElementBuilder
annotation, annotation, annotationDirection, annotationDirection, annotationDirection, annotationSpacing, annotationTextLayoutSettings
-
Methods inherited from interface de.xima.fc.interfaces.workflow.bpmn.IWorkflowBpmnLayoutNamedBuilder
name, name, nameTextLayoutSettings
-
Methods inherited from interface de.xima.fc.interfaces.workflow.bpmn.IWorkflowBpmnLayoutPortDirectionOptionsBuilder
portDirection, portDirection
-
-
-
-
Method Detail
-
addFlowPadding
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addFlowPadding()
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.Uses the
flow direction spacingfor the two sides inflow direction; and thecross flow direction spacingfor the two sides incross flow direction.- Returns:
- This builder for chaining method calls.
-
addFlowPadding
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addFlowPadding(double spacingFactor)
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.Uses the
flow direction spacingfor the two sides inflow direction; and thecross flow direction spacingfor the two sides incross flow direction.- Parameters:
spacingFactor- The factor by which to multiply the flow and cross flow direction spacing. For example, if this factor is 2, the flow direction isEAST, the flow direction spacing is 10, and the cross flow direction spacing is 20; adds a spacing of 2*10 = 20 to the left and right side; and a spacing of 2*20 = 40 to the top and bottom side of the sub process.- Returns:
- This builder for chaining method calls.
-
addFlowPadding
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addFlowPadding(double flowDirectionFactor, double crossFlowDirectionFactor)
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.Uses the
flow direction spacingfor the two sides inflow direction; and thecross flow direction spacingfor the two sides incross flow direction.- Parameters:
flowDirectionFactor- The factor by which to multiply the flow direction spacing. For example, if this factor is 2, the flow direction isEASTand the flow direction spacing is 10, adds a spacing of 2*10 = 20 to the left side; and 2*10 = 20 to the right side of the sub process.crossFlowDirectionFactor- The factor by which to multiply the cross flow direction spacing. For example, if this factor is 2, the cross flow direction isEASTand the cross flow direction spacing is 10, adds a spacing of 2*10 = 20 to the top side; and 2*10 = 20 to the bottom side of the sub process.- Returns:
- This builder for chaining method calls.
-
addFlowPadding
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addFlowPadding(double flowDirectionFactor, double crossFlowDirectionFactor, double reverseFlowDirectionFactor, double reverseCrossFlowDirectionFactor)
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.Uses the
flow direction spacingfor the two sides inflow direction; and thecross flow direction spacingfor the two sides incross flow direction.- Parameters:
flowDirectionFactor- The factor by which to multiply the flow direction spacing for the side pointed to by the flow direction. For example, if this factor is 2, the flow direction isEASTand the flow direction spacing is 10, adds a spacing of 2*10 = 20 to the right side of the sub process.crossFlowDirectionFactor- The factor by which to multiply the cross flow direction spacing for the side pointed to by the cross flow direction. For example, if this factor is 2, the cross flow direction isEASTand the cross flow direction spacing is 10, adds a spacing of 2*10 = 20 to the top side of the sub process.reverseFlowDirectionFactor- The factor by which to multiply the flow direction spacing for the side pointed to by the reverse flow direction. For example, if this factor is 2, the flow direction isEASTand the flow direction spacing is 10, adds a spacing of 2*10 = 20 to the left side of the sub process.reverseCrossFlowDirectionFactor- The factor by which to multiply the cross flow direction spacing for the side pointed to by the reverse cross flow direction. For example, if this factor is 2, the cross flow direction isEASTand the cross flow direction spacing is 10, adds a spacing of 2*10 = 20 to the bottom side of the sub process.- Returns:
- This builder for chaining method calls.
-
addFlowPaddingHalfForBoundaryEvents
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addFlowPaddingHalfForBoundaryEvents()
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.Uses the
flow direction spacingfor the two sides inflow direction; and thecross flow direction spacingfor the two sides incross flow direction.If there are boundary events on a side, halves the padding on that side.
- Returns:
- This builder for chaining method calls.
-
addFlowPaddingHalfForBoundaryEvents
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addFlowPaddingHalfForBoundaryEvents(double spacingFactor)
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.Uses the
flow direction spacingfor the two sides inflow direction; and thecross flow direction spacingfor the two sides incross flow direction.If there are boundary events on a side, halves the padding on that side.
- Parameters:
spacingFactor- The factor by which to multiply the flow and cross flow direction spacing. For example, if this factor is 2, the flow direction isEAST, the flow direction spacing is 10, and the cross flow direction spacing is 20; adds a spacing of 2*10 = 20 to the left and right side; and a spacing of 2*20 = 40 to the top and bottom side of the sub process.- Returns:
- This builder for chaining method calls.
-
addFlowPaddingHalfForBoundaryEvents
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addFlowPaddingHalfForBoundaryEvents(double flowDirectionFactor, double crossFlowDirectionFactor)
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.Uses the
flow direction spacingfor the two sides inflow direction; and thecross flow direction spacingfor the two sides incross flow direction.If there are boundary events on a side, halves the padding on that side.
- Parameters:
flowDirectionFactor- The factor by which to multiply the flow direction spacing. For example, if this factor is 2, the flow direction isEASTand the flow direction spacing is 10, adds a spacing of 2*10 = 20 to the left side; and 2*10 = 20 to the right side of the sub process.crossFlowDirectionFactor- The factor by which to multiply the cross flow direction spacing. For example, if this factor is 2, the cross flow direction isEASTand the cross flow direction spacing is 10, adds a spacing of 2*10 = 20 to the top side; and 2*10 = 20 to the bottom side of the sub process.- Returns:
- This builder for chaining method calls.
-
addFlowPaddingHalfForBoundaryEvents
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addFlowPaddingHalfForBoundaryEvents(double flowDirectionFactor, double crossFlowDirectionFactor, double reverseFlowDirectionFactor, double reverseCrossFlowDirectionFactor)
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.Uses the
flow direction spacingfor the two sides inflow direction; and thecross flow direction spacingfor the two sides incross flow direction.If there are boundary events on a side, halves the padding on that side.
- Parameters:
flowDirectionFactor- The factor by which to multiply the flow direction spacing for the side pointed to by the flow direction. For example, if this factor is 2, the flow direction isEASTand the flow direction spacing is 10, adds a spacing of 2*10 = 20 to the right side of the sub process.crossFlowDirectionFactor- The factor by which to multiply the cross flow direction spacing for the side pointed to by the cross flow direction. For example, if this factor is 2, the cross flow direction isEASTand the cross flow direction spacing is 10, adds a spacing of 2*10 = 20 to the top side of the sub process.reverseFlowDirectionFactor- The factor by which to multiply the flow direction spacing for the side pointed to by the reverse flow direction. For example, if this factor is 2, the flow direction isEASTand the flow direction spacing is 10, adds a spacing of 2*10 = 20 to the left side of the sub process.reverseCrossFlowDirectionFactor- The factor by which to multiply the cross flow direction spacing for the side pointed to by the reverse cross flow direction. For example, if this factor is 2, the cross flow direction isEASTand the cross flow direction spacing is 10, adds a spacing of 2*10 = 20 to the bottom side of the sub process.- Returns:
- This builder for chaining method calls.
-
addMargin
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addMargin(ICardinalDirection2DMapDouble margin)
Sets the (minimum) margin of the sub process. The margin is the additional spacing outside the border of the sub process.- Parameters:
margin- The margin to apply in each of the four directions.- Returns:
- This builder for chaining method calls.
-
addMargin
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addMargin(double margin)
Adds the given amount of margin in all directions to the body.- Parameters:
margin- The amount of margin to add.- Returns:
- This builder for chaining method calls.
-
addMargin
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addMargin(ECardinalDirection2D direction, double margin)
Adds the given amount of margin in the given directions to the body.- Parameters:
direction- The direction where to add the margin.margin- The amount of margin to add.- Returns:
- This builder for chaining method calls.
-
addPadding
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addPadding(ICardinalDirection2DMapDouble padding)
Adds padding to the given sub process on all four sides as if by callingenlargeInnerLengthByfor eachside.- Parameters:
padding- The amount of padding to add to each side of the sub process.- Returns:
- This builder for chaining method calls.
-
addPadding
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addPadding(double padding)
Adds the given amount of padding in all directions to the body.- Parameters:
padding- The amount of padding to add.- Returns:
- This builder for chaining method calls.
-
addPadding
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder addPadding(ECardinalDirection2D direction, double padding)
Adds the given amount of padding in the given directions to the body.- Parameters:
direction- The direction where to add the padding.padding- The amount of padding to add.- Returns:
- This builder for chaining method calls.
-
alignBodyCrossFlow
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder alignBodyCrossFlow(double alignment)
Aligns the body incross flow direction. Must be a value between 0 and 1. 0 is the start of the sub process, 1 is the end of the sub process.- Parameters:
alignment- The alignment of the body in cross flow direction.- Returns:
- This builder for chaining method calls.
-
alignBodyFlow
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder alignBodyFlow(double alignment)
Aligns the body in flow direction. Must be a value between 0 and 1. 0 is the start of the sub process, 1 is the end of the sub process.- Parameters:
alignment- The alignment of the body in flow direction.- Returns:
- This builder for chaining method calls.
-
alignBodyX
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder alignBodyX(double alignX)
Aligns the body in the x direction. Must be a value between 0 and 1. 0 is the left side of the sub process, 1 is the right side of the sub process.- Parameters:
alignX- The alignment of the body in x direction.- Returns:
- This builder for chaining method calls.
-
alignBodyY
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder alignBodyY(double alignY)
Aligns the body in the y direction. Must be a value between 0 and 1. 0 is the top side of the sub process, 1 is the bottom side of the sub process.- Parameters:
alignY- The alignment of the body in y direction.- Returns:
- This builder for chaining method calls.
-
appendBoundaryEvent
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder appendBoundaryEvent(ECardinalDirection2D side, double position, de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent event, IWorkflowBpmnAlignmentItem<?,?> item)
Appends a boundary event to the sub process at the given position on the given side. The position can be any value. If smaller than 0, adds space to the left or top. If greater than the length of the side, adds space to the right or bottom. If other events would overlap the newly inserted boundary event, they are shifted away.- Parameters:
side- The side where to append the boundary event.position- The position of the boundary on the given side.event- The boundary event to append.item- The alignment of the boundary event to append.
-
appendBoundaryEventAtEdge
@CanIgnoreReturnValue IAnnotatedNamedBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> appendBoundaryEventAtEdge(ECardinalDirection2D side, EAxisPolarity direction, de.xima.bpmn_model.api.element.bpmn.events.EventDefinition<?> eventDefinition, String name)
Appends aboundary eventat one of the foursidesof the sub process, either at the beginning or at the end of that side, depending on the given direction. If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
side- The side where to append the boundary event.direction- The edge direction where to append the boundary event.POSITIVEis the start of the edge,NEGATIVEis the end of the edge (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).eventDefinition- The event definition to use for the boundary event.name- The name of the boundary event.- Returns:
- The newly created layout with the boundary event.
-
appendBoundaryEventAtEdge
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder appendBoundaryEventAtEdge(ECardinalDirection2D side, EAxisPolarity direction, de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent event, IWorkflowBpmnAlignmentItem<?,?> item)
Appends aboundary eventat one of the foursidesof the sub process, either at the beginning or at the end of that side, depending on the given direction. If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
side- The side where to append the boundary event.direction- The edge direction where to append the boundary event.POSITIVEis the start of the edge,NEGATIVEis the end of the edge (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).event- The boundary event to append.item- Thealignment itemcontaining theboundary event, either as itvalueor as the value of somechild alignment item.- Returns:
- This builder for chaining method calls.
-
appendBoundaryEventAtEdge
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder appendBoundaryEventAtEdge(ECardinalDirection2D side, EAxisPolarity direction, IBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> event)
Appends aboundary eventat one of the foursidesof the sub process, either at the beginning or at the end of that side, depending on the given direction. If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
side- The side where to append the boundary event.direction- The edge direction where to append the boundary event.POSITIVEis the start of the edge,NEGATIVEis the end of the edge (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).event- The laid out boundary event to append.- Returns:
- This builder for chaining method calls.
-
appendBoundaryEventNextToEvent
@CanIgnoreReturnValue IAnnotatedNamedBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> appendBoundaryEventNextToEvent(ECardinalDirection2D side, EAxisPolarity direction, int boundaryEventIndex, de.xima.bpmn_model.api.element.bpmn.events.EventDefinition<?> eventDefinition, String name)
Appends aboundary eventnext to an existing boundary event on one of the foursidesof the sub process; either before or after the boundary event, depending on the given direction. If the specified boundary event does not exist (or no boundary events exists on the given side), this method behaves identical toappendBoundaryEventAtEdge(side, direction, eventDefinition, name). If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
side- The side where to append the boundary event.direction- Whether to append the boundary event before or after the existing boundary event.POSITIVEappends the boundary event after the existing boundary event,NEGATIVEappends it before the existing boundary event (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).boundaryEventIndex- The index of the boundary event to append next to. 0 is the first boundary event, 1 is the second, etc. You can specify negative values to index events from the ends, e.g. -1 for the last event, -2 for the second to last, etc.eventDefinition- The event definition to use for the boundary event.name- The name of the boundary event.- Returns:
- The newly created layout with the boundary event.
-
appendBoundaryEventNextToEvent
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder appendBoundaryEventNextToEvent(ECardinalDirection2D side, EAxisPolarity direction, int boundaryEventIndex, de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent event, IWorkflowBpmnAlignmentItem<?,?> item)
Appends aboundary eventnext to an existing boundary event on one of the foursidesof the sub process; either before or after the boundary event, depending on the given direction. If the specified boundary event does not exist (or no boundary events exists on the given side), this method behaves identical toappendBoundaryEventAtEdge(side, direction, event, item). If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
side- The side where to append the boundary event.direction- Whether to append the boundary event before or after the existing boundary event.POSITIVEappends the boundary event after the existing boundary event,NEGATIVEappends it before the existing boundary event (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).boundaryEventIndex- The index of the boundary event to append next to. 0 is the first boundary event, 1 is the second, etc. You can specify negative values to index events from the ends, e.g. -1 for the last event, -2 for the second to last, etc.item- Thealignment itemcontaining theboundary event, either as itvalueor as the value of somechildAlignmentItems.event- The boundary event to append.- Returns:
- This builder for chaining method calls.
-
appendBoundaryEventNextToEvent
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder appendBoundaryEventNextToEvent(ECardinalDirection2D side, EAxisPolarity direction, int boundaryEventIndex, IBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> event)
Appends aboundary eventnext to an existing boundary event on one of the foursidesof the sub process; either before or after the boundary event, depending on the given direction. If the specified boundary event does not exist (or no boundary events exists on the given side), this method behaves identical toappendBoundaryEventAtEdge(side, direction, event). If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
side- The side where to append the boundary event.direction- Whether to append the boundary event before or after the existing boundary event.POSITIVEappends the boundary event after the existing boundary event,NEGATIVEappends it before the existing boundary event (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).boundaryEventIndex- The index of the boundary event to append next to. 0 is the first boundary event, 1 is the second, etc. You can specify negative values to index events from the ends, e.g. -1 for the last event, -2 for the second to last, etc.event- The laid out boundary event to append.- Returns:
- This builder for chaining method calls.
-
appendBoundaryEventNextToPort
@CanIgnoreReturnValue IAnnotatedNamedBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> appendBoundaryEventNextToPort(EAxisPolarity portSide, EAxisPolarity direction, de.xima.bpmn_model.api.element.bpmn.events.EventDefinition<?> eventDefinition, String name)
Appends aboundary eventnext to the in or out port of the sub process; either before or after the port, depending on the given direction. If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
portSide- The side where to append the boundary event.direction- Whether to append the boundary event before or after the port.POSITIVEappends the boundary event after the port,NEGATIVEappends it before the port (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).eventDefinition- The event definition to use for the boundary event.name- The name of the boundary event.- Returns:
- The newly created layout with the boundary event.
-
appendBoundaryEventNextToPort
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder appendBoundaryEventNextToPort(EAxisPolarity portSide, EAxisPolarity direction, de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent event, IWorkflowBpmnAlignmentItem<?,?> item)
Appends aboundary eventnext to the in or out port of the sub process; either before or after the port, depending on the given direction. If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
portSide- The side where to append the boundary event.direction- Whether to append the boundary event before or after the port.POSITIVEappends the boundary event after the port,NEGATIVEappends it before the port (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).event- The boundary event to append.item- Thealignment itemcontaining theboundary event, either as itvalueor as the value of somechild alignment item.- Returns:
- This builder for chaining method calls.
-
appendBoundaryEventNextToPort
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder appendBoundaryEventNextToPort(EAxisPolarity portSide, EAxisPolarity direction, IBpmnElementLayout<de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> event)
Appends aboundary eventnext to the in or out port of the sub process; either before or after the port, depending on the given direction. If other events would overlap the newly inserted boundary event, they are shifted away in the given direction.- Parameters:
portSide- The side where to append the boundary event.direction- Whether to append the boundary event before or after the port.POSITIVEappends the boundary event after the port,NEGATIVEappends it before the port (with respect to a coordinate system where the x-axis points to the right and the y-axis points down).event- The laid out boundary event to append.- Returns:
- This builder for chaining method calls.
-
body
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder body(IWorkflowBpmnAlignmentItem<?,?> body)
Sets the item representing the body content of the sub process. This body is included in the builtIWorkflowBpmnAlignmentItem; and is also used to determine the minimum width and height of the sub process.- Parameters:
body- The body content.- Returns:
- This builder for chaining method calls.
-
bodyWithStartAndEndEvent
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder bodyWithStartAndEndEvent(IWorkflowBpmnAlignmentItem<?,?> body, String startEventName, String endEventName)
Adds astartandend eventto the given body and sets the resulting alignment items as thebody. The start event is added only when the given loop body has anin port; the end event is added only when the given body has anout port.- Parameters:
body- The body content.startEventName- The name of the start event.endEventName- The name of the end event.- Returns:
- This builder for chaining method calls.
-
boundaryEvent
de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent boundaryEvent(ECardinalDirection2D side, int index)
Gets the nthBoundaryEventBPMN element at the given side.- Parameters:
side- The side to get the boundary event from.index- The index of the boundary event. 0 is the first boundary event, 1 is the second, etc. You can specify negative values to index events from the ends, e.g. -1 is the last event, -2 is the second to last, etc.- Returns:
- The boundary event at the given side and index.
- Throws:
IndexOutOfBoundsException- If the index is out of bounds.
-
boundaryEventCount
int boundaryEventCount(ECardinalDirection2D side)
Gets the number of boundary events on the given side.- Parameters:
side- The side to get the number of boundary events on.- Returns:
- The number of boundary events on the given side.
-
boundaryEventPosition
double boundaryEventPosition(ECardinalDirection2D side, int index)
Gets the position of the nth boundary event on the given side- Parameters:
side- The side to get the position of the boundary event on.index- The index of the boundary event. 0 is the first boundary event, 1 is the second, etc. You can specify negative values to index events from the ends, e.g. -1 is the last event, -2 is the second to last, etc.- Returns:
- The position of the boundary event on the given side.
- Throws:
IndexOutOfBoundsException- If the index is out of bounds.
-
build
<S extends de.xima.bpmn_model.api.element.bpmn.activities.SubProcess<?>> ISubProcessBpmnElementLayout<S> build(S subProcess)
Creates the layout for the given sub process, using the current layout settings.- Type Parameters:
S- The type of the sub process.- Parameters:
subProcess- The sub process to create the layout for.- Returns:
- The layout for the sub process.
-
changeInPort
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder changeInPort(double inPort)
Override the position of the in port. By default, the in port is set to align with the in port of thebody.- Parameters:
inPort- The position of the in port.- Returns:
- This builder for chaining method calls.
-
changeOutPort
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder changeOutPort(double outPort)
Override the position of the out port. By default, the out port is set to align with the out port of thebody.- Parameters:
outPort- The position of the out port.- Returns:
- This builder for chaining method calls.
-
changePortToItem
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder changePortToItem(Object value)
Looks for theIWorkflowBpmnAlignmentItemin the children of thebody. If found, sets the in and out port to the position of that item.- Parameters:
value-Valueof aIWorkflowBpmnAlignmentItem- Returns:
- This builder for chaining method calls.
-
enlargeInnerHeightBottom
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerHeightBottom(double height)
Increases the inner height of the sub process to the given value by adding new space at the bottom. Does nothing when the height is already greater than the given value.- Parameters:
height- The new inner height of the sub process.- Returns:
- This builder for chaining method calls.
-
enlargeInnerHeightBottomBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerHeightBottomBy(double amount)
Increases the inner height of the sub process by the given amount, adding new space at the bottom.- Parameters:
amount- The amount to increase the inner height by.
-
enlargeInnerHeightTop
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerHeightTop(double height)
Increases the inner height of the sub process to the given value by adding new space at the top. Does nothing when the height is already greater than the given value.- Parameters:
height- The new inner height of the sub process.
-
enlargeInnerHeightTopBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerHeightTopBy(double amount)
Increases the inner height of the sub process by the given amount, adding new space at the top.- Parameters:
amount- The amount to increase the inner height by.
-
enlargeInnerLength
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerLength(ECartesianAxis2D axis, EAxisPolarity direction, double length)
Increases the inner length of the sub process to the given value by adding new space at the given side. Does nothing when the length is already greater than the given value.- Parameters:
axis- The axis of theECardinalDirection2Dpointing to the side to enlarge.direction- The direction of theECardinalDirection2Dpointing to the side to enlarge.length- The new inner length of the sub process.- Returns:
- This builder for chaining method calls.
-
enlargeInnerLength
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerLength(ECardinalDirection2D side, double length)
Increases the inner length of the sub process to the given value by adding new space at the given side. Does nothing when the length is already greater than the given value.- Parameters:
side- The direction pointing to the side to enlarge.length- The new inner length of the sub process.- Returns:
- This builder for chaining method calls.
-
enlargeInnerLengthBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerLengthBy(ECartesianAxis2D axis, EAxisPolarity direction, double amount)
Increases the inner length of the sub process by the given amount at the given side, adding new space at that side.- Parameters:
axis- The axis of theECardinalDirection2Dpointing to the side to enlarge.direction- The direction of theECardinalDirection2Dpointing to the side to enlarge.amount- The amount to increase the inner length by.
-
enlargeInnerLengthBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerLengthBy(ECardinalDirection2D side, double amount)
Increases the inner length of the sub process by the given amount at the given side, adding new space at that side.- Parameters:
side- The direction pointing to the side to enlarge.amount- The amount to increase the inner length by.
-
enlargeInnerWidthLeft
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerWidthLeft(double width)
Increases the inner width of the sub process to the given value by adding new space at the left. Does nothing when the width is already greater than the given value.- Parameters:
width- The new inner width of the sub process.
-
enlargeInnerWidthLeftBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerWidthLeftBy(double amount)
Increases the inner width of the sub process by adding new space at the left.- Parameters:
amount- The amount to increase the inner width by.
-
enlargeInnerWidthRight
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerWidthRight(double width)
Increases the inner width of the sub process to the given value by adding new space at the right. Does nothing when the width is already greater than the given value.- Parameters:
width- The new inner width of the sub process.
-
enlargeInnerWidthRightBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeInnerWidthRightBy(double amount)
Increases the inner width of the sub process by adding new space at the right.- Parameters:
amount- The amount to increase the inner width by.
-
enlargeOuterHeightBottom
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterHeightBottom(double height)
Increases the outer height of the sub process to the given value by adding new space at the bottom. Does nothing when the height is already greater than the given value.- Parameters:
height- The new outer height of the sub process.- Returns:
- This builder for chaining method calls.
-
enlargeOuterHeightBottomBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterHeightBottomBy(double amount)
Increases the outer height of the sub process by the given amount, adding new space at the bottom.- Parameters:
amount- The amount to increase the outer height by.
-
enlargeOuterHeightTop
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterHeightTop(double height)
Increases the outer height of the sub process to the given value by adding new space at the top. Does nothing when the height is already greater than the given value.- Parameters:
height- The new outer height of the sub process.
-
enlargeOuterHeightTopBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterHeightTopBy(double amount)
Increases the outer height of the sub process by the given amount, adding new space at the top.- Parameters:
amount- The amount to increase the outer height by.
-
enlargeOuterLength
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterLength(ECartesianAxis2D axis, EAxisPolarity direction, double length)
Increases the outer length of the sub process to the given value by adding new space at the given side. Does nothing when the length is already greater than the given value.- Parameters:
axis- The axis of theECardinalDirection2Dpointing to the side to enlarge.direction- The direction of theECardinalDirection2Dpointing to the side to enlarge.length- The new outer length of the sub process.- Returns:
- This builder for chaining method calls.
-
enlargeOuterLength
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterLength(ECardinalDirection2D side, double length)
Increases the outer length of the sub process to the given value by adding new space at the given side. Does nothing when the length is already greater than the given value.- Parameters:
side- The direction pointing to the side to enlarge.length- The new outer length of the sub process.- Returns:
- This builder for chaining method calls.
-
enlargeOuterLengthBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterLengthBy(ECartesianAxis2D axis, EAxisPolarity direction, double amount)
Increases the outer length of the sub process by the given amount at the given side, adding new space at that side.- Parameters:
axis- The axis of theECardinalDirection2Dpointing to the side to enlarge.direction- The direction of theECardinalDirection2Dpointing to the side to enlarge.amount- The amount to increase the outer length by.
-
enlargeOuterLengthBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterLengthBy(ECardinalDirection2D side, double amount)
Increases the outer length of the sub process by the given amount at the given side, adding new space at that side.- Parameters:
side- The direction pointing to the side to enlarge.amount- The amount to increase the outer length by.
-
enlargeOuterWidthLeft
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterWidthLeft(double width)
Increases the outer width of the sub process to the given value by adding new space at the left. Does nothing when the width is already greater than the given value.- Parameters:
width- The new outer width of the sub process.
-
enlargeOuterWidthLeftBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterWidthLeftBy(double amount)
Increases the outer width of the sub process by adding new space at the left.- Parameters:
amount- The amount to increase the outer width by.
-
enlargeOuterWidthRight
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterWidthRight(double width)
Increases the outer width of the sub process to the given value by adding new space at the right. Does nothing when the width is already greater than the given value.- Parameters:
width- The new outer width of the sub process.
-
enlargeOuterWidthRightBy
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder enlargeOuterWidthRightBy(double amount)
Increases the outer width of the sub process by adding new space at the right.- Parameters:
amount- The amount to increase the outer width by.
-
hasBoundaryEvents
boolean hasBoundaryEvents(ECardinalDirection2D side)
Checks whether the sub process has any boundary events on the given side.- Parameters:
side- The side to check for boundary events.- Returns:
- True if the sub process has any boundary events on the given side, false otherwise.
-
inPort
@CanIgnoreReturnValue Double inPort()
Gets the current position of the in port.- Returns:
- The current position of the in port.
-
innerBoundingBox
Rectangular2DDouble innerBoundingBox()
Gets the current inner width and inner height of the sub process.- Returns:
- The current inner width and inner height of the sub process.
-
innerHeight
double innerHeight()
Gets the current inner height of the sub process. The inner height includes the padding, but not the margin. In other words, the inner height is the height of the rectangle that visualizes the sub process.- Returns:
- The current inner height of the sub process.
-
innerWidth
double innerWidth()
Gets the current inner width of the sub process. The inner width includes the padding, but not the margin. In other words, the inner width is the width of the rectangle that visualizes the sub process.- Returns:
- The current inner width of the sub process.
-
outPort
@CanIgnoreReturnValue Double outPort()
Gets the current position of the out port.- Returns:
- The current position of the out port.
-
outerBoundingBox
Rectangular2DDouble outerBoundingBox()
Gets the current outer width and outer height of the sub process.- Returns:
- The current outer width and outer height of the sub process.
-
outerHeight
double outerHeight()
Gets the current outer height of the sub process. The outer height includes the padding and the margin. In other words, the outer height is the height of the finalalignment itemcreated by thebuildmethod (but note that the build method may increase the padding / margin if needed).- Returns:
- The current outer height of the sub process.
-
outerWidth
double outerWidth()
Gets the current outer width of the sub process. The outer width includes the padding and the margin. In other words, the outer width is the width of the finalalignment itemcreated by thebuildmethod (but note that the build method may increase the padding / margin if needed).- Returns:
- The current outer width of the sub process.
-
portDirection
ECardinalDirection2D portDirection()
Gets the current port direction, either the default direction or the direction set byportDirection(side).- Returns:
- The current port direction.
-
spaceBoundaryEventsEvenly
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder spaceBoundaryEventsEvenly(ECardinalDirection2D side)
Repositions all boundary events on the given side that were added viaappendBoundaryEvent. Spaces them evenly on the given side, using the current length of that side. Ignores the in and out ports, if any are present. This works similar to the CSS flexbox propertyjustify-content: space-evenly.- Parameters:
side- The side to space the boundary events on.- Returns:
- This builder for chaining method calls.
-
useInPortOfBody
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder useInPortOfBody()
- Returns:
- This builder for chaining method calls.
-
useOutPortOfBody
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder useOutPortOfBody()
- Returns:
- This builder for chaining method calls.
-
usePortsOfBody
@CanIgnoreReturnValue IWorkflowBpmnLayoutSubProcessBuilder usePortsOfBody()
Sets theout portto the out port of thebody, and sets thein portto the in port of thebody. Does nothing when no body was set yet.- Returns:
- This builder for chaining method calls.
-
-