]> git.lyx.org Git - lyx.git/blobdiff - src/factory.cpp
Change the "empty layout" to the "plain layout", to try to avoid confusion.
[lyx.git] / src / factory.cpp
index b50b64abd1ad9fc60dba30682eaf7e45b55e07cc..eba16dcc30bf7782fa4838363e8c1032b6feba0f 100644 (file)
@@ -25,7 +25,6 @@
 #include "insets/InsetCaption.h"
 #include "insets/InsetCitation.h"
 #include "insets/InsetFlex.h"
-#include "insets/InsetEnvironment.h"
 #include "insets/InsetERT.h"
 #include "insets/InsetListings.h"
 #include "insets/InsetExternal.h"
@@ -64,7 +63,7 @@
 #include "support/lstrings.h"
 #include "support/ExceptionMessage.h"
 
-#include <boost/assert.hpp>
+#include "support/lassert.h"
 
 #include <sstream>
 
@@ -103,7 +102,7 @@ Inset * createInsetHelper(Buffer & buf, FuncRequest const & cmd)
 
                case LFUN_FLEX_INSERT: {
                        string s = cmd.getArg(0);
-                       return new InsetFlex(buf, buf.params().documentClassPtr(), s);
+                       return new InsetFlex(buf, s);
                }
 
                case LFUN_NOTE_INSERT: {
@@ -142,9 +141,6 @@ Inset * createInsetHelper(Buffer & buf, FuncRequest const & cmd)
                case LFUN_OPTIONAL_INSERT:
                        return new InsetOptArg(buf);
 
-               case LFUN_BIBITEM_INSERT:
-                       return new InsetBibitem(InsetCommandParams(BIBITEM_CODE));
-
                case LFUN_FLOAT_INSERT: {
                        // check if the float type exists
                        string const argument = to_utf8(cmd.argument());
@@ -207,11 +203,11 @@ Inset * createInsetHelper(Buffer & buf, FuncRequest const & cmd)
                case LFUN_TOC_INSERT:
                        return new InsetTOC(InsetCommandParams(TOC_CODE));
 
-               case LFUN_ENVIRONMENT_INSERT:
-                       return new InsetEnvironment(buf, cmd.argument());
-
-               case LFUN_INFO_INSERT:
-                       return new InsetInfo(buf, to_utf8(cmd.argument()));
+               case LFUN_INFO_INSERT: {
+                       InsetInfo * inset = new InsetInfo(buf, to_utf8(cmd.argument()));
+                       inset->updateInfo();
+                       return inset;
+               }
 
                case LFUN_INSET_INSERT: {
                        string const name = cmd.getArg(0);
@@ -224,13 +220,13 @@ Inset * createInsetHelper(Buffer & buf, FuncRequest const & cmd)
                        case BIBITEM_CODE: {
                                InsetCommandParams icp(code);
                                InsetCommand::string2params(name, to_utf8(cmd.argument()), icp);
-                               return new InsetBibitem(icp);
+                               return new InsetBibitem(buf, icp);
                        }
                        
                        case BIBTEX_CODE: {
                                InsetCommandParams icp(code);
                                InsetCommand::string2params(name, to_utf8(cmd.argument()), icp);
-                               return new InsetBibtex(icp);
+                               return new InsetBibtex(buf, icp);
                        }
                        
                        case CITE_CODE: {
@@ -392,7 +388,7 @@ Inset * createInsetHelper(Buffer & buf, FuncRequest const & cmd)
                if (message.type_ == ErrorException) {
                        // This should never happen!
                        Alert::error(message.title_, message.details_);
-                       LyX::cref().exit(1);
+                       lyx_exit(1);
                } else if (message.type_ == WarningException) {
                        Alert::warning(message.title_, message.details_);
                        return 0;
@@ -420,8 +416,8 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
 
        auto_ptr<Inset> inset;
 
-       lex.next();
-       string tmptok = lex.getString();
+       string tmptok;
+       lex >> tmptok;
 
        // test the different insets
        
@@ -448,10 +444,10 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
 
                switch (code) {
                        case BIBITEM_CODE:
-                               inset.reset(new InsetBibitem(inscmd));
+                               inset.reset(new InsetBibitem(buf, inscmd));
                                break;
                        case BIBTEX_CODE:
-                               inset.reset(new InsetBibtex(inscmd));
+                               inset.reset(new InsetBibtex(buf, inscmd));
                                break;
                        case CITE_CODE: 
                                inset.reset(new InsetCitation(inscmd));
@@ -475,8 +471,9 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
                                inset.reset(new InsetPrintNomencl(inscmd));
                                break;
                        case REF_CODE:
-                               if (!inscmd["name"].empty() || !inscmd["reference"].empty())
-                                       inset.reset(new InsetRef(buf, inscmd));
+                               if (inscmd["name"].empty() && inscmd["reference"].empty())
+                                       return 0;
+                               inset.reset(new InsetRef(buf, inscmd));
                                break;
                        case TOC_CODE:
                                inset.reset(new InsetTOC(inscmd));
@@ -514,22 +511,17 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
                } else if (tmptok == "Flex") {
                        lex.next();
                        string s = lex.getString();
-                       inset.reset(new InsetFlex(buf, 
-                               buf.params().documentClassPtr(), s));
+                       inset.reset(new InsetFlex(buf, s));
                } else if (tmptok == "Branch") {
-                       inset.reset(new InsetBranch(buf,
-                                                   InsetBranchParams()));
-               } else if (tmptok == "Environment") {
-                       lex.next();
-                       inset.reset(new InsetEnvironment(buf, lex.getDocString()));
+                       inset.reset(new InsetBranch(buf, InsetBranchParams()));
                } else if (tmptok == "ERT") {
                        inset.reset(new InsetERT(buf));
                } else if (tmptok == "listings") {
                        inset.reset(new InsetListings(buf));
-               } else if (tmptok == "Space") {
+               } else if (tmptok == "space") {
                        inset.reset(new InsetSpace);
                } else if (tmptok == "Tabular") {
-                       inset.reset(new InsetTabular(buf));
+                       inset.reset(new InsetTabular(const_cast<Buffer &>(buf)));
                } else if (tmptok == "Text") {
                        inset.reset(new InsetText(buf));
                } else if (tmptok == "VSpace") {
@@ -552,10 +544,6 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
                        lex.next();
                        string tmptok = lex.getString();
                        inset.reset(new InsetWrap(buf, tmptok));
-#if 0
-               } else if (tmptok == "Theorem") {
-                       inset.reset(new InsetList);
-#endif
                } else if (tmptok == "Caption") {
                        inset.reset(new InsetCaption(buf));
                } else if (tmptok == "Index") {