Fixed route graph splitting and diagram mapping race condition problem RouteGraphConnectionSplitter.doSplit now always splits the connection so that part #1 is always the part that stays with the existing diagram connection and part #2 contains the entities that are moved to the newly created route graph connection resource. Part #1 is the part where the "output terminal" attached to the connection lies. This simplifies and clarifies the implementation of doSplit and does not require moving diagram mapping statements around. Also, more importantly RouteGraphConnectionSplitter and FlagUtil changes ensure that diagram mapping is *not* executed in FlagUtil.join, which was the main cause of the previous corruption. Diagram mapping is only activated once for the affected diagram(s) after everything else is done. gitlab #549 gitlab #586 Change-Id: Icf7479e8e111bf663f637d6909419267cfa4eec4 (cherry picked from commit cc78488e2230fea07726acb86db3c7dd245b39ce)
Improvements to styling of connection lines gitlab #519 Change-Id: Ic08546e5aab985d6e4c365dc9877a692829b0ab2
Configurable connection crossing styles gitlab #515 Change-Id: I859ce915743c13c37be9ca13cdb0c71a2f077d87
Don't create degenerated transient RouteLines to RouteGraph This change addresses the trivial cases. If multiple bends are required we still get degenerated lines if the terminal is at the corner of the bounds. gitlab #495 Change-Id: Iac5d139ba805955c38d4b4e4906eda4795871a66 (cherry picked from commit 1aedad590d55facc132e458a578064300bac833c)
Expose bounds based line routing case calculation. Custom shaped terminals require bounds based case calculation, without routeToBounds set to true (causes problems in web editor) Change-Id: Icaadca88f37a574cf2de53f56a361684bfadba62 (cherry picked from commit 161fad9a336aa19d8dde691c213016907c412b83)
Support for random shaped terminals This commit includes changes to support awt Path2D based terminals (currently external implementation). gitlab #456 Change-Id: Id266bba00fc8dd84e62157280143a0f18c0921e0
Fixed two problems in connecting picking Tolerance was incorrectly subtracted instead of added in RouteLine picking. RouteGraphConnectionClass did not take selection stroke width into account when doing coarse picking based on bounding box. gitlab #396 Change-Id: I6dabe7297eb553f0894c4299c393bb5369b45866
Take zoom level into account when picking connections Also fixed RouteGraphConnectTool.pickNearestRouteGraphConnection which gave flawed results. Visual hints are fixed to match the performed actions. This versions always picks the closest connection if there are multiple hits. gitlab #396 Change-Id: Ib5d8be3b2c7301dae5545166c07e11c03f92a50d
Improved the positioning of issue decoration for connection elements Shows the issue decorator at a point that belongs to the connection and is closest to the center of its bounding box. Also fixed the updating of position. gitlab #372 Change-Id: Icf948997a9a2ce11a6420d83286144328af4e877
Prevent ConcurrentModificationException in StyledRouteGraphRenderer Fixed via ThreadLocal-based caching of reused data structures. gitlab #132 Change-Id: I42a3d3a160f1f7a9ed30d10cca84e1dc5b6488fa
Support for dynamic transforms for both elements and terminals Includes also minor code warning/logging cleanup. refs #7119 Change-Id: I2df8f0f0707e8adf1569679ab41a74f605ae1268
Fixed all line endings of the repository I followed the instructions in http://stackoverflow.com/a/1511273 git rm --cached -r . git config core.autocrlf true git diff --cached --name-only -z | xargs -0 git add git commit -m "..." Change-Id: I4920748df8f53c221fc2f643e991b66aea5697e0
Migrated source code from Simantics SVN