X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fkbmap.C;h=b026b8630fee0a19c8565bfd159533b79080bc18;hb=80328d2053869dc089c23c25adbed4167d7bf0b1;hp=d2492e73096562303a0d39e2c6e11569144ece70;hpb=512338c9c5073ece2761737c65abc768ab48deef;p=lyx.git diff --git a/src/kbmap.C b/src/kbmap.C index d2492e7309..b026b8630f 100644 --- a/src/kbmap.C +++ b/src/kbmap.C @@ -26,7 +26,11 @@ #include -using lyx::support::i18nLibFileSearch; + +namespace lyx { + +using support::FileName; +using support::i18nLibFileSearch; using std::endl; using std::string; @@ -51,12 +55,6 @@ string const kb_keymap::printKeySym(LyXKeySym const & key, } -string const kb_keymap::printKey(kb_key const & key) const -{ - return key.code->print(key.mod.first); -} - - string::size_type kb_keymap::bind(string const & seq, FuncRequest const & func) { if (lyxerr.debugging(Debug::KBMAP)) { @@ -103,7 +101,7 @@ bool kb_keymap::read(string const & bind_file) if (lyxerr.debugging(Debug::PARSER)) lexrc.printTable(lyxerr); - string const tmp = i18nLibFileSearch("bind", bind_file, "bind"); + FileName const tmp(i18nLibFileSearch("bind", bind_file, "bind")); lexrc.setFile(tmp); if (!lexrc.isOK()) { lyxerr << "kb_keymap::read: cannot open bind file:" @@ -197,7 +195,7 @@ kb_keymap::lookup(LyXKeySymPtr key, if (cit->table.get()) { // this is a prefix key - set new map seq->curmap = cit->table.get(); - static FuncRequest prefix(LFUN_PREFIX); + static FuncRequest prefix(LFUN_COMMAND_PREFIX); return prefix; } else { // final key - reset map @@ -216,12 +214,12 @@ kb_keymap::lookup(LyXKeySymPtr key, } -string const kb_keymap::print() const +docstring const kb_keymap::print(bool forgui) const { - string buf; + docstring buf; Table::const_iterator end = table.end(); for (Table::const_iterator cit = table.begin(); cit != end; ++cit) { - buf += printKey((*cit)); + buf += cit->code->print(cit->mod.first, forgui); buf += ' '; } return buf; @@ -248,7 +246,7 @@ void kb_keymap::defkey(kb_sequence * seq, if (r + 1 == seq->length()) { lyxerr[Debug::KBMAP] << "Warning: New binding for '" - << seq->print() + << to_utf8(seq->print(false)) << "' is overriding old binding..." << endl; if (it->table.get()) { @@ -258,7 +256,8 @@ void kb_keymap::defkey(kb_sequence * seq, it->func.origin = FuncRequest::KEYBOARD; return; } else if (!it->table.get()) { - lyxerr << "Error: New binding for '" << seq->print() + lyxerr << "Error: New binding for '" + << to_utf8(seq->print(false)) << "' is overriding old binding..." << endl; return; @@ -276,22 +275,20 @@ void kb_keymap::defkey(kb_sequence * seq, newone->func = func; newone->func.origin = FuncRequest::KEYBOARD; newone->table.reset(); - return; } else { newone->table.reset(new kb_keymap); newone->table->defkey(seq, func, r + 1); - return; } } -string const kb_keymap::printbindings(FuncRequest const & func) const +docstring const kb_keymap::printbindings(FuncRequest const & func) const { - std::ostringstream res; + odocstringstream res; Bindings bindings = findbindings(func); for (Bindings::const_iterator cit = bindings.begin(); cit != bindings.end() ; ++cit) - res << '[' << cit->print() << ']'; + res << '[' << cit->print(true) << ']'; return res.str(); } @@ -342,3 +339,6 @@ kb_keymap::find1keybinding(FuncRequest const & func) const return std::make_pair(0, key_modifier::none); } + + +} // namespace lyx