Link.adjusting is the right idea if you want to keep the general shape, but want it to adapt to the actual relative positions of the two ports. And you might prefer go.Link.Stretch
rather than Scale
.
Still, if you want to change the behavior, you can change the properties of the Link.
For example, if you only want to have that zig-zag route for a user’s newly drawn link, you could implement a “LinkDrawn” DiagramEvent listener that modifies the Link.points the way that you want. Or override **LinkingTool.
For example, after the user has finished doing some reshaping of the link route, you could change other properties of the Link. One way is by implementing a “LinkReshaped” DiagramEvent listener. Another way is to override LinkReshapingTool.doMouseUp.