]> git.lyx.org Git - lyx.git/blobdiff - src/lyxtext.h
Continue to improve GtkLengthEntry
[lyx.git] / src / lyxtext.h
index 882f340571c7cc1d2e08d6c76ccf265034c92ef7..8b0242bb3fb943a66a97e3abeff189192d7a4209 100644 (file)
@@ -75,7 +75,7 @@ public:
        void breakParagraph(LCursor & cur, bool keep_layout = false);
 
        /// set layout over selection
-       pit_type setLayout(pit_type start, pit_type end,
+       void setLayout(pit_type start, pit_type end,
                std::string const & layout);
        ///
        void setLayout(LCursor & cur, std::string const & layout);
@@ -126,14 +126,14 @@ public:
                FuncStatus & status) const;
 
        /// access to out BufferView. This should go...
-//     BufferView * bv();
-       /// access to out BufferView. This should go...
        BufferView * bv() const;
 
-       /// access to individual paragraphs
-       Paragraph & getPar(pit_type par) const;
+       /// read-only access to individual paragraph
+       Paragraph const & getPar(pit_type pit) const { return pars_[pit]; }
+       /// read-write access to individual paragraph
+       Paragraph & getPar(pit_type pit) { return pars_[pit]; }
        // Returns the current font and depth as a message.
-       std::string LyXText::currentState(LCursor & cur);
+       std::string currentState(LCursor & cur);
 
        /** returns row near the specified
          * y-coordinate in given paragraph (relative to the screen).
@@ -165,8 +165,7 @@ public:
        bool setCursor(LCursor & cur, pit_type par, pos_type pos,
                       bool setfont = true, bool boundary = false);
        ///
-       void setCursor(CursorSlice &, pit_type par,
-                      pos_type pos, bool boundary = false);
+       void setCursor(CursorSlice &, pit_type par, pos_type pos);
        ///
        void setCursorIntern(LCursor & cur, pit_type par,
                 pos_type pos, bool setfont = true, bool boundary = false);
@@ -177,8 +176,8 @@ public:
        void recUndo(pit_type first, pit_type last) const;
        ///
        void recUndo(pit_type first) const;
-       ///
-       void setCursorFromCoordinates(LCursor & cur, int x, int y);
+       /// returns true if par was empty and was removed
+       bool setCursorFromCoordinates(LCursor & cur, int x, int y);
        ///
        InsetBase * editXY(LCursor & cur, int x, int y);
        /// Move cursor one line up.
@@ -222,9 +221,9 @@ public:
        ///
        void cursorBottom(LCursor & cur);
        ///
-       void Delete(LCursor & cur);
+       bool Delete(LCursor & cur);
        ///
-       void backspace(LCursor & cur);
+       bool backspace(LCursor & cur);
        ///
        bool selectWordWhenUnderCursor(LCursor & cur, lyx::word_location);
        ///
@@ -291,7 +290,8 @@ public:
        RowMetrics computeRowMetrics(pit_type pit, Row const & row) const;
 
        /// access to our paragraphs
-       ParagraphList & paragraphs() const;
+       ParagraphList const & paragraphs() const { return pars_; }
+       ParagraphList & paragraphs() { return pars_; }
        /// return true if this is the main text
        bool isMainText() const;
 
@@ -322,9 +322,12 @@ public:
        ///
        int descent() const;
        ///
-       int cursorX(CursorSlice const & cursor) const;
+       int cursorX(CursorSlice const & cursor, bool boundary) const;
        ///
-       int cursorY(CursorSlice const & cursor) const;
+       int cursorY(CursorSlice const & cursor, bool boundary) const;
+
+       /// delete double space or empty paragraphs around old cursor
+       bool deleteEmptyParagraphMechanism(LCursor & cur, LCursor & old);
 
        ///
        friend class LyXScreen;
@@ -339,6 +342,8 @@ public:
        /// the current font
        LyXFont real_current_font;
        /// our buffer's default layout font. This is textclass specific
+       /* This is actually never initialized! Should be replaced by a
+        * defaultfont() method that looks at the textclass (easy). [JMarc]*/
        LyXFont defaultfont_;
        ///
        int background_color_;
@@ -362,9 +367,6 @@ private:
        /// change on pit
        pit_type undoSpan(pit_type pit);
 
-       /// used in setlayout
-       void makeFontEntriesLayoutSpecific(BufferParams const &, Paragraph & par);
-
        /// Calculate and set the height of the row
        void setHeightOfRow(pit_type, Row & row);
 
@@ -372,9 +374,6 @@ private:
        // position. Called by deleteEmptyParagraphMechanism
        void fixCursorAfterDelete(CursorSlice & cur, CursorSlice const & where);
 
-       /// delete double space or empty paragraphs around old cursor
-       bool deleteEmptyParagraphMechanism(LCursor & cur, LCursor const & old);
-
        ///
        void deleteWordForward(LCursor & cur);
        ///