📄 zi8hmi.c
字号:
case INPUT_EZI_CZECH:
IMEmethodLast = IMEmethod;
break;
case INPUT_EZI_FINNISH:
IMEmethodLast = IMEmethod;
break;
case INPUT_EZI_DANISH:
IMEmethodLast = IMEmethod;
break;
case INPUT_EZI_HUNGARIAN:
IMEmethodLast = IMEmethod;
break;
case INPUT_EZI_VIETNAMESE:
IMEmethodLast = IMEmethod;
break;
case INPUT_EZI_INDONESIAN:
IMEmethodLast = IMEmethod;
break;
}
IMElastLetterCase = IMEletterCase;
IMElastSubLanguage = IMEsubLanguage;
return (ZI8TRUE);
}
/*****************************************************************************
* FUNCTION
* IMEinsertText
* DESCRIPTION
*
* PARAMETERS
* pText [IN]
* RETURNS
*
*****************************************************************************/
static int IMEinsertText(PZI8WCHAR pText)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
int i;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
for (i = 0; pText[i]; i++)
{
if (!IMEinsertChar(pText[i]))
{
break;
}
}
return (i);
}
/*****************************************************************************
* FUNCTION
* IMEtoCapMode
* DESCRIPTION
*
* PARAMETERS
* pText [IN]
* RETURNS
* void
*****************************************************************************/
static void IMEtoCapMode(PZI8WCHAR pText)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
int i = 0;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
if (IMEletterCase == ZI8_CASE_TITLE)
{
pText[0] = ZI_towupper(pText[0]);
for (; pText[i]; i++)
{
if (pText[i] == 0x0020)
{
if (!pText[++i])
{
return;
}
pText[i] = ZI_towupper(pText[i]);
}
else if (i)
{
/*
* #ifdef WIN32
* if((pText[i] >= 0x0430 && pText[i] <= 0x044f)||(pText[i] >= 0x00e0 && pText[i] <= 0x00ff))
* {
* pText[i]-=0x20;
* }
* #endif
*/
pText[i] = ZI_towlower(pText[i]);
}
}
return;
}
for (; pText[i]; i++)
{
switch (IMEletterCase)
{
case ZI8_CASE_UPPER:
/*
* #ifdef WIN32
* if((pText[i] >= 0x0430 && pText[i] <= 0x044f)||(pText[i] >= 0x00e0 && pText[i] <= 0x00ff))
* {
* pText[i]-=0x20;
* }
* #endif
*/
pText[i] = ZI_towupper(pText[i]);
break;
case ZI8_CASE_LOWER:
break;
default:
break;
}
}
}
/*****************************************************************************
* FUNCTION
* IMEchangeInputMethod
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
static void IMEchangeInputMethod(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
/* IMElastProcessKeyFunc = 0; */
IMEletterCase = IMElastLetterCase;
IMEsubLanguage = IMElastSubLanguage;
switch (IMEmethod)
{
case INPUT_EZI_STROKE:
IMEstartEZI_STROKE();
break;
case INPUT_EZI_PINYIN:
iStepID = PHONETIC_2_STEPS;
IMEstartEZI_PINYIN();
break;
case INPUT_EZI_BOPOMOFO:
iStepID = PHONETIC_2_STEPS;
IMEstartEZI_BOPOMOFO();
break;
case INPUT_EZI_ABC:
IMEalphaLangID = ALPHA_LANG_EN;
IMEstartEZI_ABC();
break;
case INPUT_EZI_MULTITAP_PINYIN:
iStepID = PHONETIC_MULTITAP;
IMEstartEZI_MULTITAP_PINYIN();
break;
case INPUT_EZI_MULTITAP_BOPOMOFO:
iStepID = PHONETIC_MULTITAP;
IMEstartEZI_MULTITAP_BOPOMOFO();
break;
case INPUT_EZI_THAI:
IMEstartEZI_THAI();
break;
#ifdef __MMI_ZI_ARABIC__ /* can be remove while checking Arabic into GPRS branch */
case INPUT_EZI_ARABIC:
IMEstartEZI_ARABIC();
break;
#endif /* __MMI_ZI_ARABIC__ */
#ifdef __MMI_ZI_PERSIAN__ /* can be remove while checking PERSIAN into GPRS branch */
case INPUT_EZI_PERSIAN:
IMEstartEZI_PERSIAN();
break;
#endif /* __MMI_ZI_PERSIAN__ */
/* PMT START GR_HE_CZ_FI_DA_HU 20051007 */
#ifdef __MMI_ZI_HEBREW__ /* can be remove while checking Arabic into GPRS branch */
case INPUT_EZI_HEBREW:
IMEstartEZI_HEBREW();
break;
#endif /* __MMI_ZI_HEBREW__ */
#if defined(__MMI_ZI_RUSSIAN__) || defined(__MMI_ZI_RECOMMENDED_SIZE_RUSSIAN__)
case INPUT_EZI_RUSSIAN:
IMEalphaLangID = ALPHA_LANG_RU;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_RUSSIAN__) || defined(__MMI_ZI_RECOMMENDED_SIZE_RUSSIAN__) */
#if defined(__MMI_ZI_BULGARIAN__)
case INPUT_EZI_BULGARIAN:
IMEalphaLangID = ALPHA_LANG_BG;
IMEstartEZI_ABC();
break;
#endif
#if defined(__MMI_ZI_CA_FRENCH__) || defined(__MMI_ZI_EU_FRENCH__)
case INPUT_EZI_FRENCH:
IMEalphaLangID = ALPHA_LANG_FR;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_CA_FRENCH__) || defined(__MMI_ZI_EU_FRENCH__) */
#if defined(__MMI_ZI_GERMAN__)
case INPUT_EZI_GERMAN:
IMEalphaLangID = ALPHA_LANG_DE;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_GERMAN__) */
#if defined(__MMI_ZI_ITALIAN__)
case INPUT_EZI_ITALIAN:
IMEalphaLangID = ALPHA_LANG_IT;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_ITALIAN__) */
#if defined(__MMI_ZI_EU_SPANISH__) || defined(__MMI_ZI_SA_SPANISH__)
case INPUT_EZI_SPANISH:
IMEalphaLangID = ALPHA_LANG_ES;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_EU_SPANISH__) || defined(__MMI_ZI_SA_SPANISH__) */
#if defined(__MMI_ZI_TURKISH__)
case INPUT_EZI_TURKISH:
IMEalphaLangID = ALPHA_LANG_TR;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_TURKISH__) */
#if defined(__MMI_ZI_HINDI__)
case INPUT_EZI_HINDI:
IMEalphaLangID = ALPHA_LANG_HI;
IMEstartEZI_HINDI();
break;
#endif /* defined(__MMI_ZI_HINDI__) */
#if defined(__MMI_ZI_EU_PORTUGUESE__) || defined(__MMI_ZI_SA_PORTUGUESE__) || defined(__MMI_ZI_BZ_PORTUGUESE__)
case INPUT_EZI_PORTUGUESE:
IMEalphaLangID = ALPHA_LANG_PT;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_EU_PORTUGUESE__) || defined(__MMI_ZI_SA_PORTUGUESE__) || defined(__MMI_ZI_BZ_PORTUGUESE__) */
#if defined(__MMI_ZI_INDONESIAN__)
case INPUT_EZI_INDONESIAN:
IMEalphaLangID = ALPHA_LANG_ID;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_INDONESIAN__) */
#if defined(__MMI_ZI_MALAY__)
case INPUT_EZI_MALAY:
IMEalphaLangID = ALPHA_LANG_MS;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_MALAY__) */
#if defined(__MMI_ZI_VIETNAMESE__)
case INPUT_EZI_VIETNAMESE:
IMEalphaLangID = ALPHA_LANG_VI;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_VIETNAMESE__) */
#if defined(__MMI_ZI_POLISH__)
case INPUT_EZI_POLISH:
IMEalphaLangID = ALPHA_LANG_PL;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_POLISH__) */
#if defined(__MMI_ZI_NORWEGIAN__)
case INPUT_EZI_NORWEGIAN:
IMEalphaLangID = ALPHA_LANG_NO;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_NORWEGIAN__) */
#if defined(__MMI_ZI_SLOVAK__)
case INPUT_EZI_SLOVAK:
IMEalphaLangID = ALPHA_LANG_SK;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_SLOVAK__) */
#if defined(__MMI_ZI_DUTCH__)
case INPUT_EZI_DUTCH:
IMEalphaLangID = ALPHA_LANG_NL;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_DUTCH__) */
#if defined(__MMI_ZI_SWEDISH__)
case INPUT_EZI_SWEDISH:
IMEalphaLangID = ALPHA_LANG_SV;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_SWEDISH__) */
#if defined(__MMI_ZI_CROATIAN__)
case INPUT_EZI_CROATIAN:
IMEalphaLangID = ALPHA_LANG_HR;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_CROATIAN__) */
#if defined(__MMI_ZI_ROMANIAN__)
case INPUT_EZI_ROMANIAN:
IMEalphaLangID = ALPHA_LANG_RO;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_ROMANIAN__) */
#if defined(__MMI_ZI_SLOVENIAN__)
case INPUT_EZI_SLOVENIAN:
IMEalphaLangID = ALPHA_LANG_SL;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_SLOVENIAN__) */
#if defined(__MMI_ZI_GREEK__)
case INPUT_EZI_GREEK:
IMEalphaLangID = ALPHA_LANG_EL;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_GREEK__) */
#if defined(__MMI_ZI_CZECH__)
case INPUT_EZI_CZECH:
IMEalphaLangID = ALPHA_LANG_CZ;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_CZECH__) */
#if defined(__MMI_ZI_FINNISH__)
case INPUT_EZI_FINNISH:
IMEalphaLangID = ALPHA_LANG_FI;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_FINNISH__) */
#if defined(__MMI_ZI_DANISH__)
case INPUT_EZI_DANISH:
IMEalphaLangID = ALPHA_LANG_DA;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_DANISH__) */
#if defined(__MMI_ZI_HUNGARIAN__)
case INPUT_EZI_HUNGARIAN:
IMEalphaLangID = ALPHA_LANG_HU;
IMEstartEZI_ABC();
break;
#endif /* defined(__MMI_ZI_HUNGARIAN__) */
}
}
/*****************************************************************************
* FUNCTION
* IMEchangeSubLanguage
* DESCRIPTION
*
* PARAMETERS
* bSetup [IN]
* RETURNS
*
*****************************************************************************/
static ZI8BOOL IMEchangeSubLanguage(ZI8BOOL bSetup)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
ZI8GETPARAM zi8GetParam;
ZI8WCHAR tmpCandBuffer[2];
int i;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
memset(&zi8GetParam, 0, sizeof(zi8GetParam));
zi8GetParam.Language = ZI8_LANG_ZH;
zi8GetParam.GetMode = ZI8_GETMODE_STROKES;
zi8GetParam.Context = ZI8_GETCONTEXT_SMS;
zi8GetParam.GetOptions = ZI8_GETOPTION_DEFAULT;
zi8GetParam.pCandidates = tmpCandBuffer;
zi8GetParam.MaxCandidates = 1;
zi8GetParam.SubLanguage = IMEsubLanguage;
if (bSetup)
{
if (!Zi8GetCandidates(&zi8GetParam))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -