mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-13 06:20:28 +00:00
Revert r32624 - forgotten and wrong patch in git commit pipe, sorry ;)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32626 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
aee4e7ba34
commit
6aefcd7c24
@ -23,7 +23,6 @@
|
|||||||
#include "Language.h"
|
#include "Language.h"
|
||||||
#include "Layout.h"
|
#include "Layout.h"
|
||||||
#include "Lexer.h"
|
#include "Lexer.h"
|
||||||
#include "LyXRC.h"
|
|
||||||
#include "LyXAction.h"
|
#include "LyXAction.h"
|
||||||
#include "MetricsInfo.h"
|
#include "MetricsInfo.h"
|
||||||
#include "OutputParams.h"
|
#include "OutputParams.h"
|
||||||
@ -31,10 +30,6 @@
|
|||||||
#include "Paragraph.h"
|
#include "Paragraph.h"
|
||||||
#include "TextClass.h"
|
#include "TextClass.h"
|
||||||
|
|
||||||
#include "graphics/PreviewImage.h"
|
|
||||||
|
|
||||||
#include "insets/RenderPreview.h"
|
|
||||||
|
|
||||||
#include "frontends/alert.h"
|
#include "frontends/alert.h"
|
||||||
#include "frontends/Application.h"
|
#include "frontends/Application.h"
|
||||||
|
|
||||||
@ -50,29 +45,12 @@ using namespace lyx::support;
|
|||||||
namespace lyx {
|
namespace lyx {
|
||||||
|
|
||||||
InsetERT::InsetERT(Buffer * buf, CollapseStatus status)
|
InsetERT::InsetERT(Buffer * buf, CollapseStatus status)
|
||||||
: InsetCollapsable(buf), preview_(new RenderPreview(this))
|
: InsetCollapsable(buf)
|
||||||
{
|
{
|
||||||
status_ = status;
|
status_ = status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
InsetERT::InsetERT(InsetERT const & other) : InsetCollapsable(other)
|
|
||||||
{
|
|
||||||
operator=(other);
|
|
||||||
}
|
|
||||||
|
|
||||||
InsetERT & InsetERT::operator=(InsetERT const & other)
|
|
||||||
{
|
|
||||||
if (this == &other)
|
|
||||||
return *this;
|
|
||||||
InsetCollapsable::operator=(other);
|
|
||||||
buffer_ = other.buffer_;
|
|
||||||
preview_.reset(new RenderPreview(*other.preview_, this));
|
|
||||||
|
|
||||||
return *this;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
InsetERT::~InsetERT()
|
InsetERT::~InsetERT()
|
||||||
{
|
{
|
||||||
hideDialogs("ert", this);
|
hideDialogs("ert", this);
|
||||||
@ -211,89 +189,4 @@ docstring InsetERT::xhtml(XHTMLStream &, OutputParams const &) const
|
|||||||
return docstring();
|
return docstring();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool InsetERT::previewState(BufferView * bv) const
|
|
||||||
{
|
|
||||||
if (!editing(bv) && RenderPreview::status() == LyXRC::PREVIEW_ON) {
|
|
||||||
graphics::PreviewImage const * pimage =
|
|
||||||
preview_->getPreviewImage(bv->buffer());
|
|
||||||
return pimage && pimage->image();
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void InsetERT::addPreview(DocIterator const & inset_pos,
|
|
||||||
graphics::PreviewLoader & ploader) const
|
|
||||||
{
|
|
||||||
preparePreview(inset_pos);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void InsetERT::preparePreview(DocIterator const & pos) const
|
|
||||||
{
|
|
||||||
odocstringstream str;
|
|
||||||
OutputParams runparams(&pos.buffer()->params().encoding());
|
|
||||||
latex(str, runparams);
|
|
||||||
docstring const snippet = str.str();
|
|
||||||
LYXERR(Debug::MACROS, "Preview snippet: " << snippet);
|
|
||||||
preview_->addPreview(snippet, *pos.buffer());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void InsetERT::reloadPreview(DocIterator const & pos) const
|
|
||||||
{
|
|
||||||
preparePreview(pos);
|
|
||||||
preview_->startLoading(*pos.buffer());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool InsetERT::notifyCursorLeaves(Cursor const & old, Cursor & cur)
|
|
||||||
{
|
|
||||||
reloadPreview(old);
|
|
||||||
cur.updateFlags(Update::Force);
|
|
||||||
return InsetCollapsable::notifyCursorLeaves(old, cur);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void InsetERT::draw(PainterInfo & pi, int x, int y) const
|
|
||||||
{
|
|
||||||
use_preview_ = previewState(pi.base.bv);
|
|
||||||
|
|
||||||
if (use_preview_) {
|
|
||||||
// one pixel gap in front
|
|
||||||
preview_->draw(pi, x + 1, y);
|
|
||||||
setPosCache(pi, x, y);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
InsetCollapsable::draw(pi, x, y);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Inset * InsetERT::editXY(Cursor & cur, int x, int y)
|
|
||||||
{
|
|
||||||
if (use_preview_) {
|
|
||||||
edit(cur, true);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
return InsetCollapsable::editXY(cur, x, y);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void InsetERT::metrics(MetricsInfo & mi, Dimension & dim) const
|
|
||||||
{
|
|
||||||
if (previewState(mi.base.bv)) {
|
|
||||||
preview_->metrics(mi, dim);
|
|
||||||
// insert a one pixel gap in front of the formula
|
|
||||||
dim.wid += 1;
|
|
||||||
// Cache the inset dimension.
|
|
||||||
setDimCache(mi, dim);
|
|
||||||
Dimension dim_dummy = dim;
|
|
||||||
MetricsInfo mi_dummy = mi;
|
|
||||||
InsetCollapsable::metrics(mi_dummy, dim_dummy);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
InsetCollapsable::metrics(mi, dim);
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace lyx
|
} // namespace lyx
|
||||||
|
@ -14,10 +14,7 @@
|
|||||||
#define INSETERT_H
|
#define INSETERT_H
|
||||||
|
|
||||||
#include "InsetCollapsable.h"
|
#include "InsetCollapsable.h"
|
||||||
#include "RenderPreview.h"
|
|
||||||
#include "graphics/PreviewLoader.h"
|
|
||||||
|
|
||||||
#include <boost/scoped_ptr.hpp>
|
|
||||||
|
|
||||||
namespace lyx {
|
namespace lyx {
|
||||||
|
|
||||||
@ -37,32 +34,11 @@ public:
|
|||||||
///
|
///
|
||||||
InsetERT(Buffer *, CollapseStatus status = Open);
|
InsetERT(Buffer *, CollapseStatus status = Open);
|
||||||
///
|
///
|
||||||
InsetERT(InsetERT const & other);
|
|
||||||
///
|
|
||||||
~InsetERT();
|
~InsetERT();
|
||||||
//
|
|
||||||
InsetERT & operator=(InsetERT const & other);
|
|
||||||
///
|
///
|
||||||
static CollapseStatus string2params(std::string const &);
|
static CollapseStatus string2params(std::string const &);
|
||||||
///
|
///
|
||||||
static std::string params2string(CollapseStatus);
|
static std::string params2string(CollapseStatus);
|
||||||
///
|
|
||||||
void addPreview(DocIterator const & inset_pos,
|
|
||||||
graphics::PreviewLoader & ploader) const;
|
|
||||||
///
|
|
||||||
void preparePreview(DocIterator const & pos) const;
|
|
||||||
///
|
|
||||||
void reloadPreview(DocIterator const & pos) const;
|
|
||||||
///
|
|
||||||
bool notifyCursorLeaves(Cursor const & old, Cursor & cur);
|
|
||||||
///
|
|
||||||
void draw(PainterInfo & pi, int x, int y) const;
|
|
||||||
///
|
|
||||||
Inset * editXY(Cursor & cur, int x, int y);
|
|
||||||
///
|
|
||||||
void metrics(MetricsInfo & mi, Dimension & dim) const;
|
|
||||||
///
|
|
||||||
bool previewState(BufferView * bv) const;
|
|
||||||
private:
|
private:
|
||||||
///
|
///
|
||||||
InsetCode lyxCode() const { return ERT_CODE; }
|
InsetCode lyxCode() const { return ERT_CODE; }
|
||||||
@ -92,10 +68,6 @@ private:
|
|||||||
docstring const buttonLabel(BufferView const & bv) const;
|
docstring const buttonLabel(BufferView const & bv) const;
|
||||||
///
|
///
|
||||||
bool allowSpellCheck() const { return false; }
|
bool allowSpellCheck() const { return false; }
|
||||||
///
|
|
||||||
boost::scoped_ptr<RenderPreview> preview_;
|
|
||||||
///
|
|
||||||
mutable bool use_preview_;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user