X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FTextClass.cpp;h=42169c1b5053c42ec0d755426ccb96c631571409;hb=69f838bbf3e5c1cd0eb1a64dfbf8de469dc10d97;hp=900d6b2634fcdbbf330477c821f9545aaaa43db7;hpb=6998e76495d4dedbc5dc11db8e0cf39b590fd674;p=lyx.git diff --git a/src/TextClass.cpp b/src/TextClass.cpp index 900d6b2634..42169c1b50 100644 --- a/src/TextClass.cpp +++ b/src/TextClass.cpp @@ -16,22 +16,19 @@ #include "TextClass.h" -#include "LayoutFile.h" #include "CiteEnginesList.h" -#include "Color.h" #include "Counters.h" #include "Floating.h" #include "FloatList.h" #include "Layout.h" +#include "LayoutFile.h" #include "Lexer.h" -#include "Font.h" #include "ModuleList.h" #include "frontends/alert.h" #include "support/lassert.h" #include "support/debug.h" -#include "support/ExceptionMessage.h" #include "support/FileName.h" #include "support/filetools.h" #include "support/gettext.h" @@ -62,7 +59,7 @@ namespace lyx { // You should also run the development/tools/updatelayouts.py script, // to update the format of all of our layout files. // -int const LAYOUT_FORMAT = 84; // tcuvelier: DocBook*TagType. +int const LAYOUT_FORMAT = 85; // tcuvelier: DocBookInnerTag. // Layout format for the current lyx file format. Controls which format is @@ -148,10 +145,10 @@ TextClass::TextClass() } -bool TextClass::readStyle(Lexer & lexrc, Layout & lay) const +bool TextClass::readStyle(Lexer & lexrc, Layout & lay, ReadType rt) const { LYXERR(Debug::TCLASS, "Reading style " << to_utf8(lay.name())); - if (!lay.read(lexrc, *this)) { + if (!lay.read(lexrc, *this, rt == VALIDATION)) { LYXERR0("Error parsing style `" << to_utf8(lay.name()) << '\''); return false; } @@ -515,7 +512,7 @@ TextClass::ReturnValues TextClass::read(Lexer & lexrc, ReadType rt) Layout lay; // Since we couldn't read the name, we just scan the rest // of the style and discard it. - error = !readStyle(lexrc, lay); + error = !readStyle(lexrc, lay, rt); break; } @@ -526,14 +523,14 @@ TextClass::ReturnValues TextClass::read(Lexer & lexrc, ReadType rt) // block. if (have_layout && !providestyle) { Layout & lay = operator[](name); - error = !readStyle(lexrc, lay); + error = !readStyle(lexrc, lay, rt); } // If the layout does not exist, then we want to create a new // one, but not if we are in a ModifyStyle block. else if (!have_layout && !modifystyle) { Layout layout; layout.setName(name); - error = !readStyle(lexrc, layout); + error = !readStyle(lexrc, layout, rt); if (!error) layoutlist_.push_back(layout); @@ -551,7 +548,7 @@ TextClass::ReturnValues TextClass::read(Lexer & lexrc, ReadType rt) else { Layout lay; // signal to coverity that we do not care about the result - (void)readStyle(lexrc, lay); + (void)readStyle(lexrc, lay, rt); } break; } @@ -1574,7 +1571,7 @@ bool TextClass::readFloat(Lexer & lexrc) } Floating fl(type, placement, ext, within, style, name, listname, listcommand, refprefix, allowed_placement, - htmltag, htmlattr, htmlstyle, docbooktag, docbookattr, + htmltag, htmlattr, htmlstyle, docbookattr, docbooktagtype, required, usesfloat, ispredefined, allowswide, allowssideways); floatlist_.newFloat(fl); @@ -1862,7 +1859,7 @@ Layout TextClass::createBasicLayout(docstring const & name, bool unknown) const defaultLayout = new Layout; defaultLayout->setUnknown(unknown); defaultLayout->setName(name); - if (!readStyle(lex, *defaultLayout)) { + if (!readStyle(lex, *defaultLayout, BASECLASS)) { // The only way this happens is because the hardcoded layout above // is wrong. LATTEST(false);