[LyX/master] Streamline RowPainter a bit

Jean-Marc Lasgouttes lasgouttes at lyx.org
Tue Jan 14 10:25:15 UTC 2020


commit 5bb9ded4d6db8de93f0a17783fc7a635559510dd
Author: Jean-Marc Lasgouttes <lasgouttes at lyx.org>
Date:   Tue Jan 14 11:42:01 2020 +0100

    Streamline RowPainter a bit
---
 src/RowPainter.cpp |   23 ++++++++---------------
 src/RowPainter.h   |   13 -------------
 2 files changed, 8 insertions(+), 28 deletions(-)

diff --git a/src/RowPainter.cpp b/src/RowPainter.cpp
index 2216b21..b36fab9 100644
--- a/src/RowPainter.cpp
+++ b/src/RowPainter.cpp
@@ -10,6 +10,7 @@
  */
 
 #include <config.h>
+
 #include <algorithm>
 
 #include "RowPainter.h"
@@ -26,25 +27,18 @@
 #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) {
diff --git a/src/RowPainter.h b/src/RowPainter.h
index fc7c36f..d573cb8 100644
--- a/src/RowPainter.h
+++ b/src/RowPainter.h
@@ -14,21 +14,12 @@
 #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


More information about the lyx-cvs mailing list