X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fkbmap.h;h=bde8793a20c8ab124a9ca1b336b8ef9d8e918dec;hb=b59621bc59584fb3496459a2be79acfc8476a9a1;hp=b8eabff92d5db56af79b0c4c992b48f942e3711e;hpb=500fa5f5912440de5cc5f1dcb75955f4b09b9e50;p=lyx.git diff --git a/src/kbmap.h b/src/kbmap.h index b8eabff92d..bde8793a20 100644 --- a/src/kbmap.h +++ b/src/kbmap.h @@ -21,6 +21,7 @@ #include #include +#include class kb_sequence; class LyXKeySym; @@ -55,9 +56,23 @@ public: lookup(LyXKeySymPtr key, key_modifier::state mod, kb_sequence * seq) const; + /// + typedef std::deque Bindings; + /// Given an action, find all keybindings. - std::string const findbinding(FuncRequest const & func, - std::string const & prefix = std::string()) const; + Bindings findbindings(FuncRequest const & func) const; + + /// Given an action, print the keybindings. + std::string const printbindings(FuncRequest const & func) const; + + /** + * Given an action, find the first 1-key binding (if it exists). + * The LyXKeySym pointer is 0 is no key is found. + * [only used by the Qt/Mac frontend] + */ + std::pair + find1keybinding(FuncRequest const & func) const; + /** * Returns a string of the given keysym, with modifiers. @@ -95,6 +110,14 @@ private: /// 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 + * @param prefix a sequence to prepend the results + */ + Bindings findbindings(FuncRequest const & func, + kb_sequence const & prefix) const; + /// is the table empty ? bool empty() const { return table.empty();