X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.g2d%2Fsrc%2Forg%2Fsimantics%2Fg2d%2Felementclass%2FRouteGraphConnectionClass.java;fp=bundles%2Forg.simantics.g2d%2Fsrc%2Forg%2Fsimantics%2Fg2d%2Felementclass%2FRouteGraphConnectionClass.java;h=bf4577b51e1666378a10b3b6a46e4412b54dab99;hp=a9015fcfb95c9918f7ebaea362d677c1517abea8;hb=72542227673047d71c3c3f281e478c1bea82eb81;hpb=28438fa467ae60dd63515be2df724c6ff9c299c9 diff --git a/bundles/org.simantics.g2d/src/org/simantics/g2d/elementclass/RouteGraphConnectionClass.java b/bundles/org.simantics.g2d/src/org/simantics/g2d/elementclass/RouteGraphConnectionClass.java index a9015fcfb..bf4577b51 100644 --- a/bundles/org.simantics.g2d/src/org/simantics/g2d/elementclass/RouteGraphConnectionClass.java +++ b/bundles/org.simantics.g2d/src/org/simantics/g2d/elementclass/RouteGraphConnectionClass.java @@ -171,6 +171,10 @@ public class RouteGraphConnectionClass { @Override public boolean pickTest(IElement e, Shape s, PickPolicy policy) { + RouteGraphNode rgn = e.getHint(KEY_RG_NODE); + if (rgn == null) { + return false; + } RouteGraph rg = getRouteGraph(e); if (rg == null) return false; @@ -185,7 +189,7 @@ public class RouteGraphConnectionClass { if (e.containsHint(KEY_USE_TOLERANCE_IN_SELECTION)) tolerance = getTolerance(e); else - tolerance = (bounds.getHeight()+bounds.getHeight()) * 0.25; + tolerance = Math.max((bounds.getHeight()+bounds.getHeight()) * 0.25, rgn.getSelectionStrokeWidth() / 2); Object node = rg.pickLine(bounds.getCenterX(), bounds.getCenterY(), tolerance); return node != null; }