Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 186939 Details for
Bug 327891
Feedback for creating connections incorrect when zoom is not 100%
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Patch comprising changes to ShapesEditor and ShapesEditorActionBarContributor as well as a fix for ShapesEditPart
Shapes_Example.txt (text/plain), 8.02 KB, created by
Alexander Nyßen
on 2011-01-17 14:03:36 EST
(
hide
)
Description:
Patch comprising changes to ShapesEditor and ShapesEditorActionBarContributor as well as a fix for ShapesEditPart
Filename:
MIME Type:
Creator:
Alexander Nyßen
Created:
2011-01-17 14:03:36 EST
Size:
8.02 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.gef.examples.shapes >Index: src/org/eclipse/gef/examples/shapes/ShapesEditor.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.gef/examples/org.eclipse.gef.examples.shapes/src/org/eclipse/gef/examples/shapes/ShapesEditor.java,v >retrieving revision 1.18 >diff -u -r1.18 ShapesEditor.java >--- src/org/eclipse/gef/examples/shapes/ShapesEditor.java 19 May 2010 20:10:16 -0000 1.18 >+++ src/org/eclipse/gef/examples/shapes/ShapesEditor.java 17 Jan 2011 18:56:16 -0000 >@@ -6,8 +6,8 @@ > * http://www.eclipse.org/legal/epl-v10.html > * > * Contributors: >- * Elias Volanakis - initial API and implementation >- *******************************************************************************/ >+ * Elias Volanakis - initial API and implementation >+ *******************************************************************************/ > package org.eclipse.gef.examples.shapes; > > import java.io.ByteArrayInputStream; >@@ -17,7 +17,9 @@ > import java.io.ObjectOutputStream; > import java.io.OutputStream; > import java.lang.reflect.InvocationTargetException; >+import java.util.ArrayList; > import java.util.EventObject; >+import java.util.List; > > import org.eclipse.swt.widgets.Composite; > import org.eclipse.swt.widgets.Control; >@@ -28,6 +30,7 @@ > import org.eclipse.core.runtime.CoreException; > import org.eclipse.core.runtime.IPath; > import org.eclipse.core.runtime.IProgressMonitor; >+import org.eclipse.jface.action.IAction; > import org.eclipse.jface.dialogs.ProgressMonitorDialog; > import org.eclipse.jface.util.TransferDropTargetListener; > import org.eclipse.ui.IActionBars; >@@ -48,15 +51,19 @@ > import org.eclipse.gef.dnd.TemplateTransferDragSourceListener; > import org.eclipse.gef.dnd.TemplateTransferDropTargetListener; > import org.eclipse.gef.editparts.ScalableFreeformRootEditPart; >+import org.eclipse.gef.editparts.ZoomManager; > import org.eclipse.gef.palette.PaletteRoot; > import org.eclipse.gef.requests.CreationFactory; > import org.eclipse.gef.requests.SimpleFactory; > import org.eclipse.gef.ui.actions.ActionRegistry; >+import org.eclipse.gef.ui.actions.ZoomInAction; >+import org.eclipse.gef.ui.actions.ZoomOutAction; > import org.eclipse.gef.ui.palette.PaletteViewer; > import org.eclipse.gef.ui.palette.PaletteViewerProvider; > import org.eclipse.gef.ui.parts.ContentOutlinePage; > import org.eclipse.gef.ui.parts.GraphicalEditorWithFlyoutPalette; > import org.eclipse.gef.ui.parts.GraphicalViewerKeyHandler; >+import org.eclipse.gef.ui.parts.ScrollingGraphicalViewer; > import org.eclipse.gef.ui.parts.TreeViewer; > > import org.eclipse.gef.examples.shapes.model.ShapesDiagram; >@@ -96,8 +103,25 @@ > */ > protected void configureGraphicalViewer() { > super.configureGraphicalViewer(); >+ ScrollingGraphicalViewer viewer = (ScrollingGraphicalViewer) getGraphicalViewer(); >+ >+ ScalableFreeformRootEditPart root = new ScalableFreeformRootEditPart(); >+ >+ List zoomLevels = new ArrayList(3); >+ zoomLevels.add(ZoomManager.FIT_ALL); >+ zoomLevels.add(ZoomManager.FIT_WIDTH); >+ zoomLevels.add(ZoomManager.FIT_HEIGHT); >+ root.getZoomManager().setZoomLevelContributions(zoomLevels); >+ >+ IAction zoomIn = new ZoomInAction(root.getZoomManager()); >+ IAction zoomOut = new ZoomOutAction(root.getZoomManager()); >+ getActionRegistry().registerAction(zoomIn); >+ getActionRegistry().registerAction(zoomOut); >+ getSite().getKeyBindingService().registerAction(zoomIn); >+ getSite().getKeyBindingService().registerAction(zoomOut); >+ >+ viewer.setRootEditPart(root); > >- GraphicalViewer viewer = getGraphicalViewer(); > viewer.setEditPartFactory(new ShapesEditPartFactory()); > viewer.setRootEditPart(new ScalableFreeformRootEditPart()); > viewer.setKeyHandler(new GraphicalViewerKeyHandler(viewer)); >@@ -253,6 +277,10 @@ > public Object getAdapter(Class type) { > if (type == IContentOutlinePage.class) > return new ShapesOutlinePage(new TreeViewer()); >+ if (type == ZoomManager.class) >+ return getGraphicalViewer().getProperty( >+ ZoomManager.class.toString()); >+ > return super.getAdapter(type); > } > >@@ -379,6 +407,13 @@ > super.dispose(); > } > >+ public Object getAdapter(Class type) { >+ if (type == ZoomManager.class) >+ return getGraphicalViewer().getProperty( >+ ZoomManager.class.toString()); >+ return null; >+ } >+ > /* > * (non-Javadoc) > * >Index: src/org/eclipse/gef/examples/shapes/ShapesEditorActionBarContributor.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.gef/examples/org.eclipse.gef.examples.shapes/src/org/eclipse/gef/examples/shapes/ShapesEditorActionBarContributor.java,v >retrieving revision 1.7 >diff -u -r1.7 ShapesEditorActionBarContributor.java >--- src/org/eclipse/gef/examples/shapes/ShapesEditorActionBarContributor.java 19 May 2010 20:10:16 -0000 1.7 >+++ src/org/eclipse/gef/examples/shapes/ShapesEditorActionBarContributor.java 17 Jan 2011 18:56:16 -0000 >@@ -3,20 +3,25 @@ > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >- * http://www.eclipse.org/legal/epl-v10.html >- * >- * Contributors: >- * Elias Volanakis - initial API and implementation >- *******************************************************************************/ >+ * http://www.eclipse.org/legal/epl-v10.html >+ * >+ * Contributors: >+ * Elias Volanakis - initial API and implementation >+ *******************************************************************************/ > package org.eclipse.gef.examples.shapes; > > import org.eclipse.jface.action.IToolBarManager; >+import org.eclipse.jface.action.Separator; > import org.eclipse.ui.actions.ActionFactory; > >+import org.eclipse.gef.editparts.ZoomManager; > import org.eclipse.gef.ui.actions.ActionBarContributor; > import org.eclipse.gef.ui.actions.DeleteRetargetAction; > import org.eclipse.gef.ui.actions.RedoRetargetAction; > import org.eclipse.gef.ui.actions.UndoRetargetAction; >+import org.eclipse.gef.ui.actions.ZoomComboContributionItem; >+import org.eclipse.gef.ui.actions.ZoomInRetargetAction; >+import org.eclipse.gef.ui.actions.ZoomOutRetargetAction; > > /** > * Contributes actions to a toolbar. This class is tied to the editor in the >@@ -35,6 +40,9 @@ > addRetargetAction(new DeleteRetargetAction()); > addRetargetAction(new UndoRetargetAction()); > addRetargetAction(new RedoRetargetAction()); >+ >+ addRetargetAction(new ZoomInRetargetAction()); >+ addRetargetAction(new ZoomOutRetargetAction()); > } > > /** >@@ -45,6 +53,12 @@ > public void contributeToToolBar(IToolBarManager toolBarManager) { > toolBarManager.add(getAction(ActionFactory.UNDO.getId())); > toolBarManager.add(getAction(ActionFactory.REDO.getId())); >+ >+ toolBarManager.add(new Separator()); >+ String[] zoomStrings = new String[] { ZoomManager.FIT_ALL, >+ ZoomManager.FIT_HEIGHT, ZoomManager.FIT_WIDTH }; >+ toolBarManager >+ .add(new ZoomComboContributionItem(getPage(), zoomStrings)); > } > > /* >Index: src/org/eclipse/gef/examples/shapes/parts/ShapeEditPart.java >=================================================================== >RCS file: /cvsroot/tools/org.eclipse.gef/examples/org.eclipse.gef.examples.shapes/src/org/eclipse/gef/examples/shapes/parts/ShapeEditPart.java,v >retrieving revision 1.9 >diff -u -r1.9 ShapeEditPart.java >--- src/org/eclipse/gef/examples/shapes/parts/ShapeEditPart.java 19 May 2010 20:10:16 -0000 1.9 >+++ src/org/eclipse/gef/examples/shapes/parts/ShapeEditPart.java 17 Jan 2011 18:56:16 -0000 >@@ -26,6 +26,7 @@ > import org.eclipse.gef.ConnectionEditPart; > import org.eclipse.gef.EditPolicy; > import org.eclipse.gef.GraphicalEditPart; >+import org.eclipse.gef.LayerConstants; > import org.eclipse.gef.NodeEditPart; > import org.eclipse.gef.Request; > import org.eclipse.gef.commands.Command; >@@ -153,6 +154,14 @@ > cmd.setNewTarget(newTarget); > return cmd; > } >+ >+ protected IFigure getFeedbackLayer() { >+ /* >+ * Fix for Bug# 327891 Feedback needs to be added to the >+ * scaled feedback layer >+ */ >+ return getLayer(LayerConstants.SCALED_FEEDBACK_LAYER); >+ } > }); > } >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 327891
:
186907
|
186908
|
186909
|
186910
| 186939