* 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
* \author John Levon
- * \author André Pönitz
+ * \author André Pönitz
*
* Full author contact details are available in file CREDITS.
*/
}
-bool KeyMap::hasBinding(KeySequence const & seq, FuncRequest const & func,
- unsigned int r)
+FuncRequest KeyMap::getBinding(KeySequence const & seq, unsigned int r)
{
KeySymbol code = seq.sequence[r];
if (!code.isOK())
- return false;
+ return FuncRequest::unknown;
KeyModifier const mod1 = seq.modifiers[r].first;
KeyModifier const mod2 = seq.modifiers[r].second;
&& mod1 == it->mod.first
&& mod2 == it->mod.second) {
if (r + 1 == seq.length())
- return it->func == func;
+ return it->func;
else if (it->table.get())
- return it->table->hasBinding(seq, func, r + 1);
+ return it->table->getBinding(seq, r + 1);
}
}
- return false;
+ return FuncRequest::unknown;
}
}
-docstring KeyMap::printBindings(FuncRequest const & func) const
+docstring KeyMap::printBindings(FuncRequest const & func,
+ KeySequence::outputFormat format) const
{
Bindings bindings = findBindings(func);
if (bindings.empty())
odocstringstream res;
Bindings::const_iterator cit = bindings.begin();
Bindings::const_iterator cit_end = bindings.end();
- // prin the first item
- res << cit->print(KeySequence::ForGui);
+ // print the first item
+ res << cit->print(format);
// more than one shortcuts?
for (++cit; cit != cit_end; ++cit)
- res << ", " << cit->print(KeySequence::ForGui);
+ res << ", " << cit->print(format);
return res.str();
}