From 5065161f375830b1fd1b2c83c7ea1485f86db06e Mon Sep 17 00:00:00 2001 From: Angus Leeming Date: Wed, 26 Mar 2003 15:01:33 +0000 Subject: [PATCH] Remove bug fixes for xforms < 1.0. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6587 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/frontends/xforms/ChangeLog | 7 +++ src/frontends/xforms/FormBase.C | 63 ++++++++------------------- src/frontends/xforms/FormDialogView.C | 63 ++++++++------------------- src/frontends/xforms/combox.C | 13 ------ 4 files changed, 45 insertions(+), 101 deletions(-) diff --git a/src/frontends/xforms/ChangeLog b/src/frontends/xforms/ChangeLog index 4bb0a7fdb6..1d19d06604 100644 --- a/src/frontends/xforms/ChangeLog +++ b/src/frontends/xforms/ChangeLog @@ -1,3 +1,10 @@ +2003-03-26 Angus Leeming + + * combox.C (show): + * FormBase.C (hide, PrehandlerCB): + * FormDialogView.C (hide, PrehandlerCB): + remove support for xforms < 1.0. + 2003-03-26 Angus Leeming * Dialogs.C: diff --git a/src/frontends/xforms/FormBase.C b/src/frontends/xforms/FormBase.C index d0aad6c6de..8613659c11 100644 --- a/src/frontends/xforms/FormBase.C +++ b/src/frontends/xforms/FormBase.C @@ -169,12 +169,6 @@ void FormBase::show() void FormBase::hide() { -#if FL_VERSION < 1 - // Does no harm if none is visible and ensures that the tooltip form - // is hidden should the dialog be closed from the keyboard. - fl_hide_tooltip(); -#endif - // xforms sometimes tries to process a hint-type MotionNotify, and // use XQueryPointer, without verifying if the window still exists. // So we try to clear out motion events in the queue before the @@ -258,54 +252,35 @@ void FormBase::PrehandlerCB(FL_OBJECT * ob, int event, int key) return; } - switch (event) { - case FL_ENTER: - case FL_LEAVE: - if (message_widget_) { + if (message_widget_) { + switch (event) { + case FL_ENTER: + case FL_LEAVE: // Post feedback as the mouse enters the object, // remove it as the mouse leaves. MessageCB(ob, event); + break; } - -#if FL_VERSION < 1 - if (ob->objclass == FL_TABFOLDER) { - // This prehandler is used to work-around an xforms - // bug and ensures that the form->x, form->y coords of - // the active tabfolder are up to date. - - // The tabfolder itself can be very narrow, being just - // the visible border to the tabs. - // We thus use both FL_ENTER and FL_LEAVE as flags, - // in case the FL_ENTER event is not caught. - - FL_FORM * const folder = fl_get_active_folder(ob); - if (folder && folder->window) { - fl_get_winorigin(folder->window, - &(folder->x), &(folder->y)); - } - } -#endif - break; } // Tooltips are not displayed on browser widgets due to an xforms' bug. // I have a fix, but it's not yet in the xforms sources. // This is a work-around: - switch (event) { - case FL_ENTER: - if (ob->objclass == FL_BROWSER && - ob->tooltip && *(ob->tooltip)) { - int const x = ob->form->x + ob->x; - int const y = ob->form->y + ob->y + ob->h + 1; - fl_show_tooltip(ob->tooltip, x, y); - } - break; - case FL_LEAVE: - case FL_PUSH: - case FL_KEYPRESS: - if (ob->objclass == FL_BROWSER) + if (ob->objclass == FL_BROWSER) { + switch (event) { + case FL_ENTER: + if (ob->tooltip && *(ob->tooltip)) { + int const x = ob->form->x + ob->x; + int const y = ob->form->y + ob->y + ob->h + 1; + fl_show_tooltip(ob->tooltip, x, y); + } + break; + case FL_LEAVE: + case FL_PUSH: + case FL_KEYPRESS: fl_hide_tooltip(); - break; + break; + } } } diff --git a/src/frontends/xforms/FormDialogView.C b/src/frontends/xforms/FormDialogView.C index 575f35af02..8a65a6c5e0 100644 --- a/src/frontends/xforms/FormDialogView.C +++ b/src/frontends/xforms/FormDialogView.C @@ -171,12 +171,6 @@ void FormDialogView::show() void FormDialogView::hide() { -#if FL_VERSION < 1 - // Does no harm if none is visible and ensures that the tooltip form - // is hidden should the dialog be closed from the keyboard. - fl_hide_tooltip(); -#endif - // xforms sometimes tries to process a hint-type MotionNotify, and // use XQueryPointer, without verifying if the window still exists. // So we try to clear out motion events in the queue before the @@ -260,54 +254,35 @@ void FormDialogView::PrehandlerCB(FL_OBJECT * ob, int event, int key) return; } - switch (event) { - case FL_ENTER: - case FL_LEAVE: - if (message_widget_) { + if (message_widget_) { + switch (event) { + case FL_ENTER: + case FL_LEAVE: // Post feedback as the mouse enters the object, // remove it as the mouse leaves. MessageCB(ob, event); + break; } - -#if FL_VERSION < 1 - if (ob->objclass == FL_TABFOLDER) { - // This prehandler is used to work-around an xforms - // bug and ensures that the form->x, form->y coords of - // the active tabfolder are up to date. - - // The tabfolder itself can be very narrow, being just - // the visible border to the tabs. - // We thus use both FL_ENTER and FL_LEAVE as flags, - // in case the FL_ENTER event is not caught. - - FL_FORM * const folder = fl_get_active_folder(ob); - if (folder && folder->window) { - fl_get_winorigin(folder->window, - &(folder->x), &(folder->y)); - } - } -#endif - break; } // Tooltips are not displayed on browser widgets due to an xforms' bug. // I have a fix, but it's not yet in the xforms sources. // This is a work-around: - switch (event) { - case FL_ENTER: - if (ob->objclass == FL_BROWSER && - ob->tooltip && *(ob->tooltip)) { - int const x = ob->form->x + ob->x; - int const y = ob->form->y + ob->y + ob->h + 1; - fl_show_tooltip(ob->tooltip, x, y); - } - break; - case FL_LEAVE: - case FL_PUSH: - case FL_KEYPRESS: - if (ob->objclass == FL_BROWSER) + if (ob->objclass == FL_BROWSER) { + switch (event) { + case FL_ENTER: + if (ob->tooltip && *(ob->tooltip)) { + int const x = ob->form->x + ob->x; + int const y = ob->form->y + ob->y + ob->h + 1; + fl_show_tooltip(ob->tooltip, x, y); + } + break; + case FL_LEAVE: + case FL_PUSH: + case FL_KEYPRESS: fl_hide_tooltip(); - break; + break; + } } } diff --git a/src/frontends/xforms/combox.C b/src/frontends/xforms/combox.C index e786100bc1..00f27bc5af 100644 --- a/src/frontends/xforms/combox.C +++ b/src/frontends/xforms/combox.C @@ -279,19 +279,6 @@ void Combox::show() fl_redraw_object(button); } -#if FL_VERSION < 1 - // This fix ensures that, even if label lies on a tabfolder, - // the x,y coords of the underlying form are up to date. - // It should be rendered redundant by a similar fix in the - // tabfolder prehandler, but apparently "enter" events are not always - // caught... - // Angus 4 Oct, 2002. - if (label->form->window) { - FL_FORM * lf = label->form; - fl_get_winorigin(lf->window, &(lf->x), &(lf->y)); - } -#endif - int const x = label->form->x + label->x; int const y = label->form->y + label->y + label->h; -- 2.39.2