]> git.lyx.org Git - lyx.git/blobdiff - src/RowPainter.cpp
Do not output deleted rows columns if show changes in output is false
[lyx.git] / src / RowPainter.cpp
index b05b143fb481e2a00b2214b6bcc3eebd75612847..13c3be01963ddd6d719f2aced45670e052534817 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_;
@@ -103,12 +95,12 @@ void RowPainter::paintInset(Row::Element const & e) const
        // requires a full repaint
        bool const pi_full_repaint = pi_.full_repaint;
        bool const pi_do_spellcheck = pi_.do_spellcheck;
-       Change const pi_change = pi_.change_;
+       Change const pi_change = pi_.change;
 
        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_);
@@ -123,7 +115,7 @@ void RowPainter::paintInset(Row::Element const & e) const
 
        // Restore full_repaint status.
        pi_.full_repaint = pi_full_repaint;
-       pi_.change_ = pi_change;
+       pi_.change = pi_change;
        pi_.do_spellcheck = pi_do_spellcheck;
        pi_.selected = pi_selected;
 
@@ -293,11 +285,7 @@ void RowPainter::paintChange(Row::Element const & e) const
 
 void RowPainter::paintChangeBar() const
 {
-       int const height = tm_.isLastRow(row_)
-               ? row_.ascent()
-               : row_.height();
-
-       pi_.pain.fillRectangle(5, yo_ - row_.ascent(), 3, height, Color_changebar);
+       pi_.pain.fillRectangle(5, yo_ - row_.ascent(), 3, row_.height(), Color_changebar);
 }
 
 
@@ -320,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;
@@ -329,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) {