Default

Given a modal model state, tries to find the entity that represents its refinement, if any.

Categories: composition

Categories: composition

Categories: composition

Categories: composition

Categories: composition

Categories: composition

Categories: microLayout

Example Usage
                                                        rectangle.setGridPlacement(1).from(LEFT, 0, 0, TOP, padding - 3, 0).to(RIGHT, 0, 0, BOTTOM, 0, 0)

Adds a central (main) label to {@link KEdge} edge.

Adds a central (main) label to {@link KEdge} edge.

Adds a central (main) label to {@link KEdge} edge.

Adds a head label (target side) to {@link KEdge} edge.

Adds a head label (target side) to {@link KEdge} edge.

Adds a head label (target side) to {@link KEdge} edge.

Adds a tail label (source side) to {@link KEdge} edge.

Adds a tail label (source side) to {@link KEdge} edge.

Adds a tail label (source side) to {@link KEdge} edge.

getSemanticObject returns the primary (semantic) object of an edge.

Reverses the given edge's direction.

Reveals the KRendering of a KGraphElement, e.g. for the purpose of highlighting.

Returns the layout information of the given graph element. This method is guaranteed to not return {@code null}: if the element has no layout information yet, a new layout instance is created and added to the element, depending on the element's type.

chsch: renamed in order to avoid name clashes with {@link AnnotationExtensions#getLayout()}.

Sets a {@link KEllipse} clip shape on the provided image.
Set area or point placement data on this (returned) ellipse as usual in order to determine the clip area. Categories: composition

Example Usage
                                                        ...addImage(...).addEllipticalClip
                                                                 .addAreaPlacementData.from(LEFT, 3, 0, TOP, 3, 0).to(RIGHT, 3, 0, BOTTOM, 3, 0);

Sets a {@link KPolygon} clip shape on the provided image.
Add {@link KPosition KPositions} on this (returned) polygon as usual in order to determine the clip area. Categories: composition

Example Usage
                                                        ..addImage(...).addPolygonClip.addKPosition(LEFT, 3, 0, TOP, 3, 0)
                                                                 .addKPosition(RIGHT, 3, 0, TOP, 3, 0)
                                                                 .addKPosition(LEFT, 0, 0.5f, BOTTOM, 3, 0);

Sets a {@link KRectangle} clip shape on the provided image.
Set area or point placement data on this (returned) rectangle as usual in order to determine the clip area. Categories: composition

Example Usage
                                                        ...addImage(...).addRectangularClip
                                                                 .addAreaPlacementData.from(LEFT, 3, 0, TOP, 3, 0).to(RIGHT, 3, 0, BOTTOM, 3, 0);

Shortcut for setting the label's background color directly.

Configures a central (main) edge label, e.g. a state transition guard/effect label!

Configures a central (main) edge label, e.g. a state transition guard/effect label!

Configures a central (main) edge label, e.g. a state transition guard/effect label!

Configures a head edge label, e.g. the cardinality of a relation in an class diagram!

Configures a head edge label, e.g. the cardinality of a relation in an class diagram!

Configures a head edge label, e.g. the cardinality of a relation in an class diagram!

Configures an inside bottom centrally-aligned node label!

Configures an inside bottom centrally-aligned node label!

Configures an inside bottom centrally-aligned node label!

Configures an inside bottom left-aligned node label!

Configures an inside bottom left-aligned node label!

Configures an inside bottom left-aligned node label!

Configures an inside bottom right-aligned node label!

Configures an inside bottom right-aligned node label!

Configures an inside bottom right-aligned node label!

Configures an inside centrally-aligned node label!

Configures an inside centrally-aligned node label!

Configures an inside centrally-aligned node label!

Configures an inside port label!
Note that label must be already contained in a {@link KPort} that in turn is contained in a {@link KNode} in order to let the configuration be performed properly.

Configures an inside port label!
Note that label must be already contained in a {@link KPort} that in turn is contained in a {@link KNode} in order to let the configuration be performed properly.

Configures an inside port label!
Note that label must be already contained in a {@link KPort} that in turn is contained in a {@link KNode} in order to let the configuration be performed properly.

Configures an inside top centrally-aligned node label!

Configures an inside top centrally-aligned node label!

Configures an inside top centrally-aligned node label!

Configures an inside top left-aligned node label!

Configures an inside top left-aligned node label!

Configures an inside top left-aligned node label!

Configures an inside top right-aligned node label!

Configures an inside top right-aligned node label!

Configures an inside top right-aligned node label!

Configures an outside bottom centrally-aligned node label!

Configures an outside bottom centrally-aligned node label!

Configures an outside bottom centrally-aligned node label!

Configures an outside bottom left-aligned node label!

Configures an outside bottom left-aligned node label!

Configures an outside bottom left-aligned node label!

Configures an outside bottom right-aligned node label!

Configures an outside bottom right-aligned node label!

Configures an outside bottom right-aligned node label!

Configures a outside port label!
Note that label must be already contained in a {@link KPort} that in turn is contained in a {@link KNode} in order to let the configuration be performed properly.

Configures a outside port label!
Note that label must be already contained in a {@link KPort} that in turn is contained in a {@link KNode} in order to let the configuration be performed properly.

Configures a outside port label!
Note that label must be already contained in a {@link KPort} that in turn is contained in a {@link KNode} in order to let the configuration be performed properly.

Configures an outside top centrally-aligned node label!

Configures an outside top centrally-aligned node label!

Configures an outside top centrally-aligned node label!

Configures an outside top left-aligned node label!

Configures an outside top left-aligned node label!

Configures an outside top left-aligned node label!

Configures an outside top right-aligned node label!

Configures an outside top right-aligned node label!

Configures an outside top right-aligned node label!

Configures a tail edge label, e.g. the cardinality of a relation in an class diagram!

Configures a tail edge label, e.g. the cardinality of a relation in an class diagram!

Configures a tail edge label, e.g. the cardinality of a relation in an class diagram!

Shortcut for setting the label's foreground color directly.

Reveals the first KText element of a label KRendering, which is assumed to be the label text configuration. This is useful for additionally linking it with the business element represented by the label. Note: KLabelNodes of the Piccolo2D binding are configured to ignore the KText element while selecting them. Thus, only the KLabel needs to be linked to the source element.

Convenience creator of KLabels that are not related to semantic elements. It is just syntactic sugar.

Adds a rectangle to the node. Categories: composition

Example Usage
                                                        node.addRectangle => [
                                                          it.background = "green".color
                                                        ]

Categories: composition

Adds an inside bottom centrally-aligned node label!

Adds an inside bottom centrally-aligned node label!

Adds an inside bottom centrally-aligned node label!

Adds an inside bottom left-aligned node label!

Adds an inside bottom left-aligned node label!

Adds an inside bottom left-aligned node label!

Adds an inside bottom right-aligned node label!

Adds an inside bottom right-aligned node label!

Adds an inside bottom right-aligned node label!

Adds an inside bottom right-aligned node label!

Adds an inside bottom right-aligned node label!

Adds an inside bottom right-aligned node label!

Adds an inside top centrally-aligned node label!

Adds an inside top centrally-aligned node label!

Adds an inside top centrally-aligned node label!

Adds an inside top left-aligned node label!

Adds an inside top left-aligned node label!

Adds an inside top left-aligned node label!

Adds an inside top right-aligned node label!

Adds an inside top right-aligned node label!

Adds an inside top right-aligned node label!

Adds an outside bottom centrally-aligned node label!

Adds an outside bottom centrally-aligned node label!

Adds an outside bottom centrally-aligned node label!

Adds an outside bottom left-aligned node label!

Adds an outside bottom left-aligned node label!

Adds an outside bottom left-aligned node label!

Adds an outside bottom right-aligned node label!

Adds an outside bottom right-aligned node label!

Adds an outside bottom right-aligned node label!

Adds an outside top centrally-aligned node label!

Adds an outside top centrally-aligned node label!

Adds an outside top centrally-aligned node label!

Adds an outside top left-aligned node label!

Adds an outside top left-aligned node label!

Adds an outside top left-aligned node label!

Adds an outside top right-aligned node label!

Adds an outside top right-aligned node label!

Adds an outside top right-aligned node label!

Identifies the passed rendering element with the passed id within the KRendering library valid for the given node. Afterwards the rendering can be retrieved from the library using the {@code getFromLibrary} method. Categories: library

Example Usage
                                                        edge.source.addToLibrary("ren_junction",
                                                         createKRoundedRectangle => [ rr |
                                                          rr.background = color
                                                          rr.foreground = color
                                                          rr.cornerWidth = 2
                                                          rr.cornerHeight = 2
                                                          rr.setPointPlacementData(LEFT, 0, 0, TOP, 0, 0,
                                                             H_CENTRAL, V_CENTRAL, 0, 0, 10, 10)
                                                         ]
                                                        )

Configures labels on this node to be inside bottom centrally-aligned labels by default

Configures labels on this node to be inside bottom left-aligned labels by default

Configures labels on this node to be inside bottom right-aligned labels by default

Configures labels on this node to be inside centrally-aligned labels by default

Configures labels on this node to be inside top centrally-aligned labels by default

Configures labels on this node to be inside top left-aligned labels by default

Configures labels on this node to be inside top right-aligned labels by default

Configures labels on this node to be outside bottom centrally-aligned labels by default

Configures labels on this node to be outside bottom left-aligned labels by default

Configures labels on this node to be outside bottom right-aligned labels by default

Configures labels on this node to be outside top centrally-aligned labels by default

Configures labels on this node to be outside top left-aligned labels by default

Configures labels on this node to be outside top right-aligned labels by default

Creates a port and a related port figure as well as a port label onto the east side of a given node with the port label text 'label'. The port is related to the given EObjects. The create nature of these extensions avoids the relocation the an already created port due to the recall of the initializer extension.

Creates an anchor and a related port figure as well as a port label onto the north side of a given shape with the port label text 'label'. The anchor is related to the given EObjects. The create nature of these extensions avoids the relocation the an already created port due to the recall of the initializer extension.

Creates an anchor and a related port figure as well as a port label onto the south side of a given shape with the port label text 'label'. The anchor is related to the given EObjects. The create nature of these extensions avoids the relocation the an already created port due to the recall of the initializer extension.

Creates an anchor and a related port figure as well as a port label onto the west side of a given shape with the port label text 'label'. The anchor is related to the given EObjects. The create nature of these extensions avoids the relocation the an already created port due to the recall of the initializer extension.

Retrieves the rendering element that has been identified with the {@code id} string from the rendering library valid for the given node. Categories: library

Example Usage
                                                        val libJunction = edge.source.getFromLibrary("ren_junction")

Returns a list of all edges incident to the given node.

Retrieves the rendering library valid for the given node. The library must be located in the node's topmost ancestor. If that ancestor does not yet have a rendering library attached, one is generated. Categories: library

Example Usage
                                                        val library = node.library

Is used in KPortExtensions

Adds an inside label to {@link KPort} port!
Note that port must be already contained in a {@link KNode} in order to let the configuration be performed properly.

Adds an inside label to {@link KPort} port!
Note that port must be already contained in a {@link KNode} in order to let the configuration be performed properly.

Adds an inside label to {@link KPort} port!
Note that port must be already contained in a {@link KNode} in order to let the configuration be performed properly.

Adds an outside label to {@link KPort} port!
Note that port must be already contained in a {@link KNode} in order to let the configuration be performed properly.

Adds an outside label to {@link KPort} port!
Note that port must be already contained in a {@link KNode} in order to let the configuration be performed properly.

Adds an outside label to {@link KPort} port!
Note that port must be already contained in a {@link KNode} in order to let the configuration be performed properly.

Reveals the first KText element of a port KRendering, which is assumed to be the port label. This is useful for additionally linking it with the business element represented by the port.

Checks if the given port has an incident edge of unknown direction.

Categories: style

Adds a grid placement to the rendering element with the specified spacing.

Example Usage
                                                        rectangle.setGridPlacementData => [ cell |
                                                         cell.from(LEFT, padding, 0, TOP, padding - 2, 0).to(RIGHT, padding, 0, BOTTOM, 0, 0)
                                                         cell.minCellHeight = propBarHeight
                                                         cell.flexibleHeight = false
                                                        ]

Adds a grid placement to the rendering element with the specified spacing.

Identifies the passed rendering element with the passed id within the KRendering library. Afterwards the rendering can be retrieved from the library using the {@code getFromLibrary} method. Categories: library

Example Usage
                                                        edge.source.library.addToLibrary("ren_junction",
                                                         createKRoundedRectangle => [ rr |
                                                          rr.background = color
                                                          rr.foreground = color
                                                          rr.cornerWidth = 2
                                                          rr.cornerHeight = 2
                                                          rr.setPointPlacementData(LEFT, 0, 0, TOP, 0, 0,
                                                             H_CENTRAL, V_CENTRAL, 0, 0, 10, 10)
                                                         ]
                                                        )

Retrieves the rendering element that has been identified with the {@code id} string from the given rendering library. Categories: library

Example Usage
                                                        val libJunction = edge.source.getFromLibrary("ren_junction")

An alias of {@link #getEdge(Object o1, Object o2, Object o3, Object o4)} allowing to express in business that the KEdge will be created at this place. It is just syntactic sugar.

An alias of {@link #getEdge(Object o1, Object o2)} allowing to express in business that the KEdge will be created at this place. It is just syntactic sugar.

An alias of {@link #getEdge(Object o1)} allowing to express in business that the KEdge will be created at this place. It is just syntactic sugar.

An alias of {@link #getEdge(Object o1, Object o2, Object o3)} allowing to express in business that the KEdge will be created at this place. It is just syntactic sugar.

An alias of {@link #getLabel(Object, Object, KLabeledGraphElement)} allowing to express in business that the KLabel will be created at this place. It is just syntactic sugar.

An alias of {@link #getLabel(Object, KLabeledGraphElement)} allowing to express in business that the KLabel will be created at this place. It is just syntactic sugar.

Similar to createEdge, createNewEdge creates a new edge related to an object. Furthermore, the method makes sure a new edge is created and stored in the create extensions.

Similar to createEdge, createNewEdge creates a new edge related to an object. Furthermore, the method makes sure a new edge is created and stored in the create extensions.

Similar to createEdge, createNewEdge creates a new edge related to an object. Furthermore, the method makes sure a new edge is created and stored in the create extensions.

An alias of {@link #getNode} allowing to express in business that the KNode will be created at this place. It is just syntactic sugar.

An alias of {@link #getNode} allowing to express in business that the KNode will be created at this place. It is just syntactic sugar.

An alias of {@link #getPort(Object o1, Object o2, Object o3)} allowing to express in business that the KPort will be created at this place. It is just syntactic sugar.

An alias of {@link #getPort(Object o1)} allowing to express in business that the KPort will be created at this place. It is just syntactic sugar.

An alias of {@link #getPort(Object o1, Object o2)} allowing to express in business that the KPort will be created at this place. It is just syntactic sugar.

An alias of {@link #getPort(Object o1, Object o2, Object o3, Object o4)} allowing to express in business that the KPort will be created at this place. It is just syntactic sugar.

A convenient test method to check whether or not a specific edge exists in the create extension

A convenient test method to check whether or not a specific edge exists in the create extension

A convenient test method to check whether or not a specific edge exists in the create extension

A convenient test method to check whether or not a specific edge exists in the create extension

The method getAllEdges retrieves all edges linked to a specific (semantic) object.

The method getAllEdges retrieves all edges linked to a specific (semantic) object.

The method getAllEdges retrieves all edges linked to a specific (semantic) object.

A convenient port getter based on a three business objects preserving the element image relation by a create extension.

A convenient port getter based on a single business object preserving the element image relation by a create extension.

A convenient port getter based on a four business objects preserving the element image relation by a create extension.

A convenient port getter based on a two business objects preserving the element image relation by a create extension.

A convenient getter associating the label with to elements preserving the element image relation by a create extension.

A convenient getter preserving the element image relation by a create extension.

A convenient getter preserving the element image relation by a create extension.

A convenient getter preserving the element image relation by a create extension.

A convenient port getter based on a four business objects preserving the element image relation by a create extension.

A convenient port getter based on a single business object preserving the element image relation by a create extension.

A convenient port getter based on a two business objects preserving the element image relation by a create extension.

A convenient port getter based on a three business objects preserving the element image relation by a create extension.

Convenient creation of color objects. Allows several names (red, blue, black, etc) and hex strings (#00ff00). Categories: style

Example Usage
                                                        rectangle.background = "black".color
                                                        rectangle.foreground = "#00ff00".color

Checks if the given name is a name usual for input ports.

Checks if the given name is a name usual for output ports.

Configures the action being registered in KLighD with actionId to be executed after a double (or tripple, ...) click on rendering. Categories: actions

Configures the action being registered in KLighD with actionId to be executed after a double (or tripple, ...) click on rendering if the required modifier keys are pressed. Categories: actions

Configures the action being registered in KLighD with actionId to be executed after a single (!) click on rendering. The action triggered with a delay if and only if no subsequent click occurs within the system wide double click time, and if the required modifier keys are pressed. Categories: actions

Configures the action being registered in KLighD with actionId to be executed after a single (!) click on rendering. The action triggered with a delay if and only if no subsequent click occurs within the system wide double click time. Categories: actions

Configures the action being registered in KLighD with actionId to be executed after a single click on rendering regardless of whether more clicks follow within the system wide double click time, if the required modifier keys are pressed. In contrast to #addSingleClickAction, there's no delay between the event receipt and the action execution. Categories: actions

Configures the action being registered in KLighD with actionId to be executed after a single click on rendering regardless of whether more clicks follow within the system wide double click time. In contrast to #addSingleClickAction, there's no delay between the event receipt and the action execution. Categories: actions

Adds a grid placement to the rendering element with the specified spacing.

Categories: style

Creates a position with the given absolute x and y coordinates.

Returns the first edge in the list that is marked as having a fixed direction.

Ptolemy

Returns the annotations of the given entity. This particular method looks for the properties directly attached to the entity.

Adds an annotation with the given key, type, and value to the given KGraph element, if no annotation with that key already exists.

Adds an annotation with the given key and value to the given KGraph element, if no annotation with that key already exists.

Adds an annotation with the given key to the given KGraph element, if no annotation with that key already exists.

Returns the annotation with the given key from the given KGraph element.

Returns the boolean value of the annotation with the given key, if any.

Returns the value of the string annotation with the given key, if any.

Checks if the given KGraph element has a Ptolemy annotation of the given key. This method queries the shape layout of the given element.

Removes the annotation with the given key, if any exists, from the given KGraph element.

Returns the annotations of the given entity. This particular method looks for the properties directly attached to the entity.

Checks if the given edge is marked as being undirected.

Marks the given edge as being undirected. This means that the link's direction has not been inferred yet.

Returns the annotations of the given object. This particular method looks for the property in the element's KShapeLayout.

Returns the layout data of the given element.

Checks if the given port is marked as being an input port.

Checks if the given node or port is a state machine model port. These ports need to be turned into nodes that can have a special rendering, like in Ptolemy.

Checks if the given port is marked as being an output port.

Marks the given port as being an input port.

Marks the given port as being an output port.

Marks the given KGraph element as originating from a Ptolemy model.

Returns the name of the given element. Its name is assumed to be the text of its first label.

Sets the name of the given element by setting the text of its first label.

Returns the shape layout of the given element, creating it if it does not exist yet.

Checks if the given node is marked as being a comment node.

Checks if the given node is marked as being a director node.

Checks if the given node is marked as being a documentation attribute node.

Checks if the given node is marked as having been created from an annotation.

Checks if the given node has a state refinement.

Checks if the given node is marked as being a hypernode.

Checks if the given node is marked as being a parameter node.

Checks if the given node is a Ptolemy state machine model state.

Checks if the given node is marked as containing a state machine.

Checks if the given node is marked as being a title node. A title node is a special node that contains the title of a diagram.

Checks if the given node is a value displaying actor, for instance a Const actor.

Marks the given node as being a comment node.

Marks the given node as being a director node.

Marks the given node as being a documentation attribute node that contains documentation.

Marks a node as formerly having been an annotation. Some nodes do not map to actors in the original Ptolemy model, but to annotations. For example, the director used to execute a model is persisted as an annotation in Ptolemy. In the corresponding KGraph model, we need it to be a node to display it correctly.

Marks the given node as being a hypernode.

Marks the given node as representing a modal model port by setting its Ptolemy class accordingly.

Marks the given node as being a parameter node that displays model parameters.

Marks the given node as containing a state machine.

Marks the given node as being a title node. A title node is a special node that contains the title of a diagram.

Returns the annotations of the given object. This particular method looks for the properties directly attached to the element.