Search in sources :

Example 31 with Shape

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

the class BaseCanvasHandler method undock.

@Override
@SuppressWarnings("unchecked")
public void undock(final Element target, final Element child) {
    final String targetUUID = target.getUUID();
    final String childUUID = child.getUUID();
    if (!isCanvasRoot(targetUUID)) {
        final Shape targetShape = getCanvas().getShape(targetUUID);
        final Shape childShape = getCanvas().getShape(childUUID);
        getCanvas().undock(targetShape, childShape);
    }
}
Also used : ElementShape(org.kie.workbench.common.stunner.core.client.shape.ElementShape) Shape(org.kie.workbench.common.stunner.core.client.shape.Shape)

Example 32 with Shape

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

the class MorphCanvasNodeCommand method updateConnections.

@SuppressWarnings("unchecked")
private void updateConnections(final AbstractCanvasHandler context, final Edge edge, final Node sourceNode, final Node targetNode) {
    if (null != edge && null != sourceNode && null != targetNode) {
        final EdgeShape edgeShape = (EdgeShape) context.getCanvas().getShape(edge.getUUID());
        final Shape sourceNodeShape = context.getCanvas().getShape(sourceNode.getUUID());
        final Shape targetNodeShape = context.getCanvas().getShape(targetNode.getUUID());
        edgeShape.applyConnections(edge, sourceNodeShape.getShapeView(), targetNodeShape.getShapeView(), MutationContext.STATIC);
    }
}
Also used : EdgeShape(org.kie.workbench.common.stunner.core.client.shape.EdgeShape) Shape(org.kie.workbench.common.stunner.core.client.shape.Shape) EdgeShape(org.kie.workbench.common.stunner.core.client.shape.EdgeShape)

Example 33 with Shape

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

the class CanvasControlRegistrationHandler method initializeListeners.

private void initializeListeners() {
    // Canvas listeners.
    final C canvas = getCanvas();
    this.shapeListener = new CanvasShapeListener() {

        @Override
        public void register(final Shape item) {
            onRegisterShape(item);
        }

        @Override
        public void deregister(final Shape item) {
            onDeregisterShape(item);
        }

        @Override
        public void clear() {
            onClear();
        }
    };
    canvas.addRegistrationListener(shapeListener);
    // Canvas handler listeners.
    this.elementListener = new CanvasElementListener() {

        @Override
        public void update(final Element item) {
            onElementRegistration(item, false, true);
        }

        @Override
        public void register(final Element item) {
            onRegisterElement(item);
        }

        @Override
        public void deregister(final Element item) {
            onDeregisterElement(item);
        }

        @Override
        public void clear() {
            onClear();
        }
    };
    getCanvasHandler().addRegistrationListener(elementListener);
}
Also used : Shape(org.kie.workbench.common.stunner.core.client.shape.Shape) CanvasElementListener(org.kie.workbench.common.stunner.core.client.canvas.listener.CanvasElementListener) Element(org.kie.workbench.common.stunner.core.graph.Element) CanvasShapeListener(org.kie.workbench.common.stunner.core.client.canvas.listener.CanvasShapeListener)

Example 34 with Shape

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

the class MapSelectionControl method updateViewShapesState.

@SuppressWarnings("unchecked")
private void updateViewShapesState() {
    if (isEnabled()) {
        final List<Shape> shapes = getCanvas().getShapes();
        for (final Shape shape : shapes) {
            final boolean isSelected = isSelected(shape.getUUID());
            if (isSelected && isReadonly()) {
                shape.applyState(ShapeState.HIGHLIGHT);
            } else if (isSelected) {
                shape.applyState(ShapeState.SELECTED);
            } else {
                shape.applyState(ShapeState.NONE);
            }
        }
        // Batch a show operation.
        getCanvas().draw();
    }
}
Also used : Shape(org.kie.workbench.common.stunner.core.client.shape.Shape)

Example 35 with Shape

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

the class ToolboxControlImpl method register.

@Override
@SuppressWarnings("unchecked")
public void register(final Element element) {
    if (checkNotRegistered(element) && supportsToolbox(element)) {
        final Shape shape = canvasHandler.getCanvas().getShape(element.getUUID());
        final HasEventHandlers hasEventHandlers = (HasEventHandlers) shape.getShapeView();
        if (hasEventHandlers.supports(ViewEventType.MOUSE_CLICK)) {
            final MouseClickHandler clickHandler = new MouseClickHandler() {

                @Override
                public void handle(final MouseClickEvent event) {
                    if (event.isButtonLeft()) {
                        show(element);
                    }
                }
            };
            hasEventHandlers.addHandler(ViewEventType.MOUSE_CLICK, clickHandler);
            registerHandler(element.getUUID(), clickHandler);
        }
    }
}
Also used : Shape(org.kie.workbench.common.stunner.core.client.shape.Shape) MouseClickHandler(org.kie.workbench.common.stunner.core.client.shape.view.event.MouseClickHandler) HasEventHandlers(org.kie.workbench.common.stunner.core.client.shape.view.HasEventHandlers) MouseClickEvent(org.kie.workbench.common.stunner.core.client.shape.view.event.MouseClickEvent)

Aggregations

Shape (org.kie.workbench.common.stunner.core.client.shape.Shape)42 Test (org.junit.Test)14 Element (org.kie.workbench.common.stunner.core.graph.Element)8 ElementShape (org.kie.workbench.common.stunner.core.client.shape.ElementShape)7 NullShape (org.kie.workbench.common.stunner.cm.client.shape.NullShape)5 Node (org.kie.workbench.common.stunner.core.graph.Node)4 AbstractCanvas (org.kie.workbench.common.stunner.core.client.canvas.AbstractCanvas)3 EdgeShape (org.kie.workbench.common.stunner.core.client.shape.EdgeShape)3 HasEventHandlers (org.kie.workbench.common.stunner.core.client.shape.view.HasEventHandlers)3 ShapeView (org.kie.workbench.common.stunner.core.client.shape.view.ShapeView)3 CanvasShapeRemovedEvent (org.kie.workbench.common.stunner.core.client.canvas.event.registration.CanvasShapeRemovedEvent)2 ShapeFactory (org.kie.workbench.common.stunner.core.client.shape.factory.ShapeFactory)2 MouseClickEvent (org.kie.workbench.common.stunner.core.client.shape.view.event.MouseClickEvent)2 MouseClickHandler (org.kie.workbench.common.stunner.core.client.shape.view.event.MouseClickHandler)2 ShapeGlyph (org.kie.workbench.common.stunner.core.definition.shape.ShapeGlyph)2 BoundsImpl (org.kie.workbench.common.stunner.core.graph.content.view.BoundsImpl)2 Index (org.kie.workbench.common.stunner.core.graph.processing.index.Index)2 Group (com.ait.lienzo.client.core.shape.Group)1 WiresShape (com.ait.lienzo.client.core.shape.wires.WiresShape)1 BoundingBox (com.ait.lienzo.client.core.types.BoundingBox)1