* 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.
*/
#ifndef LYXFUNC_H
#define LYXFUNC_H
+#include "FuncCode.h"
#include "KeySequence.h"
-#include "lfuns.h"
-#include "TextClassPtr.h"
#include "support/docstring.h"
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.
/// 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, KeyModifier 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
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;
- ///
- KeyModifier meta_fake_bit;
+private:
+ /// cursor position before dispatch started
+ int cursorPosBeforeDispatchX_;
+ int cursorPosBeforeDispatchY_;
/// Error status, only Dispatch can change this flag
mutable bool errorstat;
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