diff options
author | csalter | 2006-07-12 07:40:21 +0000 |
---|---|---|
committer | csalter | 2006-07-12 07:40:21 +0000 |
commit | 500cccadd64e16789afe06d1037191904ce14aa2 (patch) | |
tree | 654dda35af9a31e17ab64cc95c83557efe31cf37 | |
parent | 4e3c30e5c1ddfa240effaa4486f266f38a620b73 (diff) | |
download | webtools.webservices-500cccadd64e16789afe06d1037191904ce14aa2.tar.gz webtools.webservices-500cccadd64e16789afe06d1037191904ce14aa2.tar.xz webtools.webservices-500cccadd64e16789afe06d1037191904ce14aa2.zip |
146927 WSDL Editor: Design Page not keyboard navigable
-rw-r--r-- | bundles/org.eclipse.wst.wsdl.ui/src-asd/org/eclipse/wst/wsdl/ui/internal/asd/design/DesignViewGraphicalViewer.java | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src-asd/org/eclipse/wst/wsdl/ui/internal/asd/design/DesignViewGraphicalViewer.java b/bundles/org.eclipse.wst.wsdl.ui/src-asd/org/eclipse/wst/wsdl/ui/internal/asd/design/DesignViewGraphicalViewer.java index c2bf15cf7..edeb69ef5 100644 --- a/bundles/org.eclipse.wst.wsdl.ui/src-asd/org/eclipse/wst/wsdl/ui/internal/asd/design/DesignViewGraphicalViewer.java +++ b/bundles/org.eclipse.wst.wsdl.ui/src-asd/org/eclipse/wst/wsdl/ui/internal/asd/design/DesignViewGraphicalViewer.java @@ -13,7 +13,10 @@ package org.eclipse.wst.wsdl.ui.internal.asd.design; import java.util.ArrayList; import java.util.Iterator; import java.util.List; +import org.eclipse.draw2d.FigureCanvas; import org.eclipse.draw2d.PositionConstants; +import org.eclipse.draw2d.geometry.Point; +import org.eclipse.draw2d.geometry.Rectangle; import org.eclipse.gef.EditPart; import org.eclipse.gef.GraphicalEditPart; import org.eclipse.gef.GraphicalViewer; @@ -132,9 +135,36 @@ public class DesignViewGraphicalViewer extends ScrollingGraphicalViewer implemen } } } + switch (event.keyCode) + { + case SWT.PAGE_DOWN: + if (scrollPage(event, PositionConstants.SOUTH)) + return true; + break; + case SWT.PAGE_UP: + if (scrollPage(event, PositionConstants.NORTH)) + return true; + } return super.keyPressed(event); } - } + + private boolean scrollPage(KeyEvent event, int direction) + { + if (!(getViewer().getControl() instanceof FigureCanvas)) + return false; + FigureCanvas figCanvas = (FigureCanvas)getViewer().getControl(); + Point loc = figCanvas.getViewport().getViewLocation(); + Rectangle area = figCanvas.getViewport().getClientArea(Rectangle.SINGLETON).scale(.8); + if (direction == PositionConstants.NORTH) + { + figCanvas.scrollToY(loc.y - area.height); + } + else + { + figCanvas.scrollToY(loc.y + area.height); + } + return true; + }} /* * We need to convert from edit part selections to model object selections @@ -204,4 +234,4 @@ public class DesignViewGraphicalViewer extends ScrollingGraphicalViewer implemen notifyListeners(newEvent); } } - }
\ No newline at end of file +}
\ No newline at end of file |