]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetexternal.C
* src/LyXAction.C: mark goto-clear-bookmark as working without buffer
[lyx.git] / src / insets / insetexternal.C
index 6726d9859e69bbedae220d330ddf67d5ac4d6d6c..910d3d071a55a3d2230672a217d987144652de64 100644 (file)
@@ -70,11 +70,11 @@ namespace external {
 
 TempName::TempName()
 {
-       string const tempname = support::tempName(string(), "lyxext");
+       support::FileName const tempname(support::tempName(support::FileName(), "lyxext"));
        // FIXME: This is unsafe
-       support::unlink(support::FileName(tempname));
+       support::unlink(tempname);
        // must have an extension for the converter code to work correctly.
-       tempname_ = support::FileName(tempname + ".tmp");
+       tempname_ = support::FileName(tempname.absFilename() + ".tmp");
 }
 
 
@@ -290,7 +290,7 @@ bool InsetExternalParams::read(Buffer const & buffer, LyXLex & lex)
                        break;
 
                case EX_FILENAME: {
-                       lex.next();
+                       lex.eatLine();
                        string const name = lex.getString();
                        filename.set(name, buffer.filePath());
                        break;
@@ -482,10 +482,12 @@ void InsetExternal::edit(LCursor & cur, bool)
 }
 
 
-void InsetExternal::metrics(MetricsInfo & mi, Dimension & dim) const
+bool InsetExternal::metrics(MetricsInfo & mi, Dimension & dim) const
 {
        renderer_->metrics(mi, dim);
+       bool const changed = dim_ != dim;
        dim_ = dim;
+       return changed;
 }
 
 
@@ -778,7 +780,7 @@ void InsetExternal::validate(LaTeXFeatures & features) const
        for (; it != end; ++it) {
                string const preamble = etm.getPreambleDefByName(*it);
                if (!preamble.empty())
-                       features.addExternalPreamble(preamble);
+                       features.addPreambleSnippet(preamble);
        }
 }