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=68b7aa791407b2efdfa68a2065a919baf4490fef;hb=03bf22e6e4d5bc912d4ec70c1956b1c804b837d3;hp=f0c76954fb954cf91c46a46c2fdd9c71ea400e2c;hpb=0e8411115bcfa632f880953c7e49c5389de28a31;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 f0c76954..68b7aa79 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 @@ -1,6 +1,7 @@ package org.simantics.district.network.ui; import java.awt.Color; +import java.awt.geom.AffineTransform; import java.util.concurrent.TimeUnit; import java.util.function.Consumer; import java.util.function.Supplier; @@ -14,6 +15,7 @@ import org.simantics.db.procedure.Listener; import org.simantics.diagram.ui.DiagramModelHints; import org.simantics.district.network.DistrictNetworkUtil; import org.simantics.district.network.ui.participants.DNPointerInteractor; +import org.simantics.district.network.ui.participants.ElevationServerParticipant; import org.simantics.district.network.ui.participants.MapRulerPainter; import org.simantics.g2d.canvas.ICanvasContext; import org.simantics.g2d.canvas.impl.CanvasContext; @@ -26,6 +28,7 @@ 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.TransformUtil; import org.simantics.g2d.participant.ZoomToAreaHandler; import org.simantics.maps.MapScalingTransform; import org.simantics.maps.eclipse.MapPainter; @@ -39,7 +42,8 @@ import org.slf4j.LoggerFactory; public class DistrictDiagramViewer extends DiagramViewer { - private static final Logger LOGGER = LoggerFactory.getLogger(DistrictDiagramViewer.class); + @SuppressWarnings("unused") + private static final Logger LOGGER = LoggerFactory.getLogger(DistrictDiagramViewer.class); @Override protected void addDiagramParticipants(ICanvasContext ctx) { @@ -48,9 +52,11 @@ public class DistrictDiagramViewer extends DiagramViewer { ctx.add(new ElementPainter()); ctx.add(new DNPointerInteractor()); - ctx.add(new MapPainter(MapScalingTransform.INSTANCE)); + AffineTransform tr = new AffineTransform(MapScalingTransform.INSTANCE); + ctx.add(new MapPainter(tr)); - ctx.add(new NetworkDrawingParticipant(MapScalingTransform.INSTANCE)); + ctx.add(new NetworkDrawingParticipant(tr)); + ctx.add(new ElevationServerParticipant(tr)); } protected String getPopupId() { @@ -80,6 +86,11 @@ public class DistrictDiagramViewer extends DiagramViewer { } protected void addViewManipulationParticipants(CanvasContext ctx) { + // Let's replace with our special util + TransformUtil util = ctx.getAtMostOneItemOfClass(TransformUtil.class); + if (util != null) + ctx.remove(util); + ctx.add(new DistrictTransformUtil()); ctx.add(new DistrictPanZoomRotateHandler()); //ctx.add(new MousePanZoomInteractor()); //ctx.add(new MultitouchPanZoomRotateInteractor());