]> git.lyx.org Git - features.git/commitdiff
Streamline RowPainter a bit
authorJean-Marc Lasgouttes <lasgouttes@lyx.org>
Tue, 14 Jan 2020 10:42:01 +0000 (11:42 +0100)
committerJean-Marc Lasgouttes <lasgouttes@lyx.org>
Thu, 18 Jun 2020 13:48:51 +0000 (15:48 +0200)
src/RowPainter.cpp
src/RowPainter.h

index 2216b2107781046cf0548952de937380871add98..b36fab9e4cbe9bb71d1fd994698cf0a3ea6f67ae 100644 (file)
@@ -10,6 +10,7 @@
  */
 
 #include <config.h>
+
 #include <algorithm>
 
 #include "RowPainter.h"
 #include "Row.h"
 #include "MetricsInfo.h"
 #include "Paragraph.h"
+#include "ParagraphList.h"
 #include "ParagraphParameters.h"
+#include "Text.h"
 #include "TextMetrics.h"
-#include "VSpace.h"
 
 #include "frontends/FontMetrics.h"
 #include "frontends/Painter.h"
 
-#include "insets/InsetText.h"
-
-#include "mathed/InsetMath.h"
-
 #include "support/debug.h"
 #include "support/gettext.h"
-#include "support/textutils.h"
-
 #include "support/lassert.h"
-#include <boost/crc.hpp>
 
-#include <stdlib.h>
 
 using namespace std;
 
@@ -58,9 +52,7 @@ RowPainter::RowPainter(PainterInfo & pi,
        Text const & text, Row const & row, int x, int y)
        : pi_(pi), text_(text),
          tm_(pi_.base.bv->textMetrics(&text)),
-         pars_(text.paragraphs()),
          row_(row), par_(text.paragraphs()[row.pit()]),
-         change_(pi_.change_),
          xo_(x), yo_(y)
 {
        x_ = row_.left_margin + xo_;
@@ -108,7 +100,7 @@ void RowPainter::paintInset(Row::Element const & e) const
        pi_.base.font = e.inset->inheritFont() ? e.font.fontInfo() :
                pi_.base.bv->buffer().params().getFont().fontInfo();
        pi_.ltr_pos = !e.font.isVisibleRightToLeft();
-       pi_.change_ = change_.changed() ? change_ : e.change;
+       pi_.change_ = pi_.change_.changed() ? pi_.change_ : e.change;
        pi_.do_spellcheck &= e.inset->allowSpellCheck();
 
        int const x1 = int(x_);
@@ -316,6 +308,7 @@ void RowPainter::paintAppendix() const
 void RowPainter::paintDepthBar() const
 {
        depth_type const depth = par_.getDepth();
+       ParagraphList const & pars = text_.paragraphs();
 
        if (depth <= 0)
                return;
@@ -325,15 +318,15 @@ void RowPainter::paintDepthBar() const
                pit_type pit2 = row_.pit();
                if (row_.pos() == 0)
                        --pit2;
-               prev_depth = pars_[pit2].getDepth();
+               prev_depth = pars[pit2].getDepth();
        }
 
        depth_type next_depth = 0;
        if (!tm_.isLastRow(row_)) {
                pit_type pit2 = row_.pit();
-               if (row_.endpos() >= pars_[pit2].size())
+               if (row_.endpos() >= pars[pit2].size())
                        ++pit2;
-               next_depth = pars_[pit2].getDepth();
+               next_depth = pars[pit2].getDepth();
        }
 
        for (depth_type i = 1; i <= depth; ++i) {
index fc7c36f036b9469e67c1f8a8dbd45cc0b5f52654..d573cb8e5b98a34848ae0dcf557f38bddf448e0b 100644 (file)
 #ifndef ROWPAINTER_H
 #define ROWPAINTER_H
 
-#include "Changes.h"
 #include "Row.h"
 
-#include "support/types.h"
-
 namespace lyx {
 
-class BufferView;
-class Font;
-class FontInfo;
-class Inset;
-class Language;
 class PainterInfo;
 class Paragraph;
-class ParagraphList;
 class Text;
 class TextMetrics;
 
@@ -82,7 +73,6 @@ private:
        /// Text for the row
        Text const & text_;
        TextMetrics const & tm_;
-       ParagraphList const & pars_;
 
        /// The row to paint
        Row const & row_;
@@ -90,9 +80,6 @@ private:
        /// Row's paragraph
        Paragraph const & par_;
 
-       /// row changed? (change tracking)
-       Change const change_;
-
        // Looks ugly - is
        double const xo_;
        int const yo_;    // current baseline