pi.pain.line(t, d - 3, t, d, pen_color);
pi.pain.line(x, d, x + 3, d, pen_color);
pi.pain.line(t - 3, d, t, d, pen_color);
- setPosCache(pi, x, y);
}
pi.pain.line(t, a + 3, t, a, pen_color);
pi.pain.line(x, a, x + 3, a, pen_color);
pi.pain.line(t - 3, a, t, a, pen_color);
- setPosCache(pi, x, y);
}
}
-void Inset::setPosCache(PainterInfo const & pi, int x, int y) const
-{
- //LYXERR("Inset: set position cache to " << x << " " << y);
- pi.base.bv->coordCache().insets().add(this, x, y);
-}
-
-
void Inset::setDimCache(MetricsInfo const & mi, Dimension const & dim) const
{
mi.base.bv->coordCache().insets().add(this, dim);
int xo(BufferView const & bv) const;
/// last drawn position for 'important' insets
int yo(BufferView const & bv) const;
- /// set x/y drawing position cache if available
- virtual void setPosCache(PainterInfo const &, int, int) const;
///
void setDimCache(MetricsInfo const &, Dimension const &) const;
/// do we cover screen position x/y?
{
if (previewState(pi.base.bv)) {
preview_->draw(pi, x, y);
- setPosCache(pi, x, y);
return;
}
InsetText::draw(pi, x, y);
if (previewState(pi.base.bv)) {
// one pixel gap in front
preview_->draw(pi, x + 1, y);
- setPosCache(pi, x, y);
} else
InsetText::draw(pi, x, y);
}
void CommandInset::draw(PainterInfo & pi, int x, int y) const
{
button_.draw(pi, x, y);
- setPosCache(pi, x, y);
}
void InsetMathArray::draw(PainterInfo & pi, int x, int y) const
{
- setPosCache(pi, x, y);
Changer dummy2 = pi.base.changeEnsureMath();
Changer dummy = pi.base.changeArray();
InsetMathGrid::draw(pi, x, y);
(delim_ == "\\\\") ? from_ascii("\\") : support::ltrim(delim_, "\\");
mathed_draw_deco(pi, x + 1, y - dim.ascent(), 4, dim.height(),
delim);
- setPosCache(pi, x, y);
}
dim.width() - 2, dim.height() - 2, Color_foreground);
Changer dummy = pi.base.changeFontSet("textnormal");
cell(0).draw(pi, x + 3, y);
- setPosCache(pi, x, y);
}
pi.pain.rectangle(x + 1, y - dim.ascent() + 1,
dim.width() - 2, dim.height() - 2, Color_foreground);
cell(0).draw(pi, x + 3, y);
- setPosCache(pi, x, y);
}
Dimension const dim = dimension(*pi.base.bv);
mathed_draw_deco(pi, x + 1, y - dim.ascent(), 6, dim.height(), from_ascii("{"));
InsetMathGrid::draw(pi, x, y);
- setPosCache(pi, x, y);
}
cell(0).draw(pi, x + 1, y);
pi.base.font.setColor(origcol);
drawMarkers(pi, x, y);
- setPosCache(pi, x, y);
}
mathed_draw_deco(pi, x + 1 + (dim0.wid - dw_) / 2,
y + dy_, dw_, dh_, key_->name);
drawMarkers(pi, x, y);
- setPosCache(pi, x, y);
}
mathed_draw_deco(pi, x, b, dw_, dim.height(), left_);
mathed_draw_deco(pi, x + dim.width() - dw_,
b, dw_, dim.height(), right_);
- setPosCache(pi, x, y);
}
void InsetMathDiagram::draw(PainterInfo & pi, int x, int y) const
{
- setPosCache(pi, x, y);
Changer dummy2 = pi.base.changeEnsureMath();
FontInfo & f = pi.base.font;
Changer dummy = (f.style() == LM_ST_DISPLAY) ? f.changeStyle(LM_ST_TEXT)
--y;
mathed_draw_deco(pi, x + 2, y - dh_, dim.width() - 2, dim.ascent(),
key_->name);
- setPosCache(pi, x, y);
}
Changer dummy = pi.base.changeFontSet(font());
cell(0).draw(pi, x + 1, y);
drawMarkers(pi, x, y);
- setPosCache(pi, x, y);
}
void InsetMathFrac::draw(PainterInfo & pi, int x, int y) const
{
- setPosCache(pi, x, y);
Changer dummy3 = pi.base.changeEnsureMath();
Dimension const dim = dimension(*pi.base.bv);
Dimension const dim0 = cell(0).dimension(*pi.base.bv);
// one pixel gap in front
preview_->draw(pi, x + 1, y);
}
- setPosCache(pi, x, y);
return;
}
if (canPaintChange(*bv))
pi.change_.paintCue(pi, x + 1, y + 1 - dim.asc,
x + dim.wid, y + dim.des);
- setPosCache(pi, x, y);
}
}
-void InsetMathNest::draw(PainterInfo & pi, int x, int y) const
+void InsetMathNest::draw(PainterInfo &, int, int) const
{
#if 0
if (lock_)
pi.pain.fillRectangle(x, y - ascent(), width(), height(),
Color_mathlockbg);
#endif
- setPosCache(pi, x, y);
}
{
Changer dummy = pi.base.changeEnsureMath();
InsetMathGrid::draw(pi, x, y);
- setPosCache(pi, x, y);
}
void InsetMathXYMatrix::draw(PainterInfo & pi, int x, int y) const
{
- setPosCache(pi, x, y);
Changer dummy2 = pi.base.changeEnsureMath();
Changer dummy = pi.base.changeArray();
InsetMathGrid::draw(pi, x, y);
{
Dimension const dim = dimension(*pi.base.bv);
- setPosCache(pi, x, y);
int expx = x;
int expy = y;
void MathMacroArgument::draw(PainterInfo & pi, int x, int y) const
{
drawStrRed(pi, x, y, str_);
- setPosCache(pi, x, y);
}
Changer dummy1 = pi.base.changeFontSet("mathnormal");
Changer dummy2 = pi.base.font.changeStyle(LM_ST_TEXT);
- setPosCache(pi, x, y);
Dimension const dim = dimension(*pi.base.bv);
// draw outer frame