org.eclipse.gef.handles.ResizableHandleKit Java Examples

The following examples show how to use org.eclipse.gef.handles.ResizableHandleKit. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: CustomResizableEditPolicyEx.java    From bonita-studio with GNU General Public License v2.0 5 votes vote down vote up
@SuppressWarnings({ "rawtypes", "unchecked" })
@Override
protected List createSelectionHandles() {
    final List list = new ArrayList();
    if (((IGraphicalEditPart) getHost()).resolveSemanticElement() instanceof Pool
            || ((IGraphicalEditPart) getHost()).resolveSemanticElement() instanceof Lane) {
        ResizableHandleKit.addMoveHandle((GraphicalEditPart) getHost(),
                list);
        if (!(((IGraphicalEditPart) getHost()).resolveSemanticElement() instanceof Lane)) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(),
                    list, PositionConstants.EAST);
            final Container container = (Container) ((IGraphicalEditPart) getHost()).resolveSemanticElement();
            //if(container.getElements().isEmpty() || !(container.getElements().get(0) instanceof Lane)){
            list.add(new CustomPoolResizeHandle((GraphicalEditPart) getHost(), PositionConstants.SOUTH));
            //	ResizableHandleKit.addHandle((GraphicalEditPart) getHost(),list, PositionConstants.SOUTH);
        } else {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(),
                    list, PositionConstants.SOUTH);
        }
        return list;
    } else {
        if (((IGraphicalEditPart) getHost()).resolveSemanticElement() instanceof SubProcessEvent) {
            for (final Object child : getHost().getChildren()) {
                if (child instanceof ShapeCompartmentEditPart) {
                    if (((ShapeCompartmentEditPart) child).getCompartmentFigure().isExpanded()) {
                        list.add(new CustomResizeHandle((GraphicalEditPart) getHost(), PositionConstants.SOUTH_EAST, false));
                        return list;
                    }
                }
            }

        }

        list.add(new CustomResizeHandle((GraphicalEditPart) getHost(), PositionConstants.SOUTH_EAST));

        return list;
    }
}
 
Example #2
Source File: NodeElementSelectionEditPolicy.java    From ermasterr with Apache License 2.0 4 votes vote down vote up
@SuppressWarnings("unchecked")
@Override
protected List createSelectionHandles() {
    final List selectedEditParts = getHost().getViewer().getSelectedEditParts();
    if (selectedEditParts.size() == 1) {
        if (!(getHost().getModel() instanceof Category)) {
            final NodeElementEditPart editPart = (NodeElementEditPart) getHost();
            editPart.reorder();
        }
    }

    final List list = new ArrayList();

    final int directions = getResizeDirections();

    if (directions == 0) {
        // NonResizableHandleKit.addHandles((GraphicalEditPart) getHost(),
        // list);

    } else if (directions != -1) {
        // 0
        list.add(new ERDiagramMoveHandle((GraphicalEditPart) getHost()));

        // 1
        if ((directions & PositionConstants.EAST) != 0) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.EAST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.EAST);
        }

        // 2
        if ((directions & PositionConstants.SOUTH_EAST) == PositionConstants.SOUTH_EAST) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH_EAST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH_EAST);
        }

        // 3
        if ((directions & PositionConstants.SOUTH) != 0) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH);
        }

        // 4
        if ((directions & PositionConstants.SOUTH_WEST) == PositionConstants.SOUTH_WEST) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH_WEST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH_WEST);
        }

        // 5
        if ((directions & PositionConstants.WEST) != 0) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.WEST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.WEST);
        }

        // 6
        if ((directions & PositionConstants.NORTH_WEST) == PositionConstants.NORTH_WEST) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH_WEST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH_WEST);
        }

        // 7
        if ((directions & PositionConstants.NORTH) != 0) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH);
        }

        // 8
        if ((directions & PositionConstants.NORTH_EAST) == PositionConstants.NORTH_EAST) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH_EAST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH_EAST);
        }

    } else {
        addHandles((GraphicalEditPart) getHost(), list);
    }

    return list;
}
 
Example #3
Source File: DiagramWalkerSelectionEditPolicy.java    From erflute with Apache License 2.0 4 votes vote down vote up
@Override
@SuppressWarnings("unchecked")
protected List<Object> createSelectionHandles() {
    final List<Object> selectedEditParts = getHost().getViewer().getSelectedEditParts();
    if (selectedEditParts.size() == 1) {
        final ViewableModel currentElement = (ViewableModel) getHost().getModel();
        if (!(currentElement instanceof Category) && !(currentElement instanceof ModelProperties)) {
            // #for_erflute maybe unneeded, already linkage between main and virtual by jflute
            //final ERDiagram diagram = ERModelUtil.getDiagram(getHost().getRoot().getContents());
            //ViewableModel targetElement = currentElement;
            //if (currentElement instanceof ERVirtualTable) {
            //    targetElement = ((ERVirtualTable) currentElement).getRawTable();
            //}
            //final List<NodeElement> nodeElementList = diagram.getDiagramContents().getContents().getNodeElementList();
            //nodeElementList.remove(targetElement);
            //nodeElementList.add((NodeElement) targetElement);
            getHost().getRoot().getContents().refresh();
        }
    }

    final List<Object> list = new ArrayList<>();
    final int directions = getResizeDirections();
    if (directions == 0) {
        // #willanalyze what is this? by jflute
        //NonResizableHandleKit.addHandles((GraphicalEditPart) getHost(), list);
    } else if (directions != -1) {
        // 0
        list.add(new ERDiagramMoveHandle((GraphicalEditPart) getHost()));

        // 1
        if ((directions & PositionConstants.EAST) != 0) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.EAST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.EAST);
        }

        // 2
        if ((directions & PositionConstants.SOUTH_EAST) == PositionConstants.SOUTH_EAST) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH_EAST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH_EAST);
        }

        // 3
        if ((directions & PositionConstants.SOUTH) != 0) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH);
        }

        // 4
        if ((directions & PositionConstants.SOUTH_WEST) == PositionConstants.SOUTH_WEST) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH_WEST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.SOUTH_WEST);
        }

        // 5
        if ((directions & PositionConstants.WEST) != 0) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.WEST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.WEST);
        }

        // 6
        if ((directions & PositionConstants.NORTH_WEST) == PositionConstants.NORTH_WEST) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH_WEST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH_WEST);
        }

        // 7
        if ((directions & PositionConstants.NORTH) != 0) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH);
        }

        // 8
        if ((directions & PositionConstants.NORTH_EAST) == PositionConstants.NORTH_EAST) {
            ResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH_EAST);
        } else {
            NonResizableHandleKit.addHandle((GraphicalEditPart) getHost(), list, PositionConstants.NORTH_EAST);
        }
    } else {
        addHandles((GraphicalEditPart) getHost(), list);
    }
    return list;
}