XForms: Thinking out loud

From: Angus Leeming (angus.leeming@btopenworld.com)
Date: Tue Apr 15 2003 - 04:46:02 EDT

  • Next message: Jean-Marc Lasgouttes: "Re: XForms: Thinking out loud"

    # 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