]> git.lyx.org Git - lyx.git/blobdiff - src/TextMetrics.h
Fix 18 memory leaks
[lyx.git] / src / TextMetrics.h
index 069c38a2ac61ff702ea9232e0d5f92cb1bab4a5f..ade98739ed8c59d50c18d4f1a5860928fa12f48a 100644 (file)
@@ -113,11 +113,6 @@ public:
 
        void drawParagraph(PainterInfo & pi, pit_type pit, int x, int y) const;
 
-       /// Returns the height of the row (width member is set to 0).
-       /// If \c topBottomSpace is true, extra space is added for the
-       /// top and bottom row.
-       void setRowHeight(Row & row, bool topBottomSpace = true) const;
-
 private:
        ///
        ParagraphMetrics & parMetrics(pit_type, bool redo_paragraph);
@@ -139,6 +134,13 @@ private:
         * the cursor and when creating a visible row */
        void computeRowMetrics(Row & row, int width) const;
 
+       /// Set the height of the row (without space above/below paragraph)
+       void setRowHeight(Row & row) const;
+       // Compute the space on top of a paragraph
+       int parTopSpacing(pit_type pit) const;
+       // Compute the space below a a paragraph
+       int parBottomSpacing(pit_type pit) const;
+
        // Helper function for the other checkInsetHit method.
        InsetList::InsetTable * checkInsetHit(pit_type pit, int x, int y);
 
@@ -148,7 +150,8 @@ public:
        /// returns the position near the specified x-coordinate of the row.
        /// x is an absolute screen coord, it is set to the real beginning
        /// of this column. This takes in account horizontal cursor row scrolling.
-       pos_type getPosNearX(Row const & row, int & x, bool & boundary) const;
+       pos_type getPosNearX(Row const & row, int & x, bool & boundary,
+                            bool select = false) const;
 
        /// returns pos in given par at given x coord.
        pos_type x2pos(pit_type pit, int row, int x) const;
@@ -186,13 +189,10 @@ public:
 
        /// sets cursor only within this Text.
        /// x,y are screen coordinates
-       void setCursorFromCoordinates(Cursor & cur, int x, int y);
-
-       /// Helper function: find row element that contains pos, and
-       /// compute x offset.
-       Row::const_iterator const
-       findRowElement(Row const & row, pos_type const pos,
-                   bool const boundary, double & x) const;
+       /// If select is true, move to the next position if closer to the right
+       /// edge.
+       void setCursorFromCoordinates(Cursor & cur, int x, int y,
+                                     bool select = false);
 
        ///
        int cursorX(CursorSlice const & cursor, bool boundary) const;