]> git.lyx.org Git - lyx.git/blobdiff - src/LyXFunc.h
After a hiatus, I'm returning to the rewrite of InsetCommandParams, the purpose of...
[lyx.git] / src / LyXFunc.h
index 6dc89890bd7b0c6c5d9b953d976d4701012c20f8..692fc732335ffd71eb2b8d02a509c7738c5adb85 100644 (file)
 
 #include "KeySequence.h"
 #include "lfuns.h"
-#include "TextClass.h"
 
 #include "support/docstring.h"
 
-#include <boost/signals/trackable.hpp>
-
 namespace lyx {
 
 class Buffer;
@@ -31,18 +28,25 @@ class FuncRequest;
 class FuncStatus;
 class KeySymbol;
 class Text;
+class TextClassIndex;
+
+namespace support {
+class FileName;
+}
 
 namespace frontend {
 class LyXView;
 }
 
+
 /** This class encapsulates all the LyX command operations.
     This is the class of the LyX's "high level event handler".
     Every user command is processed here, either invocated from
     keyboard or from the GUI. All GUI objects, including buttons and
     menus should use this class and never call kernel functions directly.
 */
-class LyXFunc : public boost::signals::trackable {
+class LyXFunc
+{
 public:
        ///
        explicit LyXFunc();
@@ -84,6 +88,15 @@ public:
        ///             not the current buffer
        void gotoBookmark(unsigned int idx, bool openFile, bool switchToBuffer);
 
+       /// cursor x position before dispatch started
+       int cursorBeforeDispatchX() const {
+               return cursorPosBeforeDispatchX_;
+       }
+       /// cursor y position before dispatch started
+       int cursorBeforeDispatchY() const {
+               return cursorPosBeforeDispatchY_;
+       }
+
 private:
        ///
        BufferView * view() const;
@@ -101,6 +114,10 @@ private:
        ///
        KeyModifier meta_fake_bit;
 
+       /// cursor position before dispatch started
+       int cursorPosBeforeDispatchX_;
+       int cursorPosBeforeDispatchY_;
+
        /// Error status, only Dispatch can change this flag
        mutable bool errorstat;
 
@@ -113,13 +130,6 @@ private:
        void sendDispatchMessage(docstring const & msg,
                FuncRequest const & ev);
 
-       // I think the following should be moved to BufferView. (Asger)
-       ///
-       void menuNew(std::string const & argument, bool fromTemplate);
-       ///
-       void open(std::string const &);
-       ///
-       void doImport(std::string const &);
        ///
        void closeBuffer();
        ///
@@ -127,7 +137,7 @@ private:
        ///
        bool ensureBufferClean(BufferView * bv);
        ///
-       void updateLayout(TextClassPtr const & oldlayout, Buffer * buffer);
+       void updateLayout(TextClassIndex const & oldlayout, Buffer * buffer);
 };
 
 /// Implementation is in LyX.cpp