]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetExternal.cpp
Fix text frame drawing.
[lyx.git] / src / insets / InsetExternal.cpp
index 091b6149b85e7e3123dfb4c3b01596006bc1d487..31115a4a85b1d4b1e675ea66ea2f3996a8a5c5a6 100644 (file)
@@ -44,9 +44,7 @@
 
 #include <sstream>
 
-using std::endl;
 using std::string;
-using std::auto_ptr;
 using std::istringstream;
 using std::ostream;
 using std::ostringstream;
@@ -59,7 +57,7 @@ lyx::external::DisplayType const defaultDisplayType = lyx::external::NoDisplay;
 
 unsigned int const defaultLyxScale = 100;
 
-string defaultTemplateName = "RasterImage";
+string defaultTemplateName;
 
 } // namespace anon
 
@@ -132,9 +130,15 @@ Translator<DisplayType, string> const & displayTranslator()
 InsetExternalParams::InsetExternalParams()
        : display(defaultDisplayType),
          lyxscale(defaultLyxScale),
-         draft(false),
-         templatename_(defaultTemplateName)
-{}
+         draft(false)
+{
+       if (defaultTemplateName.empty()) {
+               external::TemplateManager const & etm =
+                       external::TemplateManager::get();
+               templatename_ = etm.getTemplates().begin()->first;
+       } else
+               templatename_ = defaultTemplateName;
+}
 
 
 namespace {
@@ -407,9 +411,9 @@ InsetExternal::InsetExternal(InsetExternal const & other)
 {}
 
 
-auto_ptr<Inset> InsetExternal::doClone() const
+Inset * InsetExternal::clone() const
 {
-       return auto_ptr<Inset>(new InsetExternal(*this));
+       return new InsetExternal(*this);
 }
 
 
@@ -477,6 +481,13 @@ bool InsetExternal::getStatus(Cursor & cur, FuncRequest const & cmd,
 }
 
 
+void InsetExternal::registerEmbeddedFiles(Buffer const &,
+       EmbeddedFiles & files, ParConstIterator const & pit) const
+{
+       files.registerFile(params_.filename.absFilename(), EmbeddedFile::AUTO, pit);
+}
+
+
 void InsetExternal::edit(Cursor & cur, bool)
 {
        InsetExternalMailer(*this).showDialog(&cur.bv());