#include "gettext.h"
#include "LaTeXFeatures.h"
#include "latexrunparams.h"
+#include "lyx_main.h"
#include "lyxlex.h"
#include "metricsinfo.h"
+#include "frontends/LyXView.h"
#include "frontends/Painter.h"
-#include "graphics/PreviewImage.h"
#include "graphics/PreviewLoader.h"
#include "insets/render_preview.h"
}
-dispatch_result InsetInclude::localDispatch(FuncRequest const & cmd)
+dispatch_result
+InsetInclude::priv_dispatch(FuncRequest const & cmd, idx_type &, pos_type &)
{
switch (cmd.action) {
return DISPATCHED;
default:
- return InsetOld::localDispatch(cmd);
+ return UNDISPATCHED;
}
}
bool isVerbatim(InsetCommandParams const & params)
{
string const command_name = params.getCmdName();
- return command_name == "verbatiminput" ||
+ return command_name == "verbatiminput" ||
command_name == "verbatiminput*";
}
void InsetInclude::metrics(MetricsInfo & mi, Dimension & dim) const
{
- if (preview_->previewReady()) {
+ if (RenderPreview::activated() && preview_->previewReady()) {
preview_->metrics(mi, dim);
} else {
if (!set_label_) {
void InsetInclude::draw(PainterInfo & pi, int x, int y) const
{
- cache(pi.base.bv);
-
- if (!preview_->previewReady()) {
+ if (!RenderPreview::activated() || !preview_->previewReady()) {
button_.draw(pi, x + button_.box().x1, y);
return;
}
- if (!preview_->monitoring()) {
- string const included_file =
- includedFilename(*view()->buffer(), params_);
+ BOOST_ASSERT(pi.base.bv);
+ Buffer const * const buffer = pi.base.bv->buffer();
+ if (!preview_->monitoring() && buffer) {
+ string const included_file = includedFilename(*buffer, params_);
preview_->startMonitoring(included_file);
}
}
-BufferView * InsetInclude::view() const
-{
- return button_.view();
-}
-
-
//
// preview stuff
//
void InsetInclude::statusChanged() const
{
- if (view())
- view()->updateInset(this);
+ LyX::cref().updateInset(this);
}
void InsetInclude::fileChanged() const
{
- BufferView * const bv = view();
- if (!bv)
- return;
- bv->updateInset(this);
-
- if (!bv->buffer())
+ Buffer const * const buffer_ptr = LyX::cref().updateInset(this);
+ if (!buffer_ptr)
return;
- Buffer const & buffer = *bv->buffer();
+ Buffer const & buffer = *buffer_ptr;
preview_->removePreview(buffer);
generate_preview(*preview_.get(), *this, buffer);
}