]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetLayout.cpp
tex2lyx: support for Spreadsheet and chess external templates
[lyx.git] / src / insets / InsetLayout.cpp
index 4408b9d0b3f2b0ab53d2311677a9847c8a431737..dee7e29f7a6083ff0fa4caa306c5a018b85b3353 100644 (file)
@@ -39,7 +39,7 @@ InsetLayout::InsetLayout() :
        passthru_(false), parbreakisnewline_(false), freespacing_(false), 
        keepempty_(false), forceltr_(false), 
        needprotect_(false), intoc_(false), spellcheck_(true), 
-       resetsfont_(true)
+       resetsfont_(true), display_(true)
 { 
        labelfont_.setColor(Color_error);
 }
@@ -81,6 +81,7 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
                IL_COUNTER,
                IL_CUSTOMPARS,
                IL_DECORATION,
+               IL_DISPLAY,
                IL_FONT,
                IL_FORCELTR,
                IL_FORCEPLAIN,
@@ -122,6 +123,7 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
                { "counter", IL_COUNTER},
                { "custompars", IL_CUSTOMPARS },
                { "decoration", IL_DECORATION },
+               { "display", IL_DISPLAY },
                { "end", IL_END },
                { "font", IL_FONT },
                { "forceltr", IL_FORCELTR },
@@ -157,7 +159,6 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
 
        lex.pushTable(elementTags);
 
-       FontInfo font = inherit_font;
        labelfont_ = inherit_font;
        bgcolor_ = Color_none;
        bool getout = false;
@@ -181,6 +182,14 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
                // way this sort of thing is handled in Layout::read(), namely, by
                // using the Lexer.
                case IL_LYXTYPE: {
+                       // make sure that we have the right sort of name.
+                       if (name_ != from_ascii("undefined")
+                           && name_.substr(0,5) != from_ascii("Flex:")) {
+                               LYXERR0("Flex insets must have names of the form `Flex:<name>'.\n"
+                                       "This one has the name `" << to_utf8(name_) << "'\n"
+                                       "Ignoring LyXType declaration.");
+                               break;
+                       }
                        string lt;
                        lex >> lt;
                        lyxtype_ = translateLyXType(lt);
@@ -345,6 +354,9 @@ bool InsetLayout::read(Lexer & lex, TextClass const & tclass)
                case IL_RESETSFONT:
                        lex >> resetsfont_;
                        break;
+               case IL_DISPLAY:
+                       lex >> display_;
+                       break;
                case IL_END:
                        getout = true;
                        break;