]> git.lyx.org Git - features.git/commitdiff
Move the half baked code that guesses whether to default on metric or
authorJean-Marc Lasgouttes <lasgouttes@lyx.org>
Fri, 6 Feb 2009 21:24:13 +0000 (21:24 +0000)
committerJean-Marc Lasgouttes <lasgouttes@lyx.org>
Fri, 6 Feb 2009 21:24:13 +0000 (21:24 +0000)
imperial units in only one place (instead of thousands of slightly different
copies). Functionally equivalent.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28380 a592a061-630c-0410-9148-cb99ea01b6c8

src/Length.cpp
src/Length.h
src/frontends/qt4/GuiBox.cpp
src/frontends/qt4/GuiDocument.cpp
src/frontends/qt4/GuiExternal.cpp
src/frontends/qt4/GuiGraphics.cpp
src/frontends/qt4/GuiHSpace.cpp
src/frontends/qt4/GuiTabular.cpp
src/frontends/qt4/GuiTabular.h
src/frontends/qt4/GuiVSpace.cpp

index c6e46066af8a2081319b57667d23e8c636ab0637..e248d7c4f4e2e918065e4f8801ebae1b6cbd0361 100644 (file)
@@ -276,6 +276,26 @@ int Length::inBP() const
 }
 
 
+Length::UNIT Length::defaultUnit()
+{
+       // FIXME user a proper pref, since we should get rid of
+       // default_papersize in lyxrc.
+       UNIT u = Length::CM;
+       switch (lyxrc.default_papersize) {
+               case PAPER_USLETTER:
+               case PAPER_USLEGAL:
+               case PAPER_USEXECUTIVE:
+                       u = Length::IN;
+                       break;
+               default:
+                       break;
+       }
+
+       return u;
+}
+
+
+
 bool operator==(Length const & l1, Length const & l2)
 {
        return l1.value() == l2.value() && l1.unit() == l2.unit();
index cc2caf78acc22c7fea32cf55c626054562152cc0..11b591dcb8e69be8df6b5a225ea9ef1bc31eecee 100644 (file)
@@ -92,6 +92,9 @@ public:
        /// return the value in Big Postscript points.
        int inBP() const;
 
+       /// return the default unit (centimeter or inch)
+       static UNIT defaultUnit();
+
        friend bool isValidLength(std::string const & data, Length * result);
 
 private:
index ff4fb6f3348650688fc43855702d1b0f9be19c7f..38ff0074c36e6b8c1a22876a5ad2daf4c53302dd 100644 (file)
@@ -17,7 +17,6 @@
 #include "FuncRequest.h"
 #include "LengthCombo.h"
 #include "Length.h"
-#include "LyXRC.h" // to set the default length values
 #include "qt_helpers.h"
 #include "Validator.h"
 
@@ -265,8 +264,7 @@ void GuiBox::updateContents()
        halignCO->setEnabled(!ibox);
        setSpecial(ibox);
 
-       Length::UNIT default_unit =
-               (lyxrc.default_papersize > 3) ? Length::CM : Length::IN;
+       Length::UNIT const default_unit = Length::defaultUnit();
 
        lengthToWidgets(widthED, widthUnitsLC,
                (params_.width).asString(), default_unit);
index 77d8b5fa418a0140687ffb9f0a883aeab0de0661..1363065e3de29e12100226e1be56235a1fef715e 100644 (file)
@@ -34,7 +34,7 @@
 #include "Language.h"
 #include "LaTeXFeatures.h"
 #include "Layout.h"
-#include "LyXRC.h" // defaultUnit
+#include "LyXRC.h"
 #include "ModuleList.h"
 #include "OutputParams.h"
 #include "PDFOptions.h"
@@ -1832,27 +1832,7 @@ void GuiDocument::applyView()
 void GuiDocument::paramsToDialog()
 {
        // set the default unit
-       Length::UNIT defaultUnit = Length::CM;
-       switch (lyxrc.default_papersize) {
-               case PAPER_DEFAULT: break;
-
-               case PAPER_USLETTER:
-               case PAPER_USLEGAL:
-               case PAPER_USEXECUTIVE:
-                       defaultUnit = Length::IN;
-                       break;
-
-               case PAPER_A3:
-               case PAPER_A4:
-               case PAPER_A5:
-               case PAPER_B3:
-               case PAPER_B4:
-               case PAPER_B5:
-                       defaultUnit = Length::CM;
-                       break;
-               case PAPER_CUSTOM:
-                       break;
-       }
+       Length::UNIT const defaultUnit = Length::defaultUnit();
 
        // preamble
        preambleModule->update(bp_, id());
index d5c14b8d7dc2e215bb3bcf0f47f19e9156dcb148..bd23cd5b70b427a01edc4991f13537a420957eee 100644 (file)
@@ -349,22 +349,6 @@ void GuiExternal::widthUnitChanged()
 }
 
 
-static Length::UNIT defaultUnit()
-{
-       Length::UNIT default_unit = Length::CM;
-       switch (lyxrc.default_papersize) {
-       case PAPER_USLETTER:
-       case PAPER_USLEGAL:
-       case PAPER_USEXECUTIVE:
-               default_unit = Length::IN;
-               break;
-       default:
-               break;
-       }
-       return default_unit;
-}
-
-
 static void setRotation(QLineEdit & angleED, QComboBox & originCO,
        external::RotationData const & data)
 {
@@ -401,11 +385,11 @@ static void setSize(QLineEdit & widthED, LengthCombo & widthUnitCO,
                widthUnitCO.setCurrentItem("scale");
        } else
                lengthToWidgets(&widthED, &widthUnitCO,
-                       data.width.asString(), defaultUnit());
+                               data.width.asString(), Length::defaultUnit());
 
        string const h = data.height.zero() ? string() : data.height.asString();
-       Length::UNIT default_unit = data.width.zero() ?
-               defaultUnit() : data.width.unit();
+       Length::UNIT const default_unit = data.width.zero() ?
+               Length::defaultUnit() : data.width.unit();
        lengthToWidgets(&heightED, &heightUnitCO, h, default_unit);
 
        heightED.setEnabled(!using_scale);
index 0ca3ebb55c715f391d8f385cc14c41e353f50f3f..d44d17a4b42d2f2925bedf0dabf023fdeb62b770 100644 (file)
@@ -540,16 +540,7 @@ void GuiGraphics::paramsToDialog(InsetGraphicsParams const & igp)
        }
 
        // set the right default unit
-       Length::UNIT unitDefault = Length::CM;
-       switch (lyxrc.default_papersize) {
-               case PAPER_USLETTER:
-               case PAPER_USLEGAL:
-               case PAPER_USEXECUTIVE:
-                       unitDefault = Length::IN;
-                       break;
-               default:
-                       break;
-       }
+       Length::UNIT const defaultUnit = Length::defaultUnit();
 
        //lyxerr << bufferFilepath();
        string const name =
@@ -642,9 +633,9 @@ void GuiGraphics::paramsToDialog(InsetGraphicsParams const & igp)
        groupCO->blockSignals(false);
 
        if (igp.width.value() == 0)
-               lengthToWidgets(Width, widthUnit, _(autostr), unitDefault);
+               lengthToWidgets(Width, widthUnit, _(autostr), defaultUnit);
        else
-               lengthToWidgets(Width, widthUnit, igp.width, unitDefault);
+               lengthToWidgets(Width, widthUnit, igp.width, defaultUnit);
 
        bool const widthChecked = !Width->text().isEmpty() &&
                Width->text() != qt_(autostr);
@@ -655,9 +646,9 @@ void GuiGraphics::paramsToDialog(InsetGraphicsParams const & igp)
        widthUnit->setEnabled(widthChecked);
 
        if (igp.height.value() == 0)
-               lengthToWidgets(Height, heightUnit, _(autostr), unitDefault);
+               lengthToWidgets(Height, heightUnit, _(autostr), defaultUnit);
        else
-               lengthToWidgets(Height, heightUnit, igp.height, unitDefault);
+               lengthToWidgets(Height, heightUnit, igp.height, defaultUnit);
 
        bool const heightChecked = !Height->text().isEmpty()
                && Height->text() != qt_(autostr);
index 1967c2431d75e3015a04cb4cf989daf5f192bb4d..63bccc5ff1c7412d19db9682cb217514036e6f96 100644 (file)
@@ -16,7 +16,6 @@
 #include "qt_helpers.h"
 #include "Validator.h"
 
-#include "LyXRC.h"
 #include "Spacing.h"
 #include "FuncRequest.h"
 
@@ -248,8 +247,7 @@ static void setWidgetsFromHSpace(InsetSpaceParams const & params,
        fillPattern->setCurrentIndex(pattern);
        keep->setChecked(protect);
 
-       Length::UNIT default_unit =
-                       (lyxrc.default_papersize > 3) ? Length::CM : Length::IN;
+       Length::UNIT const default_unit = Length::defaultUnit();
        if (item == (params.math ? 9 : 7))
                lengthToWidgets(value, unit, params.length, default_unit);
        else
index 67e7b1dd5028fdc59c8d2d5092f9cc11f3ad2ec8..b2dee188bf71d19829c331277af1d5bdd9a223a8 100644 (file)
@@ -23,7 +23,6 @@
 #include "BufferView.h"
 #include "Cursor.h"
 #include "FuncRequest.h"
-#include "LyXRC.h"
 
 #include "insets/InsetTabular.h"
 
@@ -639,8 +638,7 @@ void GuiTabular::updateContents()
        bool const isReadonly = bc().policy().isReadOnly();
        specialAlignmentED->setEnabled(!isReadonly);
 
-       Length::UNIT default_unit =
-               useMetricUnits() ? Length::CM : Length::IN;
+       Length::UNIT const default_unit = Length::defaultUnit();
 
        borderDefaultRB->setChecked(!tabular_.use_booktabs);
        booktabsRB->setChecked(tabular_.use_booktabs);
@@ -996,12 +994,6 @@ void GuiTabular::set(Tabular::Feature f, string const & arg)
 }
 
 
-bool GuiTabular::useMetricUnits() const
-{
-       return lyxrc.default_papersize > PAPER_USEXECUTIVE;
-}
-
-
 void GuiTabular::setSpecial(string const & special)
 {
        if (tabular_.isMultiColumn(getActiveCell()))
index f6e1e21618f5b828fd3b7b7a5f596aac1b78b049..185bb800bdf86c8b0e2a2c02884742441bcccda0 100644 (file)
@@ -91,8 +91,6 @@ private:
 
        ///
        Tabular::idx_type getActiveCell() const;
-       /// return true if units should default to metric
-       bool useMetricUnits() const;
        /// set a parameter
        void set(Tabular::Feature, std::string const & arg = std::string());
 
index f9deb6d7572843bf24dbe16e2ca295ab59c8fbb0..995393a9790dd9b42d8821057a5859078c11fb16 100644 (file)
@@ -21,7 +21,6 @@
 #include "qt_helpers.h"
 #include "Validator.h"
 
-#include "LyXRC.h" // to set the default length values
 #include "Spacing.h"
 #include "FuncRequest.h"
 
@@ -114,8 +113,7 @@ static void setWidgetsFromVSpace(VSpace const & space,
        spacing->setCurrentIndex(item);
        keep->setChecked(space.keep());
 
-       Length::UNIT default_unit =
-                       (lyxrc.default_papersize > 3) ? Length::CM : Length::IN;
+       Length::UNIT const default_unit = Length::defaultUnit();
        bool const custom_vspace = space.kind() == VSpace::LENGTH;
        if (custom_vspace) {
                value->setEnabled(true);