Allow line inset to draw a vertical line.

Qpainter::drawline cannot draw a line which is thicker than it is long.
Draw a rectangle instead.

Fix bug #12307.
This commit is contained in:
Jean-Marc Lasgouttes 2021-06-14 15:36:45 +02:00
parent 5b0b3f053e
commit 22cb573cac

View File

@ -140,16 +140,10 @@ void InsetLine::draw(PainterInfo & pi, int x, int y) const
Dimension const dim = dimension(*pi.base.bv);
// get the surrounding text color
Color Line_color = pi.base.font.realColor();
Color line_color = pi.base.font.realColor();
// the offset is a vertical one
// the horizontal dimension must be corrected with the height because
// of left and right border of the painted line for big height.
pi.pain.line(x + height_/2 + 1,
y - offset_ - height_/2,
x + dim.wid - height_/2 - 2,
y - offset_ - height_/2,
Line_color, Painter::line_solid, height_);
pi.pain.fillRectangle(x, y - offset_ - height_, dim.wid, height_, line_color);
}