X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.district.network.ui%2Fsrc%2Forg%2Fsimantics%2Fdistrict%2Fnetwork%2Fui%2FDistrictDiagramViewer.java;h=9d07f0378a18e69fd9252200b06a4000b3ff2233;hb=refs%2Fchanges%2F65%2F2165%2F1;hp=57480180f2e44807f5319ff878f1a93dea0f8061;hpb=16ee01dc5a40981c58fd5b478b89552e5814e8bb;p=simantics%2Fdistrict.git diff --git a/org.simantics.district.network.ui/src/org/simantics/district/network/ui/DistrictDiagramViewer.java b/org.simantics.district.network.ui/src/org/simantics/district/network/ui/DistrictDiagramViewer.java index 57480180..9d07f037 100644 --- a/org.simantics.district.network.ui/src/org/simantics/district/network/ui/DistrictDiagramViewer.java +++ b/org.simantics.district.network.ui/src/org/simantics/district/network/ui/DistrictDiagramViewer.java @@ -3,6 +3,7 @@ package org.simantics.district.network.ui; import java.util.concurrent.TimeUnit; import org.simantics.district.network.ui.participants.DNPointerInteractor; +import org.simantics.district.network.ui.participants.MapRulerPainter; import org.simantics.g2d.canvas.ICanvasContext; import org.simantics.g2d.canvas.impl.CanvasContext; import org.simantics.g2d.diagram.handler.PickRequest.PickFilter; @@ -10,8 +11,12 @@ import org.simantics.g2d.diagram.participant.DelayedBatchElementPainter; import org.simantics.g2d.diagram.participant.ElementPainter; import org.simantics.g2d.diagram.participant.Selection; import org.simantics.g2d.diagram.participant.ZOrderHandler; +import org.simantics.g2d.participant.BackgroundPainter; +import org.simantics.g2d.participant.GridPainter; import org.simantics.g2d.participant.PanZoomRotateHandler; import org.simantics.g2d.participant.RenderingQualityInteractor; +import org.simantics.g2d.participant.ZoomToAreaHandler; +import org.simantics.maps.MapScalingTransform; import org.simantics.maps.eclipse.MapPainter; import org.simantics.modeling.ui.diagramEditor.DiagramViewer; import org.simantics.utils.datastructures.hints.IHintContext; @@ -25,9 +30,9 @@ public class DistrictDiagramViewer extends DiagramViewer { ctx.add(new ElementPainter()); ctx.add(new DNPointerInteractor()); - ctx.add(new MapPainter(100000)); + ctx.add(new MapPainter(MapScalingTransform.INSTANCE)); - ctx.add(new NetworkDrawingParticipant()); + ctx.add(new NetworkDrawingParticipant(MapScalingTransform.INSTANCE)); } protected String getPopupId() { @@ -38,8 +43,8 @@ public class DistrictDiagramViewer extends DiagramViewer { public void initializeCanvasContext(CanvasContext ctx) { super.initializeCanvasContext(ctx); IHintContext h = ctx.getDefaultHintContext(); - h.setHint(PanZoomRotateHandler.KEY_ZOOM_IN_LIMIT, 10000.0); - h.setHint(PanZoomRotateHandler.KEY_ZOOM_OUT_LIMIT, 0.01); + h.setHint(PanZoomRotateHandler.KEY_ZOOM_IN_LIMIT, 1000000.0); + h.setHint(PanZoomRotateHandler.KEY_ZOOM_OUT_LIMIT, 0.003); } @Override @@ -47,4 +52,20 @@ public class DistrictDiagramViewer extends DiagramViewer { ctx.add(new RenderingQualityInteractor()); ctx.add(new DelayedBatchElementPainter(PickFilter.FILTER_MONITORS, 500, TimeUnit.MILLISECONDS)); } + + @Override + protected void addGridRulerBackgroundParticipants(CanvasContext ctx) { + ctx.add(new GridPainter()); + ctx.add(new MapRulerPainter()); + ctx.add(new BackgroundPainter()); + } + + protected void addViewManipulationParticipants(CanvasContext ctx) { + ctx.add(new DistrictPanZoomRotateHandler()); + //ctx.add(new MousePanZoomInteractor()); + //ctx.add(new MultitouchPanZoomRotateInteractor()); + // ctx.add( new OrientationRestorer() ); + ctx.add(new ZoomToAreaHandler()); + } + }