mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-22 21:21:32 +00:00
Move LFUN_UNICODE_INSERT to BufferView, per JMarc's suggestion.
This commit is contained in:
parent
f7d502d024
commit
a714f6cb76
@ -65,6 +65,7 @@
|
|||||||
#include "insets/InsetText.h"
|
#include "insets/InsetText.h"
|
||||||
|
|
||||||
#include "mathed/MathData.h"
|
#include "mathed/MathData.h"
|
||||||
|
#include "mathed/InsetMathNest.h"
|
||||||
|
|
||||||
#include "frontends/alert.h"
|
#include "frontends/alert.h"
|
||||||
#include "frontends/Application.h"
|
#include "frontends/Application.h"
|
||||||
@ -1907,6 +1908,33 @@ void BufferView::dispatch(FuncRequest const & cmd, DispatchResult & dr)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
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
|
// This would be in Buffer class if only Cursor did not
|
||||||
// require a bufferview
|
// require a bufferview
|
||||||
case LFUN_INSET_FORALL: {
|
case LFUN_INSET_FORALL: {
|
||||||
|
@ -1696,29 +1696,6 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
|
|||||||
bv->buffer().errors("Paste");
|
bv->buffer().errors("Paste");
|
||||||
break;
|
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: {
|
case LFUN_QUOTE_INSERT: {
|
||||||
cap::replaceSelection(cur);
|
cap::replaceSelection(cur);
|
||||||
cur.recordUndo();
|
cur.recordUndo();
|
||||||
|
@ -1246,31 +1246,6 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
|
|||||||
break;
|
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: {
|
case LFUN_DIALOG_SHOW_NEW_INSET: {
|
||||||
docstring const & name = cmd.argument();
|
docstring const & name = cmd.argument();
|
||||||
string data;
|
string data;
|
||||||
|
Loading…
Reference in New Issue
Block a user