namespace lyx {
-using support::absolutePath;
using support::onlyFilename;
using std::string;
params_ = params;
if (!params_.filename.empty()) {
- BOOST_ASSERT(absolutePath(params_.filename));
loader_.reset(params_.filename, params_);
}
}
}
-string const statusMessage(graphics::Params const & params,
+docstring const statusMessage(graphics::Params const & params,
graphics::ImageStatus status)
{
docstring ret;
}
}
- // FIXME UNICODE
- return to_utf8(ret);
+ return ret;
}
} // namespace anon
-void RenderGraphic::metrics(MetricsInfo & mi, Dimension & dim) const
+bool RenderGraphic::metrics(MetricsInfo & mi, Dimension & dim) const
{
bool image_ready = displayGraphic(params_) && readyToDisplay(loader_);
// FIXME UNICODE
docstring const justname =
- from_utf8(onlyFilename(params_.filename));
+ from_utf8(onlyFilename(params_.filename.absFilename()));
if (!justname.empty()) {
msgFont.setSize(LyXFont::SIZE_FOOTNOTE);
font_width = theFontMetrics(msgFont)
.width(justname);
}
- // FIXME UNICODE
- docstring const msg =
- from_utf8(statusMessage(params_, loader_.status()));
+ docstring const msg = statusMessage(params_, loader_.status());
if (!msg.empty()) {
msgFont.setSize(LyXFont::SIZE_TINY);
font_width = std::max(font_width,
dim.wid = std::max(50, font_width + 15);
}
+ bool const changed = dim_ != dim;
dim_ = dim;
+ return changed;
}
// Print the file name.
LyXFont msgFont = pi.base.font;
msgFont.setFamily(LyXFont::SANS_FAMILY);
- string const justname = onlyFilename(params_.filename);
+ string const justname = onlyFilename(params_.filename.absFilename());
if (!justname.empty()) {
- docstring djust(justname.begin(), justname.end());
msgFont.setSize(LyXFont::SIZE_FOOTNOTE);
pi.pain.text(x + InsetOld::TEXT_TO_INSET_OFFSET + 6,
y - theFontMetrics(msgFont).maxAscent() - 4,
- djust, msgFont);
+ from_utf8(justname), msgFont);
}
// Print the message.
- string const msg = statusMessage(params_, loader_.status());
+ docstring const msg = statusMessage(params_, loader_.status());
if (!msg.empty()) {
- docstring dmsg(msg.begin(), msg.end());
msgFont.setSize(LyXFont::SIZE_TINY);
pi.pain.text(x + InsetOld::TEXT_TO_INSET_OFFSET + 6,
- y - 4, dmsg, msgFont);
+ y - 4, msg, msgFont);
}
}
}