X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FCursor.h;h=a7111c2908d0dc57c699d768182370834d2407fd;hb=35361d7af41921b0951085072c738848adf6aaff;hp=3cfdd009fe8c54ce6ce34d36afdd04d34b7ba1b5;hpb=6eea764eadb87b28e48dd5ca7464795bb4bc8cbe;p=lyx.git diff --git a/src/Cursor.h b/src/Cursor.h index 3cfdd009fe..a7111c2908 100644 --- a/src/Cursor.h +++ b/src/Cursor.h @@ -292,6 +292,15 @@ public: /// void checkBufferStructure(); + /// hook for text input to maintain the "new born word" + void markNewWordPosition(); + + /// The position of the new born word + /// As the user is entering a word without leaving it + /// the result is not empty. When not in text mode + /// and after leaving the word the result is empty. + DocIterator newWord() const { return new_word_; } + public: //private: @@ -300,11 +309,19 @@ public: /// void saveBeforeDispatchPosXY(); +private: + /// validate the "new born word" position + void checkNewWordPosition(); + /// clear the "new born word" position + void clearNewWordPosition(); + private: /// BufferView * bv_; /// the anchor position DocIterator anchor_; + /// the start of the new born word + DocIterator new_word_; /// mutable DispatchResult disp_; /** @@ -396,8 +413,8 @@ public: void plainInsert(MathAtom const & at); /// void niceInsert(MathAtom const & at); - /// - void niceInsert(docstring const & str, Parse::flags f = Parse::NORMAL, + /// return the number of inserted array items + int niceInsert(docstring const & str, Parse::flags f = Parse::NORMAL, bool enter = true); /// in pixels from top of screen