]> git.lyx.org Git - features.git/commitdiff
Do not rely on x_ when painting label
authorJean-Marc Lasgouttes <lasgouttes@lyx.org>
Mon, 4 Feb 2019 11:13:01 +0000 (12:13 +0100)
committerJean-Marc Lasgouttes <lasgouttes@lyx.org>
Thu, 18 Jun 2020 12:39:57 +0000 (14:39 +0200)
Additionally fixes a warning about unused value (from clang-analyzer).

src/RowPainter.cpp
src/TextMetrics.cpp

index e547888cf9bd7b82ffb5daec3451aa248e785843..9534b207d0b04322ead1e925a497221feac927e3 100644 (file)
@@ -429,14 +429,10 @@ void RowPainter::paintLabel() const
        Layout const & layout = par_.layout();
        FontInfo const font = labelFont(false);
        FontMetrics const & fm = theFontMetrics(font);
-       double x = x_;
-
-       if (row_.isRTL())
-               x = xo_ + row_.width() + fm.width(layout.labelsep);
-       else
-               x = x_ - fm.width(layout.labelsep) - fm.width(str);
+       int const x = row_.isRTL() ? row_.width() + fm.width(layout.labelsep)
+                                  : row_.left_margin - fm.width(layout.labelsep) - fm.width(str);
 
-       pi_.pain.text(int(x), yo_, str, font);
+       pi_.pain.text(xo_ + x, yo_, str, font);
 }
 
 
index 094b80d9c55123fa2bf30ab74c68ad4721319c6b..edc9f6919cf188fd288db892985becdb48f337c0 100644 (file)
@@ -1934,15 +1934,11 @@ void TextMetrics::drawParagraph(PainterInfo & pi, pit_type const pit, int const
                rp.paintDepthBar();
                if (row.needsChangeBar())
                        rp.paintChangeBar();
-               if (i == 0 && !row.isRTL())
+               if (i == 0)
                        rp.paintFirst();
-               if (i == nrows - 1 && row.isRTL())
+               if (i == nrows - 1)
                        rp.paintLast();
                rp.paintText();
-               if (i == nrows - 1 && !row.isRTL())
-                       rp.paintLast();
-               if (i == 0 && row.isRTL())
-                       rp.paintFirst();
                rp.paintTooLargeMarks(row_x + row.left_x() < 0,
                                      row_x + row.right_x() > bv_->workWidth());
                y += row.descent();