XmGraph 2.1 review
DownloadXmGraph is a package containing two widgets: XmGraph and XmArc
|
|
XmGraph is a package containing two widgets: XmGraph and XmArc. XmGraph is the container, and XmArc widgets are displayed on it. The widgets provide the application developer with the ability to display any group of widgets as a graph, with each widget representing a node.
We here at SESD have been using the graph widget for about a year and a half in our testing tools for Softbench. We have found several bugs in the graph widget. Some have been fixed through code changes, others we haveworked around. Here are our work arounds:
Arcs with a slope of -1 and a width of 0 are not drawn. The work around is to put a blank label on each arc.Backgound pixmaps on the graph widget do not get refreshed when
an arc is moved. This is unfortunate since you can't distinguish selected arcs from unselected arcs on a black and white display. We don't use a background pixmap on the graph widget. In cxxdev,CLL added a callback to make the selected arc wider.
The automatic scroll bars do not come and go properly. We force the scroll bars to always be present. The X server gives a bad value error if you try to create a window that is larger than ~16K pixels in either direction. This has only been a problem for us since switching to HP-UX 8.0. Under 7.0 we could make windows that were about 32K pixels and if we made our graph bigger than that the nodes would wrap around. We have changed our layout algorithm to automatically wrap our graphs to fit in the new 16K pixel limit. Our layout algorithm is separate fromthe graph widget.
The graph widget can core dump the 8.0 X server when drawing long zero width lines that are nearly vertical or nearly horizontal. Make sure you have the X server patches from this past November.
All of our code chages have been given to Thuan either directly (today) or through CLL.
What's New in This Release:
I added one more fix to Arc.c. The "if" statement allows a background pixmap to be used with the graph widget. I fixed this so the graphic front end to softstatic will be usable on a monochrome display. To see the error that this corrects run:
./sort -xrm "*XmGraph.backgroundPixmap:25_foreground" 17
Then move some of the nodes around. With this patch the old arcs are correctly erased.
XmGraph 2.1 search tags