Search in sources :

Example 1 with Canvas

use of org.kie.workbench.common.stunner.core.client.canvas.Canvas in project kie-wb-common by kiegroup.

the class CanvasDiagramValidator method applyViolation.

private boolean applyViolation(final H canvasHandler, final RuleViolation violation) {
    if (hasViolations(violation)) {
        final Canvas canvas = canvasHandler.getCanvas();
        final Shape shape = getShape(canvasHandler, violation.getUUID());
        if (null != shape) {
            shape.applyState(ShapeState.INVALID);
            canvas.draw();
        }
        return true;
    }
    return false;
}
Also used : Shape(org.kie.workbench.common.stunner.core.client.shape.Shape) Canvas(org.kie.workbench.common.stunner.core.client.canvas.Canvas)

Example 2 with Canvas

use of org.kie.workbench.common.stunner.core.client.canvas.Canvas in project kie-wb-common by kiegroup.

the class EdgeBuilderControlImpl method build.

@Override
@SuppressWarnings("unchecked")
public void build(final EdgeBuildRequest request, final BuildCallback buildCallback) {
    final double x = request.getX();
    final double y = request.getY();
    final Edge<? extends ViewConnector<?>, Node> edge = request.getEdge();
    final AbstractCanvasHandler<?, ?> wch = canvasHandler;
    final Node<? extends View<?>, Edge> inNode = request.getInNode();
    final Node<? extends View<?>, Edge> outNode = request.getOutNode();
    final Canvas canvas = canvasHandler.getCanvas();
    if (null == inNode) {
        throw new RuntimeException(" An edge must be into the outgoing edges list from a node.");
    }
    final String ssid = canvasHandler.getDiagram().getMetadata().getShapeSetId();
    final CompositeCommand.Builder commandBuilder = new CompositeCommand.Builder().addCommand(commandFactory.addConnector(inNode, edge, MagnetConnection.Builder.forElement(inNode), ssid));
    if (null != outNode) {
        commandBuilder.addCommand(commandFactory.setTargetNode(outNode, edge, MagnetConnection.Builder.forElement(outNode)));
    }
    final CommandResult<CanvasViolation> results = getCommandManager().execute(wch, commandBuilder.build());
    if (CommandUtils.isError(results)) {
        LOGGER.log(Level.WARNING, results.toString());
    }
    canvasHandler.applyElementMutation(edge, MutationContext.STATIC);
    buildCallback.onSuccess(edge.getUUID());
}
Also used : CanvasViolation(org.kie.workbench.common.stunner.core.client.command.CanvasViolation) Node(org.kie.workbench.common.stunner.core.graph.Node) Canvas(org.kie.workbench.common.stunner.core.client.canvas.Canvas) CompositeCommand(org.kie.workbench.common.stunner.core.command.impl.CompositeCommand) Edge(org.kie.workbench.common.stunner.core.graph.Edge)

Aggregations

Canvas (org.kie.workbench.common.stunner.core.client.canvas.Canvas)2 CanvasViolation (org.kie.workbench.common.stunner.core.client.command.CanvasViolation)1 Shape (org.kie.workbench.common.stunner.core.client.shape.Shape)1 CompositeCommand (org.kie.workbench.common.stunner.core.command.impl.CompositeCommand)1 Edge (org.kie.workbench.common.stunner.core.graph.Edge)1 Node (org.kie.workbench.common.stunner.core.graph.Node)1