]> git.lyx.org Git - lyx.git/blobdiff - src/LyXFunc.h
do what the FIXME suggested
[lyx.git] / src / LyXFunc.h
index 6dc89890bd7b0c6c5d9b953d976d4701012c20f8..3b062b8f53b6baee93a9b0817007d3088da337b2 100644 (file)
 
 #include "KeySequence.h"
 #include "lfuns.h"
-#include "TextClass.h"
 
 #include "support/docstring.h"
 
-#include <boost/signals/trackable.hpp>
-
 namespace lyx {
 
 class Buffer;
 class BufferView;
+class DocumentClass;
 class FuncRequest;
 class FuncStatus;
 class KeySymbol;
 class Text;
 
+namespace support {
+class FileName;
+}
+
 namespace frontend {
 class LyXView;
 }
@@ -42,7 +44,8 @@ class LyXView;
     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 +87,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 +113,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,21 +129,12 @@ 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();
        ///
        void reloadBuffer();
        ///
        bool ensureBufferClean(BufferView * bv);
        ///
-       void updateLayout(TextClassPtr const & oldlayout, Buffer * buffer);
+       void updateLayout(DocumentClass * oldlayout, Buffer * buffer);
 };
 
 /// Implementation is in LyX.cpp