swick@ATHENA.MIT.EDU (Ralph R. Swick) (08/23/88)
Date: 22 Aug 88 21:50:09 GMT
From: sgi!daisy!klee@bloom-beacon.mit.edu (Ken Lee)
[...]
on a Sun 386i running SunOS 4.0.
1. In my programs, thumbing scrollbars with the middle button (incorrectly)
always returns 0 percentage.
There is a broken interface defined for the scrollbarWidget callback
procedures; the call_data argument is defined to be a float, which C
insists upon promoting to a double. When the Intrinsics pass this
around as a caddr_t, you loose bits which may have been important to
you. The workaround is to do an XtGetValues(XtNtop) within the
callback.
2. I can't get XGetValues to work for strings.
Common problem. A String resource is defined to be a pointer.
What you get back from XtGetValues is the pointer; you have to
do the copy yourself, if you want it.
3. viewport widgets seem to ignore size arguments.
Only before they're realized. The actual semantics are:
size = IsRealized ? current_size : child_size
If you want to enforce a fixed size on the Viewport, you'll have
to rely on the parent to do so, or do an XtSetValues after realizing.
One might claim that this is a bug, but the Intrinsics' philosophy
of geometry management is to localize enforcement of all geometry
constraints in the parent.