Disable language package choice if the class preloads a package

(cherry picked from commit 5477451e36)
This commit is contained in:
Juergen Spitzmueller 2024-04-13 10:07:18 +02:00
parent d21042299f
commit d29baf59a4

View File

@ -4217,15 +4217,30 @@ void GuiDocument::paramsToDialog()
// LaTeX input encoding: set after the fonts (see below)
int p = langModule->languagePackageCO->findData(toqstr(bp_.lang_package));
// If the class provides babel or polyglossia, do not allow
// to change that
bool const extern_babel =
documentClass().provides("babel");
bool const extern_polyglossia =
documentClass().provides("polyglossia");
int p = -1;
if (extern_babel)
p = langModule->languagePackageCO->findData(toqstr("babel"));
else if (extern_polyglossia)
p = langModule->languagePackageCO->findData(toqstr("polyglossia"));
else
p = langModule->languagePackageCO->findData(toqstr(bp_.lang_package));
if (p == -1) {
langModule->languagePackageCO->setCurrentIndex(
langModule->languagePackageCO->findData("custom"));
langModule->languagePackageCO->findData("custom"));
langModule->languagePackageLE->setText(toqstr(bp_.lang_package));
} else {
langModule->languagePackageCO->setCurrentIndex(p);
langModule->languagePackageLE->clear();
}
langModule->languagePackageCO->setEnabled(!extern_babel && !extern_polyglossia);
//color
if (bp_.isfontcolor) {