]> git.lyx.org Git - features.git/blobdiff - src/insets/InsetLayout.cpp
New InsetLayout tag ParbreakIgnored
[features.git] / src / insets / InsetLayout.cpp
index b62affd3d911c27aa0c190e26b4b09c612aa712a..b523457c6017235932bf8feda6873287668dda8d 100644 (file)
@@ -41,7 +41,7 @@ InsetLayout::InsetLayout() :
        fixedwidthpreambleencoding_(false), htmlforcecss_ (false),
        htmlisblock_(true), multipar_(true), custompars_(true),
        forceplain_(false), passthru_(false), parbreakisnewline_(false),
-       freespacing_(false), keepempty_(false), forceltr_(false),
+       parbreakignored_(false), freespacing_(false), keepempty_(false), forceltr_(false),
        forceownlines_(false), needprotect_(false), needcprotect_(false),
        needmboxprotect_(false), intoc_(false), spellcheck_(true),
        resetsfont_(false), display_(true), forcelocalfontswitch_(false),
@@ -120,12 +120,15 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
                IL_LYXTYPE,
                IL_OBSOLETEDBY,
                IL_KEEPEMPTY,
+               IL_MENUSTRING,
                IL_MULTIPAR,
                IL_NEEDCPROTECT,
                IL_NEEDMBOXPROTECT,
                IL_NEEDPROTECT,
+               IL_NEWLINE_CMD,
                IL_PASSTHRU,
                IL_PASSTHRU_CHARS,
+               IL_PARBREAKIGNORED,
                IL_PARBREAKISNEWLINE,
                IL_PREAMBLE,
                IL_REQUIRES,
@@ -178,11 +181,14 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
                { "latextype", IL_LATEXTYPE },
                { "leftdelim", IL_LEFTDELIM },
                { "lyxtype", IL_LYXTYPE },
+               { "menustring", IL_MENUSTRING },
                { "multipar", IL_MULTIPAR },
                { "needcprotect", IL_NEEDCPROTECT },
                { "needmboxprotect", IL_NEEDMBOXPROTECT },
                { "needprotect", IL_NEEDPROTECT },
+               { "newlinecmd", IL_NEWLINE_CMD },
                { "obsoletedby", IL_OBSOLETEDBY },
+               { "parbreakignored", IL_PARBREAKIGNORED },
                { "parbreakisnewline", IL_PARBREAKISNEWLINE },
                { "passthru", IL_PASSTHRU },
                { "passthruchars", IL_PASSTHRU_CHARS },
@@ -251,6 +257,9 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
                case IL_LABELSTRING:
                        lex >> labelstring_;
                        break;
+               case IL_MENUSTRING:
+                       lex >> menustring_;
+                       break;
                case IL_DECORATION:
                        lex >> tmp;
                        decoration_ = translateDecoration(tmp);
@@ -317,6 +326,12 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
                case IL_PASSTHRU_CHARS:
                        lex >> passthru_chars_;
                        break;
+               case IL_NEWLINE_CMD:
+                       lex >> newline_cmd_;
+                       break;
+               case IL_PARBREAKIGNORED:
+                       lex >> parbreakignored_;
+                       break;
                case IL_PARBREAKISNEWLINE:
                        lex >> parbreakisnewline_;
                        break;
@@ -595,11 +610,13 @@ void InsetLayout::readArgument(Lexer & lex)
        arg.mandatory = false;
        arg.autoinsert = false;
        arg.insertcotext = false;
+       arg.insertonnewline = false;
        bool error = false;
        bool finished = false;
        arg.font = inherit_font;
        arg.labelfont = inherit_font;
        arg.is_toc_caption = false;
+       arg.free_spacing = false;
        arg.passthru = PT_INHERITED;
        arg.nodelims = false;
        string nr;
@@ -628,6 +645,9 @@ void InsetLayout::readArgument(Lexer & lex)
                } else if (tok == "insertcotext") {
                        lex.next();
                        arg.insertcotext = lex.getBool();
+               } else if (tok == "insertonnewline") {
+                       lex.next();
+                       arg.insertonnewline = lex.getBool();
                } else if (tok == "leftdelim") {
                        lex.next();
                        arg.ldelim = lex.getDocString();
@@ -653,6 +673,9 @@ void InsetLayout::readArgument(Lexer & lex)
                } else if (tok == "decoration") {
                        lex.next();
                        arg.decoration = lex.getString();
+               } else if (tok == "newlinecmd") {
+                       lex.next();
+                       arg.newlinecmd = lex.getString();
                } else if (tok == "font") {
                        arg.font = lyxRead(lex, arg.font);
                } else if (tok == "labelfont") {
@@ -672,6 +695,9 @@ void InsetLayout::readArgument(Lexer & lex)
                } else if (tok == "istoccaption") {
                        lex.next();
                        arg.is_toc_caption = lex.getBool();
+               } else if (tok == "freespacing") {
+                       lex.next();
+                       arg.free_spacing = lex.getBool();
                } else {
                        lex.printError("Unknown tag");
                        error = true;