commit 71c2e2fda6f241a63c1a67569db5f7fbae6fe4a9
Author: Jean-Marc Lasgouttes <[email protected]>
Date:   Mon Sep 20 17:32:18 2021 +0200

    Add operator<< for Row::Elements
    
    This is useful for debugging.
---
 src/Row.cpp |   19 +++++++++++++++----
 src/Row.h   |    2 ++
 2 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/src/Row.cpp b/src/Row.cpp
index 8233a96..b7e4c07 100644
--- a/src/Row.cpp
+++ b/src/Row.cpp
@@ -275,6 +275,17 @@ ostream & operator<<(ostream & os, Row::Element const & e)
 }
 
 
+ostream & operator<<(ostream & os, Row::Elements const & elts)
+{
+       double x = 0;
+       for (Row::Element const & e : elts) {
+               os << "x=" << x << " => " << e << endl;
+               x += e.full_width();
+       }
+       return os;
+}
+
+
 ostream & operator<<(ostream & os, Row const & row)
 {
        os << " pos: " << row.pos_ << " end: " << row.end_
@@ -286,11 +297,11 @@ ostream & operator<<(ostream & os, Row const & row)
           << " separator: " << row.separator
           << " label_hfill: " << row.label_hfill
           << " row_boundary: " << row.right_boundary() << "\n";
+       // We cannot use the operator above, unfortunately
        double x = row.left_margin;
-       Row::Elements::const_iterator it = row.elements_.begin();
-       for ( ; it != row.elements_.end() ; ++it) {
-               os << "x=" << x << " => " << *it << endl;
-               x += it->full_width();
+       for (Row::Element const & e : row.elements_) {
+               os << "x=" << x << " => " << e << endl;
+               x += e.full_width();
        }
        return os;
 }
diff --git a/src/Row.h b/src/Row.h
index 7466797..1272a0f 100644
--- a/src/Row.h
+++ b/src/Row.h
@@ -378,6 +378,8 @@ private:
        bool changebar_ = false;
 };
 
+std::ostream & operator<<(std::ostream & os, Row::Elements const & elts);
+
 
 /**
  * Each paragraph is broken up into a number of rows on the screen.
-- 
lyx-cvs mailing list
[email protected]
http://lists.lyx.org/mailman/listinfo/lyx-cvs

Reply via email to