#include "insets/InsetText.h"
#include "mathed/MathData.h"
+#include "mathed/InsetMathNest.h"
#include "frontends/alert.h"
#include "frontends/Application.h"
}
+ case LFUN_UNICODE_INSERT: {
+ if (cmd.argument().empty())
+ break;
+
+ FuncCode code = cur.inset().currentMode() == Inset::MATH_MODE ?
+ LFUN_MATH_INSERT : LFUN_SELF_INSERT;
+ int i = 0;
+ while (true) {
+ docstring const arg = from_utf8(cmd.getArg(i));
+ if (arg.empty())
+ break;
+ if (!isHex(arg)) {
+ LYXERR0("Not a hexstring: " << arg);
+ ++i;
+ continue;
+ }
+ char_type c = hexToInt(arg);
+ if (c >= 32 && c < 0x10ffff) {
+ LYXERR(Debug::KEY, "Inserting c: " << c);
+ lyx::dispatch(FuncRequest(code, docstring(1, c)));
+ }
+ ++i;
+ }
+ break;
+ }
+
+
// This would be in Buffer class if only Cursor did not
// require a bufferview
case LFUN_INSET_FORALL: {
bv->buffer().errors("Paste");
break;
- case LFUN_UNICODE_INSERT: {
- if (cmd.argument().empty())
- break;
- int i = 0;
- while (true) {
- docstring const arg = from_utf8(cmd.getArg(i));
- if (arg.empty())
- break;
- if (!isHex(arg)) {
- LYXERR0("Not a hexstring: " << arg);
- ++i;
- continue;
- }
- char_type c = hexToInt(arg);
- if (c >= 32 && c < 0x10ffff) {
- LYXERR(Debug::KEY, "Inserting c: " << c);
- lyx::dispatch(FuncRequest(LFUN_SELF_INSERT, docstring(1, c)));
- }
- ++i;
- }
- break;
- }
-
case LFUN_QUOTE_INSERT: {
cap::replaceSelection(cur);
cur.recordUndo();
break;
}
- case LFUN_UNICODE_INSERT: {
- if (cmd.argument().empty())
- break;
- int i = 0;
- while (true) {
- docstring const arg = from_utf8(cmd.getArg(i));
- if (arg.empty())
- break;
- if (!isHex(arg)) {
- LYXERR0("Not a hexstring: " << arg);
- ++i;
- continue;
- }
- char_type c = hexToInt(arg);
- if (c >= 32 && c < 0x10ffff) {
- LYXERR(Debug::KEY, "Inserting c: " << c);
- FuncCode code = currentMode() == MATH_MODE ?
- LFUN_MATH_INSERT : LFUN_SELF_INSERT;
- lyx::dispatch(FuncRequest(code, docstring(1, c)));
- }
- ++i;
- }
- break;
- }
-
case LFUN_DIALOG_SHOW_NEW_INSET: {
docstring const & name = cmd.argument();
string data;