]> git.lyx.org Git - features.git/blobdiff - src/LaTeXFeatures.C
Dekel language/encoding patch + a few fixes
[features.git] / src / LaTeXFeatures.C
index 36c37e65616a0e6fb07c4b32bc82e3eeffd6c246..239f4bf5dcc70a8f5fbe60b5b1f52524ce70eed4 100644 (file)
 
 using std::endl;
 
-LaTeXFeatures::LaTeXFeatures(BufferParams const & p, int n)
+LaTeXFeatures::LaTeXFeatures(BufferParams const & p, LyXTextClass::size_type n)
        : layout(n, false), params(p)
 {
        // packages
        array = false;
        color = false;
        graphics = false; // INSET_GRAPHICS: remove this when InsetFig is thrown.
-    graphicx = false;
+       graphicx = false;
        setspace = false;
        makeidx = false;
        verbatim = false;
@@ -74,7 +74,9 @@ LaTeXFeatures::LaTeXFeatures(BufferParams const & p, int n)
        NeedLyXMinipageIndent = false;
 }
 
-void LaTeXFeatures::require(string const & name) {
+
+void LaTeXFeatures::require(string const & name)
+{
        if (name == "array") {
                array = true;
        } else if (name == "color") {
@@ -121,7 +123,8 @@ void LaTeXFeatures::require(string const & name) {
        }
 }
 
-string LaTeXFeatures::getPackages()
+
+string const LaTeXFeatures::getPackages()
 {
        string packages;
        LyXTextClass const & tclass =
@@ -143,8 +146,8 @@ string LaTeXFeatures::getPackages()
        // makeidx.sty
        if (makeidx) {
                if (! tclass.provides(LyXTextClass::makeidx)
-                   && params.language != "french") // french provides
-                                                   // \index !
+                   && params.language->babel() != "french") // french provides
+                                                            // \index !
                        packages += "\\usepackage{makeidx}\n";
                packages += "\\makeindex\n";
        }
@@ -158,7 +161,7 @@ string LaTeXFeatures::getPackages()
                                + params.graphicsDriver + "]{graphicx}\n";
        }
 
-    // INSET_GRAPHICS: remove this when InsetFig is thrown.
+       // INSET_GRAPHICS: remove this when InsetFig is thrown.
        // graphics.sty
        if (graphics && params.graphicsDriver != "none") {
                if (params.graphicsDriver == "default")
@@ -200,22 +203,10 @@ string LaTeXFeatures::getPackages()
                packages += "\\doublespacing\n";
                break;
        case Spacing::Other:
-#ifdef HAVE_SSTREAM
                std::ostringstream value;
-#else
-               char val[30];
-               ostrstream value(val, 30);
-               
-#endif
                value << params.spacing.getValue(); // setw?
-#ifdef HAVE_SSTREAM
                packages += string("\\setstretch{") 
                          + value.str().c_str() + "}\n";
-#else
-               value << '\0';
-               packages += string("\\setstretch{") 
-                         + value.str() + "}\n";
-#endif
                break;
        }
 
@@ -273,7 +264,7 @@ string LaTeXFeatures::getPackages()
 }
 
 
-string LaTeXFeatures::getMacros()
+string const LaTeXFeatures::getMacros()
 {
        string macros;
 
@@ -330,7 +321,7 @@ string LaTeXFeatures::getMacros()
 }
 
 
-string LaTeXFeatures::getTClassPreamble()
+string const LaTeXFeatures::getTClassPreamble()
 {
        // the text class specific preamble 
        LyXTextClass const & tclass =
@@ -347,12 +338,13 @@ string LaTeXFeatures::getTClassPreamble()
 }      
 
 
-string LaTeXFeatures::getIncludedFiles()
+string const LaTeXFeatures::getIncludedFiles()
 {
        string sgmlpreamble;
-
-       for(FileMap::const_iterator fi=IncludedFiles.begin(); fi != IncludedFiles.end(); ++fi)
-               sgmlpreamble += "\n<!entity " + fi->first + " system \"" + fi->second + "\">";
+       FileMap::const_iterator end = IncludedFiles.end();
+       for(FileMap::const_iterator fi=IncludedFiles.begin(); fi != end; ++fi)
+               sgmlpreamble += "\n<!entity " + fi->first
+                       + " system \"" + fi->second + "\">";
 
        return sgmlpreamble;
 }