From: Dekel Tsur Date: Sat, 15 Dec 2001 14:00:36 +0000 (+0000) Subject: Fix language changing. It was broken by the following change X-Git-Tag: 1.6.10~20168 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=63fa06783e3a3ae9df0adb6208bbeda1c2dc3923;p=lyx.git Fix language changing. It was broken by the following change 2001-11-07 Jean-Marc Lasgouttes * FormDocument.C (class_apply): (paper_apply): (language_apply): (options_apply): (bullets_apply): add a version of these methods taking a BufferParams& parameters. The original versions are now wrappers around these. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3212 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/frontends/xforms/FormDocument.C b/src/frontends/xforms/FormDocument.C index 24246d1049..8d40168dd6 100644 --- a/src/frontends/xforms/FormDocument.C +++ b/src/frontends/xforms/FormDocument.C @@ -863,11 +863,21 @@ bool FormDocument::language_apply(BufferParams & params) else params.quotes_times = InsetQuotes::DoubleQ; + Language const * old_language = params.language; Language const * new_language = languages.getLanguage(combo_language->getline()); if (!new_language) new_language = default_language; + if (old_language != new_language + && old_language->RightToLeft() == params.language->RightToLeft() + && !lv_->buffer()->isMultiLingual()) + lv_->buffer()->changeLanguage(old_language, params.language); + + if (old_language != new_language) { + redo = true; + } + params.language = new_language; params.inputenc = fl_get_choice_text(language_->choice_inputenc); @@ -877,20 +887,7 @@ bool FormDocument::language_apply(BufferParams & params) bool FormDocument::language_apply() { - BufferParams & params = lv_->buffer()->params; - Language const * old_language = params.language; - - bool redo = language_apply(params); - - if (old_language != params.language - && old_language->RightToLeft() == params.language->RightToLeft() - && !lv_->buffer()->isMultiLingual()) - lv_->buffer()->changeLanguage(old_language, params.language); - if (old_language != params.language) { - redo = true; - } - - return redo; + return language_apply(lv_->buffer()->params); }