]> git.lyx.org Git - features.git/commitdiff
RowPainter::paintLast(): microptimisation and comments.
authorAbdelrazak Younes <younes@lyx.org>
Tue, 29 Jan 2008 07:31:24 +0000 (07:31 +0000)
committerAbdelrazak Younes <younes@lyx.org>
Tue, 29 Jan 2008 07:31:24 +0000 (07:31 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22705 a592a061-630c-0410-9148-cb99ea01b6c8

src/rowpainter.cpp

index 78c17a8adba635c085af309388bb56f85ab9e374..60e6ab22a21ea8084c6d81c55fd8942bcf765574 100644 (file)
@@ -610,12 +610,14 @@ void RowPainter::paintLast()
                FontMetrics const & fm = theFontMetrics(font);
                int const size = int(0.75 * fm.maxAscent());
                int const y = yo_ - size;
-               int x = is_rtl ? nestMargin() + changebarMargin() : width_
-                       - text_metrics_.rightMargin(pm_) - size - Inset::TEXT_TO_INSET_OFFSET;
+               int const max_row_width = width_ - size - Inset::TEXT_TO_INSET_OFFSET;
+               int x = is_rtl ? nestMargin() + changebarMargin()
+                       : max_row_width - text_metrics_.rightMargin(pm_);
 
-               int const rem = width_ - row_.width() - size;
+               // If needed, move the box a bit to avoid overlapping with text.
+               int const rem = max_row_width - row_.width();
                if (rem <= 0)
-                       x += rem * (is_rtl ? 1 : -1);
+                       x += is_rtl ? rem : - rem;
 
                if (endlabel == END_LABEL_BOX)
                        pi_.pain.rectangle(x, y, size, size, Color_eolmarker);