#include "Buffer.h"
#include "Cursor.h"
-#include "support/debug.h"
#include "DispatchResult.h"
#include "Exporter.h"
#include "FuncStatus.h"
#include "FuncRequest.h"
-#include "support/gettext.h"
#include "LaTeXFeatures.h"
#include "Lexer.h"
+#include "LyX.h" // use_gui
#include "LyXRC.h"
#include "MetricsInfo.h"
#include "OutputParams.h"
#include "graphics/PreviewLoader.h"
+#include "support/debug.h"
#include "support/ExceptionMessage.h"
#include "support/filetools.h"
+#include "support/gettext.h"
#include "support/lstrings.h"
#include "support/lyxlib.h"
#include "support/convert.h"
namespace Alert = frontend::Alert;
-extern bool use_gui;
-
namespace external {
TempName::TempName()
if (!filename.empty()) {
os << "\tfilename " << filename.outputFilename(buffer.filePath()) << '\n';
- os << "\tembed " << (filename.embedded() ? "true" : "false") << '\n';
+ os << "\tembed " << (filename.embedded() ? filename.inzipName() : "\"\"") << '\n';
}
if (display != defaultDisplayType)
os << "\tdisplay "
{ "clip", EX_CLIP },
{ "display", EX_DISPLAY},
{ "draft", EX_DRAFT},
+ { "embed", EX_EMBED},
{ "extra", EX_EXTRA },
{ "filename", EX_FILENAME},
- { "embed", EX_EMBED},
{ "height", EX_HEIGHT },
{ "keepAspectRatio", EX_KEEPASPECTRATIO },
{ "lyxscale", EX_LYXSCALE},
case EX_EMBED: {
lex.next();
- filename.setEmbed(lex.getBool());
+ string const name = lex.getString();
+ filename.setInzipName(name);
+ filename.setEmbed(!name.empty());
break;
}
InsetExternalMailer::string2params(to_utf8(cmd.argument()), buffer, p);
if (!p.filename.empty()) {
try {
- p.filename.enable(buffer.embeddedFiles().enabled(), &buffer);
+ p.filename.enable(buffer.embedded(), &buffer);
} catch (ExceptionMessage const & message) {
Alert::error(message.title_, message.details_);
// do not set parameter if an error happens
}
-void InsetExternal::registerEmbeddedFiles(Buffer const &,
- EmbeddedFiles & files) const
+void InsetExternal::registerEmbeddedFiles(Buffer const & buffer,
+ EmbeddedFileList & files) const
{
- files.registerFile(params_.filename, this);
+ files.registerFile(params_.filename, this, buffer);
}
{
// when embedding is enabled, change of embedding status leads to actions
EmbeddedFile temp = file;
- temp.enable(buf.embeddedFiles().enabled(), &buf);
+ temp.enable(buf.embedded(), &buf);
// this will not be set if an exception is thorwn in enable()
params_.filename = temp;
}
-void InsetExternal::edit(Cursor & cur, bool)
+void InsetExternal::edit(Cursor & cur, bool, EntryDirection)
{
InsetExternalMailer(*this).showDialog(&cur.bv());
}
InsetExternalParams params;
if (params.read(buffer, lex)) {
// exception handling is not needed as long as embedded files are in place.
- params.filename.enable(buffer.embeddedFiles().enabled(), & buffer);
+ params.filename.enable(buffer.embedded(), & buffer);
setParams(params, buffer);
}
}