]> git.lyx.org Git - lyx.git/blobdiff - src/factory.C
changelogs
[lyx.git] / src / factory.C
index e42cb3210149d7d482f4d045327014d67d89a69c..03a285a3c3e0e007b6eea7644f1f28878602148c 100644 (file)
 #include "frontends/LyXView.h"
 
 #include "support/lstrings.h"
-#include "support/std_sstream.h"
 
 #include <boost/assert.hpp>
 
+#include <sstream>
+
 using lyx::support::compare_ascii_no_case;
 
 using std::auto_ptr;
@@ -186,7 +187,7 @@ InsetBase * createInset(BufferView * bv, FuncRequest const & cmd)
                if (!up) {
                        auto_ptr<InsetCaption> inset(new InsetCaption(params));
                        inset->setAutoBreakRows(true);
-                       inset->setDrawFrame(InsetText::LOCKED);
+                       inset->setDrawFrame(true);
                        inset->setFrameColor(LColor::captionframe);
                        return inset.release();
                }
@@ -469,6 +470,17 @@ InsetBase * readInset(LyXLex & lex, Buffer const & buf)
                }
 
                inset->read(buf, lex);
+
+#ifdef WITH_WARNINGS
+#warning hack..
+#endif
+               if (inset->lyxCode() == InsetBase::MATHMACRO_CODE) {
+                       MathMacroTemplate const * tmpl =
+                               static_cast<MathMacroTemplate*>(inset.get());
+                       MacroTable::globalMacros().insert
+                               (tmpl->name(), tmpl->asMacroData());
+                       lyxerr << "creating local macro " << tmpl->name() << endl;
+               }
        }
 
        return inset.release();