From: Angus Leeming Date: Mon, 11 Feb 2002 18:57:30 +0000 (+0000) Subject: J�rgen S's activation of intelligent code rather than my dumb attempt. X-Git-Tag: 1.6.10~19871 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=1c3b68bf4b6bab62d999722ed667c41eeded7555;p=lyx.git J�rgen S's activation of intelligent code rather than my dumb attempt. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3524 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/frontends/xforms/ChangeLog b/src/frontends/xforms/ChangeLog index 40fd0667f1..40eeea08f4 100644 --- a/src/frontends/xforms/ChangeLog +++ b/src/frontends/xforms/ChangeLog @@ -3,6 +3,14 @@ * FormMinipage.C: return SMI_VALID on other form changes 2002-02-10 Rob Lahaye +2002-02-11 Juergen Spitzmueller + + * FormParagraph.C (update): [VSpace:] Delete the special method + for gluelengths... + * xforms_helpers.C: ...and move it here. + Activate JMarcs new (shorter) code for updateWidgetsFromLengthString + and updateWidgetsFromLength. + * forms/form_external.fd: * form_external.C: change color2 of a few buttons into the diff --git a/src/frontends/xforms/FormParagraph.C b/src/frontends/xforms/FormParagraph.C index 91943ac01b..c4fa2e4489 100644 --- a/src/frontends/xforms/FormParagraph.C +++ b/src/frontends/xforms/FormParagraph.C @@ -412,14 +412,9 @@ void FormParagraph::update() bool const metric = lyxrc.default_papersize > 3; string const default_unit = metric ? "cm" : "in"; string const length = par_->params().spaceTop().length().asString(); - //check if there's a stretch or shrink factor - if (!isValidLength(length) && !isStrDbl(length)) - fl_set_input(dialog_->input_space_above, length.c_str()); - else { - updateWidgetsFromLengthString(dialog_->input_space_above, + updateWidgetsFromLengthString(dialog_->input_space_above, dialog_->choice_value_space_above, length, default_unit); - } break; } } @@ -458,14 +453,9 @@ void FormParagraph::update() string const default_unit = metric ? "cm" : "in"; string const length = par_->params().spaceBottom().length().asString(); - //check if there's a stretch or shrink factor - if (!isValidLength(length) && !isStrDbl(length)) - fl_set_input(dialog_->input_space_below, length.c_str()); - else { - updateWidgetsFromLengthString(dialog_->input_space_below, + updateWidgetsFromLengthString(dialog_->input_space_below, dialog_->choice_value_space_below, length, default_unit); - } break; } } diff --git a/src/frontends/xforms/xforms_helpers.C b/src/frontends/xforms/xforms_helpers.C index c2c47902f4..39dfd00a0e 100644 --- a/src/frontends/xforms/xforms_helpers.C +++ b/src/frontends/xforms/xforms_helpers.C @@ -170,7 +170,9 @@ string getLengthFromWidgets(FL_OBJECT * input, FL_OBJECT * choice) } -#if 1 +#if 0 +// old code which can be deleted if the new one, now enabled, +// works satisfyingly (JSpitzm, 11/02/2002) // this should definitely be the other way around!!! void updateWidgetsFromLength(FL_OBJECT * input, FL_OBJECT * choice, LyXLength const & len, @@ -179,6 +181,11 @@ void updateWidgetsFromLength(FL_OBJECT * input, FL_OBJECT * choice, if (len.zero()) updateWidgetsFromLengthString(input, choice, string(), default_unit); + // use input field only for gluelengths + else if (!isValidLength(len) && !isStrDbl(len)) { + fl_set_input(input, len.c_str()); + fl_set_choice_text(choice, default_unit.c_str()); + } else updateWidgetsFromLengthString(input, choice, len.asString(), default_unit); @@ -252,8 +259,14 @@ void updateWidgetsFromLengthString(FL_OBJECT * input, FL_OBJECT * choice, string const & str, string const & default_unit) { - updateWidgetsFromLength(input, choice, + // use input field only for gluelengths + if (!isValidLength(str) && !isStrDbl(str)) { + fl_set_input(input, str.c_str()); + fl_set_choice_text(choice, default_unit.c_str()); + } else { + updateWidgetsFromLength(input, choice, LyXLength(str), default_unit); + } }