@Override public Object getAdapter(Class key) { if (key == SnapToHelper.class) { List<SnapToHelper> helpers = new ArrayList<SnapToHelper>(); if (Boolean.TRUE.equals(getViewer().getProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED))) { helpers.add(new SnapToGeometry(this)); } if (Boolean.TRUE.equals(getViewer().getProperty(SnapToGrid.PROPERTY_GRID_ENABLED))) { helpers.add(new SnapToGrid(this)); } if(helpers.size()==0) { return null; } else { return new CompoundSnapToHelper(helpers.toArray(new SnapToHelper[0])); } } if (key == IPropertySource.class) { return new GW4EGraphEditPartProperties(this); } return null; }
/** * {@inheritDoc} */ @Override protected void initializeGraphicalViewer() { final GraphicalViewer viewer = getGraphicalViewer(); viewer.setEditPartFactory(editPartFactory); initViewerAction(viewer); initDragAndDrop(viewer); viewer.setProperty(MouseWheelHandler.KeyGenerator.getKey(SWT.MOD1), MouseWheelZoomHandler.SINGLETON); viewer.setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, true); viewer.setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, true); viewer.setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, true); final MenuManager menuMgr = new ERDiagramPopupMenuManager(getActionRegistry(), diagram); extensionLoader.addERDiagramPopupMenu(menuMgr, getActionRegistry()); viewer.setContextMenu(menuMgr); viewer.setContents(diagram); outlineMenuMgr = new ERDiagramOutlinePopupMenuManager(diagram, getActionRegistry(), outlinePage.getOutlineActionRegistory(), outlinePage.getViewer()); }
/** * {@inheritDoc} */ @Override protected void initializeGraphicalViewer() { GraphicalViewer viewer = this.getGraphicalViewer(); viewer.setEditPartFactory(editPartFactory); this.initViewerAction(viewer); this.initDragAndDrop(viewer); viewer.setProperty(MouseWheelHandler.KeyGenerator.getKey(SWT.MOD1), MouseWheelZoomHandler.SINGLETON); viewer.setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, true); viewer.setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, true); viewer.setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, true); MenuManager menuMgr = new ERDiagramPopupMenuManager( this.getActionRegistry(), this.diagram, this); this.extensionLoader.addERDiagramPopupMenu(menuMgr, this.getActionRegistry()); viewer.setContextMenu(menuMgr); viewer.setContents(diagram); }
/** * @see org.eclipse.gef.EditPolicy#showTargetFeedback(org.eclipse.gef.Request) */ public void showTargetFeedback(Request req) { if (req.getType().equals(REQ_MOVE) || req.getType().equals(REQ_RESIZE) || req.getType().equals(REQ_CLONE) || req.getType().equals(REQ_ADD) || req.getType().equals(REQ_CREATE)) { Integer value; value = (Integer) req.getExtendedData().get(SnapToGeometry.KEY_WEST_ANCHOR); highlightGuide(value, ColorConstants.lightBlue, 0); value = (Integer) req.getExtendedData().get(SnapToGeometry.KEY_NORTH_ANCHOR); highlightGuide(value, ColorConstants.lightBlue, 1); value = (Integer) req.getExtendedData().get(SnapToGeometry.KEY_EAST_ANCHOR); highlightGuide(value, ColorConstants.lightBlue, 2); value = (Integer) req.getExtendedData().get(SnapToGeometry.KEY_SOUTH_ANCHOR); highlightGuide(value, ColorConstants.lightBlue, 3); value = (Integer) req.getExtendedData().get(SnapToGuides.KEY_VERTICAL_GUIDE); highlightGuide(value, ColorConstants.red, 4); value = (Integer) req.getExtendedData().get(SnapToGuides.KEY_HORIZONTAL_GUIDE); highlightGuide(value, ColorConstants.red, 5); } }
@Override protected void initializeGraphicalViewer() { final GraphicalViewer viewer = getGraphicalViewer(); viewer.setEditPartFactory(editPartFactory); initViewerAction(viewer); initDragAndDrop(viewer); viewer.setProperty(MouseWheelHandler.KeyGenerator.getKey(SWT.MOD1), MouseWheelZoomHandler.SINGLETON); viewer.setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, true); viewer.setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, true); viewer.setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, true); prepareERDiagramPopupMenu(viewer); prepareERDiagramOutlinePopupMenu(); this.gotoMaker = new ERDiagramGotoMarker(this); }
/** * {@inheritDoc} In this {@link EditPart} this method add adapter types for creating a * {@link SnapToHelper} when the editor is in snapping mode (either to grid or to shapes). */ @Override public Object getAdapter(final Class key) { if (key == SnapToHelper.class) { List<SnapToHelper> helpers = new ArrayList<SnapToHelper>(); if (Boolean.TRUE.equals(getViewer().getProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED))) { helpers.add(new SnapToGeometry(this)); } if (Boolean.TRUE.equals(getViewer().getProperty(SnapToGrid.PROPERTY_GRID_ENABLED))) { helpers.add(new SnapToGrid(this)); } if (helpers.size() == 0) { return null; } else { return new CompoundSnapToHelper(helpers.toArray(new SnapToHelper[0])); } } return super.getAdapter(key); }
@SuppressWarnings("rawtypes") @Override public Object getAdapter(Class key) { if (IPropertySource.class == key) { return getPropertySource(); } if (key == SnapToHelper.class) { List<SnapToHelper> helpers = new ArrayList<SnapToHelper>(); if (Boolean.TRUE.equals(getViewer().getProperty( SnapToGeometry.PROPERTY_SNAP_ENABLED))) { helpers.add(new SnapToGeometry(this)); } if (Boolean.TRUE.equals(getViewer().getProperty( SnapToGrid.PROPERTY_GRID_ENABLED))) { helpers.add(new SnapToGrid(this)); } if (helpers.size() == 0) { return null; } else { return new CompoundSnapToHelper( helpers.toArray(new SnapToHelper[0])); } } return super.getAdapter(key); }
/** * 初始化View */ @Override protected void initializeGraphicalViewer() { GraphicalViewer viewer = this.getGraphicalViewer(); viewer.setEditPartFactory(editPartFactory); this.initViewerAction(viewer); super.getGraphicalViewer().addDropTargetListener( new DiagramTemplateTransferDropTargetListener(super.getGraphicalViewer())); viewer.setProperty(MouseWheelHandler.KeyGenerator.getKey(SWT.MOD1), MouseWheelZoomHandler.SINGLETON); viewer.setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, true); viewer.setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, true); viewer.setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, true); GraphicalViewer view=getGraphicalViewer(); viewer.setContents(diagram); }
public Object getAdapter(Class adapter) { if (adapter == SnapToHelper.class) { List snapStrategies = new ArrayList(); Boolean val = (Boolean) getViewer() .getProperty(RulerProvider.PROPERTY_RULER_VISIBILITY); if (val != null && val.booleanValue()) snapStrategies.add(new SnapToGuides(this)); val = (Boolean) getViewer().getProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED); if (val != null && val.booleanValue()) snapStrategies.add(new SnapToGeometry(this)); val = (Boolean) getViewer().getProperty(SnapToGrid.PROPERTY_GRID_ENABLED); if (val != null && val.booleanValue()) snapStrategies.add(new SnapToGrid(this)); if (snapStrategies.size() == 0) return null; if (snapStrategies.size() == 1) return snapStrategies.get(0); SnapToHelper ss[] = new SnapToHelper[snapStrategies.size()]; for (int i = 0; i < snapStrategies.size(); i++) ss[i] = (SnapToHelper) snapStrategies.get(i); return new CompoundSnapToHelper(ss); } return super.getAdapter(adapter); }
@Override protected void initializeGraphicalViewer() { super.initializePaletteViewer(); super.getGraphicalViewer().setContents(this.diagram); super.getGraphicalViewer().addDropTargetListener( new DiagramTemplateTransferDropTargetListener(super .getGraphicalViewer())); super.getGraphicalViewer().setProperty( SnapToGrid.PROPERTY_GRID_ENABLED, true); super.getGraphicalViewer().setProperty( SnapToGrid.PROPERTY_GRID_VISIBLE, true); super.getGraphicalViewer().setProperty( SnapToGeometry.PROPERTY_SNAP_ENABLED, true); }
@Override public Object getAdapter(final Class key) { if (key == SnapToHelper.class) { final List<SnapToHelper> helpers = new ArrayList<SnapToHelper>(); helpers.add(new SnapToGeometry(this)); if (Boolean.TRUE.equals(getViewer().getProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED))) { helpers.add(new SnapToGrid(this)); } // if (Boolean.TRUE.equals(getViewer().getProperty( // SnapToGrid.PROPERTY_GRID_ENABLED))) { // helpers.add(new SnapToGrid(this)); // } if (helpers.size() == 0) { return null; } else { return new CompoundSnapToHelper(helpers.toArray(new SnapToHelper[0])); } } return super.getAdapter(key); }
@Override public Object getAdapter(Class key) { if (key == SnapToHelper.class) { List<SnapToHelper> helpers = new ArrayList<SnapToHelper>(); helpers.add(new SnapToGeometry(this)); if (Boolean.TRUE.equals(getViewer().getProperty( SnapToGeometry.PROPERTY_SNAP_ENABLED))) { helpers.add(new SnapToGrid(this)); } // if (Boolean.TRUE.equals(getViewer().getProperty( // SnapToGrid.PROPERTY_GRID_ENABLED))) { // helpers.add(new SnapToGrid(this)); // } if (helpers.size() == 0) { return null; } else { return new CompoundSnapToHelper( helpers.toArray(new SnapToHelper[0])); } } return super.getAdapter(key); }
/** * @see org.eclipse.gef.EditPolicy#showTargetFeedback(org.eclipse.gef.Request) */ public void showTargetFeedback(Request req) { if (req.getType().equals(REQ_MOVE) || req.getType().equals(REQ_RESIZE) || req.getType().equals(REQ_CLONE) || req.getType().equals(REQ_ADD) || req.getType().equals(REQ_CREATE)) { Integer value; value = (Integer) req.getExtendedData().get( SnapToGeometry.KEY_WEST_ANCHOR); highlightGuide(value, ColorConstants.blue, 0); value = (Integer) req.getExtendedData().get( SnapToGeometry.KEY_NORTH_ANCHOR); highlightGuide(value, ColorConstants.blue, 1); value = (Integer) req.getExtendedData().get( SnapToGeometry.KEY_EAST_ANCHOR); highlightGuide(value, ColorConstants.blue, 2); value = (Integer) req.getExtendedData().get( SnapToGeometry.KEY_SOUTH_ANCHOR); highlightGuide(value, ColorConstants.blue, 3); value = (Integer) req.getExtendedData().get( SnapToGuides.KEY_VERTICAL_GUIDE); highlightGuide(value, ColorConstants.blue, 4); value = (Integer) req.getExtendedData().get( SnapToGuides.KEY_HORIZONTAL_GUIDE); highlightGuide(value, ColorConstants.blue, 5); } }
public Object getAdapter(Class adapter) { if (adapter == SnapToHelper.class) { List<SnapToHelper> snapStrategies = new ArrayList<SnapToHelper>(); Boolean val = (Boolean)getViewer().getProperty(RulerProvider.PROPERTY_RULER_VISIBILITY); /*if (val != null && val.booleanValue())*/ //snapStrategies.add(new SnapToGuides((GraphicalEditPart) this.getParent())); val = (Boolean)getViewer().getProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED); //if (val != null && val.booleanValue()) snapStrategies.add(new SnapToGeometry(this){ @Override protected List generateSnapPartsList(List exclusions) { List children = super.generateSnapPartsList(exclusions); children.add(container);//add snapToParent edges behaviour return children; } }); val = (Boolean)getViewer().getProperty(SnapToGrid.PROPERTY_GRID_ENABLED); if (val != null && val.booleanValue()) snapStrategies.add(new SnapToGrid(this)); if (snapStrategies.size() == 0) return null; if (snapStrategies.size() == 1) return snapStrategies.get(0); SnapToHelper ss[] = new SnapToHelper[snapStrategies.size()]; for (int i = 0; i < snapStrategies.size(); i++) ss[i] = (SnapToHelper)snapStrategies.get(i); return new CompoundSnapToHelper(ss); } return super.getAdapter(adapter); }
/** * @see org.eclipse.gef.EditPolicy#showTargetFeedback(org.eclipse.gef.Request) */ public void showTargetFeedback(Request req) { if (req.getType() == null) return; if (req.getType().equals(REQ_MOVE) || req.getType().equals(REQ_RESIZE) || req.getType().equals(REQ_CLONE) || req.getType().equals(REQ_ADD) || req.getType().equals(REQ_CREATE)) { Integer value; //System.out.println(req.getClass().toString()+ " " + req.getType().toString()); value = (Integer) req.getExtendedData().get(SnapToGeometry.KEY_WEST_ANCHOR); highlightGuide(value, ColorConstants.blue, 0); value = (Integer) req.getExtendedData().get(SnapToGeometry.KEY_NORTH_ANCHOR); highlightGuide(value, ColorConstants.blue, 1); value = (Integer) req.getExtendedData().get(SnapToGeometry.KEY_EAST_ANCHOR); highlightGuide(value, ColorConstants.blue, 2); value = (Integer) req.getExtendedData().get(SnapToGeometry.KEY_SOUTH_ANCHOR); highlightGuide(value, ColorConstants.blue, 3); value = (Integer) req.getExtendedData().get(SnapToGuides.KEY_VERTICAL_GUIDE); highlightGuide(value, ColorConstants.blue, 4); value = (Integer) req.getExtendedData().get(SnapToGuides.KEY_HORIZONTAL_GUIDE); highlightGuide(value, ColorConstants.blue, 5); } }
/** * {@inheritDoc} */ @Override protected void initializeGraphicalViewer() { GraphicalViewer viewer = this.getGraphicalViewer(); viewer.setEditPartFactory(editPartFactory); this.initViewerAction(viewer); this.initDragAndDrop(viewer); viewer.setProperty(MouseWheelHandler.KeyGenerator.getKey(SWT.MOD1), MouseWheelZoomHandler.SINGLETON); viewer.setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, true); viewer.setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, true); viewer.setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, true); MenuManager menuMgr = new ERDiagramPopupMenuManager( this.getActionRegistry(), this.diagram); this.extensionLoader.addERDiagramPopupMenu(menuMgr, this.getActionRegistry()); viewer.setContextMenu(menuMgr); viewer.setContents(diagram); this.outlineMenuMgr = new ERDiagramOutlinePopupMenuManager( this.diagram, this.getActionRegistry(), this.outlinePage.getOutlineActionRegistory(), this.outlinePage.getViewer()); }
/** * @see org.eclipse.gef.EditPolicy#showTargetFeedback(org.eclipse.gef.Request) */ public void showTargetFeedback(Request req) { if (req.getType().equals(REQ_MOVE) || req.getType().equals(REQ_RESIZE) || req.getType().equals(REQ_CLONE) || req.getType().equals(REQ_ADD) || req.getType().equals(REQ_CREATE)) { Integer value; value = (Integer) req.getExtendedData().get( SnapToGeometry.KEY_WEST_ANCHOR); highlightGuide(value, ColorConstants.blue, 0); value = (Integer) req.getExtendedData().get( SnapToGeometry.KEY_NORTH_ANCHOR); highlightGuide(value, ColorConstants.blue, 1); value = (Integer) req.getExtendedData().get( SnapToGeometry.KEY_EAST_ANCHOR); highlightGuide(value, ColorConstants.blue, 2); value = (Integer) req.getExtendedData().get( SnapToGeometry.KEY_SOUTH_ANCHOR); highlightGuide(value, ColorConstants.blue, 3); value = (Integer) req.getExtendedData().get( SnapToGuides.KEY_VERTICAL_GUIDE); highlightGuide(value, ColorConstants.red, 4); value = (Integer) req.getExtendedData().get( SnapToGuides.KEY_HORIZONTAL_GUIDE); highlightGuide(value, ColorConstants.red, 5); } }
/** * @see org.eclipse.jface.action.IAction#isChecked() */ public boolean isChecked() { Boolean val = (Boolean) diagramViewer .getProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED); if (val != null) return val.booleanValue(); return false; }
@Override protected void initializeGraphicalViewer() { String result; try { IFile file = ((IFileEditorInput) getEditorInput()).getFile(); this.setPartName(file.getName()); if (!file.isSynchronized(IResource.DEPTH_ONE)) { file.refreshLocal(IResource.DEPTH_ONE, new NullProgressMonitor()); } InputStream in = file.getContents(); result = getStreamString(in); result = replacenbsp(result); if (!result.equals("")) { DiagramXmlReader reader = new DiagramXmlReader(); Diagram newdia = reader.parseDiagram(result); this.diagram = newdia; } else { PageModel page = new PageModel(); page.setRectangle(new Rectangle(10, 20, 400, 400)); diagram = new Diagram(); diagram.addBlockModel(page); } } catch (Exception e) { e.printStackTrace(); return; } super.initializePaletteViewer(); super.getGraphicalViewer().setContents(this.diagram); super.getGraphicalViewer().addDropTargetListener( new DiagramTemplateTransferDropTargetListener(super.getGraphicalViewer())); super.getGraphicalViewer().addDropTargetListener( new ColumnModelTransferDropTargetListener(super.getGraphicalViewer())); super.getGraphicalViewer().setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, true); super.getGraphicalViewer().setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, true); super.getGraphicalViewer().setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, true); }
@Override public Object getAdapter(Class adapter) { if (adapter == SnapToHelper.class) { List snapStrategies = new ArrayList(); Boolean val = (Boolean) getViewer() .getProperty(RulerProvider.PROPERTY_RULER_VISIBILITY); if (val != null && val.booleanValue()) snapStrategies.add(new SnapToGuides(this)); val = (Boolean) getViewer().getProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED); if (val != null && val.booleanValue()) snapStrategies.add(new SnapToGeometry(this)); val = (Boolean) getViewer().getProperty(SnapToGrid.PROPERTY_GRID_ENABLED); if (val != null && val.booleanValue()) snapStrategies.add(new SnapToGrid(this)); if (snapStrategies.size() == 0) return null; if (snapStrategies.size() == 1) return snapStrategies.get(0); SnapToHelper ss[] = new SnapToHelper[snapStrategies.size()]; for (int i = 0; i < snapStrategies.size(); i++) ss[i] = (SnapToHelper) snapStrategies.get(i); return new CompoundSnapToHelper(ss); } return super.getAdapter(adapter); }
/** * Override this to enforce that connections can also be selected with a mouse drag marquee selection. */ @Override protected void configureGraphicalViewer() { ScrollingGraphicalViewer viewer = (ScrollingGraphicalViewer) getDiagramContainer().getGraphicalViewer(); ScalableRootEditPartAnimated rootEditPart = new ScalableRootEditPartAnimated(viewer, getConfigurationProvider()) { @Override protected GridLayer createGridLayer() { return new org.eclipse.graphiti.ui.internal.util.draw2d.GridLayer((IConfigurationProviderInternal) getConfigurationProvider()); } @Override public DragTracker getDragTracker(Request req) { GFMarqueeDragTracker trckr = new GFMarqueeDragTracker(this); trckr.setMarqueeBehavior(GFMarqueeSelectionTool.BEHAVIOR_NODES_AND_CONNECTIONS); return trckr; } }; // configure ZoomManager viewer.setRootEditPart(rootEditPart); // support // animation of the zoom ZoomManager zoomManager = rootEditPart.getZoomManager(); List<String> zoomLevels = new ArrayList<>(3); zoomLevels.add(ZoomManager.FIT_ALL); zoomLevels.add(ZoomManager.FIT_WIDTH); zoomLevels.add(ZoomManager.FIT_HEIGHT); zoomManager.setZoomLevelContributions(zoomLevels); IToolBehaviorProvider toolBehaviorProvider = getConfigurationProvider().getDiagramTypeProvider().getCurrentToolBehaviorProvider(); zoomManager.setZoomLevels(toolBehaviorProvider.getZoomLevels()); this.initActionRegistry(zoomManager); // set the keyhandler. viewer.setKeyHandler((new GraphicalViewerKeyHandler(viewer)).setParent(getCommonKeyHandler())); // settings for grid and guides Diagram diagram = getConfigurationProvider().getDiagram(); boolean snapToGrid = diagram.isSnapToGrid(); int horizontalGridUnit = diagram.getGridUnit(); int verticalGridUnit = diagram.getVerticalGridUnit(); if (verticalGridUnit == -1) { // No vertical grid unit set (or old diagram before 0.8): use // vertical grid unit verticalGridUnit = horizontalGridUnit; } boolean gridVisisble = (horizontalGridUnit > 0) && (verticalGridUnit > 0); viewer.setProperty(SnapToGrid.PROPERTY_GRID_VISIBLE, new Boolean(gridVisisble)); viewer.setProperty(SnapToGrid.PROPERTY_GRID_ENABLED, new Boolean(snapToGrid)); viewer.setProperty(SnapToGrid.PROPERTY_GRID_SPACING, new Dimension(horizontalGridUnit, verticalGridUnit)); viewer.setProperty(SnapToGeometry.PROPERTY_SNAP_ENABLED, toolBehaviorProvider.isShowGuides()); // context button manager IConfigurationProviderInternal configurationProvider = (IConfigurationProviderInternal) this.getConfigurationProvider(); configurationProvider.setContextButtonManager(new ContextButtonManagerForPad(this, configurationProvider.getResourceRegistry())); }