]> git.lyx.org Git - lyx.git/blobdiff - src/LaTeXFeatures.C
namespace grfx -> lyx::graphics
[lyx.git] / src / LaTeXFeatures.C
index 3fd615848002e728ae19946b1a33c2901dd1ebfb..5380932443a7eb72ba229aa3c208eed49ee40e90 100644 (file)
 #include "language.h"
 #include "encoding.h"
 #include "LString.h"
+#include "Lsstream.h"
 
 #include "support/filetools.h"
 #include "support/lstrings.h"
 
+using namespace lyx::support;
+
 using lyx::textclass_type;
 
 using std::endl;
@@ -37,6 +40,14 @@ LaTeXFeatures::LaTeXFeatures(BufferParams const & p)
 {}
 
 
+bool LaTeXFeatures::useBabel() const
+{
+       return lyxrc.language_use_babel ||
+               bufferParams().language->lang() != lyxrc.default_language ||
+               this->hasLanguages();
+}
+
+
 void LaTeXFeatures::require(string const & name)
 {
        if (isRequired(name))
@@ -175,12 +186,12 @@ int const nb_simplefeatures = sizeof(simplefeatures) / sizeof(char const *);
 
 }
 
+
 string const LaTeXFeatures::getPackages() const
 {
        ostringstream packages;
        LyXTextClass const & tclass = params.getLyXTextClass();
 
-
        //
        //  These are all the 'simple' includes.  i.e
        //  packages which we just \usepackage{package}
@@ -197,7 +208,8 @@ string const LaTeXFeatures::getPackages() const
        //
 
        if (isRequired("amsmath")
-           && ! tclass.provides(LyXTextClass::amsmath)) {
+           && !tclass.provides(LyXTextClass::amsmath)
+           && params.use_amsmath != BufferParams::AMS_OFF) {
                packages << "\\usepackage{amsmath}\n";
        }
 
@@ -263,7 +275,7 @@ string const LaTeXFeatures::getPackages() const
        }
 
        // amssymb.sty
-       if (isRequired("amssymb") || params.use_amsmath)
+       if (isRequired("amssymb") || params.use_amsmath == BufferParams::AMS_ON)
                packages << "\\usepackage{amssymb}\n";
        // url.sty
        if (isRequired("url") && ! tclass.provides(LyXTextClass::url))