X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FKeySequence.h;h=444fb0871975095d14a8be5b59fb1762602e61a0;hb=21c92c8a129b5f3ff56de33bf2941a25967cffbb;hp=b59e86d2df131864bebb49d90cd58ada8ce8b931;hpb=c4033d401202ffc57b5a04ef9cf83b494b7ddfa0;p=lyx.git diff --git a/src/KeySequence.h b/src/KeySequence.h index b59e86d2df..444fb08719 100644 --- a/src/KeySequence.h +++ b/src/KeySequence.h @@ -4,7 +4,7 @@ * 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 * * Full author contact details are available in file CREDITS. @@ -61,13 +61,18 @@ public: */ size_t parse(std::string const & s); + enum outputFormat { + Portable, //< use a more portable format + ForGui, //< use platform specific translations and special characters + BindFile //< the format used in lyx bind files + }; + /** * Return the current sequence as a string. - * @param forgui true if the string should use translations and - * special characters. + * @param format output format * @see parse() */ - docstring const print(bool forgui) const; + docstring const print(outputFormat format, bool const untranslated = false) const; /** * Return the current sequence and available options as @@ -77,27 +82,27 @@ public: */ docstring const printOptions(bool forgui) const; - /// Mark the sequence as deleted. - void mark_deleted(); - /// Reset sequence to become "deleted" void reset(); /// clear in full void clear(); + /// remove last key in sequence + void removeKey(); + bool deleted() const { return deleted_; } /// length of sequence size_t length() const { return sequence.size(); } +private: /// Keymap to use if a new sequence is starting KeyMap * stdmap; /// Keymap to use for the next key KeyMap * curmap; -private: /** * Array holding the current key sequence as KeySyms. * If sequence[length - 1] < 0xff it can be used as ISO8859 char