]> git.lyx.org Git - lyx.git/blobdiff - src/factory.cpp
* gcc does not like missing characters in keywords
[lyx.git] / src / factory.cpp
index 61887ed3484af1dae39c904faed84d1478a1d95a..1785887207d487941f7c7c09d305fa188ef5fa56 100644 (file)
@@ -18,7 +18,6 @@
 #include "debug.h"
 #include "FloatList.h"
 #include "FuncRequest.h"
-#include "Color.h"
 #include "Lexer.h"
 #include "LyX.h"
 
@@ -147,7 +146,7 @@ Inset * createInset(BufferView * bv, FuncRequest const & cmd)
                        return new InsetOptArg(params);
 
                case LFUN_BIBITEM_INSERT:
-                       return new InsetBibitem(InsetCommandParams("bibitem"));
+                       return new InsetBibitem(InsetCommandParams(BIBITEM_CODE));
 
                case LFUN_FLOAT_INSERT: {
                        // check if the float type exists
@@ -182,7 +181,7 @@ Inset * createInset(BufferView * bv, FuncRequest const & cmd)
                        return new InsetIndex(params);
 
                case LFUN_NOMENCL_INSERT: {
-                       InsetCommandParams icp("nomenclature");
+                       InsetCommandParams icp(NOMENCL_CODE);
                        icp["symbol"] = cmd.argument().empty() ?
                                bv->cursor().innerText()->getStringToIndex(bv->cursor()) :
                                cmd.argument();
@@ -206,18 +205,18 @@ Inset * createInset(BufferView * bv, FuncRequest const & cmd)
                        auto_ptr<InsetCaption> inset(new InsetCaption(params));
                        inset->setAutoBreakRows(true);
                        inset->setDrawFrame(true);
-                       inset->setFrameColor(Color::captionframe);
+                       inset->setFrameColor(Color_captionframe);
                        return inset.release();
                }
 
                case LFUN_INDEX_PRINT:
-                       return new InsetPrintIndex(InsetCommandParams("index_print"));
+                       return new InsetPrintIndex(InsetCommandParams(INDEX_PRINT_CODE));
 
                case LFUN_NOMENCL_PRINT:
-                       return new InsetPrintNomencl(InsetCommandParams("nomencl_print"));
+                       return new InsetPrintNomencl(InsetCommandParams(NOMENCL_PRINT_CODE));
 
                case LFUN_TOC_INSERT:
-                       return new InsetTOC(InsetCommandParams("toc"));
+                       return new InsetTOC(InsetCommandParams(TOC_CODE));
 
                case LFUN_ENVIRONMENT_INSERT:
                        return new InsetEnvironment(params, cmd.argument());
@@ -237,103 +236,104 @@ Inset * createInset(BufferView * bv, FuncRequest const & cmd)
                                lyxerr << "No such inset '" << name << "'.";
                                return 0;
                        
-                               case BIBITEM_CODE: {
-                                       InsetCommandParams icp(name);
-                                       InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
-                                       return new InsetBibitem(icp);
-                               }
-               
-                               case BIBTEX_CODE: {
-                                       InsetCommandParams icp(name);
-                                       InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
-                                       return new InsetBibtex(icp);
-                               }
-
-                               case CITE_CODE: {
-                                       InsetCommandParams icp("citation");
-                                       InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
-                                       return new InsetCitation(icp);
-                               }
-               
-                               case ERT_CODE: {
-                                       InsetCollapsable::CollapseStatus st;
-                                       InsetERTMailer::string2params(to_utf8(cmd.argument()), st);
-                                       return new InsetERT(params, st);
-                               }
-
-                               case LISTINGS_CODE: {
-                                       InsetListingsParams par;
-                                       InsetListingsMailer::string2params(to_utf8(cmd.argument()), par);
-                                       return new InsetListings(params, par);
-                               }
-
-                               case EXTERNAL_CODE: {
-                                       Buffer const & buffer = bv->buffer();
-                                       InsetExternalParams iep;
-                                       InsetExternalMailer::string2params(to_utf8(cmd.argument()), buffer, iep);
-                                       auto_ptr<InsetExternal> inset(new InsetExternal);
-                                       inset->setParams(iep, buffer);
-                                       return inset.release();
-                               }
-
-                               case GRAPHICS_CODE: {
-                                       Buffer const & buffer = bv->buffer();
-                                       InsetGraphicsParams igp;
-                                       InsetGraphicsMailer::string2params(to_utf8(cmd.argument()), buffer, igp);
-                                       auto_ptr<InsetGraphics> inset(new InsetGraphics);
-                                       inset->setParams(igp);
-                                       return inset.release();
-                               }
-
-                               case HYPERLINK_CODE: {
-                                       InsetCommandParams icp(name);
-                                       InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
-                                       return new InsetHyperlink(icp);
-                               }
-
-                               case INCLUDE_CODE: {
-                                       InsetCommandParams iip(name);
-                                       InsetIncludeMailer::string2params(to_utf8(cmd.argument()), iip);
-                                       return new InsetInclude(iip);
-                               }
-
+                       case BIBITEM_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
+                               return new InsetBibitem(icp);
+                       }
+                       
+                       case BIBTEX_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
+                               return new InsetBibtex(icp);
+                       }
+                       
+                       case CITE_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
+                               return new InsetCitation(icp);
+                       }
+                       
+                       case ERT_CODE: {
+                               InsetCollapsable::CollapseStatus st;
+                               InsetERTMailer::string2params(to_utf8(cmd.argument()), st);
+                               return new InsetERT(params, st);
+                       }
+                               
+                       case LISTINGS_CODE: {
+                               InsetListingsParams par;
+                               InsetListingsMailer::string2params(to_utf8(cmd.argument()), par);
+                               return new InsetListings(params, par);
+                       }
+                       
+                       case EXTERNAL_CODE: {
+                               Buffer const & buffer = bv->buffer();
+                               InsetExternalParams iep;
+                               InsetExternalMailer::string2params(to_utf8(cmd.argument()), buffer, iep);
+                               auto_ptr<InsetExternal> inset(new InsetExternal);
+                               inset->setParams(iep, buffer);
+                               return inset.release();
+                       }
+                       
+                       case GRAPHICS_CODE: {
+                               Buffer const & buffer = bv->buffer();
+                               InsetGraphicsParams igp;
+                               InsetGraphicsMailer::string2params(to_utf8(cmd.argument()), buffer, igp);
+                               auto_ptr<InsetGraphics> inset(new InsetGraphics);
+                               inset->setParams(igp);
+                               return inset.release();
+                       }
+                       
+                       case HYPERLINK_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
+                               return new InsetHyperlink(icp);
+                       }
+                       
+                       case INCLUDE_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
+                               return new InsetInclude(icp);
+                       }
+                       
                        case INDEX_CODE:
                                return new InsetIndex(params);
-
-                               case NOMENCL_CODE: {
-                                       InsetCommandParams icp(name);
-                                       InsetCommandMailer::string2params(name, lyx::to_utf8(cmd.argument()), icp);
-                                       return new InsetNomencl(icp);
-                               }
-
-                               case LABEL_CODE: {
-                                       InsetCommandParams icp(name);
-                                       InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
-                                       return new InsetLabel(icp);
-                               }
-
-                               case REF_CODE: {
-                                       InsetCommandParams icp(name);
-                                       InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
-                                       return new InsetRef(icp, bv->buffer());
-                               }
-
-                               case TOC_CODE: {
-                                       InsetCommandParams icp("toc");
-                                       InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
-                                       return new InsetTOC(icp);
-                               }
-
-                               case VSPACE_CODE: {
-                                       VSpace vspace;
-                                       InsetVSpaceMailer::string2params(to_utf8(cmd.argument()), vspace);
-                                       return new InsetVSpace(vspace);
-                               }
-               
-                               default:
-                                       lyxerr << "Inset '" << name << "' not permitted with LFUN_INSET_INSERT."
-                                                       << std::endl;
-                                       return 0;
+                       
+                       case NOMENCL_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, lyx::to_utf8(cmd.argument()), icp);
+                               return new InsetNomencl(icp);
+                       }
+                       
+                       case LABEL_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
+                               return new InsetLabel(icp);
+                       }
+                       
+                       case REF_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
+                               return new InsetRef(icp, bv->buffer());
+                       }
+                       
+                       case TOC_CODE: {
+                               InsetCommandParams icp(code);
+                               InsetCommandMailer::string2params(name, to_utf8(cmd.argument()), icp);
+                               return new InsetTOC(icp);
+                       }
+                       
+                       case VSPACE_CODE: {
+                               VSpace vspace;
+                               InsetVSpaceMailer::string2params(to_utf8(cmd.argument()), vspace);
+                               return new InsetVSpace(vspace);
+                       }
+                       
+                       default:
+                               lyxerr << "Inset '" << name << "' not permitted with LFUN_INSET_INSERT."
+                                               << std::endl;
+                               return 0;
+                       
                        }
                        } //end LFUN_INSET_INSERT
 
@@ -417,7 +417,7 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
                //we do not know in advance that we're dealing with a command inset.
                //Worst case, we could put it in each case below. Better, we could
                //pass the lexer to the constructor and let the params be built there.
-               InsetCommandParams inscmd(insetType);
+               InsetCommandParams inscmd(code);
                inscmd.read(lex);
 
                switch (code) {
@@ -433,14 +433,9 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
                        case HYPERLINK_CODE:
                                inset.reset(new InsetHyperlink(inscmd));
                                break;
-                       // FIXME Currently non-functional, since InsetInclude
-                       // does not write itself as a CommandInset.
                        case INCLUDE_CODE:
                                inset.reset(new InsetInclude(inscmd));
                                break;
-                       case INDEX_CODE:
-                               inset.reset(new InsetIndex(buf.params()));
-                               break;
                        case INDEX_PRINT_CODE:
                                inset.reset(new InsetPrintIndex(inscmd));
                                break;
@@ -497,10 +492,6 @@ Inset * readInset(Lexer & lex, Buffer const & buf)
                } else if (tmptok == "Branch") {
                        inset.reset(new InsetBranch(buf.params(),
                                                    InsetBranchParams()));
-               } else if (tmptok == "Include") {
-                       //FIXME
-                       InsetCommandParams p("include");
-                       inset.reset(new InsetInclude(p));
                } else if (tmptok == "Environment") {
                        lex.next();
                        inset.reset(new InsetEnvironment(buf.params(), lex.getDocString()));