]> git.lyx.org Git - lyx.git/blobdiff - src/factory.cpp
fix "make check" with gcc 4.3
[lyx.git] / src / factory.cpp
index 01e8c72652e62f901ad3387094eb0f2d4282b00b..e390b228c81e6f1e2d2a612983b1481dd53e45e7 100644 (file)
@@ -44,6 +44,7 @@
 #include "insets/InsetNote.h"
 #include "insets/InsetBox.h"
 #include "insets/InsetBranch.h"
+#include "insets/InsetPhantom.h"
 #include "insets/InsetOptArg.h"
 #include "insets/InsetNewpage.h"
 #include "insets/InsetRef.h"
@@ -126,6 +127,13 @@ Inset * createInsetHelper(Buffer & buf, FuncRequest const & cmd)
                        return new InsetBranch(buf, InsetBranchParams(arg));
                }
 
+               case LFUN_PHANTOM_INSERT: {
+                       string arg = cmd.getArg(0);
+                       if (arg.empty())
+                               arg = "Phantom";
+                       return new InsetPhantom(buf, arg);
+               }
+
                case LFUN_ERT_INSERT:
                        return new InsetERT(buf);
 
@@ -330,12 +338,17 @@ Inset * createInsetHelper(Buffer & buf, FuncRequest const & cmd)
                                break;
                        }
                        InsetSpaceParams isp;
+                       // The tests for isp.math might be disabled after a file format change
                        if (name == "normal")
                                isp.kind = InsetSpaceParams::NORMAL;
                        else if (name == "protected")
                                isp.kind = InsetSpaceParams::PROTECTED;
                        else if (name == "thin")
                                isp.kind = InsetSpaceParams::THIN;
+                       else if (isp.math && name == "med")
+                               isp.kind = InsetSpaceParams::MEDIUM;
+                       else if (isp.math && name == "thick")
+                               isp.kind = InsetSpaceParams::THICK;
                        else if (name == "quad")
                                isp.kind = InsetSpaceParams::QUAD;
                        else if (name == "qquad")
@@ -346,6 +359,10 @@ Inset * createInsetHelper(Buffer & buf, FuncRequest const & cmd)
                                isp.kind = InsetSpaceParams::ENSKIP;
                        else if (name == "negthinspace")
                                isp.kind = InsetSpaceParams::NEGTHIN;
+                       else if (isp.math && name == "negmedspace")
+                               isp.kind = InsetSpaceParams::NEGMEDIUM;
+                       else if (isp.math && name == "negthickspace")
+                               isp.kind = InsetSpaceParams::NEGTHICK;
                        else if (name == "hfill")
                                isp.kind = InsetSpaceParams::HFILL;
                        else if (name == "hfill*")
@@ -509,11 +526,13 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
                } else if (tmptok == "Box") {
                        inset.reset(new InsetBox(buf, tmptok));
                } else if (tmptok == "Flex") {
-                       lex.next();
+                       lex.eatLine();
                        string s = lex.getString();
                        inset.reset(new InsetFlex(buf, s));
                } else if (tmptok == "Branch") {
                        inset.reset(new InsetBranch(buf, InsetBranchParams()));
+               } else if (tmptok == "Phantom") {
+                       inset.reset(new InsetPhantom(buf, tmptok));
                } else if (tmptok == "ERT") {
                        inset.reset(new InsetERT(buf));
                } else if (tmptok == "listings") {