]> git.lyx.org Git - lyx.git/blobdiff - src/Length.cpp
empty file format change due to r29840.
[lyx.git] / src / Length.cpp
index 49f1d633c4a16dea90fdabcebcba06df261a4779..e248d7c4f4e2e918065e4f8801ebae1b6cbd0361 100644 (file)
@@ -4,7 +4,7 @@
  * Licence details can be found in the file COPYING.
  *
  * \author Matthias Ettrich
- * \author Lars Gullik Bjønnes
+ * \author Lars Gullik Bjønnes
  * \author Jean-Marc Lasgouttes
  * \author Angus Leeming
  * \author John Levon
 #include <sstream>
 #include <iomanip>
 
+using namespace std;
 
 namespace lyx {
 
-using std::ostringstream;
-using std::string;
-
 
 /////////////////////////////////////////////////////////////////////
 //
@@ -59,6 +57,13 @@ Length::Length(string const & data)
 }
 
 
+void Length::swap(Length & rhs)
+{
+       std::swap(val_, rhs.val_);
+       std::swap(unit_, rhs.unit_);
+}
+
+
 string const Length::asString() const
 {
        ostringstream os;
@@ -271,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();