Links width

It looks like GoLayoutLayeredDigraph automatically changes links width. in my application i set the links width explicitly lets say in a kind of “IF” node - i want the true & false links to be in a specific width and when i perform the automatic layout it changes my links width. is it possible to cancel this behavior?


None of the GoLayouts change the Pen of any link, so they will not change the thickness or color of any link. They don’t change the appearance of any node, either.

Of course they do modify the route (i.e. stroke points) of links.

If you are trying to find out when in your application some code sets the Pen of some link(s), you can implement a GoDocument.Changed event handler that looks for the SubHint that is GoShape.ChangedPen and for a GoObject that is one of the links that you care about.

Hi Walter,
By saying “link width” i don’t mean the brush pen width but the distance of the link from it’s ports. back to the “IF” node in the flowgrammer sample, if you put some actions on the “true” link, the “left” link becomes to close to its ports relative to the “true” link. my wish is to keep the symmetric between the two links so both of them will have the same distance or at least a minimum distance from the ports. this will make it look more professional.
in other words i need to control the route. if its not possible than i’ll have to use some tricks like putting dummy nodes to maintain the symmetric view.


That’s hard to control, since it depends on the widths of the individual nodes, which might vary due to content.

You could try changing the ColumnSpacing property.