]> git.lyx.org Git - features.git/blobdiff - src/TextMetrics.cpp
Rename rowpainter.* to RowPainter.*
[features.git] / src / TextMetrics.cpp
index c168998f831baac64fd6265afdfb4f41736a1512..540537b1a7f6468559ff4e25cef921c5496ef76c 100644 (file)
@@ -32,7 +32,7 @@
 #include "LyXRC.h"
 #include "MetricsInfo.h"
 #include "ParagraphParameters.h"
-#include "rowpainter.h"
+#include "RowPainter.h"
 #include "Text.h"
 #include "TextClass.h"
 #include "VSpace.h"
@@ -290,7 +290,7 @@ Font TextMetrics::displayFont(pit_type pit, pos_type pos) const
 
 bool TextMetrics::isRTL(CursorSlice const & sl, bool boundary) const
 {
-       if (!lyxrc.rtl_support || !sl.text())
+       if (!sl.text())
                return false;
 
        int correction = 0;
@@ -304,7 +304,7 @@ bool TextMetrics::isRTL(CursorSlice const & sl, bool boundary) const
 bool TextMetrics::isRTLBoundary(pit_type pit, pos_type pos) const
 {
        // no RTL boundary at paragraph start
-       if (!lyxrc.rtl_support || pos == 0)
+       if (pos == 0)
                return false;
 
        Font const & left_font = displayFont(pit, pos - 1);
@@ -319,9 +319,8 @@ bool TextMetrics::isRTLBoundary(pit_type pit, pos_type pos) const
 bool TextMetrics::isRTLBoundary(pit_type pit, pos_type pos,
                Font const & font) const
 {
-       if (!lyxrc.rtl_support
-           // no RTL boundary at paragraph start
-           || pos == 0
+       if (// no RTL boundary at paragraph start
+           pos == 0
            // if the metrics have not been calculated, then we are not
            // on screen and can safely ignore issues about boundaries.
            || !contains(pit))
@@ -566,7 +565,7 @@ void TextMetrics::computeRowMetrics(pit_type const pit,
 
        Paragraph const & par = text_->getPar(pit);
 
-       double w = width - row.right_margin - row.width();
+       double const w = width - row.right_margin - row.width();
        // FIXME: put back this assertion when the crash on new doc is solved.
        //LASSERT(w >= 0, /**/);
 
@@ -608,9 +607,7 @@ void TextMetrics::computeRowMetrics(pit_type const pit,
        } else if (int(row.width()) < max_width_) {
                // is it block, flushleft or flushright?
                // set x how you need it
-               int const align = getAlign(par, row.pos());
-
-               switch (align) {
+               switch (getAlign(par, row.pos())) {
                case LYX_ALIGN_BLOCK: {
                        int const ns = numberOfSeparators(row);
                        /** If we have separators, and this row has
@@ -651,12 +648,12 @@ void TextMetrics::computeRowMetrics(pit_type const pit,
        }
 #endif
 
+       // Finally,  handle hfill insets
        pos_type const endpos = row.endpos();
        pos_type body_pos = par.beginOfBody();
        if (body_pos > 0
            && (body_pos > endpos || !par.isLineSeparator(body_pos - 1)))
                body_pos = 0;
-
        ParagraphMetrics & pm = par_metrics_[pit];
        Row::iterator cit = row.begin();
        Row::iterator const cend = row.end();
@@ -799,8 +796,7 @@ void TextMetrics::breakRow(Row & row, int const right_margin, pit_type const pit
        int const width = max_width_ - right_margin;
        pos_type const body_pos = par.beginOfBody();
        row.clear();
-       row.x = leftMargin(max_width_, pit, pos);
-       row.dimension().wid = row.x;
+       row.dimension().wid = leftMargin(max_width_, pit, pos);
        row.right_margin = right_margin;
 
        if (pos >= end || row.width() > width) {