X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxfunc.h;h=9f72d2c406e12ce607312015f81a2e9b5f581c58;hb=1bb197b5d4821404cfe11509c71d1f8de7cee711;hp=ec8898c242102c5607fd1a27bf6d83bb6475184f;hpb=8283e978f8d621041c432b9b88a476bfd567385c;p=lyx.git diff --git a/src/lyxfunc.h b/src/lyxfunc.h index ec8898c242..9f72d2c406 100644 --- a/src/lyxfunc.h +++ b/src/lyxfunc.h @@ -6,14 +6,18 @@ #pragma interface #endif -#include -#include #include "commandtags.h" // for kb_action enum #include "FuncStatus.h" #include "kbsequence.h" #include "LString.h" +#include "frontends/mouse_state.h" +#include "frontends/key_state.h" +#include "frontends/LyXKeySym.h" + +#include + class LyXView; class LyXText; @@ -24,7 +28,7 @@ class LyXText; 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 SigC::Object { +class LyXFunc : public boost::signals::trackable { public: /// explicit @@ -52,7 +56,7 @@ public: void initMiniBuffer(); /// - void processKeySym(KeySym k, unsigned int state); + void processKeySym(LyXKeySymPtr key, key_modifier::state state); /// we need one internal which is called from inside LyXAction and /// can contain the string argument. @@ -76,7 +80,7 @@ public: string const getMessage() const { return dispatch_buffer; } /// Buffer to store result messages string const getStatusMessage() const { return status_buffer; } - /// Handle a accented char keysequenze + /// Handle a accented char key sequence void handleKeyFunc(kb_action action); private: @@ -89,7 +93,7 @@ private: /// kb_sequence cancel_meta_seq; /// - unsigned meta_fake_bit; + key_modifier::state meta_fake_bit; /// void moveCursorUpdate(bool flag = true, bool selecting = false); /// @@ -139,7 +143,7 @@ private: inline bool LyXFunc::wasMetaKey() const { - return (meta_fake_bit != 0); + return (meta_fake_bit != key_modifier::none); }