X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FSpacing.C;h=30dd365a8f9696bff178414e6aea46d11375e96b;hb=21226de2b87a86be19fff025cace3d286a75aa76;hp=d34c163e770b611f569da15bcca109de435203fb;hpb=4b2a999762c83627476428e595d3c1e3704a3da0;p=lyx.git diff --git a/src/Spacing.C b/src/Spacing.C index d34c163e77..30dd365a8f 100644 --- a/src/Spacing.C +++ b/src/Spacing.C @@ -4,7 +4,7 @@ * LyX, The Document Processor * * Copyright 1995 Matthias Ettrich - * Copyright 1995-2000 The LyX Team. + * Copyright 1995-2001 The LyX Team. * * ====================================================== */ @@ -14,28 +14,19 @@ #pragma implementation #endif -#ifdef HAVE_SSTREAM -#include -using std::istringstream; -using std::ostringstream; -#else -#include -#endif - +#include "Lsstream.h" #include "Spacing.h" #include "LString.h" using std::ios; using std::ostream; -/// how can I put this inside of Spacing (class) -static -char const * spacing_string[] = {"single", "onehalf", "double", "other"}; - - +string const Spacing::spacing_string[] + = {"single", "onehalf", "double", "other"}; + float Spacing::getValue() const { - switch(space) { + switch (space) { case Default: // nothing special should happen with this... case Single: return 1.0; case Onehalf: return 1.25; @@ -50,7 +41,7 @@ void Spacing::set(Spacing::Space sp, float val) { space = sp; if (sp == Other) { - switch(int(val * 1000 + 0.5)) { + switch (int(val * 1000 + 0.5)) { case 1000: space = Single; break; case 1250: space = Onehalf; break; case 1667: space = Double; break; @@ -60,14 +51,10 @@ void Spacing::set(Spacing::Space sp, float val) } -void Spacing::set(Spacing::Space sp, char const * val) +void Spacing::set(Spacing::Space sp, string const & val) { - float fval; -#ifdef HAVE_SSTREAM - istringstream istr(val); -#else - istrstream istr(val); -#endif + float fval = 0.0; + istringstream istr(val.c_str()); istr >> fval; set(sp, fval); } @@ -90,9 +77,9 @@ void Spacing::writeFile(ostream & os, bool para) const } -string Spacing::writeEnvirBegin() const +string const Spacing::writeEnvirBegin() const { - switch(space) { + switch (space) { case Default: break; // do nothing case Single: return "\\begin{singlespace}"; @@ -101,28 +88,20 @@ string Spacing::writeEnvirBegin() const case Double: return "\\begin{doublespace}"; case Other: -#ifdef HAVE_SSTREAM + { ostringstream ost; ost << "\\begin{spacing}{" << getValue() << "}"; return ost.str().c_str(); -#else - { - char tmp[512]; - ostrstream ost(tmp, 512); - ost << "\\begin{spacing}{" - << getValue() << "}"; - return ost.str(); - } -#endif + } } return string(); } -string Spacing::writeEnvirEnd() const +string const Spacing::writeEnvirEnd() const { - switch(space) { + switch (space) { case Default: break; // do nothing case Single: return "\\end{singlespace}";