]> git.lyx.org Git - lyx.git/blobdiff - src/TextClass.cpp
At least for now, this has to be done differently.
[lyx.git] / src / TextClass.cpp
index 79e8b0e7d1e39c955bd13a4a67831eca0acbd9f5..75ff1d348262f1801cfeb7b775904b24f10d1b25 100644 (file)
@@ -62,7 +62,7 @@ private:
 };
 
 // Keep the changes documented in the Customization manual. 
-int const FORMAT = 14;
+int const FORMAT = 16;
 
 
 bool layout2layout(FileName const & filename, FileName const & tempfile)
@@ -127,6 +127,7 @@ InsetLayout DocumentClass::plain_insetlayout_;
 TextClass::TextClass()
 {
        outputType_ = LATEX;
+       outputFormat_ = "latex";
        columns_ = 1;
        sides_ = OneSide;
        secnumdepth_ = 3;
@@ -160,6 +161,7 @@ bool TextClass::readStyle(Lexer & lexrc, Layout & lay) const
 
 enum TextClassTags {
        TC_OUTPUTTYPE = 1,
+       TC_OUTPUTFORMAT,
        TC_INPUT,
        TC_STYLE,
        TC_DEFAULTSTYLE,
@@ -173,6 +175,7 @@ enum TextClassTags {
        TC_TOCDEPTH,
        TC_CLASSOPTIONS,
        TC_PREAMBLE,
+       TC_HTMLPREAMBLE,
        TC_PROVIDES,
        TC_REQUIRES,
        TC_LEFTMARGIN,
@@ -203,11 +206,13 @@ namespace {
                { "excludesmodule",  TC_EXCLUDESMODULE },
                { "float",           TC_FLOAT },
                { "format",          TC_FORMAT },
+               { "htmlpreamble",    TC_HTMLPREAMBLE },
                { "input",           TC_INPUT },
                { "insetlayout",     TC_INSETLAYOUT },
                { "leftmargin",      TC_LEFTMARGIN },
                { "nofloat",         TC_NOFLOAT },
                { "nostyle",         TC_NOSTYLE },
+               { "outputformat",    TC_OUTPUTFORMAT },
                { "outputtype",      TC_OUTPUTTYPE },
                { "pagestyle",       TC_PAGESTYLE },
                { "preamble",        TC_PREAMBLE },
@@ -352,8 +357,24 @@ TextClass::ReturnValues TextClass::read(Lexer & lexrc, ReadType rt)
                                format = lexrc.getInteger();
                        break;
 
-               case TC_OUTPUTTYPE:   // output type definition
+               case TC_OUTPUTFORMAT:
+                       if (lexrc.next())
+                               outputFormat_ = lexrc.getString();
+                       break;
+
+               case TC_OUTPUTTYPE:
                        readOutputType(lexrc);
+                       switch(outputType_) {
+                       case LATEX:
+                               outputFormat_ = "latex";
+                               break;
+                       case DOCBOOK:
+                               outputFormat_ = "docbook";
+                               break;
+                       case LITERATE:
+                               outputFormat_ = "literate";
+                               break;
+                       }
                        break;
 
                case TC_INPUT: // Include file
@@ -479,6 +500,10 @@ TextClass::ReturnValues TextClass::read(Lexer & lexrc, ReadType rt)
                        preamble_ = from_utf8(lexrc.getLongString("EndPreamble"));
                        break;
 
+               case TC_HTMLPREAMBLE:
+                       htmlpreamble_ = from_utf8(lexrc.getLongString("EndPreamble"));
+                       break;
+
                case TC_ADDTOPREAMBLE:
                        preamble_ += from_utf8(lexrc.getLongString("EndPreamble"));
                        break;