From: Yuriy Skalko Date: Thu, 27 Aug 2020 23:03:23 +0000 (+0300) Subject: Prevent permanent disabling of comboboxes in Vertical/Horizontal space dialogs X-Git-Tag: lyx-2.4.0dev-acb2ca7b~271 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=3bd358a2f6cfe9bc585b23292a085e638fea0796;p=lyx.git Prevent permanent disabling of comboboxes in Vertical/Horizontal space dialogs --- diff --git a/src/frontends/qt/GuiHSpace.cpp b/src/frontends/qt/GuiHSpace.cpp index 9a1437009b..64c5b3809f 100644 --- a/src/frontends/qt/GuiHSpace.cpp +++ b/src/frontends/qt/GuiHSpace.cpp @@ -293,13 +293,17 @@ docstring GuiHSpace::dialogToParams() const bool GuiHSpace::checkWidgets(bool readonly) const { valueLE->setReadOnly(readonly); - + spacingCO->setEnabled(!readonly); + spacingL->setEnabled(!readonly); + if (readonly) { - spacingCO->setEnabled(false); - unitCO->setEnabled(false); fillPatternCO->setEnabled(false); + fillPatternL->setEnabled(false); keepCB->setEnabled(false); + keepL->setEnabled(false); valueLE->setEnabled(false); + valueL->setEnabled(false); + unitCO->setEnabled(false); } else enableWidgets(); diff --git a/src/frontends/qt/GuiVSpace.cpp b/src/frontends/qt/GuiVSpace.cpp index 96fa016971..7163634441 100644 --- a/src/frontends/qt/GuiVSpace.cpp +++ b/src/frontends/qt/GuiVSpace.cpp @@ -188,18 +188,19 @@ void GuiVSpace::paramsToDialog(Inset const * inset) bool GuiVSpace::checkWidgets(bool readonly) const { - valueLE->setReadOnly(readonly); keepCB->setEnabled(!readonly); + keepL->setEnabled(!readonly); + spacingCO->setEnabled(!readonly); + spacingL->setEnabled(!readonly); - if (readonly) { - spacingCO->setEnabled(false); - unitCO->setEnabled(false); - } else { - bool const enable = (spacingCO->currentIndex() == 7); - valueLE->setEnabled(enable); - valueL->setEnabled(enable); - unitCO->setEnabled(enable); - } + valueLE->setReadOnly(readonly); + + bool const enable_custom = + !readonly && (spacingCO->currentIndex() == 7); + + valueL->setEnabled(enable_custom); + valueLE->setEnabled(enable_custom); + unitCO->setEnabled(enable_custom); return InsetParamsWidget::checkWidgets(); }