X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetGraphics.cpp;h=8e95db2e229a8b5c9d5dc25eced2f5cb0d67b480;hb=1cdd5fcb6f76ef8066707c521eef0c01cead00dd;hp=dc79a017e0c763e279c9c0ebff1b72857e9c9d30;hpb=1b6803bc7b73f08317f1dec593d9e148249a8f4c;p=lyx.git diff --git a/src/insets/InsetGraphics.cpp b/src/insets/InsetGraphics.cpp index dc79a017e0..8e95db2e22 100644 --- a/src/insets/InsetGraphics.cpp +++ b/src/insets/InsetGraphics.cpp @@ -490,7 +490,7 @@ copyToDirIfNeeded(DocFileName const & file, string const & dir) return make_pair(IDENTICAL_PATHS, file_in); string mangled = file.mangledFileName(); - if (file.isZipped()) { + if (formats.isZippedFile(file)) { // We need to change _eps.gz to .eps.gz. The mangled name is // still unique because of the counter in mangledFileName(). // We can't just call mangledFileName() with the zip @@ -616,7 +616,7 @@ string InsetGraphics::prepareFile(OutputParams const & runparams) const // If the file is compressed and we have specified that it // should not be uncompressed, then just return its name and // let LaTeX do the rest! - if (params().filename.isZipped()) { + if (formats.isZippedFile(params().filename)) { if (params().noUnzip) { // We don't know whether latex can actually handle // this file, but we can't check, because that would @@ -755,10 +755,20 @@ void InsetGraphics::latex(otexstream & os, bool const file_exists = !params().filename.empty() && params().filename.isReadableFile(); - string const message = file_exists ? - string() : string("bb = 0 0 200 100, draft, type=eps"); - // if !message.empty() then there was no existing file - // "filename" found. In this case LaTeX + string message; + if (!file_exists) { + if (params().bb.empty()) + message = "bb = 0 0 200 100"; + if (!params().draft) { + if (!message.empty()) + message += ", "; + message += "draft"; + } + if (!message.empty()) + message += ", "; + message += "type=eps"; + } + // If no existing file "filename" was found LaTeX // draws only a rectangle with the above bb and the // not found filename in it. LYXERR(Debug::GRAPHICS, "\tMessage = \"" << message << '\"'); @@ -789,7 +799,8 @@ void InsetGraphics::latex(otexstream & os, // Convert the file if necessary. // Remove the extension so LaTeX will use whatever is appropriate // (when there are several versions in different formats) - latex_str += prepareFile(runparams); + string file_path = prepareFile(runparams); + latex_str += file_path; latex_str += '}' + after; // FIXME UNICODE os << from_utf8(latex_str); @@ -998,9 +1009,7 @@ void InsetGraphics::validate(LaTeXFeatures & features) const features.require("graphicx"); if (features.runparams().nice) { - Buffer const * masterBuffer = features.buffer().masterBuffer(); - string const rel_file = removeExtension( - params().filename.relFileName(masterBuffer->filePath())); + string const rel_file = params().filename.onlyFileNameWithoutExt(); if (contains(rel_file, ".")) features.require("lyxdot"); } @@ -1047,9 +1056,9 @@ void InsetGraphics::addToToc(DocIterator const & cpit) const } -docstring InsetGraphics::contextMenuName() const +string InsetGraphics::contextMenuName() const { - return from_ascii("context-graphics"); + return "context-graphics"; }