12#define ROUNDUP4(n) (((n) + 3) & ~3)
28 for (dwIndex = 0; dwIndex < pWideCL->
dwCount; ++dwIndex)
30 pbWide = (
const BYTE *)pWideCL + pWideCL->
dwOffset[dwIndex];
61 for (dwIndex = 0; dwIndex < pWideCL->
dwCount; ++dwIndex)
63 pbWide = (
const BYTE *)pWideCL + pWideCL->
dwOffset[dwIndex];
64 pbAnsi = (
LPBYTE)pAnsiCL + pibOffsets[dwIndex];
68 (
LPSTR)pbAnsi, cbLeft,
NULL, &bUsedDefault);
71 if (dwIndex < pWideCL->dwCount - 1)
72 pibOffsets[dwIndex + 1] = pibOffsets[dwIndex] + cbGot;
96 for (dwIndex = 0; dwIndex < pAnsiCL->
dwCount; ++dwIndex)
98 pbAnsi = (
const BYTE *)pAnsiCL + pAnsiCL->
dwOffset[dwIndex];
128 for (dwIndex = 0; dwIndex < pAnsiCL->
dwCount; ++dwIndex)
130 pbAnsi = (
const BYTE *)pAnsiCL + pAnsiCL->
dwOffset[dwIndex];
131 pbWide = (
LPBYTE)pWideCL + pibOffsets[dwIndex];
136 cbGot = cchGot *
sizeof(
WCHAR);
139 if (dwIndex + 1 < pAnsiCL->
dwCount)
140 pibOffsets[dwIndex + 1] = pibOffsets[dwIndex] + cbGot;
194 ERR(
"Out of boundary\n");
260 const DWORD *pdwOffsets;
303 for (dwIndex = 0; dwIndex < pCI->
dwCount; ++dwIndex)
305 pb = (
const BYTE *)pCI + pdwOffsets[dwIndex];
326 for (dwIndex = 0; dwIndex < pCI->
dwCount; ++dwIndex)
328 pb = (
const BYTE *)pCI + pdwOffsets[dwIndex];
405 TRACE(
"(%p, %lu, %p)\n", hIMC, dwIndex, lpCandidate);
409 ERR(
"Out of boundary\n");
440 TRACE(
"(%p, %p)\n", hIMC, lpCandidate);
444 ERR(
"Out of boundary\n");
456 pIC->
cfCandForm[lpCandidate->dwIndex] = *lpCandidate;
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
DWORD CandidateListAnsiToWide(const CANDIDATELIST *pAnsiCL, LPCANDIDATELIST pWideCL, DWORD dwBufLen, UINT uCodePage)
DWORD WINAPI ImmGetCandidateListW(_In_ HIMC hIMC, _In_ DWORD dwIndex, _Out_writes_bytes_opt_(dwBufLen) LPCANDIDATELIST lpCandList, _In_ DWORD dwBufLen)
DWORD CandidateListWideToAnsi(const CANDIDATELIST *pWideCL, LPCANDIDATELIST pAnsiCL, DWORD dwBufLen, UINT uCodePage)
BOOL WINAPI ImmSetCandidateWindow(_In_ HIMC hIMC, _In_ LPCANDIDATEFORM lpCandidate)
BOOL WINAPI ImmGetCandidateWindow(_In_ HIMC hIMC, _In_ DWORD dwIndex, _Out_ LPCANDIDATEFORM lpCandidate)
DWORD WINAPI ImmGetCandidateListCountA(_In_ HIMC hIMC, _Out_ LPDWORD lpdwListCount)
DWORD WINAPI ImmGetCandidateListCountW(_In_ HIMC hIMC, _Out_ LPDWORD lpdwListCount)
DWORD WINAPI ImmGetCandidateListA(_In_ HIMC hIMC, _In_ DWORD dwIndex, _Out_writes_bytes_opt_(dwBufLen) LPCANDIDATELIST lpCandList, _In_ DWORD dwBufLen)
static DWORD ImmGetCandidateListCountAW(_In_ HIMC hIMC, _Out_ LPDWORD lpdwListCount, _In_ BOOL bAnsi)
static DWORD ImmGetCandidateListAW(_In_ HIMC hIMC, _In_ DWORD dwIndex, _Out_writes_bytes_opt_(dwBufLen) LPCANDIDATELIST lpCandList, _In_ DWORD dwBufLen, _In_ BOOL bAnsi)
#define WideCharToMultiByte
#define MultiByteToWideChar
PCLIENTIMC WINAPI ImmLockClientImc(_In_ HIMC hImc)
VOID WINAPI ImmUnlockClientImc(_Inout_ PCLIENTIMC pClientImc)
#define IMC_SETCANDIDATEPOS
struct tagCANDIDATELIST * LPCANDIDATELIST
#define IMN_SETCANDIDATEPOS
BOOL WINAPI ImmUnlockIMCC(_In_ HIMCC imcc)
LPINPUTCONTEXT WINAPI ImmLockIMC(_In_ HIMC hIMC)
#define NI_CONTEXTUPDATED
BOOL WINAPI ImmUnlockIMC(_In_ HIMC hIMC)
LPVOID WINAPI ImmLockIMCC(_In_ HIMCC imcc)
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
#define _Out_writes_bytes_opt_(s)
CANDIDATEFORM cfCandForm[4]
DWORD dwOffset[ANYSIZE_ARRAY]
#define RtlCopyMemory(Destination, Source, Length)
#define IS_CROSS_THREAD_HIMC(hIMC)
#define IMM_INVALID_CANDFORM
BOOL Imm32MakeIMENotify(_In_ HIMC hIMC, _In_ HWND hwnd, _In_ DWORD dwAction, _In_ DWORD dwIndex, _Inout_opt_ DWORD_PTR dwValue, _In_ DWORD dwCommand, _Inout_opt_ DWORD_PTR dwData)
#define IS_NULL_UNEXPECTEDLY(p)
#define MAX_CANDIDATEFORM
_In_ HCRYPTHASH _In_ BOOL _In_ DWORD _Inout_ DWORD _In_ DWORD dwBufLen