mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-13 09:15:50 +00:00
Get rid of use_preview_ in various insets
This concerns InsetPreview, InsetIPA and InsetMathHull. Caching such a value is bad when opening the same buffer in two views. In this case, it is not necessary to remember use_preview_ at all, actually. Also remove private member dim_ which is not used and remove some trailing whitespace. Fixes bugs #9085 abd #9957.
This commit is contained in:
parent
942b62ac0f
commit
b1323be32c
@ -37,7 +37,7 @@ namespace lyx {
|
||||
|
||||
InsetIPA::InsetIPA(Buffer * buf)
|
||||
: InsetText(buf),
|
||||
preview_(new RenderPreview(this)), use_preview_(true)
|
||||
preview_(new RenderPreview(this))
|
||||
{
|
||||
setAutoBreakRows(true);
|
||||
setDrawFrame(true);
|
||||
@ -141,9 +141,7 @@ void InsetIPA::reloadPreview(DocIterator const & pos) const
|
||||
|
||||
void InsetIPA::draw(PainterInfo & pi, int x, int y) const
|
||||
{
|
||||
use_preview_ = previewState(pi.base.bv);
|
||||
|
||||
if (use_preview_) {
|
||||
if (previewState(pi.base.bv)) {
|
||||
preview_->draw(pi, x + TEXT_TO_INSET_OFFSET, y);
|
||||
setPosCache(pi, x, y);
|
||||
return;
|
||||
@ -161,7 +159,7 @@ void InsetIPA::edit(Cursor & cur, bool front, EntryDirection entry_from)
|
||||
|
||||
Inset * InsetIPA::editXY(Cursor & cur, int x, int y)
|
||||
{
|
||||
if (use_preview_) {
|
||||
if (previewState(&cur.bv())) {
|
||||
edit(cur, true, ENTRY_DIRECTION_IGNORE);
|
||||
return this;
|
||||
}
|
||||
@ -182,7 +180,6 @@ void InsetIPA::metrics(MetricsInfo & mi, Dimension & dim) const
|
||||
dim.asc += TEXT_TO_INSET_OFFSET;
|
||||
dim.des += TEXT_TO_INSET_OFFSET;
|
||||
dim.wid += TEXT_TO_INSET_OFFSET;
|
||||
dim_ = dim;
|
||||
dim.wid += TEXT_TO_INSET_OFFSET;
|
||||
// insert a one pixel gap
|
||||
dim.wid += 1;
|
||||
|
@ -90,12 +90,6 @@ protected:
|
||||
|
||||
///
|
||||
boost::scoped_ptr<RenderPreview> preview_;
|
||||
///
|
||||
mutable bool use_preview_;
|
||||
|
||||
private:
|
||||
///
|
||||
mutable Dimension dim_;
|
||||
};
|
||||
|
||||
|
||||
|
@ -35,9 +35,8 @@ using namespace std;
|
||||
namespace lyx {
|
||||
|
||||
|
||||
InsetPreview::InsetPreview(Buffer * buf)
|
||||
: InsetText(buf),
|
||||
preview_(new RenderPreview(this)), use_preview_(true)
|
||||
InsetPreview::InsetPreview(Buffer * buf)
|
||||
: InsetText(buf), preview_(new RenderPreview(this))
|
||||
{
|
||||
setAutoBreakRows(true);
|
||||
setDrawFrame(true);
|
||||
@ -45,7 +44,7 @@ InsetPreview::InsetPreview(Buffer * buf)
|
||||
}
|
||||
|
||||
|
||||
InsetPreview::~InsetPreview()
|
||||
InsetPreview::~InsetPreview()
|
||||
{}
|
||||
|
||||
|
||||
@ -70,7 +69,7 @@ void InsetPreview::addPreview(DocIterator const & inset_pos,
|
||||
}
|
||||
|
||||
|
||||
void InsetPreview::preparePreview(DocIterator const & pos) const
|
||||
void InsetPreview::preparePreview(DocIterator const & pos) const
|
||||
{
|
||||
TexRow texrow;
|
||||
odocstringstream str;
|
||||
@ -128,15 +127,12 @@ void InsetPreview::reloadPreview(DocIterator const & pos) const
|
||||
|
||||
void InsetPreview::draw(PainterInfo & pi, int x, int y) const
|
||||
{
|
||||
use_preview_ = previewState(pi.base.bv);
|
||||
|
||||
if (use_preview_) {
|
||||
if (previewState(pi.base.bv)) {
|
||||
// one pixel gap in front
|
||||
preview_->draw(pi, x + 1 + TEXT_TO_INSET_OFFSET, y);
|
||||
setPosCache(pi, x, y);
|
||||
return;
|
||||
}
|
||||
InsetText::draw(pi, x, y);
|
||||
} else
|
||||
InsetText::draw(pi, x, y);
|
||||
}
|
||||
|
||||
|
||||
@ -149,7 +145,7 @@ void InsetPreview::edit(Cursor & cur, bool front, EntryDirection entry_from)
|
||||
|
||||
Inset * InsetPreview::editXY(Cursor & cur, int x, int y)
|
||||
{
|
||||
if (use_preview_) {
|
||||
if (previewState(&cur.bv())) {
|
||||
edit(cur, true, ENTRY_DIRECTION_IGNORE);
|
||||
return this;
|
||||
}
|
||||
@ -163,14 +159,13 @@ void InsetPreview::metrics(MetricsInfo & mi, Dimension & dim) const
|
||||
if (previewState(mi.base.bv)) {
|
||||
preview_->metrics(mi, dim);
|
||||
mi.base.textwidth += 2 * TEXT_TO_INSET_OFFSET;
|
||||
|
||||
|
||||
dim.wid = max(dim.wid, 4);
|
||||
dim.asc = max(dim.asc, 4);
|
||||
|
||||
|
||||
dim.asc += TEXT_TO_INSET_OFFSET;
|
||||
dim.des += TEXT_TO_INSET_OFFSET;
|
||||
dim.wid += TEXT_TO_INSET_OFFSET;
|
||||
dim_ = dim;
|
||||
dim.wid += TEXT_TO_INSET_OFFSET;
|
||||
// insert a one pixel gap
|
||||
dim.wid += 1;
|
||||
|
@ -79,12 +79,7 @@ protected:
|
||||
|
||||
///
|
||||
boost::scoped_ptr<RenderPreview> preview_;
|
||||
///
|
||||
mutable bool use_preview_;
|
||||
|
||||
private:
|
||||
///
|
||||
mutable Dimension dim_;
|
||||
};
|
||||
|
||||
|
||||
|
@ -315,7 +315,7 @@ void InsetMathHull::addToToc(DocIterator const & pit, bool output_active) const
|
||||
|
||||
Inset * InsetMathHull::editXY(Cursor & cur, int x, int y)
|
||||
{
|
||||
if (use_preview_) {
|
||||
if (previewState(&cur.bv())) {
|
||||
edit(cur, true);
|
||||
return this;
|
||||
}
|
||||
@ -524,7 +524,6 @@ void InsetMathHull::drawBackground(PainterInfo & pi, int x, int y) const
|
||||
void InsetMathHull::draw(PainterInfo & pi, int x, int y) const
|
||||
{
|
||||
BufferView const * const bv = pi.base.bv;
|
||||
use_preview_ = previewState(bv);
|
||||
|
||||
if (type_ == hullRegexp) {
|
||||
Dimension const dim = dimension(*bv);
|
||||
@ -532,7 +531,7 @@ void InsetMathHull::draw(PainterInfo & pi, int x, int y) const
|
||||
dim.width() - 2, dim.height() - 2, Color_regexpframe);
|
||||
}
|
||||
|
||||
if (use_preview_) {
|
||||
if (previewState(bv)) {
|
||||
Dimension const dim = dimension(*bv);
|
||||
if (previewTooSmall(dim)) {
|
||||
// we have an extra frame
|
||||
|
@ -243,8 +243,6 @@ private:
|
||||
///
|
||||
boost::scoped_ptr<RenderPreview> preview_;
|
||||
///
|
||||
mutable bool use_preview_;
|
||||
///
|
||||
DocIterator docit_;
|
||||
///
|
||||
typedef std::map<docstring, int> CounterMap;
|
||||
|
@ -98,6 +98,9 @@ What's new
|
||||
|
||||
- Fix automatic insertion of longtable captions (bug 9692).
|
||||
|
||||
- Fix crash with preived math shown in two views of the same document
|
||||
(bug 9957).
|
||||
|
||||
- Fix setting of nested minipage via the dialog (bug 8716).
|
||||
|
||||
- Reset cursor language when changing document-wide language (bug 9586).
|
||||
|
Loading…
Reference in New Issue
Block a user