I have inherited a gonode and manually added a Port, Top and bottom Labels and an centered Icon. The port itself is wider and taller then the contents with a boarder around it.
Is that the whole class?
Sorry no - just the new override to show how i created the go objects and added them.
ah, I “get” this a little more now. You’re saying as the animation of the forced layout happens, the parts of the nodes “wiggle” with respect to each other as the node moves?
Yes, there shouldn’t be any flicker, that may be the eval marker.
Is this basically what your node looks like? (I copied your code, but didn’t add an icon.)
The GoLayout algorithms just work on documents – they don’t know anything about GoViews, really. If they did try to assign integral coordinate values to nodes, what would happen when the user zoomed in or out a bit?
After all, there might be more than one GoView displaying the same GoDocument whose nodes are being moved about. Each GoView can have its own DocScale and DocPosition (i.e. scale and translation), so it’s impossible to assign a position to any node and expect it to have integral coordinate screen points on all of the views.
Finally, Windows is well known for having idiosyncratic text rendering. See http://www.nwoods.com/forum/forum_posts.asp?TID=2132.
Walter - From the near 4000 posts on the forum I presume your one of the developers and Questioning you is probably useless since you’ve had your head in the code for years.
Another thing you could try is changing how GoView draws text. Try setting GoView.TextRenderingHint to AntiAlias. I think the default value is ClearTypeGridFit. The TextRenderingHint values that do grid fitting are probably what is bothering you.
There are four other GoView properties that also affect rendering of lines and of images: SmoothingMode, InterpolationMode, CompositingQuality, and PixelOffsetMode. All five properties just correspond to GDI+ graphics settings that GoView specifies when it paints.
The GoLayout algorithms don’t heed any GoGrids that are in the document. Naturally they don’t heed any GoGrids that are in the view either, such as the GoView.Grid.