]> git.lyx.org Git - lyx.git/blobdiff - src/Cursor.h
hyperref support for tex2lyx
[lyx.git] / src / Cursor.h
index eb268a371a83750aa668d6ee87b84f7ef7eb6554..0e01c63b51f48548ae6d6f26f6282f45304a4cc3 100644 (file)
@@ -36,9 +36,6 @@ class Encoding;
 
 
 /// The cursor class describes the position of a cursor within a document.
-
-// The public inheritance should go in favour of a suitable data member
-// (or maybe private inheritance) at some point of time.
 class Cursor : public DocIterator
 {
 public:
@@ -114,7 +111,7 @@ public:
         */
        bool selHandle(bool selecting);
        ///
-       docstring selectionAsString(bool label) const;
+       docstring selectionAsString(bool with_label) const;
        ///
        docstring currentState() const;
 
@@ -231,8 +228,14 @@ public:
        void undispatched();
        /// the event was already dispatched
        void dispatched();
-       /// Set which update should be done
-       void updateFlags(Update::flags f);
+       /// Set which screen update should be done
+       void screenUpdateFlags(Update::flags f);
+       /// Forces an updateBuffer() call
+       void forceBufferUpdate();
+       /// Removes any pending updateBuffer() call
+       void clearBufferUpdate();
+       /// Do we need to call updateBuffer()?
+       bool needBufferUpdate() const;
        /**
         * don't call update() when done
         *
@@ -241,9 +244,9 @@ public:
         * not need to be re-drawn and all entries in the coord cache stay
         * valid (and there are no other things to put in the coord cache).
         * This is a fairly rare event as well and only some optimization.
-        * Not using noUpdate() should never be wrong.
+        * Not using noScreenUpdate() should never be wrong.
         */
-       void noUpdate();
+       void noScreenUpdate();
        /// fix cursor in circumstances that should never happen.
        /// \retval true if a fix occured.
        bool fixIfBroken();
@@ -277,7 +280,8 @@ public:
        void recordUndo(UndoKind kind = ATOMIC_UNDO) const;
 
        /// Convenience: prepare undo for the inset containing the cursor
-       void recordUndoInset(UndoKind kind = ATOMIC_UNDO) const;
+       void recordUndoInset(UndoKind kind = ATOMIC_UNDO,
+                            Inset const * inset = 0) const;
 
        /// Convenience: prepare undo for the whole buffer
        void recordUndoFullDocument() const;
@@ -289,8 +293,6 @@ public:
        void checkBufferStructure();
 
 public:
-       ///
-       BufferView * bv_;
 //private:
        
        ///
@@ -299,6 +301,8 @@ public:
        void saveBeforeDispatchPosXY();
 
 private:
+       ///
+       BufferView * bv_;
        /// the anchor position
        DocIterator anchor_;
        ///