summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--inputmethods/multikey/keyboard.cpp57
1 files changed, 33 insertions, 24 deletions
diff --git a/inputmethods/multikey/keyboard.cpp b/inputmethods/multikey/keyboard.cpp
index de3aa52..08318bd 100644
--- a/inputmethods/multikey/keyboard.cpp
+++ b/inputmethods/multikey/keyboard.cpp
@@ -366,3 +366,4 @@ void Keyboard::mousePressEvent(QMouseEvent *e)
- if (unicode == 0x60) {
+ //if (unicode == 0x60) { // the keys from 2c6 ~ 2cf should be used instead of the ascii one
+ if (unicode == 0x2cb) {
@@ -383,3 +384,4 @@ void Keyboard::mousePressEvent(QMouseEvent *e)
- if (unicode == 0xb4) {
+ //if (unicode == 0xb4) {
+ if (unicode == 0x2ca) {
@@ -768,2 +770,9 @@ void Keyboard::mouseReleaseEvent(QMouseEvent*)
}
+ if (ctrl && unicode != 0) {
+
+ *ctrl = 0;
+ ctrl = 0;
+ repaint(FALSE);
+
+ }
@@ -1017,5 +1026,5 @@ void Keyboard::loadKeyboardColors() {
*
- * = schar (start char)
- * = mchar (middle char)
- * = echar (end char)
+ * 초음 = schar (start char)
+ * 중음 = mchar (middle char)
+ * 끝음 = echar (end char)
*
@@ -1059,6 +1068,6 @@ ushort Keyboard::parseKoreanInput (ushort c) {
- if (echar == 0x11a8) { //
+ if (echar == 0x11a8) { // ㄱ
- if (c == 0x1100) echar = 0x11a9; // +
- else if (c == 0x1109) echar = 0x11aa; // +
+ if (c == 0x1100) echar = 0x11a9; // ㄱ + ㄱ
+ else if (c == 0x1109) echar = 0x11aa; // ㄱ + ㅅ
else {
@@ -1068,6 +1077,6 @@ ushort Keyboard::parseKoreanInput (ushort c) {
- } else if (echar == 0x11ab) { //
+ } else if (echar == 0x11ab) { // ㄴ
- if (c == 0x110c) echar = 0x11ac; // +
- else if (c == 0x1112) echar = 0x11ad; // +
+ if (c == 0x110c) echar = 0x11ac; // ㄴ + ㅈ
+ else if (c == 0x1112) echar = 0x11ad; // ㄴ + ㅎ
else {
@@ -1077,11 +1086,11 @@ ushort Keyboard::parseKoreanInput (ushort c) {
- } else if (echar == 0x11af) { //
+ } else if (echar == 0x11af) { // ㄹ
- if (c == 0x1100) echar = 0x11b0; // +
- else if (c == 0x1106) echar = 0x11b1; // +
- else if (c == 0x1107) echar = 0x11b2; // +
- else if (c == 0x1109) echar = 0x11b3; // +
- else if (c == 0x1110) echar = 0x11b4; // +
- else if (c == 0x1111) echar = 0x11b5; // +
- else if (c == 0x1112) echar = 0x11b6; // +
+ if (c == 0x1100) echar = 0x11b0; // ㄹ + ㄱ
+ else if (c == 0x1106) echar = 0x11b1; // ㄹ + ㅁ
+ else if (c == 0x1107) echar = 0x11b2; // ㄹ + ㅂ
+ else if (c == 0x1109) echar = 0x11b3; // ㄹ + ㅅ
+ else if (c == 0x1110) echar = 0x11b4; // ㄹ + ㅌ
+ else if (c == 0x1111) echar = 0x11b5; // ㄹ + ㅍ
+ else if (c == 0x1112) echar = 0x11b6; // ㄹ + ㅎ
else {
@@ -1091,5 +1100,5 @@ ushort Keyboard::parseKoreanInput (ushort c) {
- } else if (echar == 0x11b8) { //
+ } else if (echar == 0x11b8) { // ㅂ
- if (c == 0x1109) echar = 0x11b9; // +
+ if (c == 0x1109) echar = 0x11b9; // ㅂ + ㅅ
else {
@@ -1099,5 +1108,5 @@ ushort Keyboard::parseKoreanInput (ushort c) {
- } else if (echar == 0x11ba) { //
+ } else if (echar == 0x11ba) { // ㅅ
- if (c == 0x1109) echar = 0x11bb; // +
+ if (c == 0x1109) echar = 0x11bb; // ㅅ + ㅅ
else {
@@ -1464,3 +1473,3 @@ void Keys::setKeysFromFile(const char * filename) {
- qDebug ("Estoy aadiendo %i con %i", lower, shift);
+ qDebug ("Estoy aadiendo %i con %i", lower, shift);
buf = t.readLine();