/****************************************************************************** * * Copyright (c) 1998-2004 PalmSource, Inc. All rights reserved. * * File: TextServicesMgr.h * * Release: eclipse 5 SDK (68K) R4. * * Description: * Header file for Text Services Manager. This provides the caller with * an API for interacting with various text services, including front-end * processors (FEPs), which are sometimes known as input methods. * *****************************************************************************/ #ifndef __TEXTSERVICESMGR_H__ #define __TEXTSERVICESMGR_H__ #include #include #include #ifndef USE_TSM_TRAPS #if (EMULATION_LEVEL == EMULATION_NONE) #define USE_TSM_TRAPS 1 #else #define USE_TSM_TRAPS 0 #endif #endif #if USE_TSM_TRAPS #define TSM_TRAP(sel) \ _SYSTEM_API(_CALL_WITH_SELECTOR)(_SYSTEM_TABLE, sysTrapTsmDispatch, sel) #else #define TSM_TRAP(tsmSelectorNum) #endif /*********************************************************************** * Public constants ***********************************************************************/ // Feature Creators and numbers, for use with the FtrGet() call. #define tsmFtrCreator sysFileCTextServices // Selector used with call to FtrGet(tsmFtrCreator, xxx) to get the // Text Services Manager flags. #define tsmFtrNumFlags 0 // Flags returned by FtrGet(tsmFtrCreator, tsmFtrNumFlags) call. #define tsmFtrFlagsHasFep 0x00000001L // Bit set if FEP is installed. // Selectors for routines found in the Text Services manager. The order // of these selectors MUST match the jump table in TextServicesMgr.c. typedef UInt16 TsmSelector; #define tsmGetFepMode 0 #define tsmSetFepMode 1 #define tsmHandleEvent 2 #define tsmInit 3 // new in 4.0 #define tsmDrawMode 4 // new in 4.0 #define tsmGetSystemFep 5 // new in 4.0 #define tsmSetSystemFep 6 // new in 4.0 #define tsmGetCurrentFep 7 // new in 4.0 #define tsmSetCurrentFep 8 // new in 4.0 #define tsmGetSystemFepCreator 9 // new in 5.0 #define tsmSetSystemFepCreator 10 // new in 5.0 #define tsmGetCurrentFepCreator 11 // new in 5.0 #define tsmSetCurrentFepCreator 12 // new in 5.0 #define tsmFepHandleEvent 13 // new in 5.0 #define tsmFepMapEvent 14 // new in 5.0 #define tsmFepTerminate 15 // new in 5.0 #define tsmFepReset 16 // new in 5.0 #define tsmFepCommitAction 17 // new in 5.0 #define tsmFepOptionsList 18 // new in 5.0 #define tsmMaxSelector tsmFepOptionsList // Input mode - used with TsmGet/SetFepMode. typedef UInt16 TsmFepModeType; #define tsmFepModeDefault ((TsmFepModeType)0) #define tsmFepModeOff ((TsmFepModeType)1) #define tsmFepModeCustom ((TsmFepModeType)128) /*********************************************************************** * Public types ***********************************************************************/ /*********************************************************************** * Public routines ***********************************************************************/ #ifdef __cplusplus extern "C" { #endif // Return the current mode for the active FEP. The parameter // is unused and must be set to NULL. TsmFepModeType TsmGetFepMode(void* nullParam) TSM_TRAP(tsmGetFepMode); // Set the mode for the active FEP to be . The previous mode // is returned. The parameter is unused and must be set // to NULL. TsmFepModeType TsmSetFepMode(void* nullParam, TsmFepModeType inNewMode) TSM_TRAP(tsmSetFepMode); #ifdef __cplusplus } #endif #endif // __TEXTSERVICESMGR_H__