Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

285 lines
11 KiB

//+-------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992-2000.
//
// File: softkbd.idl
//
// Contents: ISoftKbd declarations.
//
//
//--------------------------------------------------------------------------
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("// softkbd.h")
cpp_quote("")
cpp_quote("")
cpp_quote("// ISoftKbd declarations.")
cpp_quote("")
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("// (C) Copyright 1995-2000 Microsoft Corporation. All Rights Reserved.")
cpp_quote("//")
cpp_quote("// THIS CODE AND INFORMATION IS PROVIDED \"AS IS\" WITHOUT WARRANTY OF")
cpp_quote("// ANY KIND, EITHER EXPRESSED OR TFPLIED, INCLUDING BUT NOT LIMITED TO")
cpp_quote("// THE TFPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A")
cpp_quote("// PARTICULAR PURPOSE.")
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("")
cpp_quote("#ifndef SOFTKBD_DEFINED")
cpp_quote("#define SOFTKBD_DEFINED")
cpp_quote("")
cpp_quote("#include <windows.h>")
cpp_quote("")
import "oaidl.idl";
import "ocidl.idl";
import "msctf.idl";
cpp_quote("#define SOFTKBD_US_STANDARD 1")
cpp_quote("#define SOFTKBD_US_ENHANCE 2")
cpp_quote("#define SOFTKBD_EURO_STANDARD 3")
cpp_quote("#define SOFTKBD_EURO_ENHANCE 4")
cpp_quote("#define SOFTKBD_JPN_STANDARD 5")
cpp_quote("#define SOFTKBD_JPN_ENHANCE 6")
cpp_quote("")
cpp_quote("#define SOFTKBD_CUSTOMIZE_BEGIN 100")
cpp_quote("")
cpp_quote("#define SOFTKBD_NO_MORE 0")
cpp_quote("")
cpp_quote("#define SOFTKBD_SHOW 0x00000001")
cpp_quote("#define SOFTKBD_DONT_SHOW_ALPHA_BLEND 0x80000000")
cpp_quote("")
// =-------------------------------------------------------------------------=
//
// T Y P E D E F I N I T I O N
//
// =-------------------------------------------------------------------------=
/* Logical Font */
#define LF_FACESIZE 32
cpp_quote( "#ifndef _WINGDI_")
typedef [uuid(8849aa7d-f739-4dc0-bc61-ac48908af060)] struct LOGFONTA
{
LONG lfHeight;
LONG lfWidth;
LONG lfEscapement;
LONG lfOrientation;
LONG lfWeight;
BYTE lfItalic;
BYTE lfUnderline;
BYTE lfStrikeOut;
BYTE lfCharSet;
BYTE lfOutPrecision;
BYTE lfClipPrecision;
BYTE lfQuality;
BYTE lfPitchAndFamily;
CHAR lfFaceName[LF_FACESIZE];
} LOGFONTA;
typedef [uuid(f8c6fe8a-b112-433a-be87-eb970266ec4b)] struct LOGFONTW
{
LONG lfHeight;
LONG lfWidth;
LONG lfEscapement;
LONG lfOrientation;
LONG lfWeight;
BYTE lfItalic;
BYTE lfUnderline;
BYTE lfStrikeOut;
BYTE lfCharSet;
BYTE lfOutPrecision;
BYTE lfClipPrecision;
BYTE lfQuality;
BYTE lfPitchAndFamily;
WCHAR lfFaceName[LF_FACESIZE];
} LOGFONTW;
#ifdef UNICODE
typedef LOGFONTW LOGFONT;
#else
typedef LOGFONTA LOGFONT;
#endif // UNICODE
cpp_quote( "#endif")
cpp_quote("")
cpp_quote("#if 0")
typedef [uuid(f0a544c0-1281-4e32-8bf7-a6e012e980d4)] UINT_PTR HKL;
cpp_quote("#endif")
cpp_quote("")
cpp_quote("")
typedef [uuid(432ec152-51bf-43ca-8f86-50a7e230a069)] DWORD KEYID;
// COLORTYPE
typedef [uuid(5f46a703-f012-46db-8cda-294e994786e8)] enum {
bkcolor = 0 ,
UnSelForeColor = 1,
UnSelTextColor = 2,
SelForeColor = 3,
SelTextColor = 4,
Max_color_Type = 5
} COLORTYPE;
// TYPEMODE
typedef [uuid(711c6200-587a-46ef-9647-5a83638bac00)] enum {
ClickMouse = 0,
Hover = 1,
Scanning = 2
} TYPEMODE;
// TITLEBAR_TYPE
typedef [uuid(10b50da7-ce0b-4b83-827f-30c50c9bc5b9)] enum {
TITLEBAR_NONE = 0,
TITLEBAR_GRIPPER_HORIZ_ONLY = 1,
TITLEBAR_GRIPPER_VERTI_ONLY = 2,
TITLEBAR_GRIPPER_BUTTON = 3
} TITLEBAR_TYPE;
[
object,
uuid(3CB00755-7536-4B0A-A213-572EFCAF93CD),
helpstring("ISoftKbd Interface"),
pointer_default(unique)
]
interface ISoftKbd : IUnknown
{
[helpstring("method Initialize")] HRESULT Initialize();
[helpstring("method EnumStandardSoftKeyBoard")] HRESULT EnumSoftKeyBoard([in] LANGID langid, [out] DWORD *lpdwKeyboard);
[helpstring("method SelectStandardSoftKeyboard")] HRESULT SelectSoftKeyboard([in] DWORD dwKeyboardId);
[helpstring("method CreateSoftKeyboardLayoutFromXMLFile")] HRESULT CreateSoftKeyboardLayoutFromXMLFile([in, string] WCHAR *lpszKeyboardDesFile, [in] INT szFileStrLen,[out] DWORD *pdwLayoutCookie);
[helpstring("method CreateSoftKeyboardLayoutFromResource")] HRESULT CreateSoftKeyboardLayoutFromResource([in, string] WCHAR *lpszResFile,[in, string] WCHAR *lpszResType, [in, string] WCHAR *lpszXMLResString,[out] DWORD *lpdwLayoutCookie);
[helpstring("method ShowSoftKeyboard")] HRESULT ShowSoftKeyboard([in] INT iShow);
[helpstring("method SetKeyboardLabelText")] HRESULT SetKeyboardLabelText([in] HKL hKl);
[helpstring("method SetKeyboardLabelTextCombination")] HRESULT SetKeyboardLabelTextCombination([in] DWORD nModifierCombination);
[helpstring("method CreateSoftKeyboardWindow")] HRESULT CreateSoftKeyboardWindow([in] HWND hOwner, [in] TITLEBAR_TYPE Titlebar_type, [in] INT xPos, [in] INT yPos, [in] INT width, [in] INT height );
[helpstring("method DestroySoftKeyboardWindow")] HRESULT DestroySoftKeyboardWindow();
[helpstring("method GetSoftKeyboardPosSize")] HRESULT GetSoftKeyboardPosSize([out] POINT *lpStartPoint, [out] WORD *lpwidth, [out] WORD *lpheight);
[helpstring("method GetSoftKeyboardColors")] HRESULT GetSoftKeyboardColors([in] COLORTYPE colorType, [out] COLORREF *lpColor);
[helpstring("method GetSoftKeyboardTypeMode")] HRESULT GetSoftKeyboardTypeMode([out] TYPEMODE *lpTypeMode);
[helpstring("method GetSoftKeyboardTextFont")] HRESULT GetSoftKeyboardTextFont([out] LOGFONTW *pLogFont);
[helpstring("method SetSoftKeyboardPosSize")] HRESULT SetSoftKeyboardPosSize([in] POINT StartPoint, [in] WORD width, [in] WORD height);
[helpstring("method SetSoftKeyboardColors")] HRESULT SetSoftKeyboardColors([in] COLORTYPE colorType, [in] COLORREF Color);
[helpstring("method SetSoftKeyboardTypeMode")] HRESULT SetSoftKeyboardTypeMode([in] TYPEMODE TypeMode);
[helpstring("method SetSoftKeyboardTextFont")] HRESULT SetSoftKeyboardTextFont([in] LOGFONTW *pLogFont);
[helpstring("method ShowKeysForKeyScanMode")] HRESULT ShowKeysForKeyScanMode([in] KEYID *lpKeyID, [in] INT iKeyNum, [in] BOOL fHighL);
[helpstring("method AdviseSoftKeyboardEventSink")] HRESULT AdviseSoftKeyboardEventSink([in] DWORD dwKeyboardId,[in] REFIID riid, [in, iid_is(riid)] IUnknown *punk, [out] DWORD *pdwCookie);
[helpstring("method UnadviseSoftKeyboardEventSink")] HRESULT UnadviseSoftKeyboardEventSink([in] DWORD dwCookie);
};
[
object,
uuid(3ea2bb1d-66e7-47f7-8795-cc03d388f887),
helpstring("ISoftKeyboardEventSink Interface"),
pointer_default(unique)
]
interface ISoftKeyboardEventSink : IUnknown
{
[helpstring("method OnKeySelection")] HRESULT OnKeySelection([in] KEYID KeySelected, [in, string] WCHAR *lpwszLabel );
};
[
object,
uuid(e4283da5-d425-4f97-8b6a-061a03556e95),
helpstring("ISoftKbdWindowEventSink Interface"),
pointer_default(unique)
]
interface ISoftKbdWindowEventSink : IUnknown
{
[helpstring("method OnWindowClose")] HRESULT OnWindowClose( );
[helpstring("method OnWindowMove")] HRESULT OnWindowMove([in] int xWnd,[in]int yWnd, [in] int width, [in] int height);
};
cpp_quote("#define SOFTKBD_TYPE_US_STANDARD 1")
cpp_quote("#define SOFTKBD_TYPE_US_SYMBOL 10")
//
// ITfFnSoftKbd
//
// Implemented by TIP.
// interface.
// This derives from ITfFunction.
//
[
object,
uuid(e7342d48-573f-4f22-9181-41938b2529c2),
pointer_default(unique)
]
interface ITfFnSoftKbd : ITfFunction
{
[helpstring("method GetSoftKbdLayoutId")] HRESULT GetSoftKbdLayoutId([in] DWORD dwLayoutType, [out] DWORD *lpdwLayoutId);
[helpstring("method SetActiveLayoutId")] HRESULT SetActiveLayoutId([in] DWORD dwLayoutId );
[helpstring("method SetSoftKbdOnOff")] HRESULT SetSoftKbdOnOff([in] BOOL fOn );
[helpstring("method SetSoftKbdPosSize")] HRESULT SetSoftKbdPosSize([in] POINT StartPoint, [in] WORD width, [in] WORD height);
[helpstring("method SetSoftKbdColors")] HRESULT SetSoftKbdColors([in] COLORTYPE colorType, [in] COLORREF Color);
[helpstring("method GetActiveLayoutId")] HRESULT GetActiveLayoutId([out] DWORD *lpdwLayoutId );
[helpstring("method GetSoftKbdOnOff")] HRESULT GetSoftKbdOnOff([out] BOOL *lpfOn );
[helpstring("method GetSoftKbdPosSize")] HRESULT GetSoftKbdPosSize([out]POINT *lpStartPoint, [out] WORD *lpwidth, [out] WORD *lpheight);
[helpstring("method GetSoftKbdColors")] HRESULT GetSoftKbdColors([in] COLORTYPE colorType, [out] COLORREF *lpColor);
}
//
// ITfSoftKbdRegistry
//
// Implemented in softkbd.dll
// Other TIP can call this interface to Enable or Disable softkbd TIP.
//
[
object,
uuid(f5f31f14-fdf0-4d29-835a-46adfe743b78),
pointer_default(unique)
]
interface ITfSoftKbdRegistry : IUnknown
{
[helpstring("method Enable Softkbd TIP")] HRESULT EnableSoftkbd(LANGID langid);
[helpstring("method Disable Softkbd TIP")] HRESULT DisableSoftkbd(LANGID langid);
}
// =-------------------------------------------------------------------------=
//
// C L S I D / I I D D E F I N I T I O N
//
// =-------------------------------------------------------------------------=
cpp_quote("")
cpp_quote("DEFINE_GUID( IID_ISoftKbd, 0x3CB00755, 0x7536, 0x4B0A, 0xA2, 0x13, 0x57, 0x2E, 0xFC, 0xAF, 0x93, 0xCD );")
cpp_quote("DEFINE_GUID( IID_ISoftKeyboardEventSink,0x3ea2bb1d, 0x66e7, 0x47f7, 0x87, 0x95, 0xcc, 0x03, 0xd3, 0x88, 0xf8, 0x87 );")
cpp_quote("DEFINE_GUID( IID_ITfFnSoftKbd, 0xe7342d48, 0x573f, 0x4f22, 0x91, 0x81, 0x41, 0x93, 0x8b, 0x25, 0x29, 0xc2);")
cpp_quote("DEFINE_GUID( IID_ISoftKbdWindowEventSink, 0xe4283da5,0xd425,0x4f97,0x8b, 0x6a,0x06, 0x1a, 0x03, 0x55, 0x6e, 0x95);")
cpp_quote("DEFINE_GUID( IID_ITfSoftKbdRegistry, 0xf5f31f14, 0xfdf0, 0x4d29, 0x83, 0x5a, 0x46, 0xad, 0xfe, 0x74, 0x3b, 0x78);")
cpp_quote("DEFINE_GUID( CLSID_SoftKbd,0x1B1A897E, 0xFBEE, 0x41CF, 0x8C, 0x48,0x9B, 0xF7, 0x64, 0xF6, 0x2B, 0x8B);")
cpp_quote("")
cpp_quote("DEFINE_GUID( CLSID_SoftkbdIMX, 0xf89e9e58, 0xbd2f, 0x4008, 0x9a, 0xc2, 0x0f, 0x81, 0x6c, 0x09, 0xf4, 0xee);")
cpp_quote("")
cpp_quote("DEFINE_GUID( CLSID_SoftkbdRegistry, 0x6a49950e, 0xce8a, 0x4ef7, 0x88, 0xb4, 0x9d, 0x11, 0x23, 0x66, 0x51, 0x1c );")
cpp_quote("")
cpp_quote("#endif // SOFTKBD_DEFINED")