# To subscribers of the xforms list from Angus Leeming <angus.leeming@btopenworld.com> :
I'm currently doing my best to move the compilation process from Imakefile to
automake/autoconf. I've got a lot further than I thought I would but (JMarc
beware!) I do have a couple of questions for later.
It seems to me that the current Enemy No 1 is xforms behaviour when a dialog
is resized. I think that xforms' split of the work between ConfigureNotify
and Expose XEvents is flawed. I suggest that all the real work should be done
in response to an Expose XEvent but that ConfigureNotify should be used to
flag that work should be done.
Ie, currently we have:
ConfigureNotify:
if (!st_xev.xconfigure.send_event)
scale_form(form, ...);
break;
Expose
fl_handle_form(form, FL_DRAW, ...);
break;
I propose:
ConfigureNotify:
if (!st_xev.xconfigure.send_event)
form->resize_required = 1;
break;
Expose
if (form->resize_required) {
scale_form(form, ...);
form->resize_required = 0;
}
fl_handle_form(form, FL_DRAW, ...);
break;
This will, of course, break binary compatability as it gives FL_FORM a new
member variable. It does, however, mimimise the amount of wasted effort
performed by xforms. scale_form is an expensive function and this effort is
wasted if there are multiple ConfigureNotify XEvents before an Expose.
I'll try it out eventually, but first I'll try and get automake/autoconf up
and running. Meanwhile, comments and explanations of why the current way is
best are very welcome!
Angus
_________________________________________________
To unsubscribe, send the message "unsubscribe" to
xforms-request@bob.usuhs.mil or see
http://bob.usuhs.mil/mailserv/xforms.html
XForms Home Page: http://world.std.com/~xforms
List Archive: http://bob.usuhs.mil/mailserv/list-archives/
Development: http://savannah.nongnu.org/files/?group=xforms
This archive was generated by hypermail 2b29 : Tue Apr 15 2003 - 03:46:21 EDT