]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/GuiVSpace.cpp
rename buffer parameter math_number_before to math_numbering_side
[lyx.git] / src / frontends / qt4 / GuiVSpace.cpp
index 4f2a60e5266d2382bf61cac7e488bea9b43e474c..6eec95846bcf2000eb67ff4e900f03b7868f042e 100644 (file)
@@ -53,7 +53,10 @@ GuiVSpace::GuiVSpace(QWidget * parent) : InsetParamsWidget(parent)
        connect(spacingCO, SIGNAL(activated(int)),
                this, SLOT(enableCustom(int)));
 
-       valueLE->setValidator(unsignedGlueLengthValidator(valueLE));
+       // Set up a signed glue length validator
+       LengthValidator * v = new LengthValidator(valueLE);
+       v->setBottom(GlueLength());
+       valueLE->setValidator(v);
 
        // initialize the length validator
        addCheckedWidget(valueLE, valueL);
@@ -143,6 +146,26 @@ void GuiVSpace::paramsToDialog(Inset const * inset)
        InsetVSpace const * vs = static_cast<InsetVSpace const *>(inset);
        VSpace const & params = vs->space();
        setWidgetsFromVSpace(params, spacingCO, valueLE, unitCO, keepCB);
+       enableCustom(spacingCO->currentIndex());
+}
+
+
+bool GuiVSpace::checkWidgets(bool readonly) const
+{
+       valueLE->setReadOnly(readonly);
+       keepCB->setEnabled(!readonly);
+
+       if (readonly) {
+               spacingCO->setEnabled(false);
+               unitCO->setEnabled(false);
+       } else {
+               bool const enable = (spacingCO->currentIndex() == 5);
+               valueLE->setEnabled(enable);
+               valueL->setEnabled(enable);
+               unitCO->setEnabled(enable);
+       }
+
+       return InsetParamsWidget::checkWidgets();
 }
 
 } // namespace frontend