]> git.lyx.org Git - lyx.git/blobdiff - src/cursor.h
minimal effort implementation of:
[lyx.git] / src / cursor.h
index 773513a16192c9e8abe466e7b5c3d18ab49aaaa8..ae0dcf900bed44bb1bdd0f26bd1b1423ced8ee25 100644 (file)
@@ -88,8 +88,6 @@ public:
        //
        std::string selectionAsString(bool label) const;
        ///
-       void paste(std::string const & data);
-       ///
        std::string currentState();
 
        /// auto-correct mode
@@ -114,7 +112,7 @@ public:
        /// insert an inset
        void insert(InsetBase *);
        /// insert a single char
-       void insert(char c);
+       void insert(lyx::char_type c);
        /// insert a string
        void insert(std::string const & str);
 
@@ -206,6 +204,11 @@ private:
        bool selection_;
        /// are we on the way to get one?
        bool mark_;
+       /// If true, we are behind the previous char, otherwise we are in front
+       // of the next char. This only make a difference when we are in front
+       // of a big inset spanning a whole row and computing coordinates for
+       // displaying the cursor.
+       bool logicalpos_;
 
 private:
 
@@ -251,8 +254,10 @@ public:
        /// in pixels from top of screen
        void setScreenPos(int x, int y);
        /// current offset in the top cell
-       /// interpret name a name of a macro
-       void macroModeClose();
+
+       /// interpret name a name of a macro. Returns true if
+       /// something got inserted.
+       bool macroModeClose();
        /// are we currently typing the name of a macro?
        bool inMacroMode() const;
        /// get access to the macro we are currently typing