}
-void Length::swap(Length & rhs)
-{
- std::swap(val_, rhs.val_);
- std::swap(unit_, rhs.unit_);
-}
-
-
string const Length::asString() const
{
ostringstream os;
- os << val_ << unit_name[unit_]; // setw?
+ if (unit_ != UNIT_NONE)
+ os << val_ << unit_name[unit_]; // setw?
return os.str();
}
docstring const Length::asDocstring() const
{
odocstringstream os;
- os << val_ << unit_name[unit_]; // setw?
+ if (unit_ != UNIT_NONE)
+ os << val_ << unit_name[unit_]; // setw?
return os.str();
}
case PPH:
os << val_ / 100.0 << "\\paperheight";
break;
+ case UNIT_NONE:
+ break;
default:
os << val_ << unit_name[unit_];
break;
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;
+ return lyxrc.default_length_unit;
}
string const GlueLength::asString() const
{
+ if (len_.empty())
+ return string();
+
ostringstream buffer;
buffer << len_.value();