⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 t9main.h

📁 T9输入发接口部分,配合前面发的MTK MMI部分的学习,可以将其移植到其它需要的嵌入式软件中.
💻 H
字号:
/*****************************************************************************
*  Copyright Statement:
*  --------------------
*  This software is protected by Copyright and the information contained
*  herein is confidential. The software may not be copied and the information
*  contained herein may not be used or disclosed except with the written
*  permission of MediaTek Inc. (C) 2005
*
*  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
*  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
*  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
*  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
*  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
*  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
*  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
*  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
*  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
*  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
*  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
*  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
*
*  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
*  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
*  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
*  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
*  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. 
*
*  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
*  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
*  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
*  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
*  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
*
*****************************************************************************/

/*****************************************************************************
 *
 * Filename:
 * ---------
 *    t9main.h
 *
 * Project:
 * --------
 *   Maui_Software
 *
 * Description:
 * ------------
 *   header files for T9main.c
 *   
 *
 * Author:
 * -------
 * -------
 *
 *============================================================================
 *             HISTORY
 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
 *------------------------------------------------------------------------------
 * removed!
 *
 *------------------------------------------------------------------------------
 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
 *============================================================================
 ****************************************************************************/  

#if !defined(__T9MAIN_H__)
#define __T9MAIN_H__

#include "MMI_features.h"

#if defined(__MMI_T9_V7__)
#include "t9.h"
#include "t9awapi.h"
#include "t9ccapi.h"
#include "t9api.h"
typedef union T9CCAWFieldInfo_u
{
   T9CCFieldInfo CCFieldInfo;
   T9AWFieldInfo AWFieldInfo;
} T9CCAWFieldInfo;
#else
#include "t9api.h"
#endif

T9MINOR  KeypadToT9Key(T9MINOR mmiKey);
void     DrawBPMFString(unsigned int iX, unsigned int iY, T9U8 *psStr );
void     DrawPinYinString(unsigned int iX, unsigned int iY, T9U8 *psStr );
void     DrawStrokeString(unsigned int iX, unsigned int iY, T9U8 *psStr );
T9U8     IsBPMFChar(T9U8 bChar);
T9U8     IsPinYinChar(T9U8 bChar);
T9U8     IsStrokeChar(T9U8 bChar);
T9U16    BPMFInternalToUnicode(T9U8 bChar);
T9U16    PinYinInternalToUnicode(T9U8 bChar);
T9U16    StrokeInternalToUnicode(T9U8 bChar);
void     DrawCharacter(unsigned int iDestX, unsigned int iDestY, T9SYMB sChar);
T9STATUS T9ChangeLanguage(T9U8 inputMethod);
//2004-04-27 Wilson, Move from T9ChangeLanguage() to outside function for other app.
void T9ChangeLanguageToSMChinesePinYin(void);
void T9ChangeLanguageToTRChineseBoPoMo(void);
void T9ChangeLanguageToSMChineseStroke(void);
void T9ChangeLanguageToTRChineseStroke(void);
void T9ClearKey0To9Handler(void);
void T9ClearKeyNavigationHandler(void);
void T9ClearKeyStarAndPoundHandler(void);
T9STATUS GetNextSymOnKey(T9FieldInfo* pFieldInfo, T9Request* pRequest);
void DrawTextWindow(void);
void DrawSelectionWindow(void);
void RemoveTimer(void* pOldTimer);
int RequestTimer(unsigned int iTime, void (*HandleTimeout)(void *iUnk), int iUnk);
void DrawSyllable(unsigned int iDestX,  unsigned int iDestY);
void T9ProcessErrorReturnCodes(T9STATUS   sStatus);


void InitInputMethod(void);
void T9EngineInit(T9U8 inputMethod);
void T9TrChineseInitialize(void);
void T9InputMethodExit(void);


void InuptMethodEnterInlineMultilineScreen(void);
void InuptMethodExitInlineMultilineScreen(void);
void InuptMethodEnterCategory5(void);
void InuptMethodExitCategory5(void);
void InuptMethodEnterCategory28(void);
void InuptMethodExitCategory28(void);
void T9SynT9WithInputBox(void);
void T9SetSpellingAndCandWindowCurrentTheme(void);



//multiline input box
void T9Key0PressHandlerMultilineInputBox(void);
void T9Key1PressHandlerMultilineInputBox(void);
void T9Key2PressHandlerMultilineInputBox(void);
void T9Key3PressHandlerMultilineInputBox(void);
void T9Key4PressHandlerMultilineInputBox(void);
void T9Key5PressHandlerMultilineInputBox(void);
void T9Key6PressHandlerMultilineInputBox(void);
void T9Key7PressHandlerMultilineInputBox(void);
void T9Key8PressHandlerMultilineInputBox(void);
void T9Key9PressHandlerMultilineInputBox(void);
void T9Key0To9HandlerMultilineInputBox(T9MINOR mmiKey, T9MINOR keyType);
void T9KeyArrowUPHandlerMultilineInputBox(void);
void T9KeyArrowRightHandlerMultilineInputBox(void);
void T9KeyArrowDownHandlerMultilineInputBox(void);
void T9KeyArrowLeftHandlerMultilineInputBox(void);
//PMT dara added for T9 thai default functionality of Pound key
void T9KeyPoundPressHandlerMultilineInputBox(void);
//PMT Dara added on 17/12/2k4
#ifdef MMI_LOW_MEMORY_PHONE
void T9KeyArrowUPLongPressHandlerMultilineInputBox(void);
void T9KeyArrowDownLongPressHandlerMultilineInputBox(void);
#endif 


void T9KeyArrowHandlerMultilineInputBox(T9MINOR mmiKey, T9MINOR keyType);
void T9KeyStarPressHandlerMultilineInputBox(void);
void T9InputBoxDisplayMultilineInputBox(void);
void T9ScreenStateChnageMultilineInputBox(void);
void T9KeyLSKSelectDesiredPhoneticHandlerMultilineInputBox(void);
void T9KeyLSKSelectCharHandlerMultilineInputBox(void);
void T9KeyRSKClearHandlerMultilineInputBox(void);
void T9KeyRSKBackSelectHandlerMultilineInputBox(void);
void T9KeyRSKBackSymbolHandlerMultilineInputBox(void);
void T9KeyRSKClearAllHandlerMultilineInputBox(void);
void T9ChangeLanguageMultilineInputBox(T9U8 inputMethod);
void T9SynT9WithInputBoxMultilineInputBox(void);
void T9TimeoutMultilineInputBox(void *iUnk);
T9U8 T9MaxLengthCheckMultilineInputBox(void);
void T9InputBoxDisplayEndFrameMultilineInputBox(void);
void T9HideCompositionArea(void);


//ems input box
void T9Key0PressHandlerForEMSInputBox(void);
void T9Key1PressHandlerForEMSInputBox(void);
void T9Key2PressHandlerForEMSInputBox(void);
void T9Key3PressHandlerForEMSInputBox(void);
void T9Key4PressHandlerForEMSInputBox(void);
void T9Key5PressHandlerForEMSInputBox(void);
void T9Key6PressHandlerForEMSInputBox(void);
void T9Key7PressHandlerForEMSInputBox(void);
void T9Key8PressHandlerForEMSInputBox(void);
void T9Key9PressHandlerForEMSInputBox(void);
void T9Key0To9HandlerForEMSInputBox(T9MINOR mmiKey, T9MINOR keyType);
void T9KeyArrowUPHandlerForEMSInputBox(void);
void T9KeyArrowRightHandlerForEMSInputBox(void);
void T9KeyArrowDownHandlerForEMSInputBox(void);
void T9KeyArrowLeftHandlerForEMSInputBox(void);
void T9KeyArrowHandlerForEMSInputBox(T9MINOR mmiKey, T9MINOR keyType);
void T9KeyStarPressHandlerForEMSInputBox(void);
void T9InputBoxDisplayForEMSInputBox(void);
void T9ScreenStateChnageForEMSInputBox(void);
void T9KeyLSKSelectDesiredPhoneticHandlerForEMSInputBox(void);
void T9KeyLSKSelectCharHandlerForEMSInputBox(void);
void T9KeyLSKSelectSymbolHandlerForEMSInputBox(void);
void T9KeyRSKClearHandlerForEMSInputBox(void);
void T9KeyRSKBackSelectHandlerForEMSInputBox(void);
void T9KeyRSKBackSymbolHandlerForEMSInputBox(void);
void T9KeyRSKClearAllHandlerForEMSInputBox(void);
void T9ChangeLanguageForEMSInputBox(T9U8 inputMethod);
void T9SynT9WithInputBoxForEMSInputBox(void);
void T9TimeoutForEMSInputBox(void *iUnk);
T9U8 T9MaxLengthCheckForEMSInputBox(void);
void T9InputBoxDisplayEndFrameForEMSInputBox(void);
void T9UpdateLSKString(void);

#endif /* __T9MAIN_H__*/















⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -