]> git.lyx.org Git - lyx.git/blobdiff - src/TextMetrics.h
Remove 3rdparty/boost/Makefile.am
[lyx.git] / src / TextMetrics.h
index 353d28926cea72f7e6d1bd45753506d43c40f8b6..d65618fc0cbf5401dc1d0a183079fc61738ba401 100644 (file)
 
 #include "support/types.h"
 
+#include <map>
+
 namespace lyx {
 
 class BufferView;
 class Cursor;
 class CursorSlice;
-class DocIterator;
 class MetricsInfo;
 class Text;
 
@@ -71,11 +72,11 @@ public:
        void newParMetricsUp();
 
        /// compute text metrics.
-       bool metrics(MetricsInfo & mi, Dimension & dim, int min_width = 0,
+       bool metrics(MetricsInfo const & mi, Dimension & dim, int min_width = 0,
                     bool const expand_on_multipars = true);
 
        /// The "nodraw" drawing stage for one single paragraph: set the
-       /// positions of the insets contained this paragraph in metrics
+       /// positions of the insets contained in this paragraph in metrics
        /// cache. Related to BufferView::updatePosCache.
        void updatePosCache(pit_type pit) const;
 
@@ -98,11 +99,9 @@ public:
        /// is this position in the paragraph right-to-left?
        bool isRTL(CursorSlice const & sl, bool boundary) const;
        /// is between pos-1 and pos an RTL<->LTR boundary?
-       bool isRTLBoundary(pit_type pit,
-         pos_type pos) const;
+       bool isRTLBoundary(pit_type pit, pos_type pos) const;
        /// would be a RTL<->LTR boundary between pos and the given font?
-       bool isRTLBoundary(pit_type pit,
-         pos_type pos, Font const & font) const;
+       bool isRTLBoundary(pit_type pit, pos_type pos, Font const & font) const;
 
 
        /// Rebreaks the given paragraph.
@@ -123,6 +122,15 @@ public:
        /// current text height.
        int height() const { return dim_.height(); }
 
+       /**
+        * Returns the left beginning of the text.
+        * This information cannot be taken from the layout object, because
+        * in LaTeX the beginning of the text fits in some cases
+        * (for example sections) exactly the label-width.
+        */
+       int leftMargin(pit_type pit, pos_type pos) const;
+       int leftMargin(pit_type pit) const;
+
        ///
        int rightMargin(ParagraphMetrics const & pm) const;
        int rightMargin(pit_type const pit) const;
@@ -136,15 +144,6 @@ private:
        ///
        ParagraphMetrics & parMetrics(pit_type, bool redo_paragraph);
 
-       /**
-        * Returns the left beginning of the text.
-        * This information cannot be taken from the layout object, because
-        * in LaTeX the beginning of the text fits in some cases
-        * (for example sections) exactly the label-width.
-        */
-       int leftMargin(pit_type pit, pos_type pos) const;
-       int leftMargin(pit_type pit) const;
-
        /// the minimum space a manual label needs on the screen in pixels
        int labelFill(Row const & row) const;
 
@@ -220,9 +219,9 @@ public:
        void setCursorFromCoordinates(Cursor & cur, int x, int y);
 
        ///
-       int cursorX(CursorSlice const & cursor, bool boundary) const;
+       int cursorX(CursorSlice const & sl, bool boundary) const;
        ///
-       int cursorY(CursorSlice const & cursor, bool boundary) const;
+       int cursorY(CursorSlice const & sl, bool boundary) const;
 
        ///
        bool cursorHome(Cursor & cur);