]> git.lyx.org Git - lyx.git/blobdiff - src/ParagraphMetrics.h
tex2lyx: fix import of umlauts and ß in math (#12739)
[lyx.git] / src / ParagraphMetrics.h
index e6ca9dbb8e1f4d2f6d7b41308dda7c0b65048973..0d186f158bc217917d0d563d47a7592871892061 100644 (file)
 #include "Dimension.h"
 #include "Row.h"
 
-#include <map>
-#include <vector>
-
 namespace lyx {
 
-/**
- * Each paragraph is broken up into a number of rows on the screen.
- * This is a list of such on-screen rows, ordered from the top row
- * downwards.
- */
-typedef std::vector<Row> RowList;
-
-class Buffer;
 class BufferView;
-class BufferParams;
-class Font;
-class Inset;
 class Paragraph;
-class MetricsInfo;
-class PainterInfo;
 
 /// Helper class for paragraph metrics.
 class ParagraphMetrics {
 public:
        /// Default constructor (only here for STL containers).
-       ParagraphMetrics() : position_(0), par_(0) {}
+       ParagraphMetrics() {}
        /// The only useful constructor.
        explicit ParagraphMetrics(Paragraph const & par);
 
@@ -54,14 +38,12 @@ public:
 
        void reset(Paragraph const & par);
 
-       ///
-       Row & getRow(pos_type pos, bool boundary);
        ///
        Row const & getRow(pos_type pos, bool boundary) const;
        ///
        size_t pos2row(pos_type pos) const;
 
-       /// BufferView::redoParagraph updates this
+       /// TextMetrics::redoParagraph updates this
        Dimension const & dim() const { return dim_; }
        Dimension & dim() { return dim_; }
        /// total height of paragraph
@@ -79,7 +61,7 @@ public:
        ///
        int rightMargin(BufferView const & bv) const;
        ///
-       int singleWidth(pos_type pos, Font const & Font) const;
+       Paragraph const & par() const { return *par_; }
 
        /// dump some information to lyxerr
        void dump() const;
@@ -87,31 +69,23 @@ public:
        ///
        bool hfillExpansion(Row const & row, pos_type pos) const;
 
-       /// 
-       size_t computeRowSignature(Row const &, BufferParams const & bparams) const;
-
        ///
        int position() const { return position_; }
        void setPosition(int position);
-
-       ///
-       Dimension const & insetDimension(Inset const * inset) const;
        ///
-       void setInsetDimension(Inset const *, Dimension const & dim);
+       int id() const { return id_; }
 
 private:
        ///
-       int position_;
+       int position_ = 0;
+       ///
+       int id_ = -1;
        ///
        mutable RowList rows_;
        /// cached dimensions of paragraph
        Dimension dim_;
        ///
-       Paragraph const * par_;
-       
-       typedef std::map<Inset const *, Dimension> InsetDims;
-       ///
-       InsetDims inset_dims_;
+       Paragraph const * par_ = nullptr;
 };
 
 } // namespace lyx