mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-09 18:31:04 +00:00
PreparePrepare for independent decoration drawing and correct a CoordCache bug: Previously, only the math insets containing the cursor were put in the cache. I believe this was the reason for some of the weird problems with cursors in math (egg: cursor trapped in a fraction).
* insetbase.C - drawMarkers(): draw the decoration in any case (but visible only in editing mode). Fill-in the CoordCache in any case. - drawMarkers2(): ditto. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16773 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
5c4844af43
commit
5ed7e7a03c
@ -283,29 +283,31 @@ void InsetBase::metricsMarkers2(Dimension & dim, int framesize) const
|
|||||||
|
|
||||||
void InsetBase::drawMarkers(PainterInfo & pi, int x, int y) const
|
void InsetBase::drawMarkers(PainterInfo & pi, int x, int y) const
|
||||||
{
|
{
|
||||||
if (!editing(pi.base.bv))
|
LColor::color pen_color = editing(pi.base.bv)?
|
||||||
return;
|
LColor::mathframe : LColor::background;
|
||||||
|
|
||||||
int const t = x + width() - 1;
|
int const t = x + width() - 1;
|
||||||
int const d = y + descent();
|
int const d = y + descent();
|
||||||
pi.pain.line(x, d - 3, x, d, LColor::mathframe);
|
pi.pain.line(x, d - 3, x, d, pen_color);
|
||||||
pi.pain.line(t, d - 3, t, d, LColor::mathframe);
|
pi.pain.line(t, d - 3, t, d, pen_color);
|
||||||
pi.pain.line(x, d, x + 3, d, LColor::mathframe);
|
pi.pain.line(x, d, x + 3, d, pen_color);
|
||||||
pi.pain.line(t - 3, d, t, d, LColor::mathframe);
|
pi.pain.line(t - 3, d, t, d, pen_color);
|
||||||
setPosCache(pi, x, y);
|
setPosCache(pi, x, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void InsetBase::drawMarkers2(PainterInfo & pi, int x, int y) const
|
void InsetBase::drawMarkers2(PainterInfo & pi, int x, int y) const
|
||||||
{
|
{
|
||||||
if (!editing(pi.base.bv))
|
LColor::color pen_color = editing(pi.base.bv)?
|
||||||
return;
|
LColor::mathframe : LColor::background;
|
||||||
|
|
||||||
drawMarkers(pi, x, y);
|
drawMarkers(pi, x, y);
|
||||||
int const t = x + width() - 1;
|
int const t = x + width() - 1;
|
||||||
int const a = y - ascent();
|
int const a = y - ascent();
|
||||||
pi.pain.line(x, a + 3, x, a, LColor::mathframe);
|
pi.pain.line(x, a + 3, x, a, pen_color);
|
||||||
pi.pain.line(t, a + 3, t, a, LColor::mathframe);
|
pi.pain.line(t, a + 3, t, a, pen_color);
|
||||||
pi.pain.line(x, a, x + 3, a, LColor::mathframe);
|
pi.pain.line(x, a, x + 3, a, pen_color);
|
||||||
pi.pain.line(t - 3, a, t, a, LColor::mathframe);
|
pi.pain.line(t - 3, a, t, a, pen_color);
|
||||||
setPosCache(pi, x, y);
|
setPosCache(pi, x, y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user