]> git.lyx.org Git - features.git/blobdiff - src/frontends/qt/GuiPrefs.cpp
Hide custom_language_package if custom is not selected
[features.git] / src / frontends / qt / GuiPrefs.cpp
index 728e8fe3795f594f8a2a1bed88304668a2acd771..185b7180838c0df920372f0060aee1be969fe39e 100644 (file)
@@ -2463,7 +2463,13 @@ void PrefLanguage::on_uiLanguageCO_currentIndexChanged(int)
 
 void PrefLanguage::on_languagePackageCO_currentIndexChanged(int i)
 {
-        languagePackageED->setEnabled(i == 2);
+       if (i == 2)
+               languagePackageED->setText(save_langpack_);
+       else if (!languagePackageED->text().isEmpty()) {
+               save_langpack_ = languagePackageED->text();
+               languagePackageED->clear();
+       }
+       languagePackageED->setEnabled(i == 2);
 }
 
 
@@ -2505,8 +2511,14 @@ void PrefLanguage::updateRC(LyXRC const & rc)
        explicitDocLangBeginCB->setChecked(!rc.language_auto_begin);
        explicitDocLangEndCB->setChecked(!rc.language_auto_end);
        languagePackageCO->setCurrentIndex(rc.language_package_selection);
-       languagePackageED->setText(toqstr(rc.language_custom_package));
-       languagePackageED->setEnabled(languagePackageCO->currentIndex() == 2);
+       if (languagePackageCO->currentIndex() == 2) {
+               languagePackageED->setText(toqstr(rc.language_custom_package));
+               languagePackageED->setEnabled(true);
+       } else {
+               languagePackageED->clear();
+               save_langpack_ = toqstr(rc.language_custom_package);
+               languagePackageED->setEnabled(false);
+       }
        globalCB->setChecked(rc.language_global_options);
        startCommandED->setText(toqstr(rc.language_command_begin));
        endCommandED->setText(toqstr(rc.language_command_end));