X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fkbmap.h;h=2ffe6885f15c2c452fb40a0f1b7a0364e4fcaa57;hb=52eb91c94fb70d58dceef430659c8781de2eccda;hp=bde8793a20c8ab124a9ca1b336b8ef9d8e918dec;hpb=e978fa42e38be22e9312be963ba6512fcd4b45ef;p=lyx.git diff --git a/src/kbmap.h b/src/kbmap.h index bde8793a20..2ffe6885f1 100644 --- a/src/kbmap.h +++ b/src/kbmap.h @@ -17,14 +17,19 @@ #include "funcrequest.h" #include "frontends/key_state.h" +#include "frontends/LyXKeySym.h" + +#include "support/docstream.h" #include #include #include + +namespace lyx { + class kb_sequence; -class LyXKeySym; /// Defines key maps and actions for key sequences class kb_keymap { @@ -40,17 +45,19 @@ public: // Parse a bind file bool read(std::string const & bind_file); - /// print all available keysyms - std::string const print() const; + /** + * print all available keysyms + * @param forgui true if the string should use translations and + * special characters. + */ + docstring const print(bool forgui) const; - /// - typedef boost::shared_ptr LyXKeySymPtr; /** * Look up a key press in the keymap. * @param key the keysym * @param mod the modifiers * @param seq the current key sequence so far - * @return the action / LFUN_PREFIX / LFUN_UNKNOWN_ACTION + * @return the action / LFUN_COMMAND_PREFIX / LFUN_UNKNOWN_ACTION */ FuncRequest const & lookup(LyXKeySymPtr key, @@ -63,7 +70,7 @@ public: Bindings findbindings(FuncRequest const & func) const; /// Given an action, print the keybindings. - std::string const printbindings(FuncRequest const & func) const; + docstring const printbindings(FuncRequest const & func) const; /** * Given an action, find the first 1-key binding (if it exists). @@ -107,9 +114,6 @@ private: void defkey(kb_sequence * seq, FuncRequest const & func, unsigned int r = 0); - /// Returns a string of the given key - std::string const printKey(kb_key const & key) const; - /** * Given an action, find all keybindings * @param func the action @@ -128,4 +132,10 @@ private: Table table; }; +/// Implementation is in lyx_main.C +extern kb_keymap & theTopLevelKeymap(); + + +} // namespace lyx + #endif // KBMAP_H