X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffactory.cpp;h=60eb245847ca91b1aef6b28f0c6415e3c82b780a;hb=608603a31d6ae4e3d08ae4e9c18a11d9e705dcf4;hp=333739943123eecae1b66d046101d5f55d37a036;hpb=5008ee540f84715cd10e87f3fa0cd5dc7b974784;p=lyx.git diff --git a/src/factory.cpp b/src/factory.cpp index 3337399431..60eb245847 100644 --- a/src/factory.cpp +++ b/src/factory.cpp @@ -21,15 +21,15 @@ #include "Color.h" #include "Lexer.h" #include "LyX.h" -#include "Paragraph.h" #include "insets/InsetBibitem.h" #include "insets/InsetBibtex.h" #include "insets/InsetCaption.h" #include "insets/InsetCitation.h" #include "insets/InsetCharStyle.h" -#include "insets/InsetEnv.h" +#include "insets/InsetEnvironment.h" #include "insets/InsetERT.h" +#include "insets/InsetListings.h" #include "insets/InsetExternal.h" #include "insets/InsetFloat.h" #include "insets/InsetFloatList.h" @@ -58,7 +58,7 @@ #include "mathed/MathMacroTemplate.h" #include "mathed/InsetMathHull.h" -#include "frontends/Alert.h" +#include "frontends/alert.h" #include "support/lstrings.h" #include "support/ExceptionMessage.h" @@ -80,7 +80,7 @@ using std::endl; using std::string; -InsetBase * createInset(BufferView * bv, FuncRequest const & cmd) +Inset * createInset(BufferView * bv, FuncRequest const & cmd) { BufferParams const & params = bv->buffer()->params(); @@ -104,7 +104,7 @@ InsetBase * createInset(BufferView * bv, FuncRequest const & cmd) case LFUN_CHARSTYLE_INSERT: { string s = cmd.getArg(0); - LyXTextClass tclass = params.getLyXTextClass(); + TextClass tclass = params.getTextClass(); CharStyles::iterator found_cs = tclass.charstyle(s); if (found_cs != tclass.charstyles().end()) return new InsetCharStyle(params, found_cs); @@ -136,6 +136,9 @@ InsetBase * createInset(BufferView * bv, FuncRequest const & cmd) case LFUN_ERT_INSERT: return new InsetERT(params); + case LFUN_LISTING_INSERT: + return new InsetListings(params); + case LFUN_FOOTNOTE_INSERT: return new InsetFoot(params); @@ -151,7 +154,7 @@ InsetBase * createInset(BufferView * bv, FuncRequest const & cmd) case LFUN_FLOAT_INSERT: { // check if the float type exists string const argument = to_utf8(cmd.argument()); - if (params.getLyXTextClass().floats().typeExist(argument)) + if (params.getTextClass().floats().typeExist(argument)) return new InsetFloat(params, argument); lyxerr << "Non-existent float type: " << argument << endl; return 0; @@ -160,7 +163,7 @@ InsetBase * createInset(BufferView * bv, FuncRequest const & cmd) case LFUN_FLOAT_WIDE_INSERT: { // check if the float type exists string const argument = to_utf8(cmd.argument()); - if (params.getLyXTextClass().floats().typeExist(argument)) { + if (params.getTextClass().floats().typeExist(argument)) { auto_ptr p(new InsetFloat(params, argument)); p->wide(true, params); return p.release(); @@ -261,6 +264,11 @@ InsetBase * createInset(BufferView * bv, FuncRequest const & cmd) InsetERTMailer::string2params(to_utf8(cmd.argument()), st); return new InsetERT(params, st); + } else if (name == "listings") { + InsetListingsParams par; + InsetListingsMailer::string2params(to_utf8(cmd.argument()), par); + return new InsetListings(params, par); + } else if (name == "external") { Buffer const & buffer = *bv->buffer(); InsetExternalParams iep; @@ -372,7 +380,7 @@ InsetBase * createInset(BufferView * bv, FuncRequest const & cmd) } -InsetBase * readInset(Lexer & lex, Buffer const & buf) +Inset * readInset(Lexer & lex, Buffer const & buf) { // consistency check if (lex.getString() != "\\begin_inset") { @@ -380,9 +388,9 @@ InsetBase * readInset(Lexer & lex, Buffer const & buf) << endl; } - auto_ptr inset; + auto_ptr inset; - LyXTextClass tclass = buf.params().getLyXTextClass(); + TextClass tclass = buf.params().getTextClass(); lex.next(); string tmptok = lex.getString(); @@ -486,6 +494,8 @@ InsetBase * readInset(Lexer & lex, Buffer const & buf) inset.reset(new InsetEnvironment(buf.params(), lex.getString())); } else if (tmptok == "ERT") { inset.reset(new InsetERT(buf.params())); + } else if (tmptok == "listings") { + inset.reset(new InsetListings(buf.params())); } else if (tmptok == "InsetSpace") { inset.reset(new InsetSpace); } else if (tmptok == "Tabular") { @@ -531,7 +541,7 @@ InsetBase * readInset(Lexer & lex, Buffer const & buf) #ifdef WITH_WARNINGS #warning hack.. #endif - if (inset->lyxCode() == InsetBase::MATHMACRO_CODE) { + if (inset->lyxCode() == Inset::MATHMACRO_CODE) { MathMacroTemplate const * tmpl = static_cast(inset.get()); MacroTable::globalMacros().insert