@lfrederic wrote:
Hi,
We have implemented a diagram that is fairly feature-rich, especially when it comes to links. Among other things, we let the user select whether to use regular, curvy or orthogonal links. We have also added the PolylineLinkingTool to allow the user to create new segmented links.
Already, we hit some issues trying to integrate these tools and features. As an example, curvy links (i.e. curve: go.Link.Bezier) appear to require the fromSpot/toSpot value to be None whereas orthogonal links sometimes exhibit weird behavior unless the fromSpot/toSpot is a Side.
Similarly, the PolylineLinkingTool gives the best result for a fromSpot/toSpot value of None. Side values have the effect that the created link's endpoints' location seem to be recalculated instead of respecting the exact spots set by the user.
Still, we found satisfactory workarounds for these issues.
Now, we want to add the LinkShiftingTool to our diagram, in order to allow the user to set the location of link endpoints. The problem here is that this tool will only activate (and work as expected) for links whose fromSpot/toSpot values are either Sides or specific spots.
Given this requirement, we struggle to find a way to define our link template (and diagram as a whole) in a way that would satisfy the requirements for curvy links, orthogonal links, the PolylineLinkingTool and the LinkShiftingTool. It seems that whatever fromSpot/toSpot value we set on the link template, some things are going to work and some things aren't.
Are the various diagram features and extension tools meant to work with each other, or are they only supposed to work in isolation as in the various example diagrams you provide? If the former is true, could you provide some example that is close enough to what we're trying to achieve?
Posts: 2
Participants: 2