X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxfunc.h;h=19a403b56dd2a83aa7010055a8614fae3098c6f0;hb=09e01879979643949f1f2c7216023f1f35d5ada2;hp=70153ce12135e1b0ac11241990898f32d6a8b2ec;hpb=fa02980a7ea3578ed74bf4a9faf1242e06340a62;p=lyx.git diff --git a/src/lyxfunc.h b/src/lyxfunc.h index 70153ce121..19a403b56d 100644 --- a/src/lyxfunc.h +++ b/src/lyxfunc.h @@ -2,24 +2,17 @@ #ifndef LYXFUNC_H #define LYXFUNC_H -#ifdef __GNUG__ -#pragma interface -#endif - - -#include "commandtags.h" // for kb_action enum #include "FuncStatus.h" #include "kbsequence.h" +#include "lfuns.h" #include "LString.h" -#include "frontends/mouse_state.h" -#include "frontends/key_state.h" -#include "frontends/LyXKeySym.h" - #include class LyXView; class LyXText; +class FuncRequest; +class BufferView; /** This class encapsulates all the LyX command operations. @@ -35,25 +28,16 @@ public: LyXFunc(LyXView *); /// LyX dispatcher, executes lyx actions. - string const dispatch(kb_action ac, string argument = string()); - - /// The same as dispatch, but also shows shortcuts and command - /// name in minibuffer if show_sc is true (more to come?) - void verboseDispatch(kb_action action, - string const & argument, - bool show_sc); - - /// Same as above, using a pseudoaction as argument - void verboseDispatch(int ac, bool show_sc); + void dispatch(FuncRequest const &, bool verbose = false); - /// Same as above, when the command is provided as a string - void verboseDispatch(string const & s, bool show_sc); + /// Dispatch via a string argument + void dispatch(string const & s, bool verbose = false); - /// - void miniDispatch(string const & s); + /// Dispatch via a pseudo action, also displaying shortcut/command name + void dispatch(int ac, bool verbose = false); - /// - void initMiniBuffer(); + /// return the status bar state string + string const view_status_message(); /// void processKeySym(LyXKeySymPtr key, key_modifier::state state); @@ -62,8 +46,7 @@ public: /// can contain the string argument. FuncStatus getStatus(int ac) const; /// - FuncStatus getStatus(kb_action action, - string const & argument = string()) const; + FuncStatus getStatus(FuncRequest const & action) const; /// The last key was meta bool wasMetaKey() const; @@ -85,9 +68,14 @@ public: private: /// - LyXView * owner; + BufferView * view() const; + /// - static int psd_idx; + LyXView * owner; + + /// the last character added to the key sequence, in ISO encoded form + char encoded_last_key; + /// kb_sequence keyseq; /// @@ -95,13 +83,9 @@ private: /// key_modifier::state meta_fake_bit; /// - void moveCursorUpdate(bool flag = true, bool selecting = false); + void moveCursorUpdate(); /// void setupLocalKeymap(); - /// - kb_action lyx_dead_action; - /// - kb_action lyx_calling_dead_action; /// Error status, only Dispatch can change this flag mutable bool errorstat; @@ -112,8 +96,9 @@ private: /** Buffer to store messages and result data from getStatus */ mutable string status_buffer; - /// Command name and shortcut information - string commandshortcut; + + /// send a post-dispatch status message + void sendDispatchMessage(string const & msg, FuncRequest const & ev, bool verbose); // I think the following should be moved to BufferView. (Asger) @@ -128,23 +113,6 @@ private: /// void closeBuffer(); - /// - void reloadBuffer(); - /// - // This return or directly text (default) of getLyXText() - /// - LyXText * TEXT(bool) const; - /// }; - -/*-------------------- inlines --------------------------*/ - -inline -bool LyXFunc::wasMetaKey() const -{ - return (meta_fake_bit != key_modifier::none); -} - - #endif