X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLyXFunc.h;h=9b8fe7ffbd89a5a87b53b498156a6d8b420920fa;hb=0a7705a6736a85c3c751f7b4e9998833cdb71fc9;hp=84dc9c58fd337f99663e6a9ca9df3320278c9826;hpb=e020bc1806d30946948419a93102ec4b714438a1;p=lyx.git diff --git a/src/LyXFunc.h b/src/LyXFunc.h index 84dc9c58fd..9b8fe7ffbd 100644 --- a/src/LyXFunc.h +++ b/src/LyXFunc.h @@ -4,10 +4,10 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * - * \author Lars Gullik Bjønnes + * \author Lars Gullik Bjønnes * \author Jean-Marc Lasgouttes * \author John Levon - * \author André Pönitz + * \author André Pönitz * * Full author contact details are available in file CREDITS. */ @@ -15,25 +15,23 @@ #ifndef LYXFUNC_H #define LYXFUNC_H +#include "FuncCode.h" #include "KeySequence.h" -#include "lfuns.h" -#include "TextClassPtr.h" #include "support/docstring.h" -#include - namespace lyx { class Buffer; class BufferView; +class DocumentClass; class FuncRequest; class FuncStatus; class KeySymbol; class Text; -namespace frontend { -class LyXView; +namespace support { +class FileName; } /** This class encapsulates all the LyX command operations. @@ -42,7 +40,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(); @@ -50,24 +49,9 @@ public: /// LyX dispatcher, executes lyx actions. void dispatch(FuncRequest const &); - /// - void setLyXView(frontend::LyXView * lv); - - /// - void initKeySequences(KeyMap * kb); - - /// return the status bar state string - docstring const viewStatusMessage(); - - /// - void processKeySym(KeySymbol const & key, key_modifier::state state); - /// FuncStatus getStatus(FuncRequest const & action) const; - /// The last key was meta - bool wasMetaKey() const; - /// True if lyxfunc reports an error bool errorStat() const { return errorstat; } /// Buffer to store result messages @@ -76,30 +60,21 @@ public: void setErrorMessage(docstring const &) const; /// Buffer to store result messages docstring const getMessage() const { return dispatch_buffer; } - /// Handle a accented char key sequence - void handleKeyFunc(kb_action action); /// goto a bookmark /// openFile: whether or not open a file if the file is not opened /// switchToBuffer: whether or not switch to buffer if the buffer is /// not the current buffer void gotoBookmark(unsigned int idx, bool openFile, bool switchToBuffer); -private: - /// - BufferView * view() const; - - /// - frontend::LyXView * lyx_view_; - - /// the last character added to the key sequence, in UCS4 encoded form - char_type encoded_last_key; + /// cursor x position before dispatch started + int cursorBeforeDispatchX() const { return cursorPosBeforeDispatchX_; } + /// cursor y position before dispatch started + int cursorBeforeDispatchY() const { return cursorPosBeforeDispatchY_; } - /// - KeySequence keyseq; - /// - KeySequence cancel_meta_seq; - /// - key_modifier::state meta_fake_bit; +private: + /// cursor position before dispatch started + int cursorPosBeforeDispatchX_; + int cursorPosBeforeDispatchY_; /// Error status, only Dispatch can change this flag mutable bool errorstat; @@ -108,26 +83,6 @@ private: good reason to have this one as static in Dispatch? (Ale) */ mutable docstring dispatch_buffer; - - /// send a post-dispatch status message - 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); }; /// Implementation is in LyX.cpp