#include <config.h>
-
#include "insets/insetgraphics.h"
#include "insets/insetgraphicsParams.h"
#include "funcrequest.h"
#include "gettext.h"
#include "LaTeXFeatures.h"
+#include "Lsstream.h"
#include "lyxlex.h"
#include "lyxrc.h"
+#include "Lsstream.h"
+#include "frontends/lyx_gui.h"
#include "frontends/Alert.h"
#include "frontends/Dialogs.h"
#include "frontends/font_metrics.h"
#include "support/lyxalgo.h" // lyx::count
#include "support/lyxlib.h" // float_equal
#include "support/path.h"
+#include "support/tostr.h"
#include "support/systemcall.h"
#include "support/os.h"
#include <algorithm> // For the std::max
extern string system_tempdir;
+// set by Exporters
+extern bool pdf_mode;
using std::ostream;
using std::endl;
string const uniqueID()
{
static unsigned int seed = 1000;
-
- ostringstream ost;
- ost << "graph" << ++seed;
-
- // Needed if we use lyxstring.
- return STRCONV(ost.str());
+ return "graph" + tostr(++seed);
}
string findTargetFormat(string const & suffix)
{
- // lyxrc.pdf_mode means:
+ // pdf_mode means:
// Are we creating a PDF or a PS file?
// (Should actually mean, are we using latex or pdflatex).
- if (lyxrc.pdf_mode) {
+ if (pdf_mode) {
lyxerr[Debug::GRAPHICS] << "findTargetFormat: PDF mode\n";
if (contains(suffix, "ps") || suffix == "pdf")
return "pdf";
dispatch_result InsetGraphics::localDispatch(FuncRequest const & cmd)
{
- dispatch_result result = UNDISPATCHED;
-
switch (cmd.action) {
case LFUN_INSET_MODIFY: {
InsetGraphicsParams p;
InsetGraphicsMailer::string2params(cmd.argument, p);
- if (p.filename.empty())
- break;
-
- string const filepath = cmd.view()->buffer()->filePath();
- setParams(p, filepath);
- cmd.view()->updateInset(this);
- result = DISPATCHED;
+ if (!p.filename.empty()) {
+ string const filepath = cmd.view()->buffer()->filePath();
+ setParams(p, filepath);
+ cmd.view()->updateInset(this);
+ }
+ return DISPATCHED;
}
- break;
- case LFUN_INSET_DIALOG_UPDATE: {
- InsetGraphicsMailer mailer(*this);
- mailer.updateDialog(cmd.view());
- }
- break;
+ case LFUN_INSET_DIALOG_UPDATE:
+ InsetGraphicsMailer(*this).updateDialog(cmd.view());
+ return DISPATCHED;
+ case LFUN_INSET_EDIT:
case LFUN_MOUSE_RELEASE:
- edit(cmd.view(), cmd.x, cmd.y, cmd.button());
- break;
+ InsetGraphicsMailer(*this).showDialog(cmd.view());
+ return DISPATCHED;
default:
- result = DISPATCHED;
- break;
+ return Inset::localDispatch(cmd);
}
-
- return result;
}
}
-void InsetGraphics::edit(BufferView * bv, int, int, mouse_button::state)
-{
- InsetGraphicsMailer mailer(*this);
- mailer.showDialog(bv);
-}
-
-
-void InsetGraphics::edit(BufferView * bv, bool)
-{
- edit(bv, 0, 0, mouse_button::none);
-}
-
-
Inset::EDITABLE InsetGraphics::editable() const
{
return IS_EDITABLE;
string str = fmt.str();
#else
string str = _("No information for converting ");
- str += from + _(" format files to " + to;
- str += ".\nTry defining a convertor in the preferences.");
+ str += from + _(" format files to ") + to;
+ str += _(".\nTry defining a convertor in the preferences.");
#endif
Alert::error(_("Could not convert image"), str);
}
// 1. Convert file to ascii using gifscii
// 2. Read ascii output file and add it to the output stream.
// at least we send the filename
-#if USE_BOOST_FORMAT
- os << '<'
- << boost::format(_("Graphics file: %1$s")) % params().filename
- << ">\n";
-#else
- os << '<'
- << _("Graphics file: ") << params().filename
- << ">\n";
-#endif
+ os << '<' << bformat(_("Graphics file: %1$s"), params().filename) << ">\n";
return 0;
}
{
params = InsetGraphicsParams();
- istringstream data(in);
+ if (in.empty())
+ return;
+
+ istringstream data(STRCONV(in));
LyXLex lex(0,0);
lex.setStream(data);
}
if (lex.isOK()) {
- InsetGraphics inset;
+ InsetGraphics inset;
inset.readInsetGraphics(lex);
params = inset.params();
}
data << name_ << ' ';
params.Write(data);
data << "\\end_inset\n";
-
- return data.str();
+ return STRCONV(data.str());
}