Article View: comp.windows.x
Article #37287Athena Form Widget weirdness
From: Mark Stern
Date: Fri, 23 Feb 1990 22:49
Date: Fri, 23 Feb 1990 22:49
42 lines
1889 bytes
1889 bytes
(I'm not sure if this is the correct newsgroup, but here goes...)
I'm experimenting with the Athena Form widget, and notice that
XawDoFormLayout doesn't seem to behave as expected. Suppose
I have a callback that relocates a button (just for kicks):
void RandomCallBack()
{
Arg arg[1];
XtSetArg(arg[0],XtNvertDistance,40);
XtSetValues(button, arg, 1); /* button is a global command Widget */
XawFormDoLayout(form, TRUE); /* form is the parent of button */
}
Nothing happens. The button doesn't move to the correct place. I look
at the code for the Form widget, and decide to reach into the internals
and set a flag (I know, a big no-no):
set_form_layout_flag (w)
Widget w;
{
register FormWidget fw = (FormWidget) w;
fw->form.needs_relayout = TRUE; /* forcibly set to TRUE */
}
If I call this routine before XawDoFormLayout, everything is peachy-keen.
Well, am I doing something wrong on the programmatic interface level?
I've checked O'Reilly Vol 5, the Athena docs, and even tried calling
XawFormDoLayout(w,FALSE) to supposedly increment an internal counter,
but the Form code doesn't seem to pay attention to it, either.
-- Mark
------------------------------------------------------------------------------
| mks@cs.brown.edu Box 1910, Dept. of Computer Science
Mark Stern | mks@browncs.bitnet Brown University
| uunet!brunix!mks Providence, RI 02912
Technical Details
Message-ID:
<30429@brunix.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!uunet!brunix!mksShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!uunet!brunix!mks From: mks@cs.brown.edu (Mark Stern) Newsgroups: comp.windows.x Subject: Athena Form Widget weirdness Message-ID: <30429@brunix.UUCP> Date: 23 Feb 90 22:49:13 GMT Sender: news@brunix.UUCP Reply-To: mks@cs.brown.edu (Mark Stern) Organization: Brown University Department of Computer Science Lines: 42