]> git.lyx.org Git - lyx.git/commitdiff
Prevent permanent disabling of comboboxes in Vertical/Horizontal space dialogs
authorYuriy Skalko <yuriy.skalko@gmail.com>
Thu, 27 Aug 2020 23:03:23 +0000 (02:03 +0300)
committerJuergen Spitzmueller <spitz@lyx.org>
Fri, 28 Aug 2020 05:07:44 +0000 (07:07 +0200)
src/frontends/qt/GuiHSpace.cpp
src/frontends/qt/GuiVSpace.cpp

index 9a1437009b9d2f79c258b694bf3469933f0cc9e1..64c5b3809f8bb3e94ac9dc8d1cb7d35655321aab 100644 (file)
@@ -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();
 
index 96fa0169713beee7cb689da168a0b5dfa0c61c8e..7163634441e7e56b1f49901d2909be0c57b8846c 100644 (file)
@@ -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();
 }