wgui_categories_inputs.c
上传用户:lqx1163
上传日期:2014-08-13
资源大小:9183k
文件大小:1705k
源码类别:

MTK

开发平台:

C/C++

  1.     wgui_change_inputbox_mode_multitap_FINNISH = wgui_EMS_inputbox_change_input_mode_multitap_FINNISH;
  2.     wgui_change_inputbox_mode_multitap_finnish = wgui_EMS_inputbox_change_input_mode_multitap_finnish;
  3. #endif /* defined(__MMI_MULTITAP_FINNISH__) */ 
  4. #if defined(__MMI_MULTITAP_HUNGARIAN__)
  5.     wgui_change_inputbox_mode_multitap_HUNGARIAN = wgui_EMS_inputbox_change_input_mode_multitap_HUNGARIAN;
  6.     wgui_change_inputbox_mode_multitap_hungarian = wgui_EMS_inputbox_change_input_mode_multitap_hungarian;
  7. #endif /* defined(__MMI_MULTITAP_HUNGARIAN__) */ 
  8. #if defined(__MMI_MULTITAP_SWEDISH__)
  9.     wgui_change_inputbox_mode_multitap_SWEDISH = wgui_EMS_inputbox_change_input_mode_multitap_SWEDISH;
  10.     wgui_change_inputbox_mode_multitap_swedish = wgui_EMS_inputbox_change_input_mode_multitap_swedish;
  11. #endif /* defined(__MMI_MULTITAP_SWEDISH__) */ 
  12. #if defined(__MMI_MULTITAP_HEBREW__)
  13.     wgui_change_inputbox_mode_multitap_hebrew = wgui_EMS_inputbox_change_input_mode_multitap_hebrew;
  14. #endif 
  15. #if defined(__MMI_MULTITAP_SLOVAK__)
  16.     wgui_change_inputbox_mode_multitap_SLOVAK = wgui_EMS_inputbox_change_input_mode_multitap_SLOVAK;
  17.     wgui_change_inputbox_mode_multitap_slovak = wgui_EMS_inputbox_change_input_mode_multitap_slovak;
  18. #endif /* defined(__MMI_MULTITAP_SLOVAK__) */ 
  19. #if defined(__MMI_MULTITAP_DUTCH__)
  20.     wgui_change_inputbox_mode_multitap_DUTCH = wgui_EMS_inputbox_change_input_mode_multitap_DUTCH;
  21.     wgui_change_inputbox_mode_multitap_dutch = wgui_EMS_inputbox_change_input_mode_multitap_dutch;
  22. #endif /* defined(__MMI_MULTITAP_DUTCH__) */ 
  23. #if defined(__MMI_MULTITAP_NORWEGIAN__)
  24.     wgui_change_inputbox_mode_multitap_NORWEGIAN = wgui_EMS_inputbox_change_input_mode_multitap_NORWEGIAN;
  25.     wgui_change_inputbox_mode_multitap_norwegian = wgui_EMS_inputbox_change_input_mode_multitap_norwegian;
  26. #endif /* defined(__MMI_MULTITAP_NORWEGIAN__) */ 
  27. #if defined(__MMI_MULTITAP_ARABIC__)
  28.     wgui_change_inputbox_mode_multitap_arabic = wgui_EMS_inputbox_change_input_mode_multitap_arabic;
  29. #endif 
  30. //PMT START PERSIAN
  31. #if defined(__MMI_MULTITAP_PERSIAN__)
  32.     wgui_change_inputbox_mode_multitap_persian = wgui_EMS_inputbox_change_input_mode_multitap_persian;
  33. #endif 
  34. //PMT END PERSIAN
  35. #if defined(__MMI_MULTITAP_CROATIAN__)
  36.     wgui_change_inputbox_mode_multitap_CROATIAN = wgui_EMS_inputbox_change_input_mode_multitap_CROATIAN;
  37.     wgui_change_inputbox_mode_multitap_croatian = wgui_EMS_inputbox_change_input_mode_multitap_croatian;
  38. #endif /* defined(__MMI_MULTITAP_CROATIAN__) */ 
  39. #if defined(__MMI_MULTITAP_ROMANIAN__)
  40.     wgui_change_inputbox_mode_multitap_ROMANIAN = wgui_EMS_inputbox_change_input_mode_multitap_ROMANIAN;
  41.     wgui_change_inputbox_mode_multitap_romanian = wgui_EMS_inputbox_change_input_mode_multitap_romanian;
  42. #endif /* defined(__MMI_MULTITAP_ROMANIAN__) */ 
  43. #if defined(__MMI_MULTITAP_SLOVENIAN__)
  44.     wgui_change_inputbox_mode_multitap_SLOVENIAN = wgui_EMS_inputbox_change_input_mode_multitap_SLOVENIAN;
  45.     wgui_change_inputbox_mode_multitap_slovenian = wgui_EMS_inputbox_change_input_mode_multitap_slovenian;
  46. #endif /* defined(__MMI_MULTITAP_SLOVENIAN__) */ 
  47. #if defined(__MMI_MULTITAP_GREEK__)
  48.     wgui_change_inputbox_mode_multitap_GREEK = wgui_EMS_inputbox_change_input_mode_multitap_GREEK;
  49.     wgui_change_inputbox_mode_multitap_greek = wgui_EMS_inputbox_change_input_mode_multitap_greek;
  50. #endif /* defined(__MMI_MULTITAP_GREEK__) */ 
  51. #if defined(__MMI_T9__) || defined(__MMI_ZI__) || defined(__MMI_KA__) || defined(__MMI_ITAP__)|| defined(__MMI_CSTAR__)     //KP Jerry add "__MMI_CSTAR__" on 2007-3-8
  52. //KP Jerry modify on 2007-4-17 start
  53.     wgui_change_inputbox_mode_smart_ABC = wgui_EMS_inputbox_change_input_mode_smart_ABC;
  54.     wgui_change_inputbox_mode_smart_abc = wgui_EMS_inputbox_change_input_mode_smart_abc;
  55. #if defined(__MMI_LANG_TR_CHINESE__)    
  56.     wgui_change_inputbox_mode_tr_multitap_bpmf = wgui_EMS_inputbox_change_input_mode_tr_multitap_bpmf;
  57.     wgui_change_inputbox_mode_tr_bpmf = wgui_EMS_inputbox_change_input_mode_tr_bpmf;
  58.     wgui_change_inputbox_mode_tr_stroke = wgui_EMS_inputbox_change_input_mode_tr_stroke;
  59. #endif
  60. #if defined(__MMI_LANG_SM_CHINESE__)    
  61.     wgui_change_inputbox_mode_sm_multitap_pinyin = wgui_EMS_inputbox_change_input_mode_sm_multitap_pinyin;
  62.     wgui_change_inputbox_mode_sm_pinyin = wgui_EMS_inputbox_change_input_mode_sm_pinyin;
  63.     wgui_change_inputbox_mode_sm_stroke = wgui_EMS_inputbox_change_input_mode_sm_stroke;
  64. #endif
  65. #if defined(__MMI_LANG_THAI__)    
  66.     wgui_change_inputbox_mode_smart_thai = wgui_EMS_inputbox_change_input_mode_smart_thai;
  67. #endif
  68. #if defined(__MMI_LANG_ARABIC__)    
  69.     wgui_change_inputbox_mode_smart_arabic = wgui_EMS_inputbox_change_input_mode_smart_arabic;
  70. #endif
  71. #ifdef __MMI_LANG_PERSIAN__      //KP Jerry add on 2007-4-17
  72. //old:#if defined(__MMI_ZI_PERSIAN__)    
  73.     wgui_change_inputbox_mode_smart_persian = wgui_EMS_inputbox_change_input_mode_smart_persian;
  74. //Old:#endif /* defined(__MMI_ZI_PERSIAN__) */
  75. #endif/*__MMI_LANG_PERSIAN__*/      //KP Jerry add on 2007-4-17
  76. #ifdef __MMI_LANG_HINDI__      //KP Jerry add on 2007-4-17
  77.     wgui_change_inputbox_mode_smart_hindi = wgui_EMS_inputbox_change_input_mode_smart_hindi;
  78. #endif/*__MMI_LANG_HINDI__*/      //KP Jerry add on 2007-4-17
  79. #ifdef __MMI_LANG_HEBREW__      //KP Jerry add on 2007-4-17
  80.     wgui_change_inputbox_mode_smart_hebrew = wgui_EMS_inputbox_change_input_mode_smart_hebrew;
  81. #endif/*__MMI_LANG_HEBREW__*/      //KP Jerry add on 2007-4-17
  82. //KP Jerry modify on 2007-4-17 end
  83. #if defined(__MMI_T9_SPANISH__) || defined(__MMI_ZI_EU_SPANISH__) || defined(__MMI_ZI_SA_SPANISH__) || defined(__MMI_CSTAR_SPANISH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-1717
  84.     wgui_change_inputbox_mode_smart_SPANISH = wgui_EMS_inputbox_change_input_mode_smart_SPANISH;
  85.     wgui_change_inputbox_mode_smart_spanish = wgui_EMS_inputbox_change_input_mode_smart_spanish;
  86. #endif /* defined(__MMI_T9_SPANISH__) || defined(__MMI_ZI_EU_SPANISH__) || defined(__MMI_ZI_SA_SPANISH__) */ 
  87. #if defined(__MMI_T9_DANISH__) || defined(__MMI_ZI_DANISH__) || defined(__MMI_CSTAR_DANISH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  88.     wgui_change_inputbox_mode_smart_DANISH = wgui_EMS_inputbox_change_input_mode_smart_DANISH;
  89.     wgui_change_inputbox_mode_smart_danish = wgui_EMS_inputbox_change_input_mode_smart_danish;
  90. #endif /* defined(__MMI_T9_DANISH__) || defined(__MMI_ZI_DANISH__) */ 
  91. #if defined(__MMI_T9_POLISH__) || defined(__MMI_ZI_POLISH__) || defined(__MMI_CSTAR_POLISH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  92.     wgui_change_inputbox_mode_smart_POLISH = wgui_EMS_inputbox_change_input_mode_smart_POLISH;
  93.     wgui_change_inputbox_mode_smart_polish = wgui_EMS_inputbox_change_input_mode_smart_polish;
  94. #endif /* defined(__MMI_T9_POLISH__) || defined(__MMI_ZI_POLISH__) */ 
  95. #if defined(__MMI_T9_FRENCH__) || defined(__MMI_ZI_CA_FRENCH__) || defined(__MMI_ZI_EU_FRENCH__) || defined(__MMI_CSTAR_FRENCH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  96.     wgui_change_inputbox_mode_smart_FRENCH = wgui_EMS_inputbox_change_input_mode_smart_FRENCH;
  97.     wgui_change_inputbox_mode_smart_french = wgui_EMS_inputbox_change_input_mode_smart_french;
  98. #endif /* defined(__MMI_T9_FRENCH__) || defined(__MMI_ZI_CA_FRENCH__) || defined(__MMI_ZI_EU_FRENCH__) */ 
  99. #if defined(__MMI_T9_GERMAN__) || defined(__MMI_ZI_GERMAN__) || defined(__MMI_CSTAR_GERMAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  100.     wgui_change_inputbox_mode_smart_GERMAN = wgui_EMS_inputbox_change_input_mode_smart_GERMAN;
  101.     wgui_change_inputbox_mode_smart_german = wgui_EMS_inputbox_change_input_mode_smart_german;
  102. #endif /* defined(__MMI_T9_GERMAN__) || defined(__MMI_ZI_GERMAN__) */ 
  103. #if defined(__MMI_T9_ITALIAN__) || defined(__MMI_ZI_ITALIAN__)|| defined(__MMI_ZI_ITALIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  104.     wgui_change_inputbox_mode_smart_ITALIAN = wgui_EMS_inputbox_change_input_mode_smart_ITALIAN;
  105.     wgui_change_inputbox_mode_smart_italian = wgui_EMS_inputbox_change_input_mode_smart_italian;
  106. #endif /* defined(__MMI_T9_ITALIAN__) || defined(__MMI_ZI_ITALIAN__) */ 
  107. #if defined (__MMI_T9_RUSSIAN__) || defined(__MMI_ZI_RUSSIAN__) || defined(__MMI_ZI_RECOMMENDED_SIZE_RUSSIAN__) || defined(__MMI_CSTAR_RUSSIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  108.     wgui_change_inputbox_mode_smart_RUSSIAN = wgui_EMS_inputbox_change_input_mode_smart_RUSSIAN;
  109.     wgui_change_inputbox_mode_smart_russian = wgui_EMS_inputbox_change_input_mode_smart_russian;
  110. #endif /* defined (__MMI_T9_RUSSIAN__) || defined(__MMI_ZI_RUSSIAN__) || defined(__MMI_ZI_RECOMMENDED_SIZE_RUSSIAN__) */ 
  111. #if defined (__MMI_T9_BULGARIAN__) || defined(__MMI_ZI_BULGARIAN__) || defined(__MMI_CSTAR_BULGARIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  112.     wgui_change_inputbox_mode_smart_BULGARIAN = wgui_EMS_inputbox_change_input_mode_smart_BULGARIAN;
  113.     wgui_change_inputbox_mode_smart_bulgarian = wgui_EMS_inputbox_change_input_mode_smart_bulgarian;
  114. #endif /* defined (__MMI_T9_BULGARIAN__) || defined(__MMI_ZI_BULGARIAN__) */ 
  115. #if defined(__MMI_ZI_TURKISH__) || defined(__MMI_T9_TURKISH__) || defined(__MMI_CSTAR_TURKISH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  116.     wgui_change_inputbox_mode_smart_TURKISH = wgui_EMS_inputbox_change_input_mode_smart_TURKISH;
  117.     wgui_change_inputbox_mode_smart_turkish = wgui_EMS_inputbox_change_input_mode_smart_turkish;
  118. #endif /* defined(__MMI_ZI_TURKISH__) || defined(__MMI_T9_TURKISH__) */ 
  119. #if defined(__MMI_T9_PORTUGUESE__) || defined(__MMI_ZI_EU_PORTUGUESE__) || defined(__MMI_ZI_SA_PORTUGUESE__) || defined(__MMI_ZI_BZ_PORTUGUESE__) || defined(__MMI_CSTAR_PORTUGUESE__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  120.     wgui_change_inputbox_mode_smart_PORTUGUESE = wgui_EMS_inputbox_change_input_mode_smart_PORTUGUESE;
  121.     wgui_change_inputbox_mode_smart_portuguese = wgui_EMS_inputbox_change_input_mode_smart_portuguese;
  122. #endif /* defined(__MMI_T9_PORTUGUESE__) || defined(__MMI_ZI_EU_PORTUGUESE__) || defined(__MMI_ZI_SA_PORTUGUESE__) || defined(__MMI_ZI_BZ_PORTUGUESE__) */ 
  123. #if defined(__MMI_ZI_INDONESIAN__) || defined(__MMI_T9_INDONESIAN__) || defined(__MMI_CSTAR_INDONESIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  124.     wgui_change_inputbox_mode_smart_INDONESIAN = wgui_EMS_inputbox_change_input_mode_smart_INDONESIAN;
  125.     wgui_change_inputbox_mode_smart_indonesian = wgui_EMS_inputbox_change_input_mode_smart_indonesian;
  126. #endif /* defined(__MMI_ZI_INDONESIAN__) || defined(__MMI_T9_INDONESIAN__) */ 
  127. #if defined(__MMI_ZI_CZECH__) || defined(__MMI_T9_CZECH__) || defined(__MMI_CSTAR_CZECH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  128.     wgui_change_inputbox_mode_smart_CZECH = wgui_EMS_inputbox_change_input_mode_smart_CZECH;
  129.     wgui_change_inputbox_mode_smart_czech = wgui_EMS_inputbox_change_input_mode_smart_czech;
  130. #endif /* defined(__MMI_ZI_CZECH__) || defined(__MMI_T9_CZECH__) */ 
  131. #if defined(__MMI_ZI_MALAY__) || defined(__MMI_T9_MALAY__) || defined(__MMI_CSTAR_MALAY__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  132.     wgui_change_inputbox_mode_smart_MALAY = wgui_EMS_inputbox_change_input_mode_smart_MALAY;
  133.     wgui_change_inputbox_mode_smart_malay = wgui_EMS_inputbox_change_input_mode_smart_malay;
  134. #endif /* defined(__MMI_ZI_MALAY__) || defined(__MMI_T9_MALAY__) */ 
  135. #if defined(__MMI_ZI_VIETNAMESE__) || defined(__MMI_T9_VIETNAMESE__) || defined(__MMI_CSTAR_VIETNAMESE__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  136.     wgui_change_inputbox_mode_smart_VIETNAMESE = wgui_EMS_inputbox_change_input_mode_smart_VIETNAMESE;
  137.     wgui_change_inputbox_mode_smart_vietnamese = wgui_EMS_inputbox_change_input_mode_smart_vietnamese;
  138. #endif /* defined(__MMI_ZI_VIETNAMESE__) || defined(__MMI_T9_VIETNAMESE__) */ 
  139. #if defined(__MMI_T9_FINNISH__) || defined(__MMI_ZI_FINNISH__) || defined(__MMI_CSTAR_FINNISH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  140.     wgui_change_inputbox_mode_smart_FINNISH = wgui_EMS_inputbox_change_input_mode_smart_FINNISH;
  141.     wgui_change_inputbox_mode_smart_finnish = wgui_EMS_inputbox_change_input_mode_smart_finnish;
  142. #endif /* defined(__MMI_T9_FINNISH__) || defined(__MMI_ZI_FINNISH__) */ 
  143. #if defined(__MMI_ZI_HUNGARIAN__) || defined(__MMI_T9_HUNGARIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  144.     wgui_change_inputbox_mode_smart_HUNGARIAN = wgui_EMS_inputbox_change_input_mode_smart_HUNGARIAN;
  145.     wgui_change_inputbox_mode_smart_hungarian = wgui_EMS_inputbox_change_input_mode_smart_hungarian;
  146. #endif /* defined(__MMI_ZI_HUNGARIAN__) || defined(__MMI_T9_HUNGARIAN__) */ 
  147. #if defined(__MMI_T9_SLOVAK__) || defined(__MMI_ZI_SLOVAK__) || defined(__MMI_CSTAR_SLOVAK__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  148.     wgui_change_inputbox_mode_smart_SLOVAK = wgui_EMS_inputbox_change_input_mode_smart_SLOVAK;
  149.     wgui_change_inputbox_mode_smart_slovak = wgui_EMS_inputbox_change_input_mode_smart_slovak;
  150. #endif /* defined(__MMI_T9_SLOVAK__) || defined(__MMI_ZI_SLOVAK__) */ 
  151. #if defined(__MMI_ZI_DUTCH__) || defined(__MMI_T9_DUTCH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  152.     wgui_change_inputbox_mode_smart_DUTCH = wgui_EMS_inputbox_change_input_mode_smart_DUTCH;
  153.     wgui_change_inputbox_mode_smart_dutch = wgui_EMS_inputbox_change_input_mode_smart_dutch;
  154. #endif /* defined(__MMI_ZI_DUTCH__) || defined(__MMI_T9_DUTCH__) */ 
  155. #if defined(__MMI_T9_NORWEGIAN__) || defined(__MMI_ZI_NORWEGIAN__) || defined(__MMI_CSTAR_NORWEGIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  156.     wgui_change_inputbox_mode_smart_NORWEGIAN = wgui_EMS_inputbox_change_input_mode_smart_NORWEGIAN;
  157.     wgui_change_inputbox_mode_smart_norwegian = wgui_EMS_inputbox_change_input_mode_smart_norwegian;
  158. #endif /* defined(__MMI_T9_NORWEGIAN__) || defined(__MMI_ZI_NORWEGIAN__) */ 
  159. #if defined(__MMI_T9_SWEDISH__) || defined(__MMI_ZI_SWEDISH__) || defined(__MMI_CSTAR_SWEDISH__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  160.     wgui_change_inputbox_mode_smart_SWEDISH = wgui_EMS_inputbox_change_input_mode_smart_SWEDISH;
  161.     wgui_change_inputbox_mode_smart_swedish = wgui_EMS_inputbox_change_input_mode_smart_swedish;
  162. #endif /* defined(__MMI_T9_SWEDISH__) || defined(__MMI_ZI_SWEDISH__) */ 
  163. #if defined(__MMI_T9_CROATIAN__) || defined(__MMI_ZI_CROATIAN__) || defined(__MMI_CSTAR_CROATIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  164.     wgui_change_inputbox_mode_smart_CROATIAN = wgui_EMS_inputbox_change_input_mode_smart_CROATIAN;
  165.     wgui_change_inputbox_mode_smart_croatian = wgui_EMS_inputbox_change_input_mode_smart_croatian;
  166. #endif /* defined(__MMI_T9_CROATIAN__) || defined(__MMI_ZI_CROATIAN__) */ 
  167. #if defined(__MMI_ZI_ROMANIAN__) || defined(__MMI_T9_ROMANIAN__) || defined(__MMI_CSTAR_ROMANIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  168.     wgui_change_inputbox_mode_smart_ROMANIAN = wgui_EMS_inputbox_change_input_mode_smart_ROMANIAN;
  169.     wgui_change_inputbox_mode_smart_romanian = wgui_EMS_inputbox_change_input_mode_smart_romanian;
  170. #endif /* defined(__MMI_ZI_ROMANIAN__) || defined(__MMI_T9_ROMANIAN__) */ 
  171. #if defined(__MMI_T9_SLOVENIAN__) || defined(__MMI_ZI_SLOVENIAN__) || defined(__MMI_CSTAR_SLOVENIAN__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  172.     wgui_change_inputbox_mode_smart_SLOVENIAN = wgui_EMS_inputbox_change_input_mode_smart_SLOVENIAN;
  173.     wgui_change_inputbox_mode_smart_slovenian = wgui_EMS_inputbox_change_input_mode_smart_slovenian;
  174. #endif /* defined(__MMI_T9_SLOVENIAN__) || defined(__MMI_ZI_SLOVENIAN__) */ 
  175. #if defined(__MMI_T9_GREEK__) || defined(__MMI_ZI_GREEK__) || defined(__MMI_CSTAR_GREEK__) //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  176.     wgui_change_inputbox_mode_smart_GREEK = wgui_EMS_inputbox_change_input_mode_smart_GREEK;
  177.     wgui_change_inputbox_mode_smart_greek = wgui_EMS_inputbox_change_input_mode_smart_greek;
  178. #endif /* defined(__MMI_T9_GREEK__) || defined(__MMI_ZI_GREEK__) */ 
  179. #endif /* defined(__MMI_T9__) || defined(__MMI_ZI__) || defined(__MMI_KA__) || defined(__MMI_ITAP__) */  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  180.     wgui_inputbox_insert_symbol = wgui_EMS_inputbox_insert_symbol;
  181.     /* MTK Terry for wgui_set_default_type */
  182.     if (0 == test_change_input_mode())
  183.     {
  184.         switch (input_type & INPUT_TYPE_MASK)
  185.         {
  186.             case INPUT_TYPE_SM_STROKE:
  187.             case INPUT_TYPE_SM_PINYIN:
  188.             case INPUT_TYPE_SM_MULTITAP_PINYIN:
  189.             case INPUT_TYPE_TR_STROKE:
  190.             case INPUT_TYPE_TR_BOPOMO:
  191.             case INPUT_TYPE_TR_MULTITAP_BOPOMO:
  192.             case INPUT_TYPE_SMART_THAI:
  193.             case INPUT_TYPE_SMART_ARABIC:
  194.             /* PMT START PERSIAN */
  195.             case INPUT_TYPE_SMART_PERSIAN:
  196.             /* PMT END PERSIAN */
  197.             case INPUT_TYPE_SMART_HINDI:
  198.         #if defined(__MMI_MULTITAP_RUSSIAN__)
  199.             case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_RUSSIAN:
  200.             case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_RUSSIAN:
  201.             case INPUT_TYPE_MMI_LOWERCASE_RUSSIAN:
  202.         #endif /* defined(__MMI_MULTITAP_RUSSIAN__) */ 
  203.         #if defined(__MMI_ZI_RUSSIAN__) || defined(__MMI_ZI_RECOMMENDED_SIZE_RUSSIAN__)
  204.             case INPUT_TYPE_SMART_UPPERCASE_RUSSIAN:
  205.             case INPUT_TYPE_SMART_LOWERCASE_RUSSIAN:
  206.         #endif /* defined(__MMI_ZI_RUSSIAN__) || defined(__MMI_ZI_RECOMMENDED_SIZE_RUSSIAN__) */ 
  207.         #if defined(__MMI_MULTITAP_BULGARIAN__)
  208.             case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_BULGARIAN:
  209.             case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_BULGARIAN:
  210.             case INPUT_TYPE_MMI_LOWERCASE_BULGARIAN:
  211.         #endif /* defined(__MMI_MULTITAP_BULGARIAN__) */ 
  212.         #if defined(__MMI_ZI_BULGARIAN__)
  213.             case INPUT_TYPE_SMART_UPPERCASE_BULGARIAN:
  214.             case INPUT_TYPE_SMART_LOWERCASE_BULGARIAN:
  215.         #endif /* defined(__MMI_ZI_BULGARIAN__) */ 
  216.         #if defined(__MMI_ZI_VIETNAMESE__)
  217.             case INPUT_TYPE_SMART_UPPERCASE_VIETNAMESE:
  218.             case INPUT_TYPE_SMART_LOWERCASE_VIETNAMESE:
  219.         #endif /* defined(__MMI_ZI_VIETNAMESE__) */ 
  220.         #if defined(__MMI_MULTITAP_HINDI__)
  221.             case INPUT_TYPE_MULTITAP_HINDI:
  222.         #endif 
  223.                 input_type = INPUT_TYPE_ALPHANUMERIC_LOWERCASE;
  224.                 break;
  225.             default:
  226.                 break;
  227.         }
  228.     }
  229.     if (wgui_EMS_inputbox_input_mode_changed)
  230.     {
  231.         input_type = wgui_EMS_inputbox_input_type;
  232.         wgui_EMS_inputbox_input_mode_changed = 0;
  233.     #if defined(__MMI_TOUCH_SCREEN__)
  234.         mmi_pen_editor_set_vk_to_show(MMI_TRUE);
  235.     #endif 
  236.     }
  237.     MMI_current_input_type = input_type;
  238.     wgui_EMS_inputbox_information_icon = NULL;
  239. #if defined __MMI_LANG_HINDI__ && (defined __MMI_LANG_ARABIC__ || defined __MMI_LANG_PERSIAN__)
  240.     if (HINDI_PRESENT && (input_type == INPUT_TYPE_SMART_ARABIC || input_type == INPUT_TYPE_SMART_PERSIAN))
  241.     {
  242.         input_type = INPUT_TYPE_MULTITAP_HINDI;
  243.     }
  244.     else if (ARABIC_PRESENT && input_type == INPUT_TYPE_MULTITAP_HINDI)
  245.     {
  246.         /* PMT START PERSIAN */
  247.     #if defined(__MMI_ZI_PERSIAN__) && defined(__MMI_ZI_ARABIC__)
  248.         input_type = INPUT_TYPE_SMART_ARABIC;
  249.     #elif defined (__MMI_ZI_ARABIC__)
  250.         input_type = INPUT_TYPE_SMART_ARABIC;
  251.     #elif defined (__MMI_ZI_PERSIAN__)
  252.         input_type = INPUT_TYPE_SMART_PERSIAN;
  253.     #endif 
  254.         /* PMT END PERSIAN */
  255.     }
  256. #endif /* defined __MMI_LANG_HINDI__ && (defined __MMI_LANG_ARABIC__ || defined __MMI_LANG_PERSIAN__) */ 
  257.     switch (input_type)
  258.     {
  259.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE:
  260.             MMI_current_input_mode = 1;
  261.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  262.             break;
  263.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE:
  264.             MMI_current_input_mode = 0;
  265.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  266.             break;
  267.         case INPUT_TYPE_NUMERIC:
  268.         case INPUT_TYPE_NUMERIC_CHANGEABLE:
  269.             MMI_current_input_mode = 2;
  270.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  271.             break;
  272.             /* PMT dara added for Multitap thai */
  273.     #if defined(__MMI_MULTITAP_THAI__)
  274.         case INPUT_TYPE_ALPHANUMERIC_MULTITAP_THAI:
  275.             SetKeyHandler(handle_category28_change_input_mode_bymultitapthai, KEY_POUND, KEY_LONG_PRESS);
  276.             MMI_current_input_mode = INPUT_MODE_MULTITAP_THAI;
  277.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  278.             break;
  279.     #endif /* defined(__MMI_MULTITAP_THAI__) */ 
  280.     #if defined(__MMI_MULTITAP_SPANISH__)
  281.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_SPANISH:
  282.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_SPANISH;
  283.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  284.             break;
  285.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_SPANISH:
  286.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_SPANISH;
  287.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  288.             break;
  289.     #endif /* defined(__MMI_MULTITAP_SPANISH__) */ 
  290.     #if defined(__MMI_MULTITAP_DANISH__)
  291.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_DANISH:
  292.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_DANISH;
  293.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  294.             break;
  295.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_DANISH:
  296.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_DANISH;
  297.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  298.             break;
  299.     #endif /* defined(__MMI_MULTITAP_DANISH__) */ 
  300.     #if defined(__MMI_MULTITAP_POLISH__)
  301.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_POLISH:
  302.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_POLISH;
  303.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  304.             break;
  305.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_POLISH:
  306.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_POLISH;
  307.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  308.             break;
  309.     #endif /* defined(__MMI_MULTITAP_POLISH__) */ 
  310.     #if defined(__MMI_MULTITAP_FRENCH__)
  311.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_FRENCH:
  312.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_FRENCH;
  313.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  314.             break;
  315.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_FRENCH:
  316.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_FRENCH;
  317.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  318.             break;
  319.     #endif /* defined(__MMI_MULTITAP_FRENCH__) */ 
  320.     #if defined(__MMI_MULTITAP_GERMAN__)
  321.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_GERMAN:
  322.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_GERMAN;
  323.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  324.             break;
  325.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_GERMAN:
  326.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_GERMAN;
  327.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  328.             break;
  329.     #endif /* defined(__MMI_MULTITAP_GERMAN__) */ 
  330.     #if defined(__MMI_MULTITAP_ITALIAN__)
  331.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_ITALIAN:
  332.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_ITALIAN;
  333.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  334.             break;
  335.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_ITALIAN:
  336.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_ITALIAN;
  337.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  338.             break;
  339.     #endif /* defined(__MMI_MULTITAP_ITALIAN__) */ 
  340.     #if defined(__MMI_MULTITAP_RUSSIAN__)
  341.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_RUSSIAN:
  342.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_RUSSIAN;
  343.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  344.             break;
  345.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_RUSSIAN:
  346.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_RUSSIAN;
  347.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  348.             break;
  349.     #endif /* defined(__MMI_MULTITAP_RUSSIAN__) */ 
  350.     #if defined(__MMI_MULTITAP_BULGARIAN__)
  351.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_BULGARIAN:
  352.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_BULGARIAN;
  353.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  354.             break;
  355.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_BULGARIAN:
  356.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_BULGARIAN;
  357.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  358.             break;
  359.     #endif /* defined(__MMI_MULTITAP_BULGARIAN__) */ 
  360.     #if defined(__MMI_MULTITAP_HINDI__)
  361.         case INPUT_TYPE_MULTITAP_HINDI:
  362.             MMI_current_input_mode = INPUT_MODE_MULTITAP_HINDI;
  363.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  364.             break;
  365.     #endif /* defined(__MMI_MULTITAP_HINDI__) */ 
  366.             /* PMT RAKESH START 20061006 */
  367.     #if defined(__MMI_MULTITAP_MARATHI__)
  368.         case INPUT_TYPE_MULTITAP_MARATHI:
  369.             MMI_current_input_mode = INPUT_MODE_MULTITAP_MARATHI;
  370.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  371.             break;
  372.     #endif /* defined(__MMI_MULTITAP_MARATHI__) */ 
  373.             /* PMT RAKESH END 20061006 */
  374.     #if defined(__MMI_MULTITAP_PORTUGUESE__)
  375.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_PORTUGUESE:
  376.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_PORTUGUESE;
  377.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  378.             break;
  379.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_PORTUGUESE:
  380.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_PORTUGUESE;
  381.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  382.             break;
  383.     #endif /* defined(__MMI_MULTITAP_PORTUGUESE__) */ 
  384.     #if defined(__MMI_MULTITAP_TURKISH__)
  385.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_TURKISH:
  386.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_TURKISH;
  387.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  388.             break;
  389.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_TURKISH:
  390.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_TURKISH;
  391.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  392.             break;
  393.     #endif /* defined(__MMI_MULTITAP_TURKISH__) */ 
  394.     #if defined(__MMI_MULTITAP_INDONESIAN__)
  395.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_INDONESIAN:
  396.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_INDONESIAN;
  397.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  398.             break;
  399.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_INDONESIAN:
  400.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_INDONESIAN;
  401.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  402.             break;
  403.     #endif /* defined(__MMI_MULTITAP_INDONESIAN__) */ 
  404.     #if defined(__MMI_MULTITAP_CZECH__)
  405.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_CZECH:
  406.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_CZECH;
  407.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  408.             break;
  409.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_CZECH:
  410.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_CZECH;
  411.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  412.             break;
  413.     #endif /* defined(__MMI_MULTITAP_CZECH__) */ 
  414.     #if defined(__MMI_MULTITAP_MALAY__)
  415.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_MALAY:
  416.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_MALAY;
  417.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  418.             break;
  419.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_MALAY:
  420.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_MALAY;
  421.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  422.             break;
  423.     #endif /* defined(__MMI_MULTITAP_MALAY__) */ 
  424.     #if defined(__MMI_MULTITAP_VIETNAMESE__)
  425.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_VIETNAMESE:
  426.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_VIETNAMESE;
  427.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  428.             break;
  429.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_VIETNAMESE:
  430.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_VIETNAMESE;
  431.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  432.             break;
  433.     #endif /* defined(__MMI_MULTITAP_VIETNAMESE__) */ 
  434.     #if defined(__MMI_MULTITAP_FINNISH__)
  435.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_FINNISH:
  436.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_FINNISH;
  437.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  438.             break;
  439.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_FINNISH:
  440.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_FINNISH;
  441.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  442.             break;
  443.     #endif /* defined(__MMI_MULTITAP_FINNISH__) */ 
  444.     #if defined(__MMI_MULTITAP_HUNGARIAN__)
  445.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_HUNGARIAN:
  446.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_HUNGARIAN;
  447.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  448.             break;
  449.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_HUNGARIAN:
  450.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_HUNGARIAN;
  451.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  452.             break;
  453.     #endif /* defined(__MMI_MULTITAP_HUNGARIAN__) */ 
  454.     #if defined(__MMI_MULTITAP_HEBREW__)
  455.         case INPUT_TYPE_MMI_MULTITAP_HEBREW:
  456.             MMI_current_input_mode = INPUT_MODE_MULTITAP_HEBREW;
  457.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  458.             break;
  459.     #endif /* defined(__MMI_MULTITAP_HEBREW__) */ 
  460.     #if defined(__MMI_MULTITAP_SLOVAK__)
  461.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_SLOVAK:
  462.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_SLOVAK;
  463.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  464.             break;
  465.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_SLOVAK:
  466.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_SLOVAK;
  467.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  468.             break;
  469.     #endif /* defined(__MMI_MULTITAP_SLOVAK__) */ 
  470.     #if defined(__MMI_MULTITAP_DUTCH__)
  471.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_DUTCH:
  472.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_DUTCH;
  473.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  474.             break;
  475.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_DUTCH:
  476.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_DUTCH;
  477.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  478.             break;
  479.     #endif /* defined(__MMI_MULTITAP_DUTCH__) */ 
  480.     #if defined(__MMI_MULTITAP_ARABIC__)
  481.         case INPUT_TYPE_ALPHANUMERIC_ARABIC:
  482.             MMI_current_input_mode = INPUT_MODE_MULTITAP_ARABIC;
  483.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  484.             break;
  485.     #endif /* defined(__MMI_MULTITAP_ARABIC__) */ 
  486. //PMT START PERSIAN
  487.     #if defined(__MMI_MULTITAP_PERSIAN__)
  488.         case INPUT_TYPE_ALPHANUMERIC_PERSIAN:
  489.             MMI_current_input_mode = INPUT_MODE_MULTITAP_PERSIAN;
  490.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  491.             break;
  492.     #endif
  493. //PMT END PERSIAN
  494.     #if defined(__MMI_MULTITAP_NORWEGIAN__)
  495.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_NORWEGIAN:
  496.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_NORWEGIAN;
  497.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  498.             break;
  499.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_NORWEGIAN:
  500.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_NORWEGIAN;
  501.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  502.             break;
  503.     #endif /* defined(__MMI_MULTITAP_NORWEGIAN__) */ 
  504.     #if defined(__MMI_MULTITAP_SWEDISH__)
  505.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_SWEDISH:
  506.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_SWEDISH;
  507.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  508.             break;
  509.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_SWEDISH:
  510.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_SWEDISH;
  511.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  512.             break;
  513.     #endif /* defined(__MMI_MULTITAP_SWEDISH__) */ 
  514.     #if defined(__MMI_MULTITAP_CROATIAN__)
  515.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_CROATIAN:
  516.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_CROATIAN;
  517.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  518.             break;
  519.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_CROATIAN:
  520.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_CROATIAN;
  521.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  522.             break;
  523.     #endif /* defined(__MMI_MULTITAP_CROATIAN__) */ 
  524.     #if defined(__MMI_MULTITAP_ROMANIAN__)
  525.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_ROMANIAN:
  526.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_ROMANIAN;
  527.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  528.             break;
  529.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_ROMANIAN:
  530.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_ROMANIAN;
  531.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  532.             break;
  533.     #endif /* defined(__MMI_MULTITAP_ROMANIAN__) */ 
  534.     #if defined(__MMI_MULTITAP_SLOVENIAN__)
  535.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_SLOVENIAN:
  536.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_SLOVENIAN;
  537.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  538.             break;
  539.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_SLOVENIAN:
  540.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_SLOVENIAN;
  541.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  542.             break;
  543.     #endif /* defined(__MMI_MULTITAP_SLOVENIAN__) */ 
  544.     #if defined(__MMI_MULTITAP_GREEK__)
  545.         case INPUT_TYPE_ALPHANUMERIC_LOWERCASE_GREEK:
  546.             MMI_current_input_mode = INPUT_MODE_MULTITAP_LOWERCASE_GREEK;
  547.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  548.             break;
  549.         case INPUT_TYPE_ALPHANUMERIC_UPPERCASE_GREEK:
  550.             MMI_current_input_mode = INPUT_MODE_MULTITAP_UPPERCASE_GREEK;
  551.             wgui_EMS_inputbox_information_icon = get_image(WGUI_INPUT_INFORMATION_ICON1);
  552.             break;
  553.     #endif /* defined(__MMI_MULTITAP_GREEK__) */ 
  554.     #if defined(__MMI_T9__) || defined(__MMI_ITAP__)|| defined(__MMI_CSTAR__)     //KP Jerry add "__MMI_CSTAR__" on 2007-3-8
  555. //KP Jerry modify on 2007-4-18 start
  556. #ifdef __MMI_LANG_TR_CHINESE__      //KP Jerry add on 2007-4-17
  557.         case INPUT_TYPE_TR_MULTITAP_BOPOMO:
  558.             MMI_current_input_mode = INPUT_MODE_TR_MULTITAP_BOPOMO;
  559.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_MULTITAP_BPMF_IMG);
  560.             break;
  561.         case INPUT_TYPE_TR_BOPOMO:
  562.             MMI_current_input_mode = INPUT_MODE_TR_BOPOMO;
  563.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_BPMF_IMG);
  564.             break;
  565.         case INPUT_TYPE_TR_STROKE:
  566.             MMI_current_input_mode = INPUT_MODE_TR_STROKE;
  567.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_TR_STROKE_IMG);
  568.             break;
  569. #endif/*__MMI_LANG_TR_CHINESE__*/      //KP Jerry add on 2007-4-17
  570. #ifdef __MMI_LANG_SM_CHINESE__      //KP Jerry add on 2007-4-17
  571.         case INPUT_TYPE_SM_MULTITAP_PINYIN:
  572.             MMI_current_input_mode = INPUT_MODE_SM_MULTITAP_PINYIN;
  573.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_MULTITAP_PINYIN_IMG);
  574.             break;
  575.         case INPUT_TYPE_SM_PINYIN:
  576.             MMI_current_input_mode = INPUT_MODE_SM_PINYIN;
  577.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_PINYIN_IMG);
  578.             break;
  579.         case INPUT_TYPE_SM_STROKE:
  580.             MMI_current_input_mode = INPUT_MODE_SM_STROKE;
  581.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SM_STROKE_IMG);
  582.             break;
  583. #endif/*__MMI_LANG_SM_CHINESE__*/      //KP Jerry add on 2007-4-17
  584.         case INPUT_TYPE_SMART_UPPERCASE_ABC:
  585.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_ABC;
  586.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  587.             break;
  588.         case INPUT_TYPE_SMART_LOWERCASE_ABC:
  589.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_ABC;
  590.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  591. //KP Jerry modify on 2007-4-18 end
  592.             break;
  593.     #if defined(__MMI_T9_THAI__) || defined(__MMI_CSTAR_THAI__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  594.         case INPUT_TYPE_SMART_THAI:
  595.             MMI_current_input_mode = INPUT_MODE_SMART_THAI;
  596.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  597.             break;
  598.     #endif /* defined (__MMI_T9_THAI__) */ 
  599.     #if defined(__MMI_T9_SPANISH__) || defined(__MMI_CSTAR_SPANISH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  600.         case INPUT_TYPE_SMART_LOWERCASE_SPANISH:
  601.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_SPANISH;
  602.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  603.             break;
  604.         case INPUT_TYPE_SMART_UPPERCASE_SPANISH:
  605.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_SPANISH;
  606.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  607.             break;
  608.     #endif /* defined(__MMI_T9_SPANISH__) */ 
  609.     #if defined(__MMI_T9_DANISH__) || defined(__MMI_CSTAR_DANISH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  610.         case INPUT_TYPE_SMART_LOWERCASE_DANISH:
  611.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_DANISH;
  612.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  613.             break;
  614.         case INPUT_TYPE_SMART_UPPERCASE_DANISH:
  615.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_DANISH;
  616.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  617.             break;
  618.     #endif /* defined(__MMI_T9_DANISH__) */ 
  619.     #if defined(__MMI_T9_POLISH__) || defined(__MMI_CSTAR_POLISH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  620.         case INPUT_TYPE_SMART_LOWERCASE_POLISH:
  621.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_POLISH;
  622.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  623.             break;
  624.         case INPUT_TYPE_SMART_UPPERCASE_POLISH:
  625.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_POLISH;
  626.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  627.             break;
  628.     #endif /* defined(__MMI_T9_POLISH__) */ 
  629.     #if defined(__MMI_T9_FRENCH__) || defined(__MMI_CSTAR_FRENCH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  630.         case INPUT_TYPE_SMART_LOWERCASE_FRENCH:
  631.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_FRENCH;
  632.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  633.             break;
  634.         case INPUT_TYPE_SMART_UPPERCASE_FRENCH:
  635.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_FRENCH;
  636.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  637.             break;
  638.     #endif /* defined(__MMI_T9_FRENCH__) */ 
  639.     #if defined(__MMI_T9_GERMAN__) || defined(__MMI_CSTAR_GERMAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  640.         case INPUT_TYPE_SMART_LOWERCASE_GERMAN:
  641.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_GERMAN;
  642.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  643.             break;
  644.         case INPUT_TYPE_SMART_UPPERCASE_GERMAN:
  645.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_GERMAN;
  646.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  647.             break;
  648.     #endif /* defined(__MMI_T9_GERMAN__) */ 
  649.     #if defined(__MMI_T9_ITALIAN__) || defined(__MMI_CSTAR_ITALIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  650.         case INPUT_TYPE_SMART_LOWERCASE_ITALIAN:
  651.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_ITALIAN;
  652.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  653.             break;
  654.         case INPUT_TYPE_SMART_UPPERCASE_ITALIAN:
  655.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_ITALIAN;
  656.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  657.             break;
  658.     #endif /* defined(__MMI_T9_ITALIAN__) */ 
  659.     #if defined(__MMI_T9_VIETNAMESE__) || defined(__MMI_CSTAR_VIETNAMESE__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  660.         case INPUT_TYPE_SMART_LOWERCASE_VIETNAMESE:
  661.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_VIETNAMESE;
  662.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  663.             break;
  664.         case INPUT_TYPE_SMART_UPPERCASE_VIETNAMESE:
  665.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_VIETNAMESE;
  666.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  667.             break;
  668.     #endif /* defined(__MMI_T9_VIETNAMESE__) */ 
  669.     #if defined(__MMI_T9_TURKISH__) || defined(__MMI_CSTAR_TURKISH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  670.         case INPUT_TYPE_SMART_LOWERCASE_TURKISH:
  671.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_TURKISH;
  672.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  673.             break;
  674.         case INPUT_TYPE_SMART_UPPERCASE_TURKISH:
  675.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_TURKISH;
  676.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  677.             break;
  678.     #endif /* defined(__MMI_T9_TURKISH__) */ 
  679.     #if defined(__MMI_T9_RUSSIAN__) || defined(__MMI_CSTAR_RUSSIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  680.         case INPUT_TYPE_SMART_UPPERCASE_RUSSIAN:
  681.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_RUSSIAN;
  682.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  683.             break;
  684.         case INPUT_TYPE_SMART_LOWERCASE_RUSSIAN:
  685.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_RUSSIAN;
  686.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  687.             break;
  688.     #endif /* defined(__MMI_T9_RUSSIAN__) */ 
  689.     #if defined(__MMI_T9_BULGARIAN__) || defined(__MMI_ZI_BULGARIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  690.         case INPUT_TYPE_SMART_UPPERCASE_BULGARIAN:
  691.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_BULGARIAN;
  692.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  693.             break;
  694.         case INPUT_TYPE_SMART_LOWERCASE_BULGARIAN:
  695.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_BULGARIAN;
  696.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  697.             break;
  698.     #endif /* defined(__MMI_T9_BULGARIAN__) */ 
  699.     #if defined(__MMI_T9_INDONESIAN__) || defined(__MMI_CSTAR_INDONESIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  700.         case INPUT_TYPE_SMART_LOWERCASE_INDONESIAN:
  701.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_INDONESIAN;
  702.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  703.             break;
  704.         case INPUT_TYPE_SMART_UPPERCASE_INDONESIAN:
  705.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_INDONESIAN;
  706.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  707.             break;
  708.     #endif /* defined(__MMI_T9_INDONESIAN__) */ 
  709.     #if defined(__MMI_T9_CZECH__) || defined(__MMI_CSTAR_CZECH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  710.         case INPUT_TYPE_SMART_LOWERCASE_CZECH:
  711.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_CZECH;
  712.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  713.             break;
  714.         case INPUT_TYPE_SMART_UPPERCASE_CZECH:
  715.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_CZECH;
  716.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  717.             break;
  718.     #endif /* defined(__MMI_T9_CZECH__) */ 
  719.     #if defined(__MMI_T9_PORTUGUESE__) || defined(__MMI_CSTAR_PORTUGUESE__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  720.         case INPUT_TYPE_SMART_UPPERCASE_PORTUGUESE:
  721.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_PORTUGUESE;
  722.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  723.             break;
  724.         case INPUT_TYPE_SMART_LOWERCASE_PORTUGUESE:
  725.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_PORTUGUESE;
  726.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  727.             break;
  728.     #endif /* defined(__MMI_T9_PORTUGUESE__) */ 
  729.     #if defined(__MMI_T9_FINNISH__) || defined(__MMI_CSTAR_FINNISH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  730.         case INPUT_TYPE_SMART_LOWERCASE_FINNISH:
  731.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_FINNISH;
  732.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  733.             break;
  734.         case INPUT_TYPE_SMART_UPPERCASE_FINNISH:
  735.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_FINNISH;
  736.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  737.             break;
  738.     #endif /* defined(__MMI_T9_FINNISH__) */ 
  739.     #if defined(__MMI_T9_HUNGARIAN__) || defined(__MMI_CSTAR_HUNGARIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  740.         case INPUT_TYPE_SMART_LOWERCASE_HUNGARIAN:
  741.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_HUNGARIAN;
  742.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  743.             break;
  744.         case INPUT_TYPE_SMART_UPPERCASE_HUNGARIAN:
  745.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_HUNGARIAN;
  746.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  747.             break;
  748.     #endif /* defined(__MMI_T9_HUNGARIAN__) */ 
  749.     #if defined(__MMI_T9_ARABIC__) || defined(__MMI_CSTAR_ARABIC__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  750.         case INPUT_TYPE_SMART_ARABIC:
  751.             MMI_current_input_mode = INPUT_MODE_SMART_ARABIC;
  752.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  753.             break;
  754.     #endif /* defined(__MMI_T9_ARABIC__) */ 
  755.     #if defined(__MMI_T9_HINDI__) || defined(__MMI_CSTAR_HINDI__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  756.         case INPUT_TYPE_SMART_HINDI:
  757.             MMI_current_input_mode = INPUT_MODE_SMART_HINDI;
  758.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  759.             break;
  760.     #endif /* defined(__MMI_T9_HINDI__) */ 
  761.     #if defined(__MMI_T9_NORWEGIAN__) || defined(__MMI_CSTAR_NORWEGIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  762.         case INPUT_TYPE_SMART_UPPERCASE_NORWEGIAN:
  763.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_NORWEGIAN;
  764.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  765.             break;
  766.         case INPUT_TYPE_SMART_LOWERCASE_NORWEGIAN:
  767.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_NORWEGIAN;
  768.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  769.             break;
  770.     #endif /* defined(__MMI_T9_NORWEGIAN__) */ 
  771.     #if defined(__MMI_T9_DUTCH__) || defined(__MMI_CSTAR_DUTCH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  772.         case INPUT_TYPE_SMART_UPPERCASE_DUTCH:
  773.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_DUTCH;
  774.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  775.             break;
  776.         case INPUT_TYPE_SMART_LOWERCASE_DUTCH:
  777.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_DUTCH;
  778.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  779.             break;
  780.     #endif /* defined(__MMI_T9_DUTCH__) */ 
  781.     #if defined(__MMI_T9_SLOVENIAN__) || defined(__MMI_CSTAR_SLOVENIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  782.         case INPUT_TYPE_SMART_UPPERCASE_SLOVENIAN:
  783.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_SLOVENIAN;
  784.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  785.             break;
  786.         case INPUT_TYPE_SMART_LOWERCASE_SLOVENIAN:
  787.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_SLOVENIAN;
  788.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  789.             break;
  790.     #endif /* defined(__MMI_T9_SLOVENIAN__) */ 
  791.     #if defined(__MMI_T9_SWEDISH__) || defined(__MMI_CSTAR_SWEDISH__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  792.         case INPUT_TYPE_SMART_UPPERCASE_SWEDISH:
  793.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_SWEDISH;
  794.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  795.             break;
  796.         case INPUT_TYPE_SMART_LOWERCASE_SWEDISH:
  797.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_SWEDISH;
  798.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  799.             break;
  800.     #endif /* defined(__MMI_T9_SWEDISH__) */ 
  801.     #if defined(__MMI_T9_GREEK__) || defined(__MMI_CSTAR_GREEK__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  802.         case INPUT_TYPE_SMART_UPPERCASE_GREEK:
  803.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_GREEK;
  804.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  805.             break;
  806.         case INPUT_TYPE_SMART_LOWERCASE_GREEK:
  807.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_GREEK;
  808.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  809.             break;
  810.     #endif /* defined(__MMI_T9_GREEK__) */ 
  811.     #if defined(__MMI_T9_HEBREW__) || defined(__MMI_CSTAR_HEBREW__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  812.         case INPUT_TYPE_SMART_HEBREW:
  813.             MMI_current_input_mode = INPUT_MODE_SMART_HEBREW;
  814.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  815.             break;
  816.     #endif /* defined(__MMI_T9_HEBREW__) */ 
  817.     #if defined(__MMI_T9_MALAY__) || defined(__MMI_CSTAR_MALAY__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  818.         case INPUT_TYPE_SMART_UPPERCASE_MALAY:
  819.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_MALAY;
  820.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  821.             break;
  822.         case INPUT_TYPE_SMART_LOWERCASE_MALAY:
  823.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_MALAY;
  824.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  825.             break;
  826.     #endif /* defined(__MMI_T9_MALAY__) */ 
  827.     #if defined(__MMI_T9_CROATIAN__) || defined(__MMI_CSTAR_CROATIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  828.         case INPUT_TYPE_SMART_UPPERCASE_CROATIAN:
  829.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_CROATIAN;
  830.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  831.             break;
  832.         case INPUT_TYPE_SMART_LOWERCASE_CROATIAN:
  833.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_CROATIAN;
  834.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  835.             break;
  836.     #endif /* defined(__MMI_T9_CROATIAN__) */ 
  837.     #if defined(__MMI_T9_SLOVAK__) || defined(__MMI_CSTAR_SLOVAK__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  838.         case INPUT_TYPE_SMART_UPPERCASE_SLOVAK:
  839.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_SLOVAK;
  840.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  841.             break;
  842.         case INPUT_TYPE_SMART_LOWERCASE_SLOVAK:
  843.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_SLOVAK;
  844.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  845.             break;
  846.     #endif /* defined(__MMI_T9_SLOVAK__) */ 
  847.     #if defined(__MMI_T9_ROMANIAN__) || defined(__MMI_CSTAR_ROMANIAN__)  //KP Jerry add "__MMI_CSTAR_XXX__" on 2007-4-17
  848.         case INPUT_TYPE_SMART_UPPERCASE_ROMANIAN:
  849.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_ROMANIAN;
  850.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  851.             break;
  852.         case INPUT_TYPE_SMART_LOWERCASE_ROMANIAN:
  853.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_ROMANIAN;
  854.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_ENGLISH_IMG);
  855.             break;
  856.     #endif /* defined(__MMI_T9_ROMANIAN__) */ 
  857.     #elif defined(__MMI_ZI__)
  858.         case INPUT_TYPE_TR_MULTITAP_BOPOMO:
  859.             MMI_current_input_mode = INPUT_MODE_TR_MULTITAP_BOPOMO;
  860.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_BPMF_LOGO);
  861.             break;
  862.         case INPUT_TYPE_SM_MULTITAP_PINYIN:
  863.             MMI_current_input_mode = INPUT_MODE_SM_MULTITAP_PINYIN;
  864.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_PINYIN_LOGO);
  865.             break;
  866.         case INPUT_TYPE_TR_BOPOMO:
  867.             MMI_current_input_mode = INPUT_MODE_TR_BOPOMO;
  868.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_BPMF_LOGO);
  869.             break;
  870.         case INPUT_TYPE_SM_PINYIN:
  871.             MMI_current_input_mode = INPUT_MODE_SM_PINYIN;
  872.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_PINYIN_LOGO);
  873.             break;
  874.         case INPUT_TYPE_TR_STROKE:
  875.             MMI_current_input_mode = INPUT_MODE_TR_STROKE;
  876.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_TR_STROKE_LOGO);
  877.             break;
  878.         case INPUT_TYPE_SM_STROKE:
  879.             MMI_current_input_mode = INPUT_MODE_SM_STROKE;
  880.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_SM_STROKE_LOGO);
  881.             break;
  882.         case INPUT_TYPE_SMART_UPPERCASE_ABC:
  883.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_ABC;
  884.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  885.             break;
  886.         case INPUT_TYPE_SMART_LOWERCASE_ABC:
  887.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_ABC;
  888.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  889.             break;
  890.         case INPUT_TYPE_SMART_THAI:
  891.             MMI_current_input_mode = INPUT_MODE_SMART_THAI;
  892.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  893.             break;
  894.         case INPUT_TYPE_SMART_ARABIC:
  895.             MMI_current_input_mode = INPUT_MODE_SMART_ARABIC;
  896.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  897.             break;
  898.         case INPUT_TYPE_SMART_PERSIAN:
  899.             MMI_current_input_mode = INPUT_MODE_SMART_PERSIAN;
  900.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  901.             break;
  902.         case INPUT_TYPE_SMART_HINDI:
  903.             MMI_current_input_mode = INPUT_MODE_SMART_HINDI;
  904.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  905.             break;
  906.         case INPUT_TYPE_SMART_HEBREW:
  907.             MMI_current_input_mode = INPUT_MODE_SMART_HEBREW;
  908.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  909.             break;
  910.     #if defined(__MMI_ZI_EU_SPANISH__) || defined(__MMI_ZI_SA_SPANISH__)
  911.         case INPUT_TYPE_SMART_LOWERCASE_SPANISH:
  912.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_SPANISH;
  913.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  914.             break;
  915.         case INPUT_TYPE_SMART_UPPERCASE_SPANISH:
  916.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_SPANISH;
  917.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  918.             break;
  919.     #endif /* defined(__MMI_ZI_EU_SPANISH__) || defined(__MMI_ZI_SA_SPANISH__) */ 
  920.     #if defined(__MMI_ZI_DANISH__)
  921.         case INPUT_TYPE_SMART_LOWERCASE_DANISH:
  922.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_DANISH;
  923.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  924.             break;
  925.         case INPUT_TYPE_SMART_UPPERCASE_DANISH:
  926.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_DANISH;
  927.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  928.             break;
  929.     #endif /* defined(__MMI_ZI_DANISH__) */ 
  930.     #if defined(__MMI_ZI_POLISH__) || defined(__MMI_ZI_POLISH__)
  931.         case INPUT_TYPE_SMART_LOWERCASE_POLISH:
  932.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_POLISH;
  933.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  934.             break;
  935.         case INPUT_TYPE_SMART_UPPERCASE_POLISH:
  936.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_POLISH;
  937.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  938.             break;
  939.     #endif /* defined(__MMI_ZI_POLISH__) || defined(__MMI_ZI_POLISH__) */ 
  940.     #if defined(__MMI_ZI_NORWEGIAN__)
  941.         case INPUT_TYPE_SMART_LOWERCASE_NORWEGIAN:
  942.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_NORWEGIAN;
  943.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  944.             break;
  945.         case INPUT_TYPE_SMART_UPPERCASE_NORWEGIAN:
  946.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_NORWEGIAN;
  947.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  948.             break;
  949.     #endif /* defined(__MMI_ZI_NORWEGIAN__) */ 
  950.     #if defined(__MMI_ZI_CA_FRENCH__) || defined(__MMI_ZI_EU_FRENCH__)
  951.         case INPUT_TYPE_SMART_LOWERCASE_FRENCH:
  952.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_FRENCH;
  953.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  954.             break;
  955.         case INPUT_TYPE_SMART_UPPERCASE_FRENCH:
  956.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_FRENCH;
  957.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  958.             break;
  959.     #endif /* defined(__MMI_ZI_CA_FRENCH__) || defined(__MMI_ZI_EU_FRENCH__) */ 
  960.     #if defined(__MMI_ZI_GERMAN__)
  961.         case INPUT_TYPE_SMART_LOWERCASE_GERMAN:
  962.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_GERMAN;
  963.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  964.             break;
  965.         case INPUT_TYPE_SMART_UPPERCASE_GERMAN:
  966.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_GERMAN;
  967.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  968.             break;
  969.     #endif /* defined(__MMI_ZI_GERMAN__) */ 
  970.     #if defined(__MMI_ZI_ITALIAN__)
  971.         case INPUT_TYPE_SMART_LOWERCASE_ITALIAN:
  972.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_ITALIAN;
  973.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  974.             break;
  975.         case INPUT_TYPE_SMART_UPPERCASE_ITALIAN:
  976.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_ITALIAN;
  977.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  978.             break;
  979.     #endif /* defined(__MMI_ZI_ITALIAN__) */ 
  980.     #if defined(__MMI_ZI_RUSSIAN__) || defined(__MMI_ZI_RECOMMENDED_SIZE_RUSSIAN__)
  981.         case INPUT_TYPE_SMART_UPPERCASE_RUSSIAN:
  982.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_RUSSIAN;
  983.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  984.             break;
  985.         case INPUT_TYPE_SMART_LOWERCASE_RUSSIAN:
  986.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_RUSSIAN;
  987.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  988.             break;
  989.     #endif /* defined(__MMI_ZI_RUSSIAN__) || defined(__MMI_ZI_RECOMMENDED_SIZE_RUSSIAN__) */ 
  990.     #if defined(__MMI_ZI_BULGARIAN__)
  991.         case INPUT_TYPE_SMART_UPPERCASE_BULGARIAN:
  992.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_BULGARIAN;
  993.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  994.             break;
  995.         case INPUT_TYPE_SMART_LOWERCASE_BULGARIAN:
  996.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_BULGARIAN;
  997.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  998.             break;
  999.     #endif /* defined(__MMI_ZI_BULGARIAN__) */ 
  1000.     #if defined(__MMI_ZI_TURKISH__)
  1001.         case INPUT_TYPE_SMART_LOWERCASE_TURKISH:
  1002.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_TURKISH;
  1003.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1004.             break;
  1005.         case INPUT_TYPE_SMART_UPPERCASE_TURKISH:
  1006.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_TURKISH;
  1007.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1008.             break;
  1009.     #endif /* defined(__MMI_ZI_TURKISH__) */ 
  1010.     #if defined(__MMI_ZI_EU_PORTUGUESE__) || defined(__MMI_ZI_SA_PORTUGUESE__) || defined(__MMI_ZI_BZ_PORTUGUESE__)
  1011.         case INPUT_TYPE_SMART_UPPERCASE_PORTUGUESE:
  1012.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_PORTUGUESE;
  1013.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1014.             break;
  1015.         case INPUT_TYPE_SMART_LOWERCASE_PORTUGUESE:
  1016.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_PORTUGUESE;
  1017.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1018.             break;
  1019.     #endif /* defined(__MMI_ZI_EU_PORTUGUESE__) || defined(__MMI_ZI_SA_PORTUGUESE__) || defined(__MMI_ZI_BZ_PORTUGUESE__) */ 
  1020.     #if defined(__MMI_ZI_INDONESIAN__)
  1021.         case INPUT_TYPE_SMART_LOWERCASE_INDONESIAN:
  1022.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_INDONESIAN;
  1023.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1024.             break;
  1025.         case INPUT_TYPE_SMART_UPPERCASE_INDONESIAN:
  1026.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_INDONESIAN;
  1027.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1028.             break;
  1029.     #endif /* defined(__MMI_ZI_INDONESIAN__) */ 
  1030.     #if defined(__MMI_ZI_MALAY__)
  1031.         case INPUT_TYPE_SMART_LOWERCASE_MALAY:
  1032.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_MALAY;
  1033.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1034.             break;
  1035.         case INPUT_TYPE_SMART_UPPERCASE_MALAY:
  1036.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_MALAY;
  1037.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1038.             break;
  1039.     #endif /* defined(__MMI_ZI_MALAY__) */ 
  1040.     #if defined(__MMI_ZI_VIETNAMESE__)
  1041.         case INPUT_TYPE_SMART_LOWERCASE_VIETNAMESE:
  1042.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_VIETNAMESE;
  1043.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1044.             break;
  1045.         case INPUT_TYPE_SMART_UPPERCASE_VIETNAMESE:
  1046.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_VIETNAMESE;
  1047.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1048.             break;
  1049.     #endif /* defined(__MMI_ZI_VIETNAMESE__) */ 
  1050.     #if defined(__MMI_ZI_SLOVAK__)
  1051.         case INPUT_TYPE_SMART_LOWERCASE_SLOVAK:
  1052.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_SLOVAK;
  1053.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1054.             break;
  1055.         case INPUT_TYPE_SMART_UPPERCASE_SLOVAK:
  1056.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_SLOVAK;
  1057.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1058.             break;
  1059.     #endif /* defined(__MMI_ZI_SLOVAK__) */ 
  1060.     #if defined(__MMI_ZI_DUTCH__)
  1061.         case INPUT_TYPE_SMART_LOWERCASE_DUTCH:
  1062.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_DUTCH;
  1063.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1064.             break;
  1065.         case INPUT_TYPE_SMART_UPPERCASE_DUTCH:
  1066.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_DUTCH;
  1067.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1068.             break;
  1069.     #endif /* defined(__MMI_ZI_DUTCH__) */ 
  1070.     #if defined(__MMI_ZI_SWEDISH__)
  1071.         case INPUT_TYPE_SMART_LOWERCASE_SWEDISH:
  1072.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_SWEDISH;
  1073.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1074.             break;
  1075.         case INPUT_TYPE_SMART_UPPERCASE_SWEDISH:
  1076.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_SWEDISH;
  1077.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1078.             break;
  1079.     #endif /* defined(__MMI_ZI_SWEDISH__) */ 
  1080.     #if defined(__MMI_ZI_CROATIAN__)
  1081.         case INPUT_TYPE_SMART_LOWERCASE_CROATIAN:
  1082.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_CROATIAN;
  1083.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1084.             break;
  1085.         case INPUT_TYPE_SMART_UPPERCASE_CROATIAN:
  1086.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_CROATIAN;
  1087.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1088.             break;
  1089.     #endif /* defined(__MMI_ZI_CROATIAN__) */ 
  1090.     #if defined(__MMI_ZI_ROMANIAN__)
  1091.         case INPUT_TYPE_SMART_LOWERCASE_ROMANIAN:
  1092.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_ROMANIAN;
  1093.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1094.             break;
  1095.         case INPUT_TYPE_SMART_UPPERCASE_ROMANIAN:
  1096.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_ROMANIAN;
  1097.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1098.             break;
  1099.     #endif /* defined(__MMI_ZI_ROMANIAN__) */ 
  1100.     #if defined(__MMI_ZI_SLOVENIAN__)
  1101.         case INPUT_TYPE_SMART_LOWERCASE_SLOVENIAN:
  1102.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_SLOVENIAN;
  1103.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1104.             break;
  1105.         case INPUT_TYPE_SMART_UPPERCASE_SLOVENIAN:
  1106.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_SLOVENIAN;
  1107.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1108.             break;
  1109.     #endif /* defined(__MMI_ZI_SLOVENIAN__) */ 
  1110.     #if defined(__MMI_ZI_GREEK__)
  1111.         case INPUT_TYPE_SMART_LOWERCASE_GREEK:
  1112.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_GREEK;
  1113.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1114.             break;
  1115.         case INPUT_TYPE_SMART_UPPERCASE_GREEK:
  1116.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_GREEK;
  1117.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1118.             break;
  1119.     #endif /* defined(__MMI_ZI_GREEK__) */ 
  1120.     #if defined(__MMI_ZI_FINNISH__)
  1121.         case INPUT_TYPE_SMART_LOWERCASE_FINNISH:
  1122.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_FINNISH;
  1123.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1124.             break;
  1125.         case INPUT_TYPE_SMART_UPPERCASE_FINNISH:
  1126.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_FINNISH;
  1127.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1128.             break;
  1129.     #endif /* defined(__MMI_ZI_FINNISH__) */ 
  1130.     #if defined(__MMI_ZI_CZECH__)
  1131.         case INPUT_TYPE_SMART_LOWERCASE_CZECH:
  1132.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_CZECH;
  1133.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1134.             break;
  1135.         case INPUT_TYPE_SMART_UPPERCASE_CZECH:
  1136.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_CZECH;
  1137.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1138.             break;
  1139.     #endif /* defined(__MMI_ZI_CZECH__) */ 
  1140.     #if defined(__MMI_ZI_HUNGARIAN__)
  1141.         case INPUT_TYPE_SMART_LOWERCASE_HUNGARIAN:
  1142.             MMI_current_input_mode = INPUT_MODE_SMART_LOWERCASE_HUNGARIAN;
  1143.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1144.             break;
  1145.         case INPUT_TYPE_SMART_UPPERCASE_HUNGARIAN:
  1146.             MMI_current_input_mode = INPUT_MODE_SMART_UPPERCASE_HUNGARIAN;
  1147.             wgui_EMS_inputbox_information_icon = get_image(WGUI_ZI_EZITEXT_LOGO);
  1148.             break;
  1149.     #endif /* defined(__MMI_ZI_HUNGARIAN__) */ 
  1150.     #elif defined(__MMI_KA__)
  1151.         case INPUT_TYPE_SM_PINYIN:
  1152.             MMI_current_input_mode = INPUT_MODE_SM_PINYIN;
  1153.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SMART_PINYIN_IMG);
  1154.             break;
  1155.         case INPUT_TYPE_SM_STROKE:
  1156.             MMI_current_input_mode = INPUT_MODE_SM_STROKE;
  1157.             wgui_EMS_inputbox_information_icon = get_image(WGUI_IME_SM_STROKE_IMG);
  1158.             break;
  1159.     #endif 
  1160.         default:
  1161.             MMI_current_input_mode = 0;
  1162.             break;
  1163.     }
  1164.     category28_RSK_label_icon = get_image(right_softkey_icon);
  1165.     category28_RSK_label_string = get_string(right_softkey);
  1166.     change_EMS_inputbox_input_mode();
  1167. #if defined(__MMI_TOUCH_SCREEN__) || defined(__MMI_HANDWRITING_PAD__)
  1168.     ext_stroke.x1 = 0;
  1169.     ext_stroke.y1 = 0;
  1170.     ext_stroke.x2 = UI_device_width - 1;
  1171.     ext_stroke.y2 = UI_device_height - 1;
  1172. #if 0
  1173. /* under construction !*/
  1174. /* under construction !*/
  1175. /* under construction !*/
  1176. /* under construction !*/
  1177. #else /* 0 */ 
  1178.     stroke_area.x1 = MMI_content_x;
  1179.     stroke_area.x2 = MMI_content_x + MMI_content_width - MMI_EMS_inputbox.vbar.width;
  1180.     stroke_area.y1 = MMI_title_y;
  1181.     stroke_area.y2 = MMI_title_y + MMI_content_height + MMI_title_height;
  1182. #endif /* 0 */ 
  1183.     mmi_pen_editor_setup_input_box(
  1184.         &stroke_area,
  1185.         &ext_stroke,
  1186.         MMI_current_input_type,
  1187.         MMI_TRUE,
  1188.         PEN_EDITOR_EMS_INPUT_BOX);
  1189. #endif /* defined(__MMI_TOUCH_SCREEN__) || defined(__MMI_HANDWRITING_PAD__) */ 
  1190. #if(EMS_USE_INTERNAL_MENU)
  1191.     SetKeyHandler(EntryEMSMainMenu, KEY_SEND, KEY_EVENT_UP);
  1192. #endif 
  1193.     //      test_change_input_mode=test_EMS_inputbox_change_mode;
  1194.     //      SetKeyHandler(temp_ems_insert_character,KEY_STAR,KEY_EVENT_DOWN);
  1195. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1196.     gui_unlock_double_buffer();
  1197.     ExitCategoryFunction = ExitCategory28Screen;
  1198.     dm_setup_category_functions(dm_redraw_category_screen, dm_get_category_history, dm_get_category_history_size);
  1199.     dm_register_category_controlled_callback(category28callback);
  1200.     dm_data.s32ScrId = (S32) GetActiveScreenId();
  1201.     dm_data.s32CatId = MMI_CATEGORY28_ID;
  1202.     dm_data.s32flags = DM_CLEAR_SCREEN_BACKGROUND;
  1203.     dm_data.s32flags |= DM_SHOW_VKPAD;
  1204.     dm_setup_data(&dm_data);
  1205.     dm_register_vkpad_callback(cat28_virtual_keypad_callback);
  1206.     dm_redraw_category_screen();
  1207. }
  1208. /*****************************************************************************
  1209.  * FUNCTION
  1210.  *  CloseCategory28Screen
  1211.  * DESCRIPTION
  1212.  *  Releases data used by the MO EMS/SMS screen
  1213.  * PARAMETERS
  1214.  *  void
  1215.  * RETURNS
  1216.  *  void
  1217.  *****************************************************************************/
  1218. void CloseCategory28Screen(void)
  1219. {
  1220. #if(UI_DISABLE_EMS_INPUT_BOX)
  1221.     /*----------------------------------------------------------------*/
  1222.     /* Local Variables                                                */
  1223.     /*----------------------------------------------------------------*/
  1224.     S32 length;
  1225.     S32 i, j;
  1226.     U8 *buffer;
  1227.     /*----------------------------------------------------------------*/
  1228.     /* Code Body                                                      */
  1229.     /*----------------------------------------------------------------*/
  1230.     length = MMI_multiline_inputbox.text_length;
  1231.     buffer = (U8*) gui_malloc((length << 1) + 2);
  1232.     i = j = 0;
  1233.     ResetCurrentPosition(temp_EMS_data);
  1234.     while (i < length)
  1235.     {
  1236.         buffer[j++] = 0;
  1237.         buffer[j++] = (U8) temp_EMS_buffer[i++];
  1238.     }
  1239.     buffer[j++] = 0;
  1240.     buffer[j++] = '';
  1241.     AddString(temp_EMS_data, buffer, (U16) length, NULL);
  1242.     gui_free(buffer);
  1243.     gui_free(temp_EMS_buffer);
  1244. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1245. }
  1246. /*****************************************************************************
  1247.  * FUNCTION
  1248.  *  ExitCategory28Screen
  1249.  * DESCRIPTION
  1250.  *  Exits the MO EMS/SMS screen
  1251.  * PARAMETERS
  1252.  *  void
  1253.  * RETURNS
  1254.  *  void
  1255.  *****************************************************************************/
  1256. void ExitCategory28Screen(void)
  1257. {
  1258.     /*----------------------------------------------------------------*/
  1259.     /* Local Variables                                                */
  1260.     /*----------------------------------------------------------------*/
  1261.     /*----------------------------------------------------------------*/
  1262.     /* Code Body                                                      */
  1263.     /*----------------------------------------------------------------*/
  1264.     EMS_inputbox_has_changed = 0;
  1265.     /* set_MMI_current_input_type(); */
  1266.     category28_RSK_label_clear = 0;
  1267.     category28_RSK_function = NULL;
  1268.     wgui_inputbox_information_flag = 0;
  1269. #ifdef __MMI_MESSAGES_EMS__
  1270.     close_EMS_objects();
  1271. #endif 
  1272. #if(!UI_DISABLE_EMS_INPUT_BOX)
  1273.     {
  1274.         reset_EMS_inputbox();
  1275.     }
  1276. #endif /* (!UI_DISABLE_EMS_INPUT_BOX) */ 
  1277. #ifdef __MMI_WALLPAPER_ON_BOTTOM__
  1278.     /* dm_set_scr_bg_image(editor_scr_bg_ID, editor_scr_bg_filename, editor_scr_bg_x, editor_scr_bg_y, editor_scr_bg_opacity);//092005 grayscale Calvin */
  1279.     dm_set_scr_bg_image_no_draw(
  1280.         editor_scr_bg_ID,
  1281.         editor_scr_bg_filename,
  1282.         editor_scr_bg_x,
  1283.         editor_scr_bg_y,
  1284.         editor_scr_bg_opacity);
  1285. #endif /* __MMI_WALLPAPER_ON_BOTTOM__ */ 
  1286.     ExitCategoryFunction = MMI_dummy_function;
  1287.     RedrawCategoryFunction = MMI_dummy_function;
  1288.     GetCategoryHistory = dummy_get_history;
  1289.     GetCategoryHistorySize = dummy_get_history_size;
  1290. #ifdef __MMI_T9__
  1291.     InuptMethodExitCategory28();
  1292. #elif defined (__MMI_ZI__) && defined(__MMI_MESSAGES_EMS__)
  1293.     ZiInuptMethodExitCategory28();
  1294. #elif defined __MMI_KA__
  1295.     KonkaInuptMethodExitCategory28();
  1296. //KP Jerry add on 2007-3-8 start
  1297. #elif defined __MMI_CSTAR__
  1298.     CstarInputMethodExitCategory28();
  1299. //KP Jerry add on 2007-3-8 end
  1300. #elif defined __MMI_ITAP__
  1301. /* under construction !*/
  1302. #endif 
  1303. #if defined(__MMI_TOUCH_SCREEN__) || defined(__MMI_HANDWRITING_PAD__)
  1304.     mmi_pen_editor_close_input_box();
  1305. #endif 
  1306.     if (test_change_input_mode != NULL)
  1307.     {
  1308.         if (test_change_input_mode())
  1309.         {
  1310.             MMI_english_input_mode_flag = 0;
  1311.         }
  1312.         else
  1313.         {
  1314.             MMI_english_input_mode_flag = 1;
  1315.         }
  1316.     }
  1317.     else
  1318.     {
  1319.         MMI_english_input_mode_flag = 0;
  1320.     }
  1321.     test_change_input_mode = NULL;
  1322.     /* W05.36 Fix Vietnamese Tone Input Issue */
  1323.     set_current_input_box_type(EDITOR_NONE_INPUT_BOX);
  1324. }
  1325. /*****************************************************************************
  1326.  * FUNCTION
  1327.  *  GetCategory28HistorySize
  1328.  * DESCRIPTION
  1329.  *  Gets the history buffer size for the MO EMS/SMS screen
  1330.  * PARAMETERS
  1331.  *  void
  1332.  * RETURNS
  1333.  *  size in U8s of the history buffer
  1334.  *****************************************************************************/
  1335. S32 GetCategory28HistorySize(void)
  1336. {
  1337. #if(UI_DISABLE_EMS_INPUT_BOX)
  1338.     /*----------------------------------------------------------------*/
  1339.     /* Local Variables                                                */
  1340.     /*----------------------------------------------------------------*/
  1341.     /*----------------------------------------------------------------*/
  1342.     /* Code Body                                                      */
  1343.     /*----------------------------------------------------------------*/
  1344.     return (0);
  1345. #else /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1346.     return (sizeof(EMS_inputbox_category_history));
  1347. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1348. }
  1349. /*****************************************************************************
  1350.  * FUNCTION
  1351.  *  GetCategory28History
  1352.  * DESCRIPTION
  1353.  *  Gets the history buffer for the MO EMS/SMS screen
  1354.  * PARAMETERS
  1355.  *  history_buffer      [IN]        Is the buffer into which the history data is stored (pre-allocated)
  1356.  * RETURNS
  1357.  *  pointer to the history buffer
  1358.  *****************************************************************************/
  1359. U8 *GetCategory28History(U8 *history_buffer)
  1360. {
  1361. #if(UI_DISABLE_EMS_INPUT_BOX)
  1362.     /*----------------------------------------------------------------*/
  1363.     /* Local Variables                                                */
  1364.     /*----------------------------------------------------------------*/
  1365.     /*----------------------------------------------------------------*/
  1366.     /* Code Body                                                      */
  1367.     /*----------------------------------------------------------------*/
  1368.     return (history_buffer);
  1369. #else /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1370.     get_EMS_inputbox_category_history(MMI_CATEGORY28_ID, history_buffer, MMI_current_input_type);
  1371.     return (history_buffer);
  1372. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1373. }
  1374. /*****************************************************************************
  1375.  * FUNCTION
  1376.  *  RedrawCategory39Screen
  1377.  * DESCRIPTION
  1378.  *  Redraws the MT EMS/SMS screen
  1379.  * PARAMETERS
  1380.  *  void
  1381.  * RETURNS
  1382.  *  void
  1383.  *****************************************************************************/
  1384. void RedrawCategory39Screen(void)
  1385. {
  1386.     /*----------------------------------------------------------------*/
  1387.     /* Local Variables                                                */
  1388.     /*----------------------------------------------------------------*/
  1389.     /*----------------------------------------------------------------*/
  1390.     /* Code Body                                                      */
  1391.     /*----------------------------------------------------------------*/
  1392.     gdi_layer_lock_frame_buffer();
  1393.     clear_screen();
  1394.     show_title_status_icon();
  1395.     draw_title();
  1396.     show_softkey_background();
  1397.     show_left_softkey();
  1398.     show_right_softkey();
  1399. #if(UI_DISABLE_EMS_INPUT_BOX)
  1400.     show_multiline_inputbox();
  1401. #else 
  1402.     show_EMS_inputbox();
  1403. #endif 
  1404.     gdi_layer_unlock_frame_buffer();
  1405.     gdi_layer_blt_previous(0, 0, UI_device_width - 1, UI_device_height - 1);
  1406. }
  1407. /*****************************************************************************
  1408.  * FUNCTION
  1409.  *  ShowCategory39Screen
  1410.  * DESCRIPTION
  1411.  *  Displays the MT EMS/SMS screen
  1412.  * PARAMETERS
  1413.  *  title                   [IN]        Title for the screen
  1414.  *  title_icon              [IN]        Icon displayed with the title
  1415.  *  left_softkey            [IN]        Left softkey label
  1416.  *  left_softkey_icon       [IN]        Left softkey icon
  1417.  *  right_softkey           [IN]        Right softkey label
  1418.  *  right_softkey_icon      [IN]        Right softkey icon
  1419.  *  data                    [IN]        EMSData (Pre-allocated and initialized)
  1420.  *  header                  [IN]        Header to be displayed (Must include 'n' for line seperation)
  1421.  *  history_buffer          [IN]        History buffer
  1422.  * RETURNS
  1423.  *  void
  1424.  *****************************************************************************/
  1425. void ShowCategory39Screen(
  1426.         U16 title,
  1427.         U16 title_icon,
  1428.         U16 left_softkey,
  1429.         U16 left_softkey_icon,
  1430.         U16 right_softkey,
  1431.         U16 right_softkey_icon,
  1432.         EMSData *data,
  1433.         U8 *header,
  1434.         U8 *history_buffer)
  1435. {
  1436.     /*----------------------------------------------------------------*/
  1437.     /* Local Variables                                                */
  1438.     /*----------------------------------------------------------------*/
  1439.     dm_data_struct dm_data;
  1440.     S16 input_type = 0;
  1441. #if(UI_DISABLE_EMS_INPUT_BOX)
  1442.     S32 length;
  1443.     S32 i, j, h, fh;
  1444.     UI_UNUSED_PARAMETER(history_buffer);
  1445. #else /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1446.     U8 h;
  1447. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1448.     /*----------------------------------------------------------------*/
  1449.     /* Code Body                                                      */
  1450.     /*----------------------------------------------------------------*/
  1451.     EMS_inputbox_has_changed = 0;
  1452. #ifdef __MMI_MESSAGES_EMS__
  1453.     initialize_EMS_objects();
  1454. #endif 
  1455.     MMI_menu_shortcut_number = -1;
  1456.     change_left_softkey(left_softkey, left_softkey_icon);
  1457.     change_right_softkey(right_softkey, right_softkey_icon);
  1458.     SetupCategoryKeyHandlers();
  1459.     MMI_title_string = (UI_string_type) get_string(title);
  1460.     MMI_title_icon = (PU8) get_image(title_icon);
  1461. #if(UI_DISABLE_EMS_INPUT_BOX)
  1462.     length = (data->textBufferSize >> 1);
  1463.     if (length == 0)
  1464.     {
  1465.         UI_string_type s = (UI_string_type) "EMS Data not initialized";
  1466.         S32 l = gui_strlen((UI_string_type) s);
  1467.         temp_EMS_buffer = (UI_string_type) gui_malloc(l * sizeof(UI_character_type));
  1468.         gui_strcpy((UI_string_type) temp_EMS_buffer, (UI_string_type) s);
  1469.         length = l + 1;
  1470.         i = l;
  1471.     }
  1472.     else
  1473.     {
  1474.         temp_EMS_buffer = (UI_string_type) gui_malloc(length * sizeof(UI_character_type));
  1475.         i = j = 0;
  1476.         while (j < data->textLength)
  1477.         {
  1478.             if ((data->textBuffer[j] == '') && (data->textBuffer[j + 1] == ''))
  1479.             {
  1480.                 temp_EMS_buffer[i] = '';
  1481.                 break;
  1482.             }
  1483.             else
  1484.             {
  1485.                 temp_EMS_buffer[i] = data->textBuffer[j + 1];
  1486.             }
  1487.             i++;
  1488.             j += 2;
  1489.         }
  1490.     }
  1491.     temp_EMS_data = data;
  1492.     create_multiline_inputbox_set_buffer(temp_EMS_buffer, length, i, 0);
  1493.     register_multiline_inputbox_keys();
  1494.     register_hide_multitap(category5_hide_multitap);
  1495.     move_multiline_inputbox(0, (MMI_title_y + MMI_title_height));
  1496.     h = MMI_content_height - MMI_multitap_height - 8;
  1497.     gui_set_font(MMI_multiline_inputbox.text_font);
  1498.     fh = gui_get_character_height();
  1499.     h = ((h / fh) * fh) + 8;
  1500.     resize_multiline_inputbox(MMI_multiline_inputbox.width, h);
  1501.     set_multiline_inputbox_mask(0);
  1502. #else /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1503. #if((UI_ENABLE_FRAME_SKIPPING) && (ENABLE_EMS_INPUTBOX_FRAME_SKIPPING))
  1504.     wgui_EMS_inputbox_frame_counter = 0;
  1505. #endif 
  1506.     gui_create_EMS_input_box(
  1507.         &MMI_EMS_inputbox,
  1508.         0,
  1509.         (MMI_title_y + MMI_title_height),
  1510.         MMI_content_width,
  1511.         MMI_content_height);
  1512.     gui_set_EMS_input_box_data(&MMI_EMS_inputbox, data);
  1513.     h = set_EMS_inputbox_category_history(MMI_CATEGORY39_ID, history_buffer, (S16*) & input_type);
  1514.     MMI_EMS_inputbox.flags |= UI_EMS_INPUT_BOX_VIEW_MODE;
  1515.     MMI_EMS_inputbox.flags |= UI_EMS_INPUT_BOX_DISPLAY_HEADER;
  1516.     if (!h)
  1517.     {
  1518.         ResetCurrentPosition(MMI_EMS_inputbox.data);
  1519.     }
  1520.     MMI_EMS_inputbox.flags |= UI_EMS_INPUT_BOX_DISABLE_CURSOR_DRAW;
  1521.     register_EMS_inputbox_viewer_keys();
  1522.     create_EMS_viewer_header(header);
  1523.     MMI_EMS_inputbox.display_header = EMS_viewer_show_header;
  1524.     MMI_EMS_inputbox.measure_header = EMS_viewer_measure_header;
  1525. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1526.     ExitCategoryFunction = ExitCategory39Screen;
  1527.     dm_setup_category_functions(dm_redraw_category_screen, GetCategory39History, GetCategory39HistorySize);
  1528.     dm_data.s32ScrId = (S32) GetActiveScreenId();
  1529.     dm_data.s32CatId = MMI_CATEGORY39_ID;
  1530.     dm_data.s32flags = DM_CLEAR_SCREEN_BACKGROUND;
  1531.     dm_setup_data(&dm_data);
  1532.     dm_redraw_category_screen();
  1533. }
  1534. /*****************************************************************************
  1535.  * FUNCTION
  1536.  *  CloseCategory39Screen
  1537.  * DESCRIPTION
  1538.  *  Releases data used by the MT EMS/SMS screen
  1539.  * PARAMETERS
  1540.  *  void
  1541.  * RETURNS
  1542.  *  void
  1543.  *****************************************************************************/
  1544. void CloseCategory39Screen(void)
  1545. {
  1546. #if(UI_DISABLE_EMS_INPUT_BOX)
  1547.     /*----------------------------------------------------------------*/
  1548.     /* Local Variables                                                */
  1549.     /*----------------------------------------------------------------*/
  1550.     S32 length;
  1551.     S32 i, j;
  1552.     U8 *buffer;
  1553.     /*----------------------------------------------------------------*/
  1554.     /* Code Body                                                      */
  1555.     /*----------------------------------------------------------------*/
  1556.     length = MMI_multiline_inputbox.text_length;
  1557.     buffer = (U8*) gui_malloc((length << 1) + 2);
  1558.     i = j = 0;
  1559.     ResetCurrentPosition(temp_EMS_data);
  1560.     while (i < length)
  1561.     {
  1562.         buffer[j++] = 0;
  1563.         buffer[j++] = (U8) temp_EMS_buffer[i++];
  1564.     }
  1565.     buffer[j++] = 0;
  1566.     buffer[j++] = '';
  1567.     AddString(temp_EMS_data, buffer, (U16) length, NULL);
  1568.     gui_free(buffer);
  1569.     gui_free(temp_EMS_buffer);
  1570. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1571. }
  1572. /*****************************************************************************
  1573.  * FUNCTION
  1574.  *  ExitCategory39Screen
  1575.  * DESCRIPTION
  1576.  *  Exits the MT EMS/SMS screen
  1577.  * PARAMETERS
  1578.  *  void
  1579.  * RETURNS
  1580.  *  void
  1581.  *****************************************************************************/
  1582. void ExitCategory39Screen(void)
  1583. {
  1584.     /*----------------------------------------------------------------*/
  1585.     /* Local Variables                                                */
  1586.     /*----------------------------------------------------------------*/
  1587.     /*----------------------------------------------------------------*/
  1588.     /* Code Body                                                      */
  1589.     /*----------------------------------------------------------------*/
  1590. #if(!UI_DISABLE_EMS_INPUT_BOX)
  1591.     reset_EMS_inputbox();
  1592. #endif 
  1593. #ifdef __MMI_MESSAGES_EMS__
  1594.     close_EMS_objects();
  1595. #endif 
  1596.     ExitCategoryFunction = MMI_dummy_function;
  1597.     RedrawCategoryFunction = MMI_dummy_function;
  1598.     GetCategoryHistory = dummy_get_history;
  1599.     GetCategoryHistorySize = dummy_get_history_size;
  1600. }
  1601. /*****************************************************************************
  1602.  * FUNCTION
  1603.  *  GetCategory39HistorySize
  1604.  * DESCRIPTION
  1605.  *  Gets the history buffer size for the MT EMS/SMS screen
  1606.  * PARAMETERS
  1607.  *  void
  1608.  * RETURNS
  1609.  *  void
  1610.  *****************************************************************************/
  1611. S32 GetCategory39HistorySize(void)
  1612. {
  1613. #if(UI_DISABLE_EMS_INPUT_BOX)
  1614.     /*----------------------------------------------------------------*/
  1615.     /* Local Variables                                                */
  1616.     /*----------------------------------------------------------------*/
  1617.     /*----------------------------------------------------------------*/
  1618.     /* Code Body                                                      */
  1619.     /*----------------------------------------------------------------*/
  1620.     return (0);
  1621. #else /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1622.     return (sizeof(EMS_inputbox_category_history));
  1623. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1624. }
  1625. /*****************************************************************************
  1626.  * FUNCTION
  1627.  *  GetCategory39History
  1628.  * DESCRIPTION
  1629.  *  Gets the history buffer for the MT EMS/SMS screen
  1630.  * PARAMETERS
  1631.  *  history_buffer      [?]             
  1632.  *  history(?)          [IN/OUT]        The buffer into which the history data is stored (pre-allocated)
  1633.  * RETURNS
  1634.  *  void
  1635.  *****************************************************************************/
  1636. U8 *GetCategory39History(U8 *history_buffer)
  1637. {
  1638. #if(UI_DISABLE_EMS_INPUT_BOX)
  1639.     /*----------------------------------------------------------------*/
  1640.     /* Local Variables                                                */
  1641.     /*----------------------------------------------------------------*/
  1642.     /*----------------------------------------------------------------*/
  1643.     /* Code Body                                                      */
  1644.     /*----------------------------------------------------------------*/
  1645.     return (history_buffer);
  1646. #else /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1647.     get_EMS_inputbox_category_history(MMI_CATEGORY39_ID, history_buffer, MMI_current_input_type);
  1648.     return (history_buffer);
  1649. #endif /* (UI_DISABLE_EMS_INPUT_BOX) */ 
  1650. }
  1651. /*****************************************************************************
  1652.  * FUNCTION
  1653.  *  change_EMS_inputbox_mode
  1654.  * DESCRIPTION
  1655.  *  
  1656.  * PARAMETERS
  1657.  *  mode        [IN]        
  1658.  * RETURNS
  1659.  *  void
  1660.  *****************************************************************************/
  1661.  //KP Jerry add on 2007-4-29 start
  1662. #ifdef __MMI_LANG_THAI__ 
  1663. extern void EMS_inputbox_alphanumeric_keyboard_input_handler(S32 keyc);
  1664. extern void EMS_inputbox_multitap_input(UI_character_type c); 
  1665. extern void EMS_inputbox_multitap_input_complete(void);
  1666. #endif
  1667.  //KP Jerry add on 2007-4-29 end
  1668. void change_EMS_inputbox_mode(U8 mode)
  1669. {
  1670.     /*----------------------------------------------------------------*/
  1671.     /* Local Variables                                                */
  1672.     /*----------------------------------------------------------------*/
  1673.     /*----------------------------------------------------------------*/
  1674.     /* Code Body                                                      */
  1675.     /*----------------------------------------------------------------*/
  1676.     /* PMT dara added for Multitap thai */
  1677. #if defined(__MMI_MULTITAP_THAI__)
  1678.     SetKeyHandler(handle_category28_change_input_mode, KEY_POUND, KEY_EVENT_DOWN);
  1679. #endif 
  1680. #if !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__)
  1681. #else /* !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__) */ 
  1682.     ClearKeyHandler(KEY_POUND, KEY_EVENT_DOWN);
  1683. #endif /* !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__) */ 
  1684.     switch (mode)
  1685.     {
  1686.         case INPUT_MODE_MULTITAP_UPPERCASE_ABC:
  1687.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_ABC);
  1688.             register_EMS_multitap_function();
  1689.             break;
  1690.         case INPUT_MODE_MULTITAP_LOWERCASE_ABC:
  1691.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_ABC);
  1692.             register_EMS_multitap_function();
  1693.             break;
  1694.             /* PMT dara added for multitap thai */
  1695.     #if defined(__MMI_MULTITAP_THAI__)
  1696.         case INPUT_MODE_MULTITAP_THAI:
  1697.             change_multitap_mode(INPUT_MODE_MULTITAP_THAI);
  1698.     #if defined(__MMI_FULL_SCREEN_EDITOR__)
  1699.             register_multitap_no_draw_key_handlers();
  1700.     #else 
  1701.             register_multitap_key_handlers();
  1702.     #endif 
  1703.             register_MMI_key_input_extend_handler();
  1704.             /* change_inputbox_type_multitapthai(EMS_INPUTBOX);             //msz065_20050420 */
  1705.             register_keyboard_input_handler(EMS_inputbox_alphanumeric_keyboard_input_handler);
  1706.             set_multitap_functions(EMS_inputbox_multitap_input, EMS_inputbox_multitap_input_complete);
  1707.             wgui_set_EMS_inputbox_RSK();
  1708.             register_EMS_inputbox_keys();
  1709.             SetKeyHandler(handle_category28_change_input_mode_bymultitapthai, KEY_POUND, KEY_LONG_PRESS);
  1710.             SetKeyHandler(wgui_EMS_inputbox_handle_symbol_picker_star_key_bymultitapthai, KEY_STAR, KEY_LONG_PRESS);
  1711.             break;
  1712.     #endif /* defined(__MMI_MULTITAP_THAI__) */ 
  1713.     #if defined(__MMI_MULTITAP_SPANISH__)
  1714.         case INPUT_MODE_MULTITAP_UPPERCASE_SPANISH:
  1715.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_SPANISH);
  1716.             register_EMS_multitap_function();
  1717.             break;
  1718.         case INPUT_MODE_MULTITAP_LOWERCASE_SPANISH:
  1719.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_SPANISH);
  1720.             register_EMS_multitap_function();
  1721.             break;
  1722.     #endif /* defined(__MMI_MULTITAP_SPANISH__) */ 
  1723.     #if defined(__MMI_MULTITAP_DANISH__)
  1724.         case INPUT_MODE_MULTITAP_UPPERCASE_DANISH:
  1725.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_DANISH);
  1726.             register_EMS_multitap_function();
  1727.             break;
  1728.         case INPUT_MODE_MULTITAP_LOWERCASE_DANISH:
  1729.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_DANISH);
  1730.             register_EMS_multitap_function();
  1731.             break;
  1732.     #endif /* defined(__MMI_MULTITAP_DANISH__) */ 
  1733.     #if defined(__MMI_MULTITAP_POLISH__)    /* polish-vikas */
  1734.         case INPUT_MODE_MULTITAP_UPPERCASE_POLISH:
  1735.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_POLISH);
  1736.             register_EMS_multitap_function();
  1737.             break;
  1738.         case INPUT_MODE_MULTITAP_LOWERCASE_POLISH:
  1739.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_POLISH);
  1740.             register_EMS_multitap_function();
  1741.             break;
  1742.     #endif /* defined(__MMI_MULTITAP_POLISH__) */ 
  1743.     #if defined(__MMI_MULTITAP_FRENCH__)
  1744.         case INPUT_MODE_MULTITAP_UPPERCASE_FRENCH:
  1745.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_FRENCH);
  1746.             register_EMS_multitap_function();
  1747.             break;
  1748.         case INPUT_MODE_MULTITAP_LOWERCASE_FRENCH:
  1749.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_FRENCH);
  1750.             register_EMS_multitap_function();
  1751.             break;
  1752.     #endif /* defined(__MMI_MULTITAP_FRENCH__) */ 
  1753.     #if defined(__MMI_MULTITAP_GERMAN__)
  1754.         case INPUT_MODE_MULTITAP_UPPERCASE_GERMAN:
  1755.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_GERMAN);
  1756.             register_EMS_multitap_function();
  1757.             break;
  1758.         case INPUT_MODE_MULTITAP_LOWERCASE_GERMAN:
  1759.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_GERMAN);
  1760.             register_EMS_multitap_function();
  1761.             break;
  1762.     #endif /* defined(__MMI_MULTITAP_GERMAN__) */ 
  1763.     #if defined(__MMI_MULTITAP_ITALIAN__)
  1764.         case INPUT_MODE_MULTITAP_UPPERCASE_ITALIAN:
  1765.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_ITALIAN);
  1766.             register_EMS_multitap_function();
  1767.             break;
  1768.         case INPUT_MODE_MULTITAP_LOWERCASE_ITALIAN:
  1769.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_ITALIAN);
  1770.             register_EMS_multitap_function();
  1771.             break;
  1772.     #endif /* defined(__MMI_MULTITAP_ITALIAN__) */ 
  1773.     #if defined(__MMI_MULTITAP_RUSSIAN__)
  1774.         case INPUT_MODE_MULTITAP_UPPERCASE_RUSSIAN:
  1775.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_RUSSIAN);
  1776.             register_EMS_multitap_function();
  1777.             break;
  1778.         case INPUT_MODE_MULTITAP_LOWERCASE_RUSSIAN:
  1779.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_RUSSIAN);
  1780.             register_EMS_multitap_function();
  1781.             break;
  1782.     #endif /* defined(__MMI_MULTITAP_RUSSIAN__) */ 
  1783.     #if defined(__MMI_MULTITAP_BULGARIAN__)
  1784.         case INPUT_MODE_MULTITAP_UPPERCASE_BULGARIAN:
  1785.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_BULGARIAN);
  1786.             register_EMS_multitap_function();
  1787.             break;
  1788.         case INPUT_MODE_MULTITAP_LOWERCASE_BULGARIAN:
  1789.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_BULGARIAN);
  1790.             register_EMS_multitap_function();
  1791.             break;
  1792.     #endif /* defined(__MMI_MULTITAP_BULGARIAN__) */ 
  1793.     #if defined(__MMI_MULTITAP_TURKISH__)
  1794.         case INPUT_MODE_MULTITAP_UPPERCASE_TURKISH:
  1795.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_TURKISH);
  1796.             register_EMS_multitap_function();
  1797.             break;
  1798.         case INPUT_MODE_MULTITAP_LOWERCASE_TURKISH:
  1799.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_TURKISH);
  1800.             register_EMS_multitap_function();
  1801.             break;
  1802.     #endif /* defined(__MMI_MULTITAP_TURKISH__) */ 
  1803.     #if defined(__MMI_MULTITAP_PORTUGUESE__)
  1804.         case INPUT_MODE_MULTITAP_UPPERCASE_PORTUGUESE:
  1805.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_PORTUGUESE);
  1806.             register_EMS_multitap_function();
  1807.             break;
  1808.         case INPUT_MODE_MULTITAP_LOWERCASE_PORTUGUESE:
  1809.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_PORTUGUESE);
  1810.             register_EMS_multitap_function();
  1811.             break;
  1812.     #endif /* defined(__MMI_MULTITAP_PORTUGUESE__) */ 
  1813.     #if defined(__MMI_MULTITAP_HINDI__)
  1814.         case INPUT_MODE_MULTITAP_HINDI:
  1815.             change_multitap_mode(INPUT_MODE_MULTITAP_HINDI);
  1816.             register_EMS_multitap_function();
  1817.             break;
  1818.     #endif /* defined(__MMI_MULTITAP_HINDI__) */ 
  1819.             /* PMT RAKESH START 20061006 */
  1820.     #if defined(__MMI_MULTITAP_MARATHI__)
  1821.         case INPUT_MODE_MULTITAP_MARATHI:
  1822.             change_multitap_mode(INPUT_MODE_MULTITAP_MARATHI);
  1823.             register_EMS_multitap_function();
  1824.             break;
  1825.     #endif /* defined(__MMI_MULTITAP_MARATHI__) */ 
  1826.             /* PMT RAKESH END 20061006 */
  1827.     #if defined(__MMI_MULTITAP_INDONESIAN__)
  1828.         case INPUT_MODE_MULTITAP_UPPERCASE_INDONESIAN:
  1829.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_INDONESIAN);
  1830.             register_EMS_multitap_function();
  1831.             break;
  1832.         case INPUT_MODE_MULTITAP_LOWERCASE_INDONESIAN:
  1833.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_INDONESIAN);
  1834.             register_EMS_multitap_function();
  1835.             break;
  1836.     #endif /* defined(__MMI_MULTITAP_INDONESIAN__) */ 
  1837.     #if defined(__MMI_MULTITAP_CZECH__)
  1838.         case INPUT_MODE_MULTITAP_UPPERCASE_CZECH:
  1839.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_CZECH);
  1840.             register_EMS_multitap_function();
  1841.             break;
  1842.         case INPUT_MODE_MULTITAP_LOWERCASE_CZECH:
  1843.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_CZECH);
  1844.             register_EMS_multitap_function();
  1845.             break;
  1846.     #endif /* defined(__MMI_MULTITAP_CZECH__) */ 
  1847.     #if defined(__MMI_MULTITAP_MALAY__)
  1848.         case INPUT_MODE_MULTITAP_UPPERCASE_MALAY:
  1849.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_MALAY);
  1850.             register_EMS_multitap_function();
  1851.             break;
  1852.         case INPUT_MODE_MULTITAP_LOWERCASE_MALAY:
  1853.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_MALAY);
  1854.             register_EMS_multitap_function();
  1855.             break;
  1856.     #endif /* defined(__MMI_MULTITAP_MALAY__) */ 
  1857.     #if defined(__MMI_MULTITAP_VIETNAMESE__)
  1858.         case INPUT_MODE_MULTITAP_UPPERCASE_VIETNAMESE:
  1859.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_VIETNAMESE);
  1860.             register_EMS_multitap_function();
  1861.             break;
  1862.         case INPUT_MODE_MULTITAP_LOWERCASE_VIETNAMESE:
  1863.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_VIETNAMESE);
  1864.             register_EMS_multitap_function();
  1865.             break;
  1866.     #endif /* defined(__MMI_MULTITAP_VIETNAMESE__) */ 
  1867.     #if defined(__MMI_MULTITAP_FINNISH__)
  1868.         case INPUT_MODE_MULTITAP_UPPERCASE_FINNISH:
  1869.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_FINNISH);
  1870.             register_EMS_multitap_function();
  1871.             break;
  1872.         case INPUT_MODE_MULTITAP_LOWERCASE_FINNISH:
  1873.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_FINNISH);
  1874.             register_EMS_multitap_function();
  1875.             break;
  1876.     #endif /* defined(__MMI_MULTITAP_FINNISH__) */ 
  1877.     #if defined(__MMI_MULTITAP_HUNGARIAN__)
  1878.         case INPUT_MODE_MULTITAP_UPPERCASE_HUNGARIAN:
  1879.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_HUNGARIAN);
  1880.             register_EMS_multitap_function();
  1881.             break;
  1882.         case INPUT_MODE_MULTITAP_LOWERCASE_HUNGARIAN:
  1883.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_HUNGARIAN);
  1884.             register_EMS_multitap_function();
  1885.             break;
  1886.     #endif /* defined(__MMI_MULTITAP_HUNGARIAN__) */ 
  1887.     #if defined(__MMI_MULTITAP_SLOVAK__)
  1888.         case INPUT_MODE_MULTITAP_UPPERCASE_SLOVAK:
  1889.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_SLOVAK);
  1890.             register_EMS_multitap_function();
  1891.             break;
  1892.         case INPUT_MODE_MULTITAP_LOWERCASE_SLOVAK:
  1893.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_SLOVAK);
  1894.             register_EMS_multitap_function();
  1895.             break;
  1896.     #endif /* defined(__MMI_MULTITAP_SLOVAK__) */ 
  1897.     #if defined(__MMI_MULTITAP_DUTCH__)
  1898.         case INPUT_MODE_MULTITAP_UPPERCASE_DUTCH:
  1899.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_DUTCH);
  1900.             register_EMS_multitap_function();
  1901.             break;
  1902.         case INPUT_MODE_MULTITAP_LOWERCASE_DUTCH:
  1903.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_DUTCH);
  1904.             register_EMS_multitap_function();
  1905.             break;
  1906.     #endif /* defined(__MMI_MULTITAP_DUTCH__) */ 
  1907.     #if defined(__MMI_MULTITAP_ARABIC__)
  1908.         case INPUT_MODE_MULTITAP_ARABIC:
  1909.             change_multitap_mode(INPUT_MODE_MULTITAP_ARABIC);
  1910.             register_EMS_multitap_function();
  1911.             break;
  1912.     #endif /* defined(__MMI_MULTITAP_ARABIC__) */ 
  1913. //PMT START PERSIAN          
  1914.     #if defined(__MMI_MULTITAP_PERSIAN__)
  1915.         case INPUT_MODE_MULTITAP_PERSIAN:
  1916.             change_multitap_mode(INPUT_MODE_MULTITAP_PERSIAN);
  1917.             register_EMS_multitap_function();
  1918.             break;
  1919.     #endif         
  1920. //PMT END PERSIAN  
  1921.             /* Norwegian start */
  1922.     #if defined(__MMI_MULTITAP_NORWEGIAN__)
  1923.         case INPUT_MODE_MULTITAP_UPPERCASE_NORWEGIAN:
  1924.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_NORWEGIAN);
  1925.             register_EMS_multitap_function();
  1926.             break;
  1927.         case INPUT_MODE_MULTITAP_LOWERCASE_NORWEGIAN:
  1928.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_NORWEGIAN);
  1929.             register_EMS_multitap_function();
  1930.             break;
  1931.     #endif /* defined(__MMI_MULTITAP_NORWEGIAN__) */ 
  1932.     #if defined(__MMI_MULTITAP_SWEDISH__)
  1933.         case INPUT_MODE_MULTITAP_UPPERCASE_SWEDISH:
  1934.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_SWEDISH);
  1935.             register_EMS_multitap_function();
  1936.             break;
  1937.         case INPUT_MODE_MULTITAP_LOWERCASE_SWEDISH:
  1938.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_SWEDISH);
  1939.             register_EMS_multitap_function();
  1940.             break;
  1941.     #endif /* defined(__MMI_MULTITAP_SWEDISH__) */ 
  1942.     #if defined(__MMI_MULTITAP_CROATIAN__)
  1943.         case INPUT_MODE_MULTITAP_UPPERCASE_CROATIAN:
  1944.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_CROATIAN);
  1945.             register_EMS_multitap_function();
  1946.             break;
  1947.         case INPUT_MODE_MULTITAP_LOWERCASE_CROATIAN:
  1948.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_CROATIAN);
  1949.             register_EMS_multitap_function();
  1950.             break;
  1951.     #endif /* defined(__MMI_MULTITAP_CROATIAN__) */ 
  1952.     #if defined(__MMI_MULTITAP_HEBREW__)
  1953.         case INPUT_MODE_MULTITAP_HEBREW:
  1954.             change_multitap_mode(INPUT_MODE_MULTITAP_HEBREW);
  1955.             register_EMS_multitap_function();
  1956.             break;
  1957.     #endif /* defined(__MMI_MULTITAP_HEBREW__) */ 
  1958.     #if defined(__MMI_MULTITAP_ROMANIAN__)
  1959.         case INPUT_MODE_MULTITAP_UPPERCASE_ROMANIAN:
  1960.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_ROMANIAN);
  1961.             register_EMS_multitap_function();
  1962.             break;
  1963.         case INPUT_MODE_MULTITAP_LOWERCASE_ROMANIAN:
  1964.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_ROMANIAN);
  1965.             register_EMS_multitap_function();
  1966.             break;
  1967.     #endif /* defined(__MMI_MULTITAP_ROMANIAN__) */ 
  1968.     #if defined(__MMI_MULTITAP_SLOVENIAN__)
  1969.         case INPUT_MODE_MULTITAP_UPPERCASE_SLOVENIAN:
  1970.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_SLOVENIAN);
  1971.             register_EMS_multitap_function();
  1972.             break;
  1973.         case INPUT_MODE_MULTITAP_LOWERCASE_SLOVENIAN:
  1974.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_SLOVENIAN);
  1975.             register_EMS_multitap_function();
  1976.             break;
  1977.     #endif /* defined(__MMI_MULTITAP_SLOVENIAN__) */ 
  1978.     #if defined(__MMI_MULTITAP_GREEK__)
  1979.         case INPUT_MODE_MULTITAP_UPPERCASE_GREEK:
  1980.             change_multitap_mode(INPUT_MODE_MULTITAP_UPPERCASE_GREEK);
  1981.             register_EMS_multitap_function();
  1982.             break;
  1983.         case INPUT_MODE_MULTITAP_LOWERCASE_GREEK:
  1984.             change_multitap_mode(INPUT_MODE_MULTITAP_LOWERCASE_GREEK);
  1985.             register_EMS_multitap_function();
  1986.             break;
  1987.     #endif /* defined(__MMI_MULTITAP_GREEK__) */ 
  1988.         case INPUT_MODE_123:
  1989.             change_multitap_mode(INPUT_MODE_123);
  1990.             clear_multitap_key_handlers();
  1991.             register_MMI_key_input_handler();
  1992.             register_key_down_handler(EMS_inputbox_handle_key_down);
  1993.             register_keyboard_input_handler(EMS_inputbox_numeric_keyboard_input_handler);
  1994.             wgui_set_EMS_inputbox_RSK();
  1995.             register_EMS_inputbox_keys();
  1996.             if ((MMI_current_input_type & INPUT_TYPE_MASK) == INPUT_TYPE_NUMERIC_CHANGEABLE)
  1997.             {
  1998.                 SetKeyHandler(wgui_EMS_inputbox_handle_symbol_picker_star_key, KEY_STAR, KEY_EVENT_DOWN);
  1999.             }
  2000.             break;
  2001.         #ifdef __MMI_T9__
  2002.         case INPUT_MODE_TR_BOPOMO:
  2003.         case INPUT_MODE_SM_PINYIN:
  2004.         case INPUT_MODE_TR_STROKE:
  2005.         case INPUT_MODE_SM_STROKE:
  2006.         case INPUT_MODE_SMART_UPPERCASE_ABC:
  2007.         case INPUT_MODE_SMART_LOWERCASE_ABC:
  2008.         case INPUT_MODE_TR_MULTITAP_BOPOMO:
  2009.         case INPUT_MODE_SM_MULTITAP_PINYIN:
  2010.         case INPUT_MODE_SMART_THAI:
  2011.         case INPUT_MODE_SMART_UPPERCASE_SPANISH:
  2012.         case INPUT_MODE_SMART_LOWERCASE_SPANISH:
  2013.         case INPUT_MODE_SMART_HEBREW:
  2014.         #if defined(__MMI_T9_DANISH__)
  2015.         case INPUT_MODE_SMART_UPPERCASE_DANISH:
  2016.         case INPUT_MODE_SMART_LOWERCASE_DANISH:
  2017.         #endif /* defined(__MMI_T9_DANISH__) */ 
  2018.         case INPUT_MODE_SMART_UPPERCASE_POLISH:
  2019.         case INPUT_MODE_SMART_LOWERCASE_POLISH:
  2020.         case INPUT_MODE_SMART_UPPERCASE_FRENCH:
  2021.         case INPUT_MODE_SMART_LOWERCASE_FRENCH:
  2022.         case INPUT_MODE_SMART_UPPERCASE_GERMAN:
  2023.         case INPUT_MODE_SMART_LOWERCASE_GERMAN:
  2024.         case INPUT_MODE_SMART_UPPERCASE_ITALIAN:
  2025.         case INPUT_MODE_SMART_LOWERCASE_ITALIAN:
  2026.         #if defined(__MMI_T9_VIETNAMESE__)
  2027.         case INPUT_MODE_SMART_UPPERCASE_VIETNAMESE:
  2028.         case INPUT_MODE_SMART_LOWERCASE_VIETNAMESE:
  2029.         #endif /* defined(__MMI_T9_VIETNAMESE__) */ 
  2030.         #if defined(__MMI_T9_INDONESIAN__)
  2031.         case INPUT_MODE_SMART_UPPERCASE_INDONESIAN:
  2032.         case INPUT_MODE_SMART_LOWERCASE_INDONESIAN:
  2033.         #endif /* defined(__MMI_T9_INDONESIAN__) */ 
  2034.         case INPUT_MODE_SMART_UPPERCASE_TURKISH:
  2035.         case INPUT_MODE_SMART_LOWERCASE_TURKISH:
  2036.         case INPUT_MODE_SMART_UPPERCASE_CZECH:
  2037.         case INPUT_MODE_SMART_LOWERCASE_CZECH:
  2038.         case INPUT_MODE_SMART_UPPERCASE_RUSSIAN:
  2039.         case INPUT_MODE_SMART_LOWERCASE_RUSSIAN:
  2040.         case INPUT_MODE_SMART_UPPERCASE_BULGARIAN:
  2041.         case INPUT_MODE_SMART_LOWERCASE_BULGARIAN:
  2042.         #if defined(__MMI_T9_PORTUGUESE__)
  2043.         case INPUT_MODE_SMART_UPPERCASE_PORTUGUESE:
  2044.         case INPUT_MODE_SMART_LOWERCASE_PORTUGUESE:
  2045.         #endif /* defined(__MMI_T9_PORTUGUESE__) */ 
  2046.         #if defined(__MMI_T9_FINNISH__)
  2047.         case INPUT_MODE_SMART_UPPERCASE_FINNISH:
  2048.         case INPUT_MODE_SMART_LOWERCASE_FINNISH:
  2049.         #endif /* defined(__MMI_T9_FINNISH__) */ 
  2050.         #if defined(__MMI_T9_HUNGARIAN__)
  2051.         case INPUT_MODE_SMART_UPPERCASE_HUNGARIAN:
  2052.         case INPUT_MODE_SMART_LOWERCASE_HUNGARIAN:
  2053.         #endif /* defined(__MMI_T9_HUNGARIAN__) */ 
  2054.         #if defined(__MMI_T9_ARABIC__)
  2055.         case INPUT_MODE_SMART_ARABIC:
  2056.         #endif 
  2057.         #if defined(__MMI_T9_HINDI__)
  2058.         case INPUT_MODE_SMART_HINDI:
  2059.         #endif 
  2060.         #if defined(__MMI_T9_NORWEGIAN__)
  2061.         case INPUT_MODE_SMART_UPPERCASE_NORWEGIAN:
  2062.         case INPUT_MODE_SMART_LOWERCASE_NORWEGIAN:
  2063.         #endif /* defined(__MMI_T9_NORWEGIAN__) */ 
  2064.         #if defined(__MMI_T9_DUTCH__)
  2065.         case INPUT_MODE_SMART_UPPERCASE_DUTCH:
  2066.         case INPUT_MODE_SMART_LOWERCASE_DUTCH:
  2067.         #endif /* defined(__MMI_T9_DUTCH__) */ 
  2068.         #if defined(__MMI_T9_SLOVENIAN__)
  2069.         case INPUT_MODE_SMART_UPPERCASE_SLOVENIAN:
  2070.         case INPUT_MODE_SMART_LOWERCASE_SLOVENIAN:
  2071.         #endif /* defined(__MMI_T9_SLOVENIAN__) */ 
  2072.         #if defined(__MMI_T9_SWEDISH__)
  2073.         case INPUT_MODE_SMART_UPPERCASE_SWEDISH:
  2074.         case INPUT_MODE_SMART_LOWERCASE_SWEDISH:
  2075.         #endif /* defined(__MMI_T9_SWEDISH__) */ 
  2076.         #if defined(__MMI_T9_GREEK__)
  2077.         case INPUT_MODE_SMART_UPPERCASE_GREEK:
  2078.         case INPUT_MODE_SMART_LOWERCASE_GREEK:
  2079.         #endif /* defined(__MMI_T9_GREEK__) */ 
  2080.         #if defined(__MMI_T9_MALAY__)
  2081.         case INPUT_MODE_SMART_UPPERCASE_MALAY:
  2082.         case INPUT_MODE_SMART_LOWERCASE_MALAY:
  2083.         #endif /* defined(__MMI_T9_MALAY__) */ 
  2084.         #if defined(__MMI_T9_CROATIAN__)
  2085.         case INPUT_MODE_SMART_UPPERCASE_CROATIAN:
  2086.         case INPUT_MODE_SMART_LOWERCASE_CROATIAN:
  2087.         #endif /* defined(__MMI_T9_CROATIAN__) */ 
  2088.         #if defined(__MMI_T9_SLOVAK__)
  2089.         case INPUT_MODE_SMART_UPPERCASE_SLOVAK:
  2090.         case INPUT_MODE_SMART_LOWERCASE_SLOVAK:
  2091.         #endif /* defined(__MMI_T9_SLOVAK__) */ 
  2092.         #if defined(__MMI_T9_ROMANIAN__)
  2093.         case INPUT_MODE_SMART_UPPERCASE_ROMANIAN:
  2094.         case INPUT_MODE_SMART_LOWERCASE_ROMANIAN:
  2095.         #endif /* defined(__MMI_T9_ROMANIAN__) */ 
  2096.             T9ChangeLanguageForEMSInputBox(mode);
  2097.             T9ClearKeyStarAndPoundHandler();
  2098.             T9ClearKeyNavigationHandler();
  2099.             T9ClearKey0To9Handler();
  2100.             //clear_right_softkey();
  2101.             //register_MMI_key_input_handler();
  2102.             /* W06.09 Touch Screen With Keypad V1 */
  2103.         #if !defined(__MMI_TOUCH_SCREEN__)
  2104.         #if !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__)
  2105.             /* dara add for t9 thai */
  2106.             if (mode == INPUT_MODE_SMART_THAI)
  2107.             {
  2108.                 SetKeyHandler(handle_category28_change_input_mode, KEY_POUND, KEY_LONG_PRESS);
  2109.                 SetKeyHandler(T9KeyPoundPressHandlerForEMSInputBox, KEY_POUND, KEY_EVENT_DOWN);
  2110.             }
  2111.             else
  2112.             {
  2113.                 SetKeyHandler(handle_category28_change_input_mode, KEY_POUND, KEY_EVENT_DOWN);
  2114.             }
  2115.         #else /* !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__) */ 
  2116.             SetKeyHandler(T9KeyPoundPressHandlerForEMSInputBox, KEY_POUND, KEY_EVENT_DOWN);
  2117.             /* W05.41 Long Press Key * to select symbols when __MMI_MULTITAP_FOR_STAR_AND_POUND__ */
  2118.             SetKeyHandler(wgui_EMS_inputbox_handle_symbol_picker_star_key, KEY_STAR, KEY_LONG_PRESS);
  2119.         #endif /* !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__) */ 
  2120.         #endif /* !defined(__MMI_TOUCH_SCREEN__) */ 
  2121.             SetKeyHandler(T9KeyStarPressHandlerForEMSInputBox, KEY_STAR, KEY_EVENT_DOWN);
  2122.             /* set key arrow handler */
  2123.             SetKeyHandler(T9KeyArrowUPHandlerForEMSInputBox, KEY_UP_ARROW, KEY_EVENT_DOWN);
  2124.             SetKeyHandler(T9KeyArrowRightHandlerForEMSInputBox, KEY_RIGHT_ARROW, KEY_EVENT_DOWN);
  2125.             SetKeyHandler(T9KeyArrowDownHandlerForEMSInputBox, KEY_DOWN_ARROW, KEY_EVENT_DOWN);
  2126.             SetKeyHandler(T9KeyArrowLeftHandlerForEMSInputBox, KEY_LEFT_ARROW, KEY_EVENT_DOWN);
  2127.             /* register_key_down_handler(T9Key0To9HandlerForEMSInputBox); */
  2128.             SetKeyHandler(T9Key0PressHandlerForEMSInputBox, KEY_0, KEY_EVENT_DOWN);
  2129.             SetKeyHandler(T9Key1PressHandlerForEMSInputBox, KEY_1, KEY_EVENT_DOWN);
  2130.             SetKeyHandler(T9Key2PressHandlerForEMSInputBox, KEY_2, KEY_EVENT_DOWN);
  2131.             SetKeyHandler(T9Key3PressHandlerForEMSInputBox, KEY_3, KEY_EVENT_DOWN);
  2132.             SetKeyHandler(T9Key4PressHandlerForEMSInputBox, KEY_4, KEY_EVENT_DOWN);
  2133.             SetKeyHandler(T9Key5PressHandlerForEMSInputBox, KEY_5, KEY_EVENT_DOWN);
  2134.             SetKeyHandler(T9Key6PressHandlerForEMSInputBox, KEY_6, KEY_EVENT_DOWN);
  2135.             SetKeyHandler(T9Key7PressHandlerForEMSInputBox, KEY_7, KEY_EVENT_DOWN);
  2136.             SetKeyHandler(T9Key8PressHandlerForEMSInputBox, KEY_8, KEY_EVENT_DOWN);
  2137.             SetKeyHandler(T9Key9PressHandlerForEMSInputBox, KEY_9, KEY_EVENT_DOWN);
  2138.             wgui_set_EMS_inputbox_RSK();
  2139.             set_right_softkey_function(UI_dummy_function, KEY_EVENT_DOWN);
  2140.             set_right_softkey_function(UI_dummy_function, KEY_EVENT_LONG_PRESS);
  2141.         #if !defined(__MMI_TOUCH_SCREEN__)
  2142.             T9SynT9WithInputBoxForEMSInputBox();
  2143.             T9ScreenStateChnageForEMSInputBox();
  2144.             T9InputBoxDisplayForEMSInputBox();
  2145.         #else /* !defined(__MMI_TOUCH_SCREEN__) */ 
  2146.             register_EMS_inputbox_keys();
  2147.             wgui_set_EMS_inputbox_RSK();
  2148.         #endif /* !defined(__MMI_TOUCH_SCREEN__) */ 
  2149.         #elif defined __MMI_ZI__
  2150.         case INPUT_MODE_TR_BOPOMO:
  2151.         case INPUT_MODE_SM_PINYIN:
  2152.         case INPUT_MODE_TR_STROKE:
  2153.         case INPUT_MODE_SM_STROKE:
  2154.         case INPUT_MODE_SMART_UPPERCASE_ABC:
  2155.         case INPUT_MODE_SMART_LOWERCASE_ABC:
  2156.         case INPUT_MODE_TR_MULTITAP_BOPOMO:
  2157.         case INPUT_MODE_SM_MULTITAP_PINYIN:
  2158.         case INPUT_MODE_SMART_THAI:
  2159.             /* MTK Elvis for R2L characters */
  2160.         case INPUT_MODE_SMART_ARABIC:
  2161. //PMT START PERSIAN
  2162.         case INPUT_MODE_SMART_PERSIAN:
  2163. //PMT END PERSIAN
  2164.         case INPUT_MODE_SMART_HINDI:
  2165.         case INPUT_MODE_SMART_HEBREW:
  2166.         case INPUT_MODE_SMART_UPPERCASE_SPANISH:
  2167.         case INPUT_MODE_SMART_LOWERCASE_SPANISH:
  2168.         #if defined(__MMI_T9_DANISH__) || defined(__MMI_ZI_DANISH__)    /* Danish-Vikas */
  2169.         case INPUT_MODE_SMART_UPPERCASE_DANISH:
  2170.         case INPUT_MODE_SMART_LOWERCASE_DANISH:
  2171.         #endif /* defined(__MMI_T9_DANISH__) || defined(__MMI_ZI_DANISH__) */ 
  2172.         case INPUT_MODE_SMART_UPPERCASE_POLISH:
  2173.         case INPUT_MODE_SMART_LOWERCASE_POLISH:
  2174.         case INPUT_MODE_SMART_UPPERCASE_NORWEGIAN:
  2175.         case INPUT_MODE_SMART_LOWERCASE_NORWEGIAN:
  2176.         case INPUT_MODE_SMART_UPPERCASE_FRENCH:
  2177.         case INPUT_MODE_SMART_LOWERCASE_FRENCH:
  2178.         case INPUT_MODE_SMART_UPPERCASE_GERMAN:
  2179.         case INPUT_MODE_SMART_LOWERCASE_GERMAN:
  2180.         case INPUT_MODE_SMART_UPPERCASE_ITALIAN:
  2181.         case INPUT_MODE_SMART_LOWERCASE_ITALIAN:
  2182.         case INPUT_MODE_SMART_UPPERCASE_RUSSIAN:
  2183.         case INPUT_MODE_SMART_LOWERCASE_RUSSIAN:
  2184.         case INPUT_MODE_SMART_UPPERCASE_BULGARIAN:
  2185.         case INPUT_MODE_SMART_LOWERCASE_BULGARIAN:
  2186.         case INPUT_MODE_SMART_UPPERCASE_TURKISH:
  2187.         case INPUT_MODE_SMART_LOWERCASE_TURKISH:
  2188.         case INPUT_MODE_SMART_UPPERCASE_PORTUGUESE:
  2189.         case INPUT_MODE_SMART_LOWERCASE_PORTUGUESE:
  2190.         case INPUT_MODE_SMART_UPPERCASE_INDONESIAN:
  2191.         case INPUT_MODE_SMART_LOWERCASE_INDONESIAN:
  2192.         case INPUT_MODE_SMART_UPPERCASE_CZECH:
  2193.         case INPUT_MODE_SMART_LOWERCASE_CZECH:
  2194.         case INPUT_MODE_SMART_UPPERCASE_MALAY:
  2195.         case INPUT_MODE_SMART_LOWERCASE_MALAY:
  2196.         case INPUT_MODE_SMART_UPPERCASE_VIETNAMESE:
  2197.         case INPUT_MODE_SMART_LOWERCASE_VIETNAMESE:
  2198.         #if defined(__MMI_ZI_FINNISH__)
  2199.         case INPUT_MODE_SMART_UPPERCASE_FINNISH:
  2200.         case INPUT_MODE_SMART_LOWERCASE_FINNISH:
  2201.         #endif /* defined(__MMI_ZI_FINNISH__) */ 
  2202.         #if defined(__MMI_ZI_HUNGARIAN__)
  2203.         case INPUT_MODE_SMART_UPPERCASE_HUNGARIAN:  
  2204.         case INPUT_MODE_SMART_LOWERCASE_HUNGARIAN:  
  2205.         #endif /* defined(__MMI_ZI_HUNGARIAN__) */ 
  2206.         #if defined(__MMI_ZI_SLOVAK__)
  2207.         case INPUT_MODE_SMART_UPPERCASE_SLOVAK:
  2208.         case INPUT_MODE_SMART_LOWERCASE_SLOVAK:
  2209.         #endif /* defined(__MMI_ZI_SLOVAK__) */ 
  2210.         #if defined(__MMI_ZI_DUTCH__)
  2211.         case INPUT_MODE_SMART_UPPERCASE_DUTCH:
  2212.         case INPUT_MODE_SMART_LOWERCASE_DUTCH:
  2213.         #endif /* defined(__MMI_ZI_DUTCH__) */ 
  2214.         #if defined(__MMI_ZI_SWEDISH__)
  2215.         case INPUT_MODE_SMART_UPPERCASE_SWEDISH:
  2216.         case INPUT_MODE_SMART_LOWERCASE_SWEDISH:
  2217.         #endif /* defined(__MMI_ZI_SWEDISH__) */ 
  2218.         #if defined(__MMI_ZI_CROATIAN__)
  2219.         case INPUT_MODE_SMART_UPPERCASE_CROATIAN:
  2220.         case INPUT_MODE_SMART_LOWERCASE_CROATIAN:
  2221.         #endif /* defined(__MMI_ZI_CROATIAN__) */ 
  2222.         #if defined(__MMI_ZI_ROMANIAN__)
  2223.         case INPUT_MODE_SMART_UPPERCASE_ROMANIAN:
  2224.         case INPUT_MODE_SMART_LOWERCASE_ROMANIAN:
  2225.         #endif /* defined(__MMI_ZI_ROMANIAN__) */ 
  2226.         #if defined(__MMI_ZI_SLOVENIAN__)
  2227.         case INPUT_MODE_SMART_UPPERCASE_SLOVENIAN:
  2228.         case INPUT_MODE_SMART_LOWERCASE_SLOVENIAN:
  2229.         #endif /* defined(__MMI_ZI_SLOVENIAN__) */ 
  2230.         #if defined(__MMI_ZI_GREEK__)
  2231.         case INPUT_MODE_SMART_UPPERCASE_GREEK:
  2232.         case INPUT_MODE_SMART_LOWERCASE_GREEK:
  2233.         #endif /* defined(__MMI_ZI_GREEK__) */ 
  2234.             ZiChangeInputMethod((INPUT_MODE) mode);
  2235.             ZiClearKeyStarAndPoundHandler();
  2236.             ZiClearKeyNavigationHandler();
  2237.             ZiClearKey0To9Handler();
  2238.             /* set key arrow handler */
  2239.             SetKeyHandler(ZiKeyArrowUPHandler, KEY_UP_ARROW, KEY_EVENT_DOWN);
  2240.             SetKeyHandler(ZiKeyArrowRightHandler, KEY_RIGHT_ARROW, KEY_EVENT_DOWN);
  2241.             SetKeyHandler(ZiKeyArrowDownHandler, KEY_DOWN_ARROW, KEY_EVENT_DOWN);
  2242.             SetKeyHandler(ZiKeyArrowLeftHandler, KEY_LEFT_ARROW, KEY_EVENT_DOWN);
  2243.             SetKeyHandler(ZiKey0PressHandler, KEY_0, KEY_EVENT_DOWN);
  2244.             SetKeyHandler(ZiKey1PressHandler, KEY_1, KEY_EVENT_DOWN);
  2245.             SetKeyHandler(ZiKey2PressHandler, KEY_2, KEY_EVENT_DOWN);
  2246.             SetKeyHandler(ZiKey3PressHandler, KEY_3, KEY_EVENT_DOWN);
  2247.             SetKeyHandler(ZiKey4PressHandler, KEY_4, KEY_EVENT_DOWN);
  2248.             SetKeyHandler(ZiKey5PressHandler, KEY_5, KEY_EVENT_DOWN);
  2249.             SetKeyHandler(ZiKey6PressHandler, KEY_6, KEY_EVENT_DOWN);
  2250.             SetKeyHandler(ZiKey7PressHandler, KEY_7, KEY_EVENT_DOWN);
  2251.             SetKeyHandler(ZiKey8PressHandler, KEY_8, KEY_EVENT_DOWN);
  2252.             SetKeyHandler(ZiKey9PressHandler, KEY_9, KEY_EVENT_DOWN);
  2253.             /* MTK Terry For RSK Display */
  2254.             handle_category28_input();
  2255.             /* register the star and hash key handkers */
  2256.             SetKeyHandler(EntrySymbolPickerScreen, KEY_STAR, KEY_EVENT_DOWN);
  2257.             /* W06.09 Touch Screen With Keypad V1 */
  2258.         #if !defined(__MMI_TOUCH_SCREEN__)
  2259.             SetKeyHandler(handle_category28_change_input_mode, KEY_POUND, KEY_EVENT_DOWN);
  2260.             ZiDisplay();
  2261.         #else /* !defined(__MMI_TOUCH_SCREEN__) */ 
  2262.             register_EMS_inputbox_keys();
  2263.             wgui_set_EMS_inputbox_RSK();
  2264.         #endif /* !defined(__MMI_TOUCH_SCREEN__) */ 
  2265. //KP Jerry add on 2007-3-8 start
  2266. #elif defined __MMI_CSTAR__
  2267.         #if defined(__MMI_CSTAR_TR_CHINESE__)
  2268.         case INPUT_MODE_TR_BOPOMO:
  2269.         case INPUT_MODE_TR_STROKE:
  2270.         #endif
  2271.         #if defined(__MMI_CSTAR_SM_CHINESE__)
  2272.         case INPUT_MODE_SM_PINYIN:
  2273.         case INPUT_MODE_SM_STROKE:
  2274.         #endif
  2275.         case INPUT_MODE_SMART_UPPERCASE_ABC:
  2276.         case INPUT_MODE_SMART_LOWERCASE_ABC:
  2277.         #if defined(__MMI_CSTAR_THAI__)
  2278.         case INPUT_MODE_SMART_THAI:
  2279.         #endif
  2280.         #if defined(__MMI_CSTAR_SPANISH__)
  2281.         case INPUT_MODE_SMART_UPPERCASE_SPANISH:
  2282.         case INPUT_MODE_SMART_LOWERCASE_SPANISH:
  2283.         #endif
  2284.         #if defined(__MMI_CSTAR_HEBREW__)
  2285.         case INPUT_MODE_SMART_HEBREW:
  2286.         #endif
  2287.         #if defined(__MMI_CSTAR_DANISH__)
  2288.         case INPUT_MODE_SMART_UPPERCASE_DANISH:
  2289.         case INPUT_MODE_SMART_LOWERCASE_DANISH:
  2290.         #endif
  2291.         #if defined(__MMI_CSTAR_POLISH__)
  2292.         case INPUT_MODE_SMART_UPPERCASE_POLISH:
  2293.         case INPUT_MODE_SMART_LOWERCASE_POLISH:
  2294.         #endif
  2295.         #if defined(__MMI_CSTAR_FRENCH__)
  2296.         case INPUT_MODE_SMART_UPPERCASE_FRENCH:
  2297.         case INPUT_MODE_SMART_LOWERCASE_FRENCH:
  2298.         #endif
  2299.         #if defined(__MMI_CSTAR_GERMAN__)
  2300.         case INPUT_MODE_SMART_UPPERCASE_GERMAN:
  2301.         case INPUT_MODE_SMART_LOWERCASE_GERMAN:
  2302.         #endif
  2303.         #if defined(__MMI_CSTAR_ITALIAN__)
  2304.         case INPUT_MODE_SMART_UPPERCASE_ITALIAN:
  2305.         case INPUT_MODE_SMART_LOWERCASE_ITALIAN:
  2306.         #endif
  2307.         #if defined(__MMI_CSTAR_VIETNAMESE__)
  2308.         case INPUT_MODE_SMART_UPPERCASE_VIETNAMESE:
  2309.         case INPUT_MODE_SMART_LOWERCASE_VIETNAMESE:
  2310.         #endif 
  2311.         #if defined(__MMI_CSTAR_INDONESIAN__)
  2312.         case INPUT_MODE_SMART_UPPERCASE_INDONESIAN:
  2313.         case INPUT_MODE_SMART_LOWERCASE_INDONESIAN:
  2314.         #endif 
  2315.         #if defined(__MMI_CSTAR_TURKISH__)
  2316.         case INPUT_MODE_SMART_UPPERCASE_TURKISH:
  2317.         case INPUT_MODE_SMART_LOWERCASE_TURKISH:
  2318.         #endif 
  2319.         #if defined(__MMI_CSTAR_CZECH__)
  2320.         case INPUT_MODE_SMART_UPPERCASE_CZECH:
  2321.         case INPUT_MODE_SMART_LOWERCASE_CZECH:
  2322.         #endif 
  2323.         #if defined(__MMI_CSTAR_RUSSIAN__)
  2324.         case INPUT_MODE_SMART_UPPERCASE_RUSSIAN:
  2325.         case INPUT_MODE_SMART_LOWERCASE_RUSSIAN:
  2326.         #endif 
  2327.         #if defined(__MMI_CSTAR_BULGARIAN__)
  2328.         case INPUT_MODE_SMART_UPPERCASE_BULGARIAN:
  2329.         case INPUT_MODE_SMART_LOWERCASE_BULGARIAN:
  2330.         #endif 
  2331.         #if defined(__MMI_CSTAR_PORTUGUESE__)
  2332.         case INPUT_MODE_SMART_UPPERCASE_PORTUGUESE:
  2333.         case INPUT_MODE_SMART_LOWERCASE_PORTUGUESE:
  2334.         #endif 
  2335.         #if defined(__MMI_CSTAR_FINNISH__)
  2336.         case INPUT_MODE_SMART_UPPERCASE_FINNISH:
  2337.         case INPUT_MODE_SMART_LOWERCASE_FINNISH:
  2338.         #endif 
  2339.         #if defined(__MMI_CSTAR_HUNGARIAN__)
  2340.         case INPUT_MODE_SMART_UPPERCASE_HUNGARIAN:
  2341.         case INPUT_MODE_SMART_LOWERCASE_HUNGARIAN:
  2342.         #endif 
  2343.         #if defined(__MMI_CSTAR_ARABIC__)
  2344.         case INPUT_MODE_SMART_ARABIC:
  2345.         #endif 
  2346.         #if defined(__MMI_CSTAR_HINDI__)
  2347.         case INPUT_MODE_SMART_HINDI:
  2348.         #endif 
  2349.         #if defined(__MMI_CSTAR_NORWEGIAN__)
  2350.         case INPUT_MODE_SMART_UPPERCASE_NORWEGIAN:
  2351.         case INPUT_MODE_SMART_LOWERCASE_NORWEGIAN:
  2352.         #endif 
  2353.         #if defined(__MMI_CSTAR_DUTCH__)
  2354.         case INPUT_MODE_SMART_UPPERCASE_DUTCH:
  2355.         case INPUT_MODE_SMART_LOWERCASE_DUTCH:
  2356.         #endif 
  2357.         #if defined(__MMI_CSTAR_SLOVENIAN__)
  2358.         case INPUT_MODE_SMART_UPPERCASE_SLOVENIAN:
  2359.         case INPUT_MODE_SMART_LOWERCASE_SLOVENIAN:
  2360.         #endif 
  2361.         #if defined(__MMI_CSTAR_SWEDISH__)
  2362.         case INPUT_MODE_SMART_UPPERCASE_SWEDISH:
  2363.         case INPUT_MODE_SMART_LOWERCASE_SWEDISH:
  2364.         #endif 
  2365.         #if defined(__MMI_CSTAR_GREEK__)
  2366.         case INPUT_MODE_SMART_UPPERCASE_GREEK:
  2367.         case INPUT_MODE_SMART_LOWERCASE_GREEK:
  2368.         #endif 
  2369.         #if defined(__MMI_CSTAR_MALAY__)
  2370.         case INPUT_MODE_SMART_UPPERCASE_MALAY:
  2371.         case INPUT_MODE_SMART_LOWERCASE_MALAY:
  2372.         #endif 
  2373.         #if defined(__MMI_CSTAR_CROATIAN__)
  2374.         case INPUT_MODE_SMART_UPPERCASE_CROATIAN:
  2375.         case INPUT_MODE_SMART_LOWERCASE_CROATIAN:
  2376.         #endif 
  2377.         #if defined(__MMI_CSTAR_SLOVAK__)
  2378.         case INPUT_MODE_SMART_UPPERCASE_SLOVAK:
  2379.         case INPUT_MODE_SMART_LOWERCASE_SLOVAK:
  2380.         #endif 
  2381.         #if defined(__MMI_CSTAR_ROMANIAN__)
  2382.         case INPUT_MODE_SMART_UPPERCASE_ROMANIAN:
  2383.         case INPUT_MODE_SMART_LOWERCASE_ROMANIAN:
  2384.         #endif 
  2385.             CstarChangeInputMethod(mode);
  2386.             CstarClearKeyStarAndPoundHandler();
  2387.             CstarClearKeyNavigationHandler();
  2388.             CstarClearKey0To9Handler();
  2389.             SetKeyHandler(CstarKeyArrowUpHandler, KEY_UP_ARROW, KEY_EVENT_DOWN);
  2390.             SetKeyHandler(CstarKeyArrowRightHandler, KEY_RIGHT_ARROW, KEY_EVENT_DOWN);
  2391.             SetKeyHandler(CstarKeyArrowDownHandler, KEY_DOWN_ARROW, KEY_EVENT_DOWN);
  2392.             SetKeyHandler(CstarKeyArrowLeftHandler, KEY_LEFT_ARROW, KEY_EVENT_DOWN);
  2393.             SetKeyHandler(CstarKey0PressHandler, KEY_0, KEY_EVENT_DOWN);
  2394.             SetKeyHandler(CstarKey1PressHandler, KEY_1, KEY_EVENT_DOWN);
  2395.             SetKeyHandler(CstarKey2PressHandler, KEY_2, KEY_EVENT_DOWN);
  2396.             SetKeyHandler(CstarKey3PressHandler, KEY_3, KEY_EVENT_DOWN);
  2397.             SetKeyHandler(CstarKey4PressHandler, KEY_4, KEY_EVENT_DOWN);
  2398.             SetKeyHandler(CstarKey5PressHandler, KEY_5, KEY_EVENT_DOWN);
  2399.             SetKeyHandler(CstarKey6PressHandler, KEY_6, KEY_EVENT_DOWN);
  2400.             SetKeyHandler(CstarKey7PressHandler, KEY_7, KEY_EVENT_DOWN);
  2401.             SetKeyHandler(CstarKey8PressHandler, KEY_8, KEY_EVENT_DOWN);
  2402.             SetKeyHandler(CstarKey9PressHandler, KEY_9, KEY_EVENT_DOWN);
  2403.             set_left_softkey_function(CstarKeyLSKPressHandler, KEY_EVENT_DOWN);
  2404.             #if defined(__MMI_WITH_C_KEY__)
  2405.                 SetKeyHandler(CstarKeyRSKPressHandler, KEY_CLEAR, KEY_EVENT_DOWN);
  2406.                 SetKeyHandler(UI_dummy_function, KEY_CLEAR, KEY_EVENT_UP);
  2407.                 SetKeyHandler(CstarKeyRSKLongPressHandler, KEY_CLEAR, KEY_EVENT_LONG_PRESS);
  2408.                 set_right_softkey_function(GoBackHistory, KEY_EVENT_DOWN);
  2409.             #else
  2410.                 set_right_softkey_function(CstarKeyRSKPressHandler, KEY_EVENT_DOWN);
  2411.                 set_right_softkey_function(CstarKeyRSKLongPressHandler, KEY_EVENT_LONG_PRESS);
  2412.             #endif
  2413.             #if defined(__MMI_TOUCH_SCREEN__)
  2414.                 register_EMS_inputbox_keys();
  2415.                 wgui_set_EMS_inputbox_RSK();
  2416.                 SetKeyHandler(EntrySymbolPickerScreen, KEY_STAR, KEY_EVENT_DOWN);
  2417.                 SetKeyHandler(mmi_pen_editor_switch_input_method, KEY_POUND, KEY_EVENT_DOWN);
  2418.             #else
  2419.                 SetKeyHandler(CstarKeyStarPressHandler, KEY_STAR, KEY_EVENT_DOWN);
  2420.                 SetKeyHandler(handle_category28_change_input_mode, KEY_POUND, KEY_EVENT_DOWN);
  2421.             #endif
  2422.             CstarDisplay();
  2423. //KP Jerry add on 2007-3-8 end
  2424.         #elif defined __MMI_KA__
  2425.         case INPUT_MODE_SM_PINYIN:
  2426.         case INPUT_MODE_SM_STROKE:
  2427.             KonkaChangeInputMethod(mode);
  2428.             KonkaClearKeyStarAndPoundHandler();
  2429.             KonkaClearKeyNavigationHandler();
  2430.             KonkaClearKey0To9Handler();
  2431.             clear_right_softkey();
  2432.             clear_left_softkey();
  2433.             /* set key arrow handler */
  2434.             SetKeyHandler(KonkaKeyArrowUPHandler, KEY_UP_ARROW, KEY_EVENT_DOWN);
  2435.             SetKeyHandler(KonkaKeyArrowRightHandler, KEY_RIGHT_ARROW, KEY_EVENT_DOWN);
  2436.             SetKeyHandler(KonkaKeyArrowDownHandler, KEY_DOWN_ARROW, KEY_EVENT_DOWN);
  2437.             SetKeyHandler(KonkaKeyArrowLeftHandler, KEY_LEFT_ARROW, KEY_EVENT_DOWN);
  2438.             /* register_key_down_handler(T9Key0To9HandlerForEMSInputBox); */
  2439.             SetKeyHandler(KonkaKey0PressHandler, KEY_0, KEY_EVENT_DOWN);
  2440.             SetKeyHandler(KonkaKey1PressHandler, KEY_1, KEY_EVENT_DOWN);
  2441.             SetKeyHandler(KonkaKey2PressHandler, KEY_2, KEY_EVENT_DOWN);
  2442.             SetKeyHandler(KonkaKey3PressHandler, KEY_3, KEY_EVENT_DOWN);
  2443.             SetKeyHandler(KonkaKey4PressHandler, KEY_4, KEY_EVENT_DOWN);
  2444.             SetKeyHandler(KonkaKey5PressHandler, KEY_5, KEY_EVENT_DOWN);
  2445.             SetKeyHandler(KonkaKey6PressHandler, KEY_6, KEY_EVENT_DOWN);
  2446.             SetKeyHandler(KonkaKey7PressHandler, KEY_7, KEY_EVENT_DOWN);
  2447.             SetKeyHandler(KonkaKey8PressHandler, KEY_8, KEY_EVENT_DOWN);
  2448.             SetKeyHandler(KonkaKey9PressHandler, KEY_9, KEY_EVENT_DOWN);
  2449.             /* register the star and hash key handkers */
  2450.             SetKeyHandler(EntrySymbolPickerScreen, KEY_STAR, KEY_EVENT_DOWN);
  2451.             SetKeyHandler(handle_category28_change_input_mode, KEY_POUND, KEY_EVENT_DOWN);
  2452.             /* register the L and R softkey handlers */
  2453.             set_right_softkey_function(KonkaKeyRSKPressHandler, KEY_EVENT_DOWN);
  2454.             set_right_softkey_function(KonkaKeyRSKLongPressHandler, KEY_EVENT_LONG_PRESS);
  2455.             set_left_softkey_function(KonkaKeyLSKPressHandler, KEY_EVENT_UP);
  2456.             set_left_softkey_function(KonkaKeyLSKLongPressHandler, KEY_EVENT_LONG_PRESS);
  2457.             KonkaDisplay();
  2458.         #elif defined __MMI_ITAP__
  2459. /* under construction !*/
  2460. /* under construction !*/
  2461. /* under construction !*/
  2462. /* under construction !*/
  2463. /* under construction !*/
  2464. /* under construction !*/
  2465. /* under construction !*/
  2466. /* under construction !*/
  2467. /* under construction !*/
  2468. /* under construction !*/
  2469. /* under construction !*/
  2470. /* under construction !*/
  2471. /* under construction !*/
  2472. /* under construction !*/
  2473. /* under construction !*/
  2474. /* under construction !*/
  2475. /* under construction !*/
  2476. /* under construction !*/
  2477. /* under construction !*/
  2478. /* under construction !*/
  2479. /* under construction !*/
  2480. /* under construction !*/
  2481. /* under construction !*/
  2482. /* under construction !*/
  2483. /* under construction !*/
  2484. /* under construction !*/
  2485. /* under construction !*/
  2486. /* under construction !*/
  2487. /* under construction !*/
  2488. /* under construction !*/
  2489. /* under construction !*/
  2490.         #endif 
  2491.             break;
  2492.     }
  2493. #if !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__)
  2494. #else /* !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__) */ 
  2495.     if (wgui_EMS_inputbox_handle_symbol_picker_star_key == currKeyFuncPtrs[KEY_STAR][KEY_EVENT_DOWN])
  2496.     {
  2497.         ClearKeyHandler(KEY_STAR, KEY_EVENT_DOWN);
  2498.         /* W05.41 Long Press Key * to select symbols when __MMI_MULTITAP_FOR_STAR_AND_POUND__ */
  2499.         SetKeyHandler(wgui_EMS_inputbox_handle_symbol_picker_star_key, KEY_STAR, KEY_LONG_PRESS);
  2500.     }
  2501.     SetKeyHandler(handle_category28_change_input_mode, KEY_POUND, KEY_REPEAT);
  2502. #endif /* !defined(__MMI_MULTITAP_FOR_STAR_AND_POUND__) */ 
  2503. }
  2504. /*****************************************************************************
  2505.  * FUNCTION
  2506.  *  change_EMS_inputbox_input_mode
  2507.  * DESCRIPTION
  2508.  *  
  2509.  * PARAMETERS
  2510.  *  void
  2511.  * RETURNS
  2512.  *  void
  2513.  *****************************************************************************/
  2514. void change_EMS_inputbox_input_mode(void)
  2515. {
  2516.     /*----------------------------------------------------------------*/
  2517.     /* Local Variables                                                */
  2518.     /*----------------------------------------------------------------*/
  2519.     /*----------------------------------------------------------------*/
  2520.     /* Code Body                                                      */
  2521.     /*----------------------------------------------------------------*/
  2522.     change_EMS_inputbox_mode(MMI_current_input_mode);
  2523. }