[ros-diffs] [hpoussin] 32842: Update header

hpoussin at svn.reactos.org hpoussin at svn.reactos.org
Fri Apr 4 15:10:46 CEST 2008


Author: hpoussin
Date: Fri Apr  4 08:10:46 2008
New Revision: 32842

URL: http://svn.reactos.org/svn/reactos?rev=32842&view=rev
Log:
Update header

Modified:
    trunk/reactos/include/ddk/imm.h

Modified: trunk/reactos/include/ddk/imm.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/imm.h?rev=32842&r1=32841&r2=32842&view=diff
==============================================================================
--- trunk/reactos/include/ddk/imm.h [iso-8859-1] (original)
+++ trunk/reactos/include/ddk/imm.h [iso-8859-1] Fri Apr  4 08:10:46 2008
@@ -1,4 +1,23 @@
-#ifndef __IMM_H
+/*
+ * Copyright (C) 2007 CodeWeavers, Aric Stewart
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#ifndef _DDKIMM_H_
+#define _DDKIMM_H_
 #define __IMM_H
 
 #if __GNUC__ >=3
@@ -9,8 +28,41 @@
 extern "C" {
 #endif
 
-typedef struct _COMPOSITIONSTRING
-{
+typedef struct _tagINPUTCONTEXT {
+    HWND                hWnd;
+    BOOL                fOpen;
+    HWND                hwndImeInUse;
+    POINT               ptStatusWndPos;
+    POINT               ptSoftKbdPos;
+    DWORD               fdwConversion;
+    DWORD               fdwSentence;
+    union   {
+        LOGFONTA        A;
+        LOGFONTW        W;
+    } lfFont;
+    COMPOSITIONFORM     cfCompForm;
+    CANDIDATEFORM       cfCandForm[4];
+    HIMCC               hCompStr;
+    HIMCC               hCandInfo;
+    HIMCC               hGuideLine;
+    HIMCC               hPrivate;
+    DWORD               dwNumMsgBuf;
+    HIMCC               hMsgBuf;
+    DWORD               fdwInit;
+    DWORD               dwReserve[3];
+} INPUTCONTEXT, *PINPUTCONTEXT, *LPINPUTCONTEXT;
+
+typedef struct _tagIMEINFO {
+    DWORD       dwPrivateDataSize;
+    DWORD       fdwProperty;
+    DWORD       fdwConversionCaps;
+    DWORD       fdwSentenceCaps;
+    DWORD       fdwUICaps;
+    DWORD       fdwSCSCaps;
+    DWORD       fdwSelectCaps;
+} IMEINFO, *LPIMEINFO;
+
+typedef struct tagCOMPOSITIONSTRING {
     DWORD dwSize;
     DWORD dwCompReadAttrLen;
     DWORD dwCompReadAttrOffset;
@@ -38,39 +90,65 @@
     DWORD dwPrivateOffset;
 } COMPOSITIONSTRING, *LPCOMPOSITIONSTRING;
 
-typedef struct _INPUTCONTEXT
-{
-    HWND hWnd;
-    BOOL fOpen;
-    HWND hwndImeInUse;
-    POINT ptStatusWndPos;
-    POINT ptSoftKbdPos;
-    DWORD fdwConversion;
-    DWORD fdwSentence;
-    union
-    {
-        LOGFONTA A;
-        LOGFONTW W;
-    } lfFont;
-    COMPOSITIONFORM cfCompForm;
-    CANDIDATEFORM cfCandForm[4];
-    HIMCC hCompStr;
-    HIMCC hCandInfo;
-    HIMCC hGuideLine;
-    HIMCC hPrivate;
-    DWORD dwNumMsgBuf;
-    HIMCC hMsgBuf;
-    DWORD fdwInit;
-    DWORD dwReserve[3]
-} INPUTCONTEXT, *PINPUTCONTEXT, *LPINPUTCONTEXT;
+LPINPUTCONTEXT WINAPI ImmLockIMC(HIMC);
+BOOL  WINAPI ImmUnlockIMC(HIMC);
+DWORD WINAPI ImmGetIMCLockCount(HIMC);
+HIMCC  WINAPI ImmCreateIMCC(DWORD);
+HIMCC  WINAPI ImmDestroyIMCC(HIMCC);
+LPVOID WINAPI ImmLockIMCC(HIMCC);
+BOOL   WINAPI ImmUnlockIMCC(HIMCC);
+DWORD  WINAPI ImmGetIMCCLockCount(HIMCC);
+HIMCC  WINAPI ImmReSizeIMCC(HIMCC, DWORD);
+DWORD  WINAPI ImmGetIMCCSize(HIMCC);
 
-HIMCC WINAPI ImmCreateIMCC(DWORD dwSize);
-HIMCC WINAPI ImmDestroyIMCC(HIMCC hIMCC);
-LPVOID WINAPI ImmLockIMCC(HIMCC hIMCC);
-BOOL WINAPI ImmUnlockIMCC(HIMCC hIMCC);
+#define IMMGWL_IMC                      0
+#define IMMGWL_PRIVATE                  (sizeof(LONG))
+
+/* IME Property bits */
+#define IME_PROP_END_UNLOAD             0x0001
+#define IME_PROP_KBD_CHAR_FIRST         0x0002
+#define IME_PROP_IGNORE_UPKEYS          0x0004
+#define IME_PROP_NEED_ALTKEY            0x0008
+#define IME_PROP_NO_KEYS_ON_CLOSE       0x0010
+
+/* for NI_CONTEXTUPDATED */
+#define IMC_SETCONVERSIONMODE           0x0002
+#define IMC_SETSENTENCEMODE             0x0004
+#define IMC_SETOPENSTATUS               0x0006
+
+/* dwAction for ImmNotifyIME */
+#define NI_CONTEXTUPDATED               0x0003
+#define NI_OPENCANDIDATE                0x0010
+#define NI_CLOSECANDIDATE               0x0011
+#define NI_SELECTCANDIDATESTR           0x0012
+#define NI_CHANGECANDIDATELIST          0x0013
+#define NI_FINALIZECONVERSIONRESULT     0x0014
+#define NI_COMPOSITIONSTR               0x0015
+#define NI_SETCANDIDATE_PAGESTART       0x0016
+#define NI_SETCANDIDATE_PAGESIZE        0x0017
+#define NI_IMEMENUSELECTED              0x0018
+
+BOOL WINAPI ImmGenerateMessage(HIMC);
+
+BOOL WINAPI ImeInquire(LPIMEINFO, LPWSTR, LPCWSTR lpszOptions);
+BOOL WINAPI ImeConfigure (HKL, HWND, DWORD, LPVOID);
+DWORD WINAPI ImeConversionList(HIMC, LPCWSTR, LPCANDIDATELIST,DWORD,UINT);
+BOOL WINAPI ImeDestroy(UINT);
+LRESULT WINAPI ImeEscape(HIMC, UINT, LPVOID);
+BOOL WINAPI ImeProcessKey(HIMC, UINT, LPARAM, CONST LPBYTE);
+BOOL WINAPI ImeSelect(HIMC, BOOL);
+BOOL WINAPI ImeSetActiveContext(HIMC, BOOL);
+UINT WINAPI ImeToAsciiEx(UINT, UINT, CONST LPBYTE, LPDWORD, UINT, HIMC);
+BOOL WINAPI NotifyIME(HIMC, DWORD, DWORD, DWORD);
+BOOL WINAPI ImeRegisterWord(LPCWSTR, DWORD, LPCWSTR);
+BOOL WINAPI ImeUnregisterWord(LPCWSTR, DWORD, LPCWSTR);
+UINT WINAPI ImeGetRegisterWordStyle(UINT, LPSTYLEBUFW);
+UINT WINAPI ImeEnumRegisterWord(REGISTERWORDENUMPROCW, LPCWSTR, DWORD, LPCWSTR, LPVOID);
+BOOL WINAPI ImeSetCompositionString(HIMC, DWORD, LPCVOID, DWORD, LPCVOID, DWORD);
+DWORD WINAPI ImeGetImeMenuItems(HIMC, DWORD, DWORD, LPIMEMENUITEMINFOW, LPIMEMENUITEMINFOW, DWORD);
 
 #ifdef __cplusplus
-}
+} /* extern "C" */
 #endif
 
-#endif /* __IMM_H */
+#endif  /* _DDKIMM_H_ */



More information about the Ros-diffs mailing list