238 lines
7.0 KiB
OpenEdge ABL
238 lines
7.0 KiB
OpenEdge ABL
|
/*++ BUILD Version: 0003 // Increment this if a change has global effects ;both
|
||
|
;both
|
||
|
Copyright (c) 1985-96, Microsoft Corporation ;both
|
||
|
;both
|
||
|
Module Name: ;both
|
||
|
;both
|
||
|
winnls32.h
|
||
|
winnls3p.h ;internal
|
||
|
;both
|
||
|
Abstract: ;both
|
||
|
;both
|
||
|
Private ;internal
|
||
|
Procedure declarations, constant definitions and macros for the NLS ;both
|
||
|
component. ;both
|
||
|
;both
|
||
|
--*/ ;both
|
||
|
|
||
|
#ifndef _WINNLS32_
|
||
|
#define _WINNLS32_
|
||
|
|
||
|
#ifndef _WINNLS32P_ ;internal
|
||
|
#define _WINNLS32P_ ;internal
|
||
|
;internal
|
||
|
#ifdef __cplusplus ;both
|
||
|
extern "C" { ;both
|
||
|
#endif /* __cplusplus */ ;both
|
||
|
;both
|
||
|
typedef struct _tagDATETIME {
|
||
|
WORD year;
|
||
|
WORD month;
|
||
|
WORD day;
|
||
|
WORD hour;
|
||
|
WORD min;
|
||
|
WORD sec;
|
||
|
} DATETIME;
|
||
|
|
||
|
typedef struct _tagIMEPRO% {
|
||
|
HWND hWnd;
|
||
|
DATETIME InstDate;
|
||
|
UINT wVersion;
|
||
|
BCHAR% szDescription[50];
|
||
|
BCHAR% szName[80];
|
||
|
BCHAR% szOptions[30];
|
||
|
#if defined(TAIWAN)
|
||
|
BCHAR% szUsrFontName[80];
|
||
|
BOOL fEnable;
|
||
|
#endif
|
||
|
} IMEPRO%,*PIMEPRO%,NEAR *NPIMEPRO%,FAR *LPIMEPRO%;
|
||
|
|
||
|
BOOL WINAPI IMPGetIME%(HWND, LPIMEPRO%);
|
||
|
|
||
|
BOOL WINAPI IMPQueryIME%(LPIMEPRO%);
|
||
|
|
||
|
BOOL WINAPI IMPDeleteIME%(LPIMEPRO%); ;internal
|
||
|
BOOL WINAPI IMPAddIME%(LPIMEPRO%); ;internal
|
||
|
BOOL WINAPI IMPSetIME%(HWND, LPIMEPRO%);
|
||
|
|
||
|
#if defined(TAIWAN) //dchiang 022894 update for $(SDKINC)\winnls32.h
|
||
|
|
||
|
BOOL WINAPI IMPRetrieveIME%(LPIMEPRO%, DWORD);
|
||
|
BOOL WINAPI WINNLSDefIMEProc(HWND, HDC, DWORD, DWORD, DWORD, DWORD);
|
||
|
BOOL WINAPI ControlIMEMessage%(HWND, LPIMEPRO%, DWORD, DWORD, DWORD);
|
||
|
|
||
|
#endif //dchiang 022894 TAIWAN
|
||
|
|
||
|
BOOL WINAPI WINNLSSetIMEHandle%(LPCTSTR%, HWND); ;internal
|
||
|
BOOL WINAPI WINNLSSetIMEStatus(HWND, BOOL); ;internal
|
||
|
;begin_internal
|
||
|
BOOL WINAPI WINNLSSetIMEHotkey(HWND, UINT);
|
||
|
;end_internal
|
||
|
UINT WINAPI WINNLSGetIMEHotkey(HWND);
|
||
|
BOOL WINAPI WINNLSEnableIME(HWND, BOOL);
|
||
|
UINT WINAPI WINNLSGetKeyState(VOID); ;internal
|
||
|
BOOL WINAPI WINNLSSetKeyState(UINT); ;internal
|
||
|
BOOL WINAPI WINNLSGetEnableStatus(HWND);
|
||
|
BOOL WINAPI WINNLSSendControl(UINT, UINT); ;internal
|
||
|
BOOL WINAPI WINNLSPostAppMessage%(HWND, UINT, WPARAM, LPARAM); ;internal
|
||
|
LRESULT WINAPI WINNLSSendAppMessage%(HWND, UINT, WPARAM, LPARAM); ;internal
|
||
|
BOOL WINAPI WINNLSSendString%(HWND, WPARAM, LPVOID); ;internal
|
||
|
|
||
|
//
|
||
|
// wParam for WINNLSSendString ;internal
|
||
|
//
|
||
|
#define WSST_STRING 0 ;internal
|
||
|
#define WSST_STRINGEX 1 ;internal
|
||
|
|
||
|
;begin_internal
|
||
|
/*
|
||
|
* WINNLS.C
|
||
|
*/
|
||
|
#if defined(TAIWAN) //dchiang 022894 update for $(SDKINC)\winnls32.h
|
||
|
BOOL xxxIMPRetrieveIME(LPIMEPROW, DWORD);
|
||
|
#endif //dchiang 022894 TAIWAN
|
||
|
|
||
|
// Used by Winlogon to control IME at logon time
|
||
|
//
|
||
|
BOOL WINNLSAddIME(LPIMEPROW, BOOL, DWORD); ;internal
|
||
|
BOOL WINNLSFreeIME(DWORD); ;internal
|
||
|
#define IME_CMD_MAXCHARS 512 ;internal
|
||
|
BOOL WINNLSGetIMECmdLine(LPWSTR, DWORD); ;internal
|
||
|
|
||
|
#if defined(TAIWAN)
|
||
|
typedef HANDLE HIME;
|
||
|
typedef struct tagIMEINFO * LPIMEINFO;
|
||
|
|
||
|
HWND WINAPI WINNLSGetSysIME(VOID);
|
||
|
VOID WINAPI WINNLSSetSysIME(HWND);
|
||
|
BOOL WINAPI SwitchIM(UINT , UINT);
|
||
|
BOOL ToNextIM(VOID);
|
||
|
VOID SetFullAbcState(BOOL);
|
||
|
BOOL EngChiSwitch(BOOL);
|
||
|
VOID WINAPI TimerProc(HWND, INT, WPARAM, LPARAM);
|
||
|
HWND WINAPI IMPGetFullShapeHWnd(VOID);
|
||
|
VOID WINAPI IMPSetFullShapeHWnd(HWND);
|
||
|
BOOL WINAPI IMPSetFirstIME(HWND, LPIMEPRO);
|
||
|
BOOL WINAPI IMPGetFirstIME(HWND, LPIMEPRO);
|
||
|
BOOL WINAPI IMPDialogIME(LPIMEPRO, HWND);
|
||
|
BOOL WINAPI IMPEnableIME(HWND, LPIMEPRO, BOOL);
|
||
|
BOOL WINAPI IMPSetUsrFont(HWND, LPIMEPRO);
|
||
|
BOOL WINAPI WINNLSQueryIMEInfo(HWND, HWND, LPIMEINFO);
|
||
|
#endif //TAIWAN
|
||
|
|
||
|
#if !defined(CM_CONSOLE_IME_SETMODEINFO)
|
||
|
#define CM_CONSOLE_IME_SETMODEINFO 0x40e // (CM_CONSOLE_IME_FIRST+4) ;internal
|
||
|
#endif // CM_CONSOLE_IME_SETMODEINFO
|
||
|
|
||
|
// MSKK Mar.8,1993 KazuM
|
||
|
//
|
||
|
// Console IME information
|
||
|
//
|
||
|
typedef struct _CONVERSION_AREA_BUFFER_INFO {
|
||
|
COORD coordCaBuffer;
|
||
|
SMALL_RECT rcViewCaWindow;
|
||
|
COORD coordConView;
|
||
|
} CONVERSION_AREA_BUFFER_INFO,*PCONVERSION_AREA_BUFFER_INFO;
|
||
|
|
||
|
HANDLE
|
||
|
WINAPI
|
||
|
WINNLSCreateConsoleConversionArea(
|
||
|
IN HANDLE hConsoleOutput,
|
||
|
IN PCONVERSION_AREA_BUFFER_INFO pcabi,
|
||
|
IN DWORD dwOption
|
||
|
);
|
||
|
#define CA_HIDDEN 0x01
|
||
|
#define CA_ACTIVE 0x02
|
||
|
#define CA_STATUS_LINE 0x04
|
||
|
#define CA_HIDE_FOR_SCROLL 0x10
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSDestroyConsoleConversionArea(
|
||
|
IN HANDLE hConversionArea
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSFillConsoleConversionAreaOutputAttribute(
|
||
|
IN HANDLE hConversionArea,
|
||
|
IN WORD wAttribute,
|
||
|
IN DWORD cCharCells,
|
||
|
IN COORD coordAttr,
|
||
|
OUT LPDWORD lpcWritten
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSFillConsoleConversionAreaOutputCharacter%(
|
||
|
IN HANDLE hConversionArea,
|
||
|
IN TCHAR% chFillChar,
|
||
|
IN DWORD cCharCells,
|
||
|
IN COORD coordChar,
|
||
|
OUT LPDWORD lpcWritten
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSGetConsoleConversionArea(
|
||
|
IN HANDLE hConversionArea,
|
||
|
OUT PDWORD pdwOption
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSGetConsoleConversionAreaBufferInfo(
|
||
|
IN HANDLE hConversionArea,
|
||
|
OUT PCONVERSION_AREA_BUFFER_INFO pcabi
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSSetConsoleConversionArea(
|
||
|
IN HANDLE hConversionArea,
|
||
|
IN DWORD dwOption
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSSetConsoleConversionAreaBufferSize(
|
||
|
IN HANDLE hConversionArea,
|
||
|
IN COORD coordCaBuffer
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSSetConsoleConversionAreaViewInfo(
|
||
|
IN HANDLE hConversionArea,
|
||
|
IN BOOL fAbsolute,
|
||
|
IN COORD coordConView
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSSetConsoleConversionAreaWindowInfo(
|
||
|
IN HANDLE hConversionArea,
|
||
|
IN BOOL fAbsolute,
|
||
|
IN PSMALL_RECT prcViewCaWindow
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
WINAPI
|
||
|
WINNLSWriteConsoleConversionAreaOutput%(
|
||
|
IN HANDLE hConversionArea,
|
||
|
IN PCHAR_INFO pchiSrcBuffer,
|
||
|
IN COORD coordSrcBufferSize,
|
||
|
IN COORD coordSrcBufferCoord,
|
||
|
IN PSMALL_RECT psrctDestRect
|
||
|
);
|
||
|
;end_internal
|
||
|
|
||
|
;begin_both
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif /* __cplusplus */
|
||
|
;end_both
|
||
|
|
||
|
#endif /* !_WINNLS32P_ */ ;internal
|
||
|
#endif // _WINNLS32_
|