Change api of hangul_ic_filter(); remove capslock argument.
authorChoe Hwanjin <choe.hwanjin@gmail.com>
Tue, 14 Dec 2004 13:41:59 +0000 (22:41 +0900)
committerChoe Hwanjin <choe.hwanjin@gmail.com>
Tue, 14 Dec 2004 13:41:59 +0000 (22:41 +0900)
git-svn-id: http://kldp.net/svn/hangul/trunk/hangul@13 8f00fcd2-89fc-0310-932e-b01be5b65e01

hangul/hangul.h
hangul/hangulinputcontext.c
pyhangul/pyhangul.c
test/test.c

index 7f45594..11e502c 100644 (file)
@@ -54,14 +54,14 @@ typedef struct _HangulJamoCombination HangulJamoCombination;
 typedef struct _HangulBuffer HangulBuffer;
 typedef struct _HangulInputContext HangulInputContext;
 
-enum {
+typedef enum {
     HANGUL_KEYBOARD_2,
     HANGUL_KEYBOARD_32,
     HANGUL_KEYBOARD_3FINAL,
     HANGUL_KEYBOARD_390,
     HANGUL_KEYBOARD_3NOSHIFT,
     HANGUL_KEYBOARD_3YETGUL
-};
+} HangulKeyboardType;
 
 enum {
     HANGUL_OUTPUT_SYLLABLE,
@@ -99,14 +99,15 @@ struct _HangulInputContext {
     wchar_t commit_string[64];
 };
 
-HangulInputContext* hangul_ic_new(int keyboard);
+HangulInputContext* hangul_ic_new(HangulKeyboardType keyboard);
 void hangul_ic_delete(HangulInputContext *hic);
-bool hangul_ic_filter(HangulInputContext *hic, int ascii, bool capslock);
+bool hangul_ic_filter(HangulInputContext *hic, int ascii);
 void hangul_ic_reset(HangulInputContext *hic);
 bool hangul_ic_backspace(HangulInputContext *hic);
 
 void hangul_ic_set_output_mode(HangulInputContext *hic, int mode);
-void hangul_ic_set_keyboard(HangulInputContext *hic, int keyboard);
+void hangul_ic_set_keyboard(HangulInputContext *hic,
+                           HangulKeyboardType keyboard);
 const wchar_t* hangul_ic_get_preedit_string(HangulInputContext *hic);
 const wchar_t* hangul_ic_get_commit_string(HangulInputContext *hic);
 
index c54537d..c187ecb 100644 (file)
@@ -434,21 +434,13 @@ hangul_ic_filter_3(HangulInputContext *hic, wchar_t ch)
 }
 
 bool
-hangul_ic_filter(HangulInputContext *hic, int ascii, bool capslock)
+hangul_ic_filter(HangulInputContext *hic, int ascii)
 {
     wchar_t ch;
 
     if (hic == NULL)
        return false;
 
-    if (capslock) {
-       if (isupper(ascii)) {
-           ascii = tolower(ascii);
-       } else {
-           ascii = toupper(ascii);
-       }
-    }
-
     ch = hangul_ic_translate_jamo(hic, ascii);
 
     hic->preedit_string[0] = L'\0';
@@ -513,7 +505,7 @@ hangul_ic_set_output_mode(HangulInputContext *hic, int mode)
 }
 
 void
-hangul_ic_set_keyboard(HangulInputContext *hic, int keyboard)
+hangul_ic_set_keyboard(HangulInputContext *hic, HangulKeyboardType keyboard)
 {
     if (hic == NULL)
        return;
@@ -566,7 +558,7 @@ hangul_ic_set_keyboard(HangulInputContext *hic, int keyboard)
 }
 
 HangulInputContext*
-hangul_ic_new(int keyboard)
+hangul_ic_new(HangulKeyboardType keyboard)
 {
     HangulInputContext *hic;
 
index 50c4d88..388e8b9 100644 (file)
@@ -72,14 +72,14 @@ void inithangul(void)
 static PyObject *_pyhangulic_filter(PY_HANGULIC *self, PyObject *args)
 {
     int ret;
-    int ascii, capslock
+    int ascii; 
 
-    if(!PyArg_ParseTuple(args,"ii", &ascii, &capslock)) {
-       PyErr_SetString(_pyhangul_error,"Usage: filter(ascii, capslock)");
+    if(!PyArg_ParseTuple(args,"i", &ascii)) {
+       PyErr_SetString(_pyhangul_error,"Usage: filter(ascii)");
        return NULL;
     }
 
-    ret = hangul_ic_filter(self->hic, ascii, capslock);
+    ret = hangul_ic_filter(self->hic, ascii);
 
     return Py_BuildValue("i", ret);
 }
index 6492092..6ef2f75 100644 (file)
@@ -32,7 +32,7 @@ main(int argc, char *argv[])
     }
 
     for (ascii = getchar(); ascii != EOF; ascii = getchar()) {
-       int ret = hangul_ic_filter(hic, ascii, 0);
+       int ret = hangul_ic_filter(hic, ascii);
        n = wcstombs(commit, hangul_ic_get_commit_string(hic), sizeof(commit));
        commit[n] = '\0';
        if (strlen(commit) > 0) {