diff options
author | Christopher James Lahey <clahey@helixcode.com> | 2000-10-19 12:49:47 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2000-10-19 12:49:47 +0800 |
commit | 4a7322cfec7bdf8f98831e550d6ed53acddbe9d6 (patch) | |
tree | e04cd81a1d84998fb47bba83e63879c44ec77bf3 | |
parent | 66da354765a8578ed6f7cf7ef402863cd4bf9884 (diff) | |
download | gsoc2013-evolution-4a7322cfec7bdf8f98831e550d6ed53acddbe9d6.tar.gz gsoc2013-evolution-4a7322cfec7bdf8f98831e550d6ed53acddbe9d6.tar.zst gsoc2013-evolution-4a7322cfec7bdf8f98831e550d6ed53acddbe9d6.zip |
Made the number keys on the number pad work in ETexts and ECellTexts.
2000-10-19 Christopher James Lahey <clahey@helixcode.com>
* gal/e-text/e-text-event-processor-emacs-like.c: Made the number
keys on the number pad work in ETexts and ECellTexts.
svn path=/trunk/; revision=6027
-rw-r--r-- | e-util/e-text-event-processor-emacs-like.c | 109 | ||||
-rw-r--r-- | widgets/text/e-text-event-processor-emacs-like.c | 109 |
2 files changed, 216 insertions, 2 deletions
diff --git a/e-util/e-text-event-processor-emacs-like.c b/e-util/e-text-event-processor-emacs-like.c index 07c39c93a9..2910ec36ab 100644 --- a/e-util/e-text-event-processor-emacs-like.c +++ b/e-util/e-text-event-processor-emacs-like.c @@ -318,7 +318,110 @@ e_text_event_processor_emacs_like_event (ETextEventProcessor *tep, ETextEventPro command.action = E_TEP_NOP; command.position = E_TEP_SELECTION; break; - + + case GDK_KP_Space: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = " "; + break; + case GDK_KP_Equal: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "="; + break; + case GDK_KP_Multiply: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "*"; + break; + case GDK_KP_Add: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "+"; + break; + case GDK_KP_Subtract: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "-"; + break; + case GDK_KP_Decimal: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "."; + break; + case GDK_KP_Divide: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "/"; + break; + case GDK_KP_0: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "0"; + break; + case GDK_KP_1: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "1"; + break; + case GDK_KP_2: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "2"; + break; + case GDK_KP_3: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "3"; + break; + case GDK_KP_4: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "4"; + break; + case GDK_KP_5: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "5"; + break; + case GDK_KP_6: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "6"; + break; + case GDK_KP_7: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "7"; + break; + case GDK_KP_8: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "8"; + break; + case GDK_KP_9: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "9"; + break; + default: if (key.state & GDK_CONTROL_MASK) { if ((key.keyval >= 'A') && (key.keyval <= 'Z')) @@ -354,6 +457,10 @@ e_text_event_processor_emacs_like_event (ETextEventProcessor *tep, ETextEventPro command.string = alt_keys[(int) (key.keyval - 'a')].string; } } else if (key.length > 0) { + if (key.keyval >= GDK_KP_0 && key.keyval <= GDK_KP_9) { + key.keyval = '0'; + key.string = "0"; + } command.action = E_TEP_INSERT; command.position = E_TEP_SELECTION; command.value = strlen(key.string); diff --git a/widgets/text/e-text-event-processor-emacs-like.c b/widgets/text/e-text-event-processor-emacs-like.c index 07c39c93a9..2910ec36ab 100644 --- a/widgets/text/e-text-event-processor-emacs-like.c +++ b/widgets/text/e-text-event-processor-emacs-like.c @@ -318,7 +318,110 @@ e_text_event_processor_emacs_like_event (ETextEventProcessor *tep, ETextEventPro command.action = E_TEP_NOP; command.position = E_TEP_SELECTION; break; - + + case GDK_KP_Space: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = " "; + break; + case GDK_KP_Equal: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "="; + break; + case GDK_KP_Multiply: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "*"; + break; + case GDK_KP_Add: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "+"; + break; + case GDK_KP_Subtract: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "-"; + break; + case GDK_KP_Decimal: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "."; + break; + case GDK_KP_Divide: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "/"; + break; + case GDK_KP_0: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "0"; + break; + case GDK_KP_1: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "1"; + break; + case GDK_KP_2: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "2"; + break; + case GDK_KP_3: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "3"; + break; + case GDK_KP_4: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "4"; + break; + case GDK_KP_5: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "5"; + break; + case GDK_KP_6: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "6"; + break; + case GDK_KP_7: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "7"; + break; + case GDK_KP_8: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "8"; + break; + case GDK_KP_9: + command.action = E_TEP_INSERT; + command.position = E_TEP_SELECTION; + command.value = 1; + command.string = "9"; + break; + default: if (key.state & GDK_CONTROL_MASK) { if ((key.keyval >= 'A') && (key.keyval <= 'Z')) @@ -354,6 +457,10 @@ e_text_event_processor_emacs_like_event (ETextEventProcessor *tep, ETextEventPro command.string = alt_keys[(int) (key.keyval - 'a')].string; } } else if (key.length > 0) { + if (key.keyval >= GDK_KP_0 && key.keyval <= GDK_KP_9) { + key.keyval = '0'; + key.string = "0"; + } command.action = E_TEP_INSERT; command.position = E_TEP_SELECTION; command.value = strlen(key.string); |