]> git.lyx.org Git - lyx.git/blobdiff - src/Cursor.h
Revert "XHTML: remove DOCTYPE, as the document is then understood as HTML4/XHTML1...
[lyx.git] / src / Cursor.h
index 2985543a4409f731c1faeeb5d9ca1bfd8d21d0dc..fc4daeb93b7a7f3b0619fd4a2573e20f565a3c3a 100644 (file)
@@ -154,17 +154,13 @@ public:
        DocIterator selectionEnd() const;
 
        ///
-       docstring selectionAsString(bool with_label) const;
+       docstring selectionAsString(bool const with_label,
+                                   bool const skipdelete = false) const;
        /// get some interesting description of top position
        void info(odocstream & os, bool devel_mode) const;
        ///
        docstring currentState(bool devel_mode) const;
 
-       /// auto-correct mode
-       bool autocorrect() const { return autocorrect_; }
-       /// auto-correct mode
-       bool & autocorrect() { return autocorrect_; }
-
        /// fix cursor in circumstances that should never happen.
        /// \retval true if a fix occurred.
        bool fixIfBroken();
@@ -183,6 +179,8 @@ public:
        void beginUndoGroup() const;
        /// end the current undo group
        void endUndoGroup() const;
+       /// end abruptly the current group and create a new one wih the same nesting level
+       void splitUndoGroup() const;
 
        /// The general case: prepare undo for an arbitrary range.
        void recordUndo(pit_type from, pit_type to) const;
@@ -192,7 +190,7 @@ public:
        /// containing the cursor
        void recordUndo(UndoKind kind = ATOMIC_UNDO) const;
        /// Convenience: prepare undo for the inset containing the cursor
-       void recordUndoInset(Inset const * inset = 0) const;
+       void recordUndoInset(Inset const * inset = nullptr) const;
        /// Convenience: prepare undo for the whole buffer
        void recordUndoFullBuffer() const;
        /// Convenience: prepare undo for buffer parameters
@@ -236,14 +234,13 @@ private:
        //
        // math specific stuff that could be promoted to "global" later
        //
-       /// do we allow autocorrection
-       bool autocorrect_;
 
        // FIXME: make them private
 public:
-       /// the current font settings
+       /// The current font settings. This holds the settings for output.
        Font current_font;
-       /// the current font
+       /// The current display font. This holds the settings of the text
+       /// in the workarea.
        Font real_current_font;
 };
 
@@ -259,6 +256,10 @@ public:
        void push(Inset & inset);
        /// add a new cursor slice, place cursor at front (move backwards)
        void pushBackward(Inset & inset);
+       /// try to put cursor in inset before it in entry cell, or next one
+       /// if it is not empty, or exit the slice if there is no next one.
+       void editInsertedInset();
+
        /// pop one level off the cursor
        void pop();
        /// pop one slice off the cursor stack and go backwards
@@ -279,7 +280,13 @@ public:
        /// get the resut of the last dispatch
        DispatchResult const & result() const;
 
-       ///
+       /// Set the cursor language from current input method language
+       /* Considers first exact math with the codes used in the document,
+        * then approximate match among the same list, and finally exact
+        * or partial match with the whole list of languages.
+        */
+       void setLanguageFromInput();
+       /// Set the current font of the cursor from its location. 
        void setCurrentFont();
 
        /**
@@ -517,13 +524,9 @@ public:
        /// the name of the macro we are currently inputting
        docstring macroName();
 
-
        /// replace selected stuff with at, placing the former
        // selection in entry cell of atom
        void handleNest(MathAtom const & at);
-       /// replace selected stuff with at, placing the former
-       // selection in given cell of atom
-       void handleNest(MathAtom const & at, int cell);
 
        /// make sure cursor position is valid
        /// FIXME: It does a subset of fixIfBroken. Maybe merge them?