diff options
author | Felipe Heidrich <fheidric> | 2003-06-27 22:50:01 +0000 |
---|---|---|
committer | Felipe Heidrich <fheidric> | 2003-06-27 22:50:01 +0000 |
commit | 838841780a50d14d2b0781c54f4fecf5d760d324 (patch) | |
tree | 61b1b3226163401897a2843b63c0e5c1aa9eb8b1 | |
parent | d8f94e04cbd8372d0ab87d048ebf19030c1ec57e (diff) | |
download | eclipse.platform.swt-838841780a50d14d2b0781c54f4fecf5d760d324.tar.gz eclipse.platform.swt-838841780a50d14d2b0781c54f4fecf5d760d324.tar.xz eclipse.platform.swt-838841780a50d14d2b0781c54f4fecf5d760d324.zip |
*** keyword substitution change ***v3011
8 files changed, 17128 insertions, 17128 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com.c b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com.c index 2f4c679fb3..ee27cccad6 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com.c @@ -1,3286 +1,3286 @@ -/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-#include "swt.h"
-#include "com_structs.h"
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CLSIDFromProgID
- * Signature: ([CLorg/eclipse/swt/internal/ole/win32/GUID;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CLSIDFromProgID
- (JNIEnv *env, jclass that, jcharArray lpszProgID, jobject pclsid)
-{
- LPCOLESTR lpszProgID1=NULL;
- GUID guid, *pclsid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CLSIDFromProgID\n");
-#endif
-
- if (pclsid) {
- pclsid1=&guid;
- getGUIDFields(env, pclsid, pclsid1);
- }
-
- if (lpszProgID)
- lpszProgID1 = (LPCOLESTR)(*env)->GetCharArrayElements(env, lpszProgID, NULL);
-
- rc = (jint) CLSIDFromProgID(lpszProgID1, pclsid1);
-
- if (lpszProgID)
- (*env)->ReleaseCharArrayElements(env, lpszProgID, (jchar *)lpszProgID1, 0);
-
- if (pclsid) {
- setGUIDFields(env, pclsid, pclsid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CLSIDFromString
- * Signature: ([CLorg/eclipse/swt/internal/ole/win32/GUID;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CLSIDFromString
- (JNIEnv *env, jclass that, jcharArray lpsz, jobject pclsid)
-{
- LPOLESTR lpsz1=NULL;
- GUID guid, *pclsid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CLSIDFromString\n");
-#endif
- if (pclsid) {
- pclsid1=&guid;
- getGUIDFields(env, pclsid, pclsid1);
- }
-
- if (lpsz)
- lpsz1 = (LPOLESTR)(*env)->GetCharArrayElements(env, lpsz, NULL);
-
- rc = CLSIDFromString(lpsz1, pclsid1);
-
- if (lpsz)
- (*env)->ReleaseCharArrayElements(env, lpsz, lpsz1, 0);
-
- if (pclsid) {
- setGUIDFields(env, pclsid, pclsid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CoCreateInstance
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;IILorg/eclipse/swt/internal/ole/win32/GUID;[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoCreateInstance
- (JNIEnv *env, jclass that, jobject rclsid, jint pUnkOuter, jint dwClsContext, jobject riid, jintArray ppv)
-{
- LPVOID *ppv1=NULL;
- GUID guid1, guid2, *riid1=NULL, *rclsid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CoCreateInstance\n");
-#endif
-
- if (rclsid) {
- rclsid1=&guid2;
- getGUIDFields(env, rclsid, rclsid1);
- }
- if (riid) {
- riid1=&guid1;
- getGUIDFields(env, riid, riid1);
- }
-
- if (ppv)
- ppv1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppv, NULL);
-
- rc = (jint) CoCreateInstance(rclsid1, (LPUNKNOWN)pUnkOuter, dwClsContext, riid1, ppv1);
-
- if (ppv)
- (*env)->ReleaseIntArrayElements(env, ppv, (jint *)ppv1, 0);
-
- if (rclsid) {
- setGUIDFields(env, rclsid, rclsid1);
- }
- if (riid) {
- setGUIDFields(env, riid, riid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CoFreeUnusedLibraries
- * Signature: ()V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoFreeUnusedLibraries
- (JNIEnv *env, jclass that)
-{
- CoFreeUnusedLibraries();
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CoGetClassObject
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;IILorg/eclipse/swt/internal/ole/win32/GUID;[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoGetClassObject
- (JNIEnv *env, jclass that, jobject rclsid, jint dwClsContext, jint pServerInfo,
- jobject riid, jintArray ppv)
-{
- LPVOID *ppv1=NULL;
- GUID guid1, *rclsid1=NULL;
- GUID guid2, *riid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CoGetClassObject\n");
-#endif
-
- if (rclsid) {
- rclsid1=&guid1;
- getGUIDFields(env, rclsid, rclsid1);
- }
- if (riid) {
- riid1=&guid2;
- getGUIDFields(env, riid, riid1);
- }
- if (ppv)
- ppv1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppv, NULL);
-
- rc = (jint) CoGetClassObject(rclsid1, dwClsContext, (COSERVERINFO *)pServerInfo, riid1, ppv1);
- if (ppv)
- (*env)->ReleaseIntArrayElements(env, ppv, (jint *)ppv1, 0);
-
- if (rclsid) {
- setGUIDFields(env, rclsid, rclsid1);
- }
- if (riid) {
- setGUIDFields(env, riid, riid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CoLockObjectExternal
- * Signature: (IZZ)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoLockObjectExternal
- (JNIEnv *env, jclass that, jint pUnk, jboolean fLock, jboolean fLastUnlockReleases)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CoLockObjectExternal\n");
-#endif
- return (jint) CoLockObjectExternal((IUnknown *)pUnk, (BOOL)fLock, (BOOL)fLastUnlockReleases);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CoTaskMemAlloc
- * Signature: (I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoTaskMemAlloc
- (JNIEnv *env, jclass that, jint cb)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CoTaskMemAlloc\n");
-#endif
- return (jint) CoTaskMemAlloc((ULONG)cb);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CoTaskMemFree
- * Signature: (I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoTaskMemFree
- (JNIEnv *env, jclass that, jint pv)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CoTaskMemFree\n");
-#endif
- CoTaskMemFree((LPVOID)pv);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: DoDragDrop
- * Signature: (III[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_DoDragDrop
- (JNIEnv *env, jclass that, jint pDataObject, jint pDropSource, jint dwOKEffect, jintArray pdwEffect)
-{
- jint *pdwEffect1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "DoDragDrop\n");
-#endif
-
- if (pdwEffect)
- pdwEffect1 = (*env)->GetIntArrayElements(env, pdwEffect, NULL);
-
- rc = DoDragDrop((IDataObject *)pDataObject, (IDropSource *)pDropSource, dwOKEffect, pdwEffect1);
-
- if (pdwEffect)
- (*env)->ReleaseIntArrayElements(env, pdwEffect, pdwEffect1, 0);
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: GetClassFile
- * Signature: ([CLorg/eclipse/swt/internal/ole/win32/GUID;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_GetClassFile
- (JNIEnv *env, jclass that, jcharArray szFileName, jobject clsid)
-{
- LPCWSTR szFileName1=NULL;
- GUID guid, *clsid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "GetClassFile\n");
-#endif
- if (clsid) {
- clsid1=&guid;
- getGUIDFields(env, clsid, clsid1);
- }
-
- if (szFileName)
- szFileName1 = (LPCWSTR)(*env)->GetCharArrayElements(env, szFileName, NULL);
-
- rc = GetClassFile(szFileName1, clsid1);
-
- if (szFileName)
- (*env)->ReleaseCharArrayElements(env, szFileName, (jchar *)szFileName1, 0);
-
- if (clsid) {
- setGUIDFields(env, clsid, clsid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: IIDFromString
- * Signature: ([CLorg/eclipse/swt/internal/ole/win32/GUID;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_IIDFromString
- (JNIEnv *env, jclass that, jcharArray lpsz, jobject lpiid)
-{
- LPOLESTR lpsz1=NULL;
- GUID guid, *lpiid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "IIDFromString\n");
-#endif
-
- if (lpsz)
- lpsz1 = (LPOLESTR)(*env)->GetCharArrayElements(env, lpsz, NULL);
-
- if (lpiid) {
- lpiid1=&guid;
- getGUIDFields(env, lpiid, lpiid1);
- }
-
- rc = (jint) IIDFromString(lpsz1, lpiid1);
-
- if (lpiid) {
- setGUIDFields(env, lpiid, lpiid1);
- }
-
- if (lpsz)
- (*env)->ReleaseCharArrayElements(env, lpsz, (jchar *)lpsz1, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: IsEqualGUID
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;Lorg/eclipse/swt/internal/ole/win32/GUID;)Z
- */
-JNIEXPORT jboolean JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_IsEqualGUID
- (JNIEnv *env, jclass that, jobject rguid1, jobject rguid2)
-{
- GUID guid1, *rguid11=NULL;
- GUID guid2, *rguid21=NULL;
- jboolean rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "IsEqualGUID\n");
-#endif
-
- if (rguid1) {
- rguid11=&guid1;
- getGUIDFields(env, rguid1, rguid11);
- }
-
- if (rguid2) {
- rguid21=&guid2;
- getGUIDFields(env, rguid2, rguid21);
- }
-
- rc = (jboolean) IsEqualGUID(rguid11, rguid21);
-
- if (rguid1) {
- setGUIDFields(env, rguid1, rguid11);
- }
- if (rguid2) {
- setGUIDFields(env, rguid2, rguid21);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (ILorg/eclipse/swt/internal/ole/win32/FORMATETC;I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_FORMATETC_2I
- (JNIEnv *env, jclass that, jint Destination, jobject Source, jint Length)
-{
- FORMATETC formatetc, *Source1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_FORMATETC_2I\n");
-#endif
-
- if (Source) {
- Source1=&formatetc;
- getFORMATETCFields(env, Source, Source1);
- }
- MoveMemory((PVOID)Destination, Source1, Length);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (ILorg/eclipse/swt/internal/ole/win32/GUID;I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_GUID_2I
- (JNIEnv *env, jclass that, jint DestinationPtr, jobject Source, jint Length)
-{
- GUID guid, *Source1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "MoveMemory__ILorg_eclipse_swt_internal_ole_win32_GUID_2I\n");
-#endif
-
- if (Source) {
- Source1=&guid;
- getGUIDFields(env, Source, Source1);
- }
- MoveMemory((PVOID)DestinationPtr, Source1, Length);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (ILorg/eclipse/swt/internal/ole/win32/OLEINPLACEFRAMEINFO;I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_OLEINPLACEFRAMEINFO_2I
- (JNIEnv *env, jclass that, jint DestinationPtr, jobject Source, jint Length)
-{
- OLEINPLACEFRAMEINFO oleinplaceframeinfo, *Source1=&oleinplaceframeinfo;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_OLEINPLACEFRAMEINFO_2I\n");
-#endif
-
- if (Source) {
- getOLEINPLACEFRAMEINFOFields(env, Source, Source1);
- }
-
- MoveMemory((PVOID)DestinationPtr, Source1, Length);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (ILorg/eclipse/swt/internal/ole/win32/STATSTG;I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_STATSTG_2I
- (JNIEnv *env, jclass that, jint Destination, jobject Source, jint Length)
-{
- STATSTG statstg, *Source1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_STATSTG_2I\n");
-#endif
-
- if (Source) {
- Source1=&statstg;
- getSTATSTGFields(env, Source, Source1);
- }
- MoveMemory((PVOID)Destination, Source1, Length);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (ILorg/eclipse/swt/internal/ole/win32/STGMEDIUM;I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2I
- (JNIEnv *env, jclass that, jint Destination, jobject Source, jint Length)
-{
- STGMEDIUM stgmedium, *Source1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2I\n");
-#endif
-
- if (Source) {
- Source1=&stgmedium;
- getSTGMEDIUMFields(env, Source, Source1);
- }
- MoveMemory((PVOID)Destination, Source1, Length);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/STGMEDIUM;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2II
- (JNIEnv *env, jclass that, jobject Destination, jint SourcePtr, jint Length)
-{
- STGMEDIUM stgmedium, *Destination1=&stgmedium;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2II\n");
-#endif
-
- MoveMemory((PVOID)Destination1, (CONST VOID *)SourcePtr, Length);
-
- if (Destination) {
- setSTGMEDIUMFields(env, Destination, Destination1);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/DISPPARAMS;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_DISPPARAMS_2II
- (JNIEnv *env, jclass that, jobject Destination, jint SourcePtr, jint Length)
-{
- DISPPARAMS dispparams, *Destination1=&dispparams;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_DISPPARAMS_2II\n");
-#endif
-
- MoveMemory((PVOID)Destination1, (CONST VOID *)SourcePtr, Length);
-
- if (Destination) {
- setDISPPARAMSFields(env, Destination, Destination1);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/FORMATETC;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FORMATETC_2II
- (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length)
-{
- FORMATETC formatetc, *Destination1=&formatetc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FORMATETC_2II\n");
-#endif
-
- MoveMemory((PVOID)Destination1, (CONST VOID *)Source, Length);
-
- if (Destination) {
- setFORMATETCFields(env, Destination, Destination1);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_GUID_2II
- (JNIEnv *env, jclass that, jobject Destination, jint SourcePtr, jint Length)
-{
- GUID guid, *Destination1=&guid;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_GUID_2II\n");
-#endif
-
- MoveMemory((PVOID)Destination1, (CONST VOID *)SourcePtr, Length);
-
- if (Destination) {
- setGUIDFields(env, Destination, Destination1);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/STATSTG;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_STATSTG_2II
- (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length)
-{
- STATSTG statstg, *Destination1=&statstg;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_STATSTG_2II\n");
-#endif
-
- MoveMemory((PVOID)Destination1, (CONST VOID *)Source, Length);
-
- if (Destination) {
- setSTATSTGFields(env, Destination, Destination1);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/TYPEATTR;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_TYPEATTR_2II
- (JNIEnv *env, jclass that, jobject Destination, jint SourcePtr, jint Length)
-{
- TYPEATTR typeattr, *Destination1=&typeattr;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_TYPEATTR_2II\n");
-#endif
- MoveMemory((PVOID)Destination1, (CONST VOID *)SourcePtr, Length);
- if (Destination) {
- setTYPEATTRFields(env, Destination, Destination1);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/win32/RECT;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_win32_RECT_2II
- (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length)
-{
- RECT rect, *lpDestination1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_win32_RECT_2II\n");
-#endif
-
- MoveMemory((PVOID)&rect, (CONST VOID *)Source, Length);
-
- if (Destination) {
- lpDestination1 = ▭
- setRECTFields(env, Destination, lpDestination1);
- }
-}
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/FUNCDESC1;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FUNCDESC1_2II
- (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length)
-{
- FUNCDESC funcdesc, *lpDestination1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FUNCDESC1_2II\n");
-#endif
-
- MoveMemory((PVOID)&funcdesc, (CONST VOID *)Source, Length);
-
- if (Destination) {
- lpDestination1 = &funcdesc;
- setFUNCDESC1Fields(env, Destination, lpDestination1);
- }
-}
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/FUNCDESC2;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FUNCDESC2_2II
- (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length)
-{
- FUNCDESC funcdesc, *lpDestination1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FUNCDESC2_2II\n");
-#endif
-
- MoveMemory((PVOID)&funcdesc, (CONST VOID *)Source, Length);
-
- if (Destination) {
- lpDestination1 = &funcdesc;
- setFUNCDESC2Fields(env, Destination, lpDestination1);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/VARDESC1;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_VARDESC1_2II
- (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length)
-{
- VARDESC vardesc, *lpDestination1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_VARDESC1_2II\n");
-#endif
-
- MoveMemory((PVOID)&vardesc, (CONST VOID *)Source, Length);
-
- if (Destination) {
- lpDestination1 = &vardesc;
- setVARDESC1Fields(env, Destination, lpDestination1);
- }
-}
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/VARDESC2;II)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_VARDESC2_2II
- (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length)
-{
- VARDESC vardesc, *lpDestination1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_VARDESC2_2II\n");
-#endif
-
- MoveMemory((PVOID)&vardesc, (CONST VOID *)Source, Length);
-
- if (Destination) {
- lpDestination1 = &vardesc;
- setVARDESC2Fields(env, Destination, lpDestination1);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleCreate
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;Lorg/eclipse/swt/internal/ole/win32/GUID;ILorg/eclipse/swt/internal/ole/win32/FORMATETC;II[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleCreate
- (JNIEnv *env, jclass that, jobject rclsid, jobject riid, jint renderopt,
- jobject pFormatEtc, jint pClientSite, jint pStg, jintArray ppvObject)
-{
- LPVOID *ppvObject1=NULL;
- GUID guid1, *rclsid1=NULL;
- GUID guid2, *riid1=NULL;
- FORMATETC formatec, *pFormatEtc1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleCreate\n");
-#endif
-
- if (rclsid) {
- rclsid1=&guid1;
- getGUIDFields(env, rclsid, rclsid1);
- }
- if (riid) {
- riid1=&guid2;
- getGUIDFields(env, riid, riid1);
- }
- if (pFormatEtc) {
- pFormatEtc1 = &formatec;
- getFORMATETCFields(env, pFormatEtc, pFormatEtc1);
- }
-
- if (ppvObject)
- ppvObject1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppvObject, NULL);
-
- rc = (jint) OleCreate(rclsid1, riid1, renderopt, pFormatEtc1, (IOleClientSite * )pClientSite, (IStorage * )pStg, ppvObject1);
-
- if (ppvObject)
- (*env)->ReleaseIntArrayElements(env, ppvObject, (jint *)ppvObject1, 0);
-
-/* all of these objects are inputs so we don't not need to set the
- fields back
-*/
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleCreateFromFile
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;[CLorg/eclipse/swt/internal/ole/win32/GUID;ILorg/eclipse/swt/internal/ole/win32/FORMATETC;II[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleCreateFromFile
- (JNIEnv *env, jclass that, jobject rclsid, jcharArray lpszFileName, jobject riid, jint renderopt,
- jobject pFormatEtc, jint pClientSite, jint pStg, jintArray ppvObj)
-{
- LPVOID *ppvObj1=NULL;
- LPCOLESTR lpszFileName1=NULL;
- GUID guid1, *rclsid1=NULL;
- GUID guid2, *riid1=NULL;
- FORMATETC formatec, *pFormatEtc1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleCreateFromFile\n");
-#endif
-
- if (rclsid) {
- rclsid1=&guid1;
- getGUIDFields(env, rclsid, rclsid1);
- }
-
- if (riid) {
- riid1=&guid2;
- getGUIDFields(env, riid, riid1);
- }
- if (pFormatEtc) {
- pFormatEtc1 = &formatec;
- getFORMATETCFields(env, pFormatEtc, pFormatEtc1);
- }
-
- if (lpszFileName)
- lpszFileName1 = (LPCOLESTR)(*env)->GetCharArrayElements(env, lpszFileName, NULL);
-
- if (ppvObj)
- ppvObj1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppvObj, NULL);
-
- rc = (jint) OleCreateFromFile(rclsid1, lpszFileName1, riid1, renderopt, pFormatEtc1, (LPOLECLIENTSITE)pClientSite, (LPSTORAGE)pStg, ppvObj1);
-
- if (ppvObj)
- (*env)->ReleaseIntArrayElements(env, ppvObj, (jint *)ppvObj1, 0);
-
- if (lpszFileName)
- (*env)->ReleaseCharArrayElements(env, lpszFileName, (jchar *)lpszFileName1, 0);
-
-/* all of these objects are inputs so we don't not need to set the
- fields back
-*/
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleCreatePropertyFrame
- * Signature: (III[CI[IIIIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleCreatePropertyFrame
- (JNIEnv *env, jclass that, jint hwndOwner, jint x, jint y, jcharArray lpszCaption, jint cObjects, jintArray lplpUnk, jint cPages, jint lpPageClsID, jint lcid, jint dwReserved, jint lpvReserved)
-{
- LPCOLESTR lpszCaption1=NULL;
- jint *lplpUnk1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleCreatePropertyFrame\n");
-#endif
-
- if (lpszCaption)
- lpszCaption1 = (LPCOLESTR)(*env)->GetCharArrayElements(env, lpszCaption, NULL);
-
- if (lplpUnk)
- lplpUnk1 = (*env)->GetIntArrayElements(env, lplpUnk, NULL);
-
- rc = (jint) OleCreatePropertyFrame((HWND)hwndOwner, x, y, lpszCaption1, cObjects, (LPUNKNOWN FAR*)lplpUnk1, cPages, (LPCLSID)lpPageClsID, (LCID)lcid, dwReserved, (LPVOID)lpvReserved);
-
- if (lplpUnk)
- (*env)->ReleaseIntArrayElements(env, lplpUnk, (jint *)lplpUnk1, 0);
-
- if (lpszCaption)
- (*env)->ReleaseCharArrayElements(env, lpszCaption, (jchar *)lpszCaption1, 0);
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleIsRunning
- * Signature: (I)Z
- */
-JNIEXPORT jboolean JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleIsRunning
- (JNIEnv *env, jclass that, jint pObject)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleIsRunning\n");
-#endif
- return (jboolean) OleIsRunning((LPOLEOBJECT)pObject);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleLoad
- * Signature: (ILorg/eclipse/swt/internal/ole/win32/GUID;I[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleLoad
- (JNIEnv *env, jclass that, jint pStg, jobject riid, jint pClientSite, jintArray ppvObj)
-{
- LPVOID *ppvObj1=NULL;
- GUID guid, *riid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleLoad\n");
-#endif
- if (riid) {
- riid1=&guid;
- getGUIDFields(env, riid, riid1);
- }
-
- if (ppvObj)
- ppvObj1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppvObj, NULL);
-
- rc = (jint) OleLoad((IStorage *)pStg, riid1, (IOleClientSite *)pClientSite, ppvObj1); /* cast it to an OLE function returning int */
-
- if (ppvObj)
- (*env)->ReleaseIntArrayElements(env, ppvObj, (jint *)ppvObj1, 0);
-
- if (riid) {
- setGUIDFields(env, riid, riid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleRun
- * Signature: (I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleRun
- (JNIEnv *env, jclass that, jint pUnknown)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleRun\n");
-#endif
- return (jint) OleRun((LPUNKNOWN)pUnknown);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleSave
- * Signature: (IIZ)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleSave
- (JNIEnv *env, jclass that, jint pPS, jint pStg, jboolean fSameAsLoad)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleSave\n");
-#endif
- return (jint) OleSave((IPersistStorage *)pPS, (IStorage *)pStg, fSameAsLoad);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleSetContainedObject
- * Signature: (IZ)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleSetContainedObject
- (JNIEnv *env, jclass that, jint pUnk, jboolean fContained)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleSetContainedObject\n");
-#endif
- return (jint) OleSetContainedObject((LPUNKNOWN)pUnk, fContained);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleSetMenuDescriptor
- * Signature: (IIIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleSetMenuDescriptor
- (JNIEnv *env, jclass that, jint holemenu, jint hwndFrame, jint hwndActiveObject, jint lpFrame, jint lpActiveObj)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleSetMenuDescriptor\n");
-#endif
- return (jint) OleSetMenuDescriptor((HOLEMENU)holemenu, (HWND)hwndFrame, (HWND)hwndActiveObject, (LPOLEINPLACEFRAME)lpFrame, (LPOLEINPLACEACTIVEOBJECT)lpActiveObj);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleTranslateColor
- * Signature: (II[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleTranslateColor
- (JNIEnv *env, jclass that, jint clr, jint hpal, jintArray pcolorref)
-{
- jint *pcolorref1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleTranslateColor\n");
-#endif
-
- if (pcolorref)
- pcolorref1 = (*env)->GetIntArrayElements(env, pcolorref, NULL);
-
- rc = (jint) OleTranslateColor((OLE_COLOR)clr, (HPALETTE)hpal, (COLORREF *)pcolorref1);
-
- if (pcolorref)
- (*env)->ReleaseIntArrayElements(env, pcolorref, pcolorref1, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: RegisterDragDrop
- * Signature: (II)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_RegisterDragDrop
- (JNIEnv *env, jclass that, jint hwnd, jint pDropTarget)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "RegisterDragDrop\n");
-#endif
- return (jint) RegisterDragDrop((HWND)hwnd, (IDropTarget *)pDropTarget);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: RevokeDragDrop
- * Signature: (I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_RevokeDragDrop
- (JNIEnv *env, jclass that, jint hwnd)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "RevokeDragDrop\n");
-#endif
- return (jint) RevokeDragDrop((HWND)hwnd);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: StgCreateDocfile
- * Signature: ([CII[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_StgCreateDocfile
- (JNIEnv *env, jclass that, jcharArray pwcsName, jint grfMode, jint reserved, jintArray ppstgOpen)
-{
- jchar *pwcsName1=NULL;
- IStorage **ppstgOpen1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "StgCreateDocfile\n");
-#endif
-
- if (pwcsName)
- pwcsName1 = (*env)->GetCharArrayElements(env, pwcsName, NULL);
-
- if (ppstgOpen)
- ppstgOpen1 = (IStorage **)(*env)->GetIntArrayElements(env, ppstgOpen, NULL);
-
- rc = (jint) StgCreateDocfile(pwcsName1, grfMode, reserved, ppstgOpen1);
-
- if (ppstgOpen)
- (*env)->ReleaseIntArrayElements(env, ppstgOpen, (jint *)ppstgOpen1, 0);
-
- if (pwcsName)
- (*env)->ReleaseCharArrayElements(env, pwcsName, pwcsName1, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: StgIsStorageFile
- * Signature: ([C)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_StgIsStorageFile
- (JNIEnv *env, jclass that, jcharArray pwcsName)
-{
- const WCHAR *pwcsName1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "StgIsStorageFile\n");
-#endif
-
- if (pwcsName)
- pwcsName1 = (const WCHAR *)(*env)->GetCharArrayElements(env, pwcsName, NULL);
-
- rc = (jint)StgIsStorageFile(pwcsName1);
-
- if (pwcsName)
- (*env)->ReleaseCharArrayElements(env, pwcsName, (jchar *)pwcsName1, 0);
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: StgOpenStorage
- * Signature: ([CIIII[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_StgOpenStorage
- (JNIEnv *env, jclass that, jcharArray pwcsName, jint pstgPriority, jint grfMode, jint snbExclude, jint reserved, jintArray ppstgOpen)
-{
- const WCHAR *pwcsName1=NULL;
- IStorage **ppstgOpen1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "StgOpenStorage\n");
-#endif
-
- if (pwcsName)
- pwcsName1 = (const WCHAR *)(*env)->GetCharArrayElements(env, pwcsName, NULL);
-
- if (ppstgOpen)
- ppstgOpen1 = (IStorage **)(*env)->GetIntArrayElements(env, ppstgOpen, NULL);
-
- rc = (jint) StgOpenStorage(pwcsName1, (IStorage *)pstgPriority, grfMode, (SNB)snbExclude, reserved, ppstgOpen1);
-
- if (ppstgOpen)
- (*env)->ReleaseIntArrayElements(env, ppstgOpen, (jint *)ppstgOpen1, 0);
-
- if (pwcsName)
- (*env)->ReleaseCharArrayElements(env, pwcsName, (jchar *)pwcsName1, 0);
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: StringFromCLSID
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_StringFromCLSID
- (JNIEnv *env, jclass that, jobject rclsid, jintArray ppsz)
-{
- LPOLESTR *ppsz1=NULL;
- GUID guid, *rclsid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_StringFromCLSID\n");
-#endif
-
- if (rclsid) {
- rclsid1=&guid;
- getGUIDFields(env, rclsid, rclsid1);
- }
-
- if (ppsz)
- ppsz1 = (LPOLESTR *)(*env)->GetIntArrayElements(env, ppsz, NULL);
-
- rc = (jint) StringFromCLSID(rclsid1, ppsz1);
-
- if (ppsz)
- (*env)->ReleaseIntArrayElements(env, ppsz, (jint *)ppsz1, 0);
-
- if (rclsid) {
- setGUIDFields(env, rclsid, rclsid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: SysAllocString
- * Signature: ([C)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_SysAllocString
- (JNIEnv *env, jclass that, jcharArray sz0)
-{
- jchar *sz01=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "SysAllocString\n");
-#endif
- if (sz0)
- sz01 = (*env)->GetCharArrayElements(env, sz0, NULL);
- rc = (jint) SysAllocString( (OLECHAR *) sz01);
- if (sz0)
- (*env)->ReleaseCharArrayElements(env, sz0, sz01, 0);
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: SysFreeString
- * Signature: (I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_SysFreeString
- (JNIEnv *env, jclass that, jint bstr)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "SysFreeString\n");
-#endif
- SysFreeString((BSTR)bstr);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: SysStringByteLen
- * Signature: (I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_SysStringByteLen
- (JNIEnv *env, jclass that, jint bstr)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "SysStringByteLen\n");
-#endif
- return (jint) SysStringByteLen((BSTR)bstr);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VariantChangeType
- * Signature: (IISS)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VariantChangeType
- (JNIEnv *env, jclass that, jint pvargDest, jint pvarSrc, jshort wFlags, jshort vt)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VariantChangeType\n");
-#endif
- return (jint) VariantChangeType((VARIANTARG FAR* )pvargDest, (VARIANTARG FAR* )pvarSrc, wFlags, (VARTYPE) vt);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VariantClear
- * Signature: (I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VariantClear
- (JNIEnv *env, jclass that, jint pvarg)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VariantClear\n");
-#endif
- return (jint) VariantClear((VARIANTARG FAR* ) pvarg);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VariantInit
- * Signature: (I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VariantInit
- (JNIEnv *env, jclass that, jint pvarg)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VariantInit\n");
-#endif
- VariantInit((VARIANTARG FAR*)pvarg);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (II)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl)
-{
- P_OLE_FN_1 fn; /* this is a function that returns int */
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II\n");
-#endif
- fn = (P_OLE_FN_1)(*(int **)ppVtbl)[fnNumber];
- return fn(ppVtbl); /* cast it to an OLE function returning int */
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (II[C)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3C
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0)
-{
- P_OLE_FN_2 fn;
- jchar *arg01=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3C\n");
-#endif
-
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0)
- arg01 = (*env)->GetCharArrayElements(env, arg0, NULL);
-
- rc = fn(ppVtbl, (jint)arg01);
-
- if (arg0)
- (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (II[C[C)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3C_3C
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jcharArray arg1)
-{
- P_OLE_FN_3 fn; /* this is a function that returns int */
- jchar *arg01=NULL, *arg11=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3C_3C\n");
-#endif
-
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0)
- arg01 = (*env)->GetCharArrayElements(env, arg0, NULL);
-
- if (arg1)
- arg11 = (*env)->GetCharArrayElements(env, arg1, NULL);
-
- rc = fn(ppVtbl, (jint)arg01, (jint)arg11); /* cast it to an OLE function returning int */
-
- if (arg1)
- (*env)->ReleaseCharArrayElements(env, arg1, arg11, 0);
-
- if (arg0)
- (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (II[CI)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3CI
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jint arg1)
-{
- P_OLE_FN_3 fn; /* this is a function that returns int */
- jchar *arg01=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3CI\n");
-#endif
-
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0)
- arg01 = (*env)->GetCharArrayElements(env, arg0, NULL);
-
- rc = fn(ppVtbl, (jint)arg01, arg1);
-
- if (arg0)
- (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (II[CIII[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3CIII_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jint arg1, jint arg2, jint arg3, jintArray arg4)
-{
- P_OLE_FN_6 fn; /* this is a function that returns int */
- jchar *arg01=NULL;
- jint *arg41=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3CIII_3I\n");
-#endif
-
- fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0)
- arg01 = (*env)->GetCharArrayElements(env, arg0, NULL);
- if (arg4)
- arg41 = (*env)->GetIntArrayElements(env, arg4, NULL);
-
- rc = fn(ppVtbl, (jint)arg01, arg1, arg2, arg3, (jint)arg41); /* cast it to an OLE function returning int */
-
- if (arg4)
- (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0);
- if (arg0)
- (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (II[CIIII[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3CIIII_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jint arg1, jint arg2, jint arg3, jint arg4, jintArray arg5)
-{
- P_OLE_FN_7 fn; /* this is a function that returns int */ jchar *arg01=NULL;
- jint *arg51=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3CIIII_3I\n");
-#endif
-
- fn = (P_OLE_FN_7)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0)
- arg01 = (*env)->GetCharArrayElements(env, arg0, NULL);
- if (arg5)
- arg51 = (*env)->GetIntArrayElements(env, arg5, NULL);
-
- rc = fn(ppVtbl, (jint)arg01, arg1, arg2, arg3, arg4, (jint)arg51); /* cast it to an OLE function returning int */
-
- if (arg5)
- (*env)->ReleaseIntArrayElements(env, arg5, arg51, 0);
- if (arg0)
- (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (II[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jintArray arg0)
-{
- P_OLE_FN_2 fn; /* this is a function that returns int */
- jint *arg01=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3I\n");
-#endif
-
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0)
- arg01 = (*env)->GetIntArrayElements(env, arg0, NULL);
-
- rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */
-
- if (arg0)
- (*env)->ReleaseIntArrayElements(env, arg0, arg01, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (III)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__III
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0)
-{
- P_OLE_FN_2 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__III\n");
-#endif
-
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
-
- rc = fn(ppVtbl, arg0); /* cast it to an OLE function returning int */
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIII
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1)
-{
- P_OLE_FN_3 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIII\n");
-#endif
-
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
-
- rc = fn(ppVtbl, arg0, arg1); /* cast it to an OLE function returning int */
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (III[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__III_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jintArray arg1)
-{
- P_OLE_FN_3 fn;
-
- jint *arg11=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__III_3I\n");
-#endif
-
- fn = (P_OLE_FN_3)(*((jint **)ppVtbl))[fnNumber];
-
- if (arg1)
- arg11 = (*env)->GetIntArrayElements(env, arg1, NULL);
-
- rc = fn(ppVtbl, arg0, (jint)arg11);
-
- if (arg1)
- (*env)->ReleaseIntArrayElements(env, arg1, arg11, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIII[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIII_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jintArray arg2)
-{
- P_OLE_FN_4 fn; /* this is a function that returns int */
- jint *arg21=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIII_3I\n");
-#endif
-
- fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber];
-
- if (arg2)
- arg21 = (*env)->GetIntArrayElements(env, arg2, NULL);
-
- rc = fn(ppVtbl, arg0, arg1, (jint)arg21); /* cast it to an OLE function returning int */
-
- if (arg2)
- (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIII
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2)
-{
- P_OLE_FN_4 fn; /* this is a function that returns int */
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIII\n");
-#endif
-
- fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber];
- return fn(ppVtbl, arg0, arg1, arg2);;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIII[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIII_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
- P_OLE_FN_5 fn; /* this is a function that returns int */
- jint *arg31=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VtblCall__IIIII_3I\n");
-#endif
-
- fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber];
-
- if (arg3)
- arg31 = (*env)->GetIntArrayElements(env, arg3, NULL);
-
- rc = fn(ppVtbl, arg0, arg1, arg2, (jint)arg31);
-
- if (arg3)
- (*env)->ReleaseIntArrayElements(env, arg3, arg31, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIIII[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIII_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jintArray arg4)
-{
- P_OLE_FN_6 fn;
- jint *arg41=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3CIIII_3I\n");
-#endif
-
- fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber];
- if (arg4)
- arg41 = (*env)->GetIntArrayElements(env, arg4, NULL);
-
- rc = fn(ppVtbl, arg0, arg1, arg2, arg3, (jint)arg41);
-
- if (arg4)
- (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIIIII[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIIII_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jintArray arg5)
-{
- P_OLE_FN_7 fn;
-
- jint *arg51=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIIIII_3I\n");
-#endif
-
- fn = (P_OLE_FN_7)(*((jint **)ppVtbl))[fnNumber];
-
- if (arg5)
- arg51 = (*env)->GetIntArrayElements(env, arg5, NULL);
-
- rc = fn(ppVtbl, arg0, arg1, arg2, arg3, arg4, (jint)arg51);
-
- if (arg5)
- (*env)->ReleaseIntArrayElements(env, arg5, arg51, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIILorg/eclipse/swt/internal/ole/win32/DVTARGETDEVICE;Lorg/eclipse/swt/internal/win32/SIZE;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_DVTARGETDEVICE_2Lorg_eclipse_swt_internal_win32_SIZE_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jobject arg2, jobject arg3)
-{
- DVTARGETDEVICE dvtargetdevice, *arg21=NULL;
- SIZE size, *arg31=NULL;
- P_OLE_FN_5 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_DVTARGETDEVICE_2Lorg_eclipse_swt_internal_win32_SIZE_2\n");
-#endif
-
- fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber];
- if (arg2) {
- arg21=&dvtargetdevice;
- getDVTARGETDEVICEFields(env, arg2, arg21);
- }
- if (arg3) {
- arg31=&size;
- getSIZEFields(env, arg3, arg31);
- }
-
- rc = fn(ppVtbl, arg0, arg1, (jint)arg21, (jint)arg31); /* cast it to an OLE function returning int */
-
- if (arg2) {
- setDVTARGETDEVICEFields(env, arg2, arg21);
- }
- if (arg3) {
- setSIZEFields(env, arg3, arg31);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIILorg/eclipse/swt/internal/ole/win32/GUID;I[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_GUID_2I_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jobject arg2, jint arg3, jintArray arg4)
-{
- jint *arg41=NULL;
- GUID guid, *arg21=NULL;
- P_OLE_FN_6 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_GUID_2I_3I\n");
-#endif
- fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber];
- if (arg2) {
- arg21=&guid;
- getGUIDFields(env, arg2, arg21);
- }
-
- if (arg4)
- arg41 = (*env)->GetIntArrayElements(env, arg4, NULL);
-
- rc = fn(ppVtbl, arg0, arg1, (jint)arg21, arg3, (jint)arg41); /* cast it to an OLE function returning int */
-
- if (arg4)
- (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0);
-
- if (arg2) {
- setGUIDFields(env, arg2, arg21);
- }
- return rc;
-}
-
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIILorg/eclipse/swt/internal/ole/win32/FORMATETC;[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_FORMATETC_2_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jintArray arg2)
-{
- P_OLE_FN_4 fn;
- FORMATETC formatetc, *arg11=NULL;
- jint *arg21=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_FORMATETC_2_3I\n");
-#endif
-
- fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber];
-
- if (arg1) {
- arg11 = &formatetc;
- getFORMATETCFields(env, arg1, arg11);
- }
- if (arg2)
- arg21 = (*env)->GetIntArrayElements(env, arg2, NULL);
-
- rc = fn(ppVtbl, arg0, (jint)arg11, (jint)arg21);
-
- if (arg2)
- (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0);
-
- if (arg1) {
- setFORMATETCFields(env, arg1, arg11);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIILorg/eclipse/swt/internal/ole/win32/GUID;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1)
-{
- GUID guid, *arg11=NULL;
- P_OLE_FN_3 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_GUID_2n");
-#endif
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
- if (arg1) {
- arg11=&guid;
- getGUIDFields(env, arg1, arg11);
- }
-
- rc = fn(ppVtbl, arg0, (jint)arg11); /* cast it to an COM function returning int */
-
- if (arg1) {
- setGUIDFields(env, arg1, arg11);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIILorg/eclipse/swt/internal/ole/win32/GUID;II)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2II
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jint arg2, jint arg3)
-{
- GUID guid, *arg11=NULL;
- P_OLE_FN_5 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2II\n");
-#endif
- fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber];
- if (arg1) {
- arg11=&guid;
- getGUIDFields(env, arg1, arg11);
- }
-
- rc = fn(ppVtbl, arg0, (jint)arg11, arg2, arg3); /* cast it to an OLE function returning int */
-
- if (arg1) {
- setGUIDFields(env, arg1, arg11);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIILorg/eclipse/swt/internal/ole/win32/GUID;IILorg/eclipse/swt/internal/ole/win32/DISPPARAMS;ILorg/eclipse/swt/internal/ole/win32/EXCEPINFO;[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2IILorg_eclipse_swt_internal_ole_win32_DISPPARAMS_2ILorg_eclipse_swt_internal_ole_win32_EXCEPINFO_2_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jint arg2, jint arg3, jobject arg4, jint arg5, jobject arg6, jintArray arg7)
-{
- jint *arg71=NULL;
- GUID guid, *arg11=NULL;
- EXCEPINFO excepinfo, *arg61=NULL;
- DISPPARAMS dispparams, *arg41=NULL;
- P_OLE_FN_9 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2IILorg_eclipse_swt_internal_ole_win32_DISPPARAMS_2ILorg_eclipse_swt_internal_ole_win32_EXCEPINFO_2_3I\n");
-#endif
-
- fn = (P_OLE_FN_9)(*(int **)ppVtbl)[fnNumber];
- if (arg1) {
- arg11=&guid;
- getGUIDFields(env, arg1, arg11);
- }
- if (arg4) {
- arg41=&dispparams;
- getDISPPARAMSFields(env, arg4, arg41);
- }
-
- if (arg6) {
- arg61=&excepinfo;
- getEXCEPINFOFields(env, arg6, arg61);
- }
-
- if (arg7)
- arg71 = (*env)->GetIntArrayElements(env, arg7, NULL);
-
- rc = fn(ppVtbl, arg0, (jint)arg11, arg2, arg3, (jint)arg41, arg5, (jint)arg61, (jint)arg71); /* cast it to an OLE function returning int */
-
- if (arg7)
- (*env)->ReleaseIntArrayElements(env, arg7, arg71, 0);
-
- if (arg6) {
- setEXCEPINFOFields(env, arg6, arg61);
- }
-
- if (arg4) {
- setDISPPARAMSFields(env, arg4, arg41);
- }
-
- if (arg1) {
- setGUIDFields(env, arg1, arg11);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIILorg/eclipse/swt/internal/ole/win32/STATSTG;[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_STATSTG_2_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jintArray arg2)
-{
- jint *arg21=NULL;
- STATSTG statstg, *arg11=NULL;
- P_OLE_FN_4 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VtblCall__IIILorg_eclipse_swt_internal_ole_win32_STATSTG_2_3I\n");
-#endif
- fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber];
- if (arg1) {
- arg11=&statstg;
- getSTATSTGFields(env, arg1, arg11);
- }
-
- if (arg2)
- arg21 = (*env)->GetIntArrayElements(env, arg2, NULL);
-
- rc = fn(ppVtbl, arg0, (jint)arg11, (jint)arg21); /* cast it to an OLE function returning int */
-
- if (arg2)
- (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0);
-
- if (arg1) {
- setSTATSTGFields(env, arg1, arg11);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIILorg/eclipse/swt/internal/win32/MSG;IIILorg/eclipse/swt/internal/win32/RECT;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_win32_MSG_2IIILorg_eclipse_swt_internal_win32_RECT_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jint arg2, jint arg3, jint arg4, jobject arg5)
-{
- MSG msg, *arg11=NULL;
- RECT rect, *arg51=NULL;
- P_OLE_FN_7 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_win32_MSG_2IIILorg_eclipse_swt_internal_win32_RECT_2\n");
-#endif
-
- fn = (P_OLE_FN_7)(*(int **)ppVtbl)[fnNumber];
- if (arg1) {
- arg11=&msg;
- getMSGFields(env, arg1, arg11);
- }
- if (arg5) {
- arg51=▭
- getRECTFields(env, arg5, arg51);
- }
-
- rc = fn(ppVtbl, arg0, (jint)arg11, arg2, arg3, arg4, (jint)arg51); /* cast it to an OLE function returning int */
-
- if (arg1) {
- setMSGFields(env, arg1, arg11);
- }
- if (arg5) {
- setRECTFields(env, arg5, arg51);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/win32/MSG;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_MSG_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- MSG msg, *arg01=NULL;
- P_OLE_FN_2 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_win32_MSG_2\n");
-#endif
-
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&msg;
- getMSGFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */
-
- if (arg0) {
- setMSGFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIILorg/eclipse/swt/internal/win32/SIZE;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_win32_SIZE_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1)
-{
- SIZE size, *arg11=NULL;
- P_OLE_FN_3 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_win32_SIZE_2\n");
-#endif
-
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
- if (arg1) {
- arg11=&size;
- getSIZEFields(env, arg1, arg11);
- }
-
- rc = fn(ppVtbl, arg0, (jint)arg11); /* cast it to an COM function returning int */
-
- if (arg1) {
- setSIZEFields(env, arg1, arg11);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIZ)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIZ
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jboolean arg1)
-{
- P_OLE_FN_3 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIZ\n");
-#endif
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
-
- rc = fn(ppVtbl, arg0, arg1); /* cast it to an OLE function returning int */
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/CAUUID;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_CAUUID_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- P_OLE_FN_2 fn; /* this is a function that returns int */
- CAUUID cauuid, *arg01=&cauuid;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3C\n");
-#endif
-
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0) {
- getCAUUIDFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */
-
- if (arg0) {
- setCAUUIDFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/CONTROLINFO;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_CONTROLINFO_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- CONTROLINFO controlinfo, *arg01=NULL;
- P_OLE_FN_2 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_CONTROLINFO_2\n");
-#endif
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&controlinfo;
- getCONTROLINFOFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */
-
- if (arg0) {
- setCONTROLINFOFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/FORMATETC;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- P_OLE_FN_2 fn;
- FORMATETC formatetc, *arg01=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2\n");
-#endif
-
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0) {
- arg01 = &formatetc;
- getFORMATETCFields(env, arg0, arg01);
- }
- rc = fn(ppVtbl, (jint)arg01);
-
- if (arg0) {
- setFORMATETCFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/FORMATETC;Lorg/eclipse/swt/internal/ole/win32/STGMEDIUM;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jobject arg1)
-{
- P_OLE_FN_3 fn;
- FORMATETC formatetc, *arg01=NULL;
- STGMEDIUM stgmedium, *arg11=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2\n");
-#endif
-
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0) {
- arg01 = &formatetc;
- getFORMATETCFields(env, arg0, arg01);
- }
- if (arg1) {
- arg11 = &stgmedium;
- getSTGMEDIUMFields(env, arg1, arg11);
- }
- rc = fn(ppVtbl, (jint)arg01, (jint)arg11);
-
- if (arg0) {
- setFORMATETCFields(env, arg0, arg01);
- }
- if (arg1) {
- setSTGMEDIUMFields(env, arg1, arg11);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/FORMATETC;Lorg/eclipse/swt/internal/ole/win32/STGMEDIUM;Z)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2Z
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jobject arg1, jboolean arg2)
-{
- P_OLE_FN_4 fn;
- FORMATETC formatetc, *arg01=NULL;
- STGMEDIUM stgmedium, *arg11=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2Z\n");
-#endif
-
- fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0) {
- arg01 = &formatetc;
- getFORMATETCFields(env, arg0, arg01);
- }
- if (arg1) {
- arg11 = &stgmedium;
- getSTGMEDIUMFields(env, arg1, arg11);
- }
- rc = fn(ppVtbl, (jint)arg01, (jint)arg11, (jint)arg2);
-
- if (arg0) {
- setFORMATETCFields(env, arg0, arg01);
- }
- if (arg1) {
- setSTGMEDIUMFields(env, arg1, arg11);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- GUID guid, *arg01=NULL;
- P_OLE_FN_2 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2\n");
-#endif
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&guid;
- getGUIDFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */
-
- if (arg0) {
- setGUIDFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jintArray arg1)
-{
- jint *arg11=NULL;
- GUID guid, *arg01=NULL;
- P_OLE_FN_3 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2_3I\n");
-#endif
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0) {
- arg01=&guid;
- getGUIDFields(env, arg0, arg01);
- }
-
- if (arg1)
- arg11 = (*env)->GetIntArrayElements(env, arg1, NULL);
-
- rc = fn(ppVtbl, (jint)arg01, (jint)arg11); /* cast it to an OLE function returning int */
-
- if (arg1)
- (*env)->ReleaseIntArrayElements(env, arg1, arg11, 0);
-
- if (arg0) {
- setGUIDFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;III[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2III_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jint arg1, jint arg2, jint arg3, jintArray arg4)
-{
- jint *arg41=NULL;
- GUID guid, *arg01=NULL;
- P_OLE_FN_6 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2III_3I\n");
-#endif
- fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&guid;
- getGUIDFields(env, arg0, arg01);
- }
-
- if (arg4)
- arg41 = (*env)->GetIntArrayElements(env, arg4, NULL);
-
- rc = fn(ppVtbl, (jint)arg01, arg1, arg2, arg3, (jint)arg41); /* cast it to an OLE function returning int */
-
- if (arg4)
- (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0);
-
- if (arg0) {
- setGUIDFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;IIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2IIII
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- GUID guid, *arg01=NULL;
- P_OLE_FN_6 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2IIII\n");
-#endif
- fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&guid;
- getGUIDFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01, arg1, arg2, arg3, arg4);
-
- if (arg0) {
- setGUIDFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;ILorg/eclipse/swt/internal/ole/win32/OLECMD;Lorg/eclipse/swt/internal/ole/win32/OLECMDTEXT;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2ILorg_eclipse_swt_internal_ole_win32_OLECMD_2Lorg_eclipse_swt_internal_ole_win32_OLECMDTEXT_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jint arg1, jobject arg2, jobject arg3)
-{
- GUID guid, *arg01=NULL;
- OLECMD olecmd, *arg21=NULL;
- OLECMDTEXT olecmdtext, *arg31=NULL;
-
- P_OLE_FN_5 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2ILorg_eclipse_swt_internal_ole_win32_OLECMD_2Lorg_eclipse_swt_internal_ole_win32_OLECMDTEXT_2\n");
-#endif
- fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&guid;
- getGUIDFields(env, arg0, arg01);
- }
- if (arg2) {
- arg21=&olecmd;
- getOLECMDFields(env, arg2, arg21);
- }
- if (arg3) {
- arg31=&olecmdtext;
- getOLECMDTEXTFields(env, arg3, arg31);
- }
-
- rc = fn(ppVtbl, (jint)arg01, arg1, (jint)arg21, (jint)arg31);
-
- if (arg0) {
- setGUIDFields(env, arg0, arg01);
- }
- if (arg2) {
- setOLECMDFields(env, arg2, arg21);
- }
- if (arg3) {
- setOLECMDTEXTFields(env, arg3, arg31);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/LICINFO;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_LICINFO_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- LICINFO licinfo, *arg01=NULL;
- P_OLE_FN_2 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_LICINFO_2\n");
-#endif
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&licinfo;
- getLICINFOFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */
-
- if (arg0) {
- setLICINFOFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/win32/RECT;IZ)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2IZ
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jint arg1, jboolean arg2)
-{
- RECT rect, *arg01=NULL;
- P_OLE_FN_4 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2IZ\n");
-#endif
-
- fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=▭
- getRECTFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01, arg1, arg2); /* cast it to an OLE function returning int */
-
- if (arg0) {
- setRECTFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/win32/RECT;Lorg/eclipse/swt/internal/win32/RECT;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2Lorg_eclipse_swt_internal_win32_RECT_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jobject arg1)
-{
- RECT rect0, *arg01=NULL;
- RECT rect1, *arg11=NULL;
- P_OLE_FN_3 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2Lorg_eclipse_swt_internal_win32_RECT_2\n");
-#endif
-
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&rect0;
- getRECTFields(env, arg0, arg01);
- }
- if (arg1) {
- arg11=&rect1;
- getRECTFields(env, arg1, arg11);
- }
- rc = fn(ppVtbl, (jint)arg01, (jint)arg11); /* cast it to an OLE function returning int */
-
- if (arg1) {
- setRECTFields(env, arg1, arg11);
- }
- if (arg0) {
- setRECTFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/win32/RECT;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- RECT rect0, *arg01=NULL;
- P_OLE_FN_2 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2\n");
-#endif
-
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&rect0;
- getRECTFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */
-
- if (arg0) {
- setRECTFields(env, arg0, arg01);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (III[I[I[I[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__III_3I_3I_3I_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jintArray arg1, jintArray arg2, jintArray arg3, jintArray arg4)
-{
- jint *arg11=NULL;
- jint *arg21=NULL;
- jint *arg31=NULL;
- jint *arg41=NULL;
- P_OLE_FN_6 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__III_3I_3I_3I_31\n");
-#endif
- fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber];
- if (arg1)
- arg11 = (*env)->GetIntArrayElements(env, arg1, NULL);
-
- if (arg2)
- arg21 = (*env)->GetIntArrayElements(env, arg2, NULL);
-
- if (arg3)
- arg31 = (*env)->GetIntArrayElements(env, arg3, NULL);
-
- if (arg4)
- arg41 = (*env)->GetIntArrayElements(env, arg4, NULL);
-
- rc = fn(ppVtbl, arg0, (jint)arg11, (jint)arg21, (jint)arg31, (jint)arg41); /* cast it to an OLE function returning int */
-
- if (arg1)
- (*env)->ReleaseIntArrayElements(env, arg1, arg11, 0);
-
- if (arg2)
- (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0);
-
- if (arg3)
- (*env)->ReleaseIntArrayElements(env, arg3, arg31, 0);
-
- if (arg4)
- (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0);
-
-
- return rc;
-}
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (III[II[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__III_3II_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jintArray arg1, jint arg2, jintArray arg3)
-{
- jint *arg11=NULL;
- jint *arg31=NULL;
- P_OLE_FN_5 fn; /* this is a function that returns int */
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__III_3II_3I\n");
-#endif
- fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber];
- if (arg1)
- arg11 = (*env)->GetIntArrayElements(env, arg1, NULL);
-
- if (arg3)
- arg31 = (*env)->GetIntArrayElements(env, arg3, NULL);
-
- rc = fn(ppVtbl, arg0, (jint)arg11, arg2, (jint)arg31); /* cast it to an OLE function returning int */
-
- if (arg1)
- (*env)->ReleaseIntArrayElements(env, arg1, arg11, 0);
-
- if (arg3)
- (*env)->ReleaseIntArrayElements(env, arg3, arg31, 0);
-
- return rc;
-}
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: WriteClassStg
- * Signature: (ILorg/eclipse/swt/internal/ole/win32/GUID;)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_WriteClassStg
- (JNIEnv *env, jclass that, jint pStg, jobject rclsid)
-{
- GUID guid, *rclsid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "WriteClassStg\n");
-#endif
- if (rclsid) {
- rclsid1=&guid;
- getGUIDFields(env, rclsid, rclsid1);
- }
- rc = (jint) WriteClassStg((IStorage *)pStg, rclsid1);
-
- if (rclsid) {
- setGUIDFields(env, rclsid, rclsid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleGetClipboard
- * Signature: ([I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleGetClipboard
- (JNIEnv *env, jclass that, jintArray ppDataObj)
-{
- IDataObject **ppDataObj1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleGetClipboard\n");
-#endif
- if (ppDataObj)
- ppDataObj1 = (IDataObject **)(*env)->GetIntArrayElements(env, ppDataObj, NULL);
-
- rc = (jint) OleGetClipboard(ppDataObj1);
-
- if (ppDataObj)
- (*env)->ReleaseIntArrayElements(env, ppDataObj, (jint *)ppDataObj1, 0);
-
- return rc;
-}
-
- /*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleIsCurrentClipboard
- * Signature: (I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleIsCurrentClipboard
- (JNIEnv *env, jclass that, jint pDataObj)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleIsCurrentClipboard\n");
-#endif
- return (jint) OleIsCurrentClipboard((IDataObject *)pDataObj);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleSetClipboard
- * Signature: (I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleSetClipboard
- (JNIEnv *env, jclass that, jint pDataObj)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleSetClipboard\n");
-#endif
- return (jint) OleSetClipboard((IDataObject *)pDataObj);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleFlushClipboard
- * Signature: ()I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleFlushClipboard
- (JNIEnv *env, jclass that)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleFlushClipboard\n");
-#endif
- return (jint) OleFlushClipboard();
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: OleDraw
- * Signature: (IIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleDraw
- (JNIEnv *env, jclass that, jint pUnk, jint dwAspect, jint hdcDraw, jint lprcBounds)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "OleDraw\n");
-#endif
- return (jint) OleDraw((LPUNKNOWN)pUnk, (DWORD)dwAspect, (HDC)hdcDraw, (LPRECT)lprcBounds);
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: ReleaseStgMedium
- * Signature: (I)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_ReleaseStgMedium
- (JNIEnv *env, jclass that, jint pmedium)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "ReleaseStgMedium\n");
-#endif
- ReleaseStgMedium((STGMEDIUM *)pmedium);
-}
-
-/* ------------- obsolete OLE calls ------------- */
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: DispGetParam
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/DISPPARAMS;III[I)I
- */
-/*JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_DispGetParam
- (JNIEnv *env, jclass that, jobject pdispparams, jint position, jint vtTarg, jint pvarResult, jintArray puArgErr)
-{
- unsigned int FAR *puArgErr1=NULL;
- DISPPARAMS dispparams, *pdispparams1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "DispGetParam\n");
-#endif
-
- if (pdispparams) {
- pdispparams1=&dispparams;
- cacheDispparamsFids(env, pdispparams, &DispparamsFc);
- getDISPPARAMSFields(env, pdispparams, pdispparams1, &DispparamsFc);
- }
- if (puArgErr)
- puArgErr1 = (*env)->GetIntArrayElements(env, puArgErr, NULL);
-
- rc = (jint) DispGetParam(pdispparams1, position, (VARTYPE)vtTarg, (VARIANT FAR *)pvarResult, puArgErr1);
-
- if (puArgErr)
- (*env)->ReleaseIntArrayElements(env, puArgErr, puArgErr1, 0);
-
- if (pdispparams) {
- setDISPPARAMSFields(env, pdispparams, pdispparams1, &DispparamsFc);
- }
- return rc;
-}
-*/
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (ILorg/eclipse/swt/internal/win32/SIZE;I)V
- */
-/*JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_win32_SIZE_2I
- (JNIEnv *env, jclass that, jint DestinationPtr, jobject Source, jint Length)
-{
- SIZE size, *Source1=&size;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_win32_SIZE_2I\n");
-#endif
-
- if (Source) {
- getSIZEFields(env, Source, Source1);
- }
-
- MoveMemory((PVOID)DestinationPtr, Source1, Length);
-}
-*/
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (II[CI[CI)I
- */
-/*JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3CI_3CI
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jint arg1, jcharArray arg2, jint arg3)
-{
- P_OLE_FN_5 fn;
- jchar *arg01=NULL, *arg21=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__II_3CI_3CI\n");
-#endif
-
- fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber];
-
- if (arg0)
- arg01 = (*env)->GetCharArrayElements(env, arg0, NULL);
-
- if (arg2)
- arg21 = (*env)->GetCharArrayElements(env, arg2, NULL);
-
- rc = fn(ppVtbl, (jint)arg01, arg1, (jint)arg21, arg3);
-
- if (arg2)
- (*env)->ReleaseCharArrayElements(env, arg2, arg21, 0);
-
- if (arg0)
- (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0);
-
- return rc;
-}
-*/
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIILorg/eclipse/swt/internal/ole/win32/GUID;[I)I
- */
-/*JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2_3I
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jintArray arg2)
-{
- jint *arg21=NULL;
- GUID guid, *arg11=NULL;
- P_OLE_FN_4 fn;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2I_3I\n");
-#endif
-
- fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber];
- if (arg1) {
- arg11=&guid;
- getGUIDFields(env, arg1, arg11);
- }
-
- if (arg2)
- arg21 = (*env)->GetIntArrayElements(env, arg2, NULL);
-
- rc = fn(ppVtbl, arg0, (jint)arg11, (jint)arg21);
-
- if (arg2)
- (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0);
-
- if (arg1) {
- setGUIDFields(env, arg1, arg11);
- }
- return rc;
-}
-*/
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIII)I
- */
-/*JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIII
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1)
-{
- P_OLE_FN_3 fn;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIII\n");
-#endif
-
- fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber];
- rc = fn(ppVtbl, arg0, arg1);
- return rc;
-}
-*/
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/win32/MSG;)I
- */
-/*
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_MSG_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- MSG msg, *arg01=NULL;
- P_OLE_FN_2 fn;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_MSG_2\n");
-#endif
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&msg;
- getMSGFields(env, arg0, arg01);
- }
-
- rc = fn(ppVtbl, (jint)arg01);
-
- if (arg0) {
- setMSGFields(env, arg0, arg01);
- }
- return rc;
-}
-*/
-/* ------------- end obsolote OLE calls ------------- */
-
-/* ------------- deleted OLE calls ------------- */
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/TYPEATTR;)I
- */
-/*
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_TYPEATTR_2
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0)
-{
- TYPEATTR typeattr, *arg01=NULL;
- P_OLE_FN_2 fn;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_TYPEATTR_2\n");
-#endif
- fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber];
- if (arg0) {
- arg01=&typeattr;
- cacheTypeattrFids(env, arg0, &TypeattrFc);
- getTypeattrFields(env, arg0, arg01, &TypeattrFc);
- }
-
- rc = fn(ppVtbl, (jint)arg01);
- if (arg0) {
- setTYPEATTRFields(env, arg0, arg01, &TypeattrFc);
- }
- return rc;
-}
-*/
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: MoveMemory
- * Signature: (ILorg/eclipse/swt/internal/ole/win32/EXCEPINFO;I)V
- */
-/* JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_EXCEPINFO_2I
- (JNIEnv *env, jclass that, jint Destination, jobject SourcePtr, jint Length)
-{
- EXCEPINFO excepinfo, *SourcePtr1=&excepinfo;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_EXCEPINFO_2I\n");
-#endif
-
- if (SourcePtr) {
- getEXCEPINFOFields(env, SourcePtr, SourcePtr1);
- }
-
- MoveMemory((PVOID)Destination, SourcePtr1, Length);
-}
-*/
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: ProgIDFromCLSID
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;[C)I
- */
-/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_ProgIDFromCLSID__Lorg_eclipse_swt_internal_ole_win32_GUID_2_3C
- (JNIEnv *env, jclass that, jobject pclsid, jcharArray lplpszProgID)
-{
- LPOLESTR *lplpszProgID1=NULL;
- GUID guid, *pclsid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_ProgIDFromCLSID__Lorg_eclipse_swt_internal_ole_win32_GUID_2_3C\n");
-#endif
-
- if (pclsid) {
- pclsid1=&guid;
- getGUIDFields(env, pclsid, pclsid1);
- }
-
- if (lplpszProgID)
- lplpszProgID1 = (LPOLESTR *)(*env)->GetCharArrayElements(env, lplpszProgID, NULL);
-
- rc = (jint) ProgIDFromCLSID(pclsid1, lplpszProgID1);
-
- if (lplpszProgID)
- (*env)->ReleaseCharArrayElements(env, lplpszProgID, (jchar *)lplpszProgID1, 0);
-
- if (pclsid) {
- setGUIDFields(env, pclsid, pclsid1);
- }
- return rc;
-}
-*/
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: ProgIDFromCLSID
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;[I)I
- */
- JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_ProgIDFromCLSID__Lorg_eclipse_swt_internal_ole_win32_GUID_2_3I
- (JNIEnv *env, jclass that, jobject pclsid, jintArray lplpszProgID)
-{
- LPOLESTR *lplpszProgID1=NULL;
- GUID guid, *pclsid1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_ProgIDFromCLSID__Lorg_eclipse_swt_internal_ole_win32_GUID_2_3I\n");
-#endif
-
- if (pclsid) {
- pclsid1=&guid;
- getGUIDFields(env, pclsid, pclsid1);
- }
-
- if (lplpszProgID)
- lplpszProgID1 = (LPOLESTR *)(*env)->GetIntArrayElements(env, lplpszProgID, NULL);
-
- rc = (jint) ProgIDFromCLSID(pclsid1, lplpszProgID1);
-
- if (lplpszProgID)
- (*env)->ReleaseIntArrayElements(env, lplpszProgID, (jint *)lplpszProgID1, 0);
-
- if (pclsid) {
- setGUIDFields(env, pclsid, pclsid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VariantCopyInd
- * Signature: (II)I
- */
-/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VariantCopyInd
- (JNIEnv *env, jclass that, jint pvarDest, jint pvarSrc)
-{
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "VariantCopyInd\n");
-#endif
- return (jint) VariantCopyInd((VARIANT FAR*)pvarDest, (VARIANTARG FAR*)pvarSrc);
-}
-*/
-
-
-/* MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II removed after OS version 0.80 */
-/*
- * Class: org_eclipse_swt_internal_win32_OS
- * Method: MoveMemory
- * Signature: (Lorg/eclipse/swt/internal/win32/NMHEADER;II)V
- */
-/* JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_win32_OS_MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II
- (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length)
-{
- NMHEADER nmheader, *lpDestination1=NULL;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II\n");
-#endif
-
- MoveMemory((PVOID)&nmheader, (CONST VOID *)Source, Length);
-
- if (Destination) {
- lpDestination1 = &nmheader;
- setNmheaderFields(env, Destination, lpDestination1);
- }
-}
-*/
-
-/* SendMessage__IIILorg_eclipse_swt_internal_win32_HDITEM_2 removed after OS version 0.80 */
-/*
- * Class: org_eclipse_swt_internal_win32_OS
- * Method: SendMessage
- * Signature: (IIILorg/eclipse/swt/internal/win32/HDITEM;)I
- */
-/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_win32_OS_SendMessage__IIILorg_eclipse_swt_internal_win32_HDITEM_2
- (JNIEnv *env, jclass that, jint hWnd, jint Msg, jint wParam, jobject lParam)
-{
- HDITEM hditem, *lpParam1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "SendMessage__IIILorg_eclipse_swt_internal_win32_HDITEM_2\n");
-#endif
-
- if (lParam) {
- lpParam1 = &hditem;
- getHditemFields(env, lParam, lpParam1);
- }
- rc = (jint) SendMessage((HWND)hWnd, Msg, wParam, (LPARAM)lpParam1);
- if (lParam) {
- setHditemFields(env, lParam, lpParam1);
- }
- return rc;
-}
-*/
-
-/* SendMessage__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2 removed after OS version 0.80 */
-/*
- * Class: org_eclipse_swt_internal_win32_OS
- * Method: SendMessage
- * Signature: (IIILorg/eclipse/swt/internal/win32/HDLAYOUT;)I
- */
-/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_win32_OS_SendMessage__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2
- (JNIEnv *env, jclass that, jint hWnd, jint Msg, jint wParam, jobject lParam)
-{
- HDLAYOUT hdlayout, *lpParam1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "SendMessage__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2\n");
-#endif
-
- if (lParam) {
- lpParam1 = &hdlayout;
- getHdlayoutFields(env, lParam, lpParam1);
- }
- rc = (jint) SendMessage((HWND)hWnd, Msg, wParam, (LPARAM)lpParam1);
- if (lParam) {
- setHdlayoutFields(env, lParam, lpParam1);
- }
- return rc;
-}
-*/
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CoGetInstanceFromIStorage
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/COSERVERINFO;Lorg/eclipse/swt/internal/ole/win32/GUID;IIIILorg/eclipse/swt/internal/ole/win32/MULTI_QI;)I
- */
-/*
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoGetInstanceFromIStorage
- (JNIEnv *env, jclass that, jobject pServerInfo, jobject pclsid, jint punkOuter, jint dwClsCtx,
- jint pstg, jint cmq, jobject rgmqResults)
-{
- GUID guid, *pclsid1=NULL;
- COSERVERINFO coserverinfo, *pServerInfo1=NULL;
- MULTI_QI multi_qi, *rgmqResults1=NULL;
- jint rc;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CoGetInstanceFromIStorage\n");
-#endif
-
- if (pclsid) {
- pclsid1=&guid;
- getGUIDFields(env, pclsid, pclsid1);
- }
- if (pServerInfo) {
- pServerInfo1=&coserverinfo;
- getCoserverinfoFields(env, pServerInfo, pServerInfo1);
- }
- if (rgmqResults) {
- rgmqResults1=&multi_qi;
- getMulti_qiFields(env, rgmqResults, rgmqResults1);
- }
-
- rc = CoGetInstanceFromIStorage(pServerInfo1, pclsid1, (IUnknown *)punkOuter, dwClsCtx, (IStorage *)pstg, cmq, rgmqResults1);
-
- if (pclsid) {
- setGUIDFields(env, pclsid, pclsid1);
- }
- if (pServerInfo) {
- setCoserverinfoFields(env, pServerInfo, pServerInfo1);
- }
- if (rgmqResults) {
- setMulti_qiFields(env, rgmqResults, rgmqResults1);
- }
- return rc;
-}
-*/
-
-/****************** ACCESSIBILITY ****************/
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: CreateStdAccessibleObject
- * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;[I)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CreateStdAccessibleObject
- (JNIEnv *env, jclass that, jint hwnd, jint idObject, jobject riidInterface, jintArray ppvObject)
-{
- LPVOID *ppvObject1=NULL;
- GUID guid, *riidInterface1=NULL;
- jint rc = E_NOTIMPL;
- HMODULE hm;
- FARPROC fp;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "CreateStdAccessibleObject\n");
-#endif
-
- if (riidInterface) {
- riidInterface1=&guid;
- getGUIDFields(env, riidInterface, riidInterface1);
- }
-
- if (ppvObject)
- ppvObject1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppvObject, NULL);
-
- /*
- * CreateStdAccessibleObject is an oleacc specific call.
- * If you link it into swt.dll, a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- if (!(hm = GetModuleHandle("oleacc.dll"))) hm = LoadLibrary("oleacc.dll");
- if (hm && (fp = GetProcAddress(hm, "CreateStdAccessibleObject"))) {
- rc = (jint)fp((HWND)hwnd, idObject, riidInterface1, ppvObject1);
- }
-
- if (riidInterface) {
- setGUIDFields(env, riidInterface, riidInterface1);
- }
-
- if (ppvObject)
- (*env)->ReleaseIntArrayElements(env, ppvObject, (jint *)ppvObject1, 0);
-
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: LresultFromObject
- * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;II)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_LresultFromObject
- (JNIEnv *env, jclass that, jobject riid, jint wParam, jint pAcc)
-{
- GUID guid, *riid1=NULL;
- jint rc = E_NOTIMPL;
- HMODULE hm;
- FARPROC fp;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "LresultFromObject\n");
-#endif
-
- if (riid) {
- riid1=&guid;
- getGUIDFields(env, riid, riid1);
- }
- /*
- * LresultFromObject is an oleacc specific call.
- * If you link it into swt.dll, a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- if (!(hm = GetModuleHandle("oleacc.dll"))) hm = LoadLibrary("oleacc.dll");
- if (hm && (fp = GetProcAddress(hm, "LresultFromObject"))) {
- rc = (jint)fp(riid1, wParam, (LPUNKNOWN)pAcc);
- }
- if (riid) {
- setGUIDFields(env, riid, riid1);
- }
- return rc;
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: NotifyWinEvent
- * Signature: (IIII)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_NotifyWinEvent
- (JNIEnv *env, jclass that, jint event, jint hwnd, jint idObject, jint idChild)
-{
- HMODULE hm;
- FARPROC fp;
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "NotifyWinEvent\n");
-#endif
-
- /*
- * NotifyWinEvent is a Win2000 and Win98 specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "NotifyWinEvent"))) {
- (fp)((DWORD)event, (HWND)hwnd, idObject, idChild);
-// NotifyWinEvent((DWORD)event, (HWND)hwnd, idObject, idChild);
- }
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIII
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- P_OLE_FN_5 fn; /* this is a function that returns int */
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIIII\n");
-#endif
- fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber];
- return fn(ppVtbl, arg0, arg1, arg2, arg3); /* cast it to an OLE function returning int */
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIIIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIIII
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- P_OLE_FN_6 fn; /* this is a function that returns int */
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIIIII\n");
-#endif
- fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber];
- return fn(ppVtbl, arg0, arg1, arg2, arg3, arg4); /* cast it to an OLE function returning int */
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIIIIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIIIII
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5)
-{
- P_OLE_FN_7 fn; /* this is a function that returns int */
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIIIIII\n");
-#endif
- fn = (P_OLE_FN_7)(*(int **)ppVtbl)[fnNumber];
- return fn(ppVtbl, arg0, arg1, arg2, arg3, arg4, arg5); /* cast it to an OLE function returning int */
-}
-
-/*
- * Class: org_eclipse_swt_internal_ole_win32_COM
- * Method: VtblCall
- * Signature: (IIIIIIIIII)I
- */
-JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIIIIIII
- (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7)
-{
- P_OLE_FN_9 fn; /* this is a function that returns int */
-
-#ifdef DEBUG_CALL_PRINTS
- fprintf(stderr, "COM_VtblCall__IIIIIIIIII\n");
-#endif
- fn = (P_OLE_FN_9)(*(int **)ppVtbl)[fnNumber];
- return fn(ppVtbl, arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7); /* cast it to an OLE function returning int */
-}
+/******************************************************************************* + * Copyright (c) 2000, 2003 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Common Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/cpl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ + +#include "swt.h" +#include "com_structs.h" + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CLSIDFromProgID + * Signature: ([CLorg/eclipse/swt/internal/ole/win32/GUID;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CLSIDFromProgID + (JNIEnv *env, jclass that, jcharArray lpszProgID, jobject pclsid) +{ + LPCOLESTR lpszProgID1=NULL; + GUID guid, *pclsid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CLSIDFromProgID\n"); +#endif + + if (pclsid) { + pclsid1=&guid; + getGUIDFields(env, pclsid, pclsid1); + } + + if (lpszProgID) + lpszProgID1 = (LPCOLESTR)(*env)->GetCharArrayElements(env, lpszProgID, NULL); + + rc = (jint) CLSIDFromProgID(lpszProgID1, pclsid1); + + if (lpszProgID) + (*env)->ReleaseCharArrayElements(env, lpszProgID, (jchar *)lpszProgID1, 0); + + if (pclsid) { + setGUIDFields(env, pclsid, pclsid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CLSIDFromString + * Signature: ([CLorg/eclipse/swt/internal/ole/win32/GUID;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CLSIDFromString + (JNIEnv *env, jclass that, jcharArray lpsz, jobject pclsid) +{ + LPOLESTR lpsz1=NULL; + GUID guid, *pclsid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CLSIDFromString\n"); +#endif + if (pclsid) { + pclsid1=&guid; + getGUIDFields(env, pclsid, pclsid1); + } + + if (lpsz) + lpsz1 = (LPOLESTR)(*env)->GetCharArrayElements(env, lpsz, NULL); + + rc = CLSIDFromString(lpsz1, pclsid1); + + if (lpsz) + (*env)->ReleaseCharArrayElements(env, lpsz, lpsz1, 0); + + if (pclsid) { + setGUIDFields(env, pclsid, pclsid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CoCreateInstance + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;IILorg/eclipse/swt/internal/ole/win32/GUID;[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoCreateInstance + (JNIEnv *env, jclass that, jobject rclsid, jint pUnkOuter, jint dwClsContext, jobject riid, jintArray ppv) +{ + LPVOID *ppv1=NULL; + GUID guid1, guid2, *riid1=NULL, *rclsid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CoCreateInstance\n"); +#endif + + if (rclsid) { + rclsid1=&guid2; + getGUIDFields(env, rclsid, rclsid1); + } + if (riid) { + riid1=&guid1; + getGUIDFields(env, riid, riid1); + } + + if (ppv) + ppv1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppv, NULL); + + rc = (jint) CoCreateInstance(rclsid1, (LPUNKNOWN)pUnkOuter, dwClsContext, riid1, ppv1); + + if (ppv) + (*env)->ReleaseIntArrayElements(env, ppv, (jint *)ppv1, 0); + + if (rclsid) { + setGUIDFields(env, rclsid, rclsid1); + } + if (riid) { + setGUIDFields(env, riid, riid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CoFreeUnusedLibraries + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoFreeUnusedLibraries + (JNIEnv *env, jclass that) +{ + CoFreeUnusedLibraries(); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CoGetClassObject + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;IILorg/eclipse/swt/internal/ole/win32/GUID;[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoGetClassObject + (JNIEnv *env, jclass that, jobject rclsid, jint dwClsContext, jint pServerInfo, + jobject riid, jintArray ppv) +{ + LPVOID *ppv1=NULL; + GUID guid1, *rclsid1=NULL; + GUID guid2, *riid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CoGetClassObject\n"); +#endif + + if (rclsid) { + rclsid1=&guid1; + getGUIDFields(env, rclsid, rclsid1); + } + if (riid) { + riid1=&guid2; + getGUIDFields(env, riid, riid1); + } + if (ppv) + ppv1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppv, NULL); + + rc = (jint) CoGetClassObject(rclsid1, dwClsContext, (COSERVERINFO *)pServerInfo, riid1, ppv1); + if (ppv) + (*env)->ReleaseIntArrayElements(env, ppv, (jint *)ppv1, 0); + + if (rclsid) { + setGUIDFields(env, rclsid, rclsid1); + } + if (riid) { + setGUIDFields(env, riid, riid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CoLockObjectExternal + * Signature: (IZZ)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoLockObjectExternal + (JNIEnv *env, jclass that, jint pUnk, jboolean fLock, jboolean fLastUnlockReleases) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CoLockObjectExternal\n"); +#endif + return (jint) CoLockObjectExternal((IUnknown *)pUnk, (BOOL)fLock, (BOOL)fLastUnlockReleases); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CoTaskMemAlloc + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoTaskMemAlloc + (JNIEnv *env, jclass that, jint cb) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CoTaskMemAlloc\n"); +#endif + return (jint) CoTaskMemAlloc((ULONG)cb); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CoTaskMemFree + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoTaskMemFree + (JNIEnv *env, jclass that, jint pv) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CoTaskMemFree\n"); +#endif + CoTaskMemFree((LPVOID)pv); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: DoDragDrop + * Signature: (III[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_DoDragDrop + (JNIEnv *env, jclass that, jint pDataObject, jint pDropSource, jint dwOKEffect, jintArray pdwEffect) +{ + jint *pdwEffect1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "DoDragDrop\n"); +#endif + + if (pdwEffect) + pdwEffect1 = (*env)->GetIntArrayElements(env, pdwEffect, NULL); + + rc = DoDragDrop((IDataObject *)pDataObject, (IDropSource *)pDropSource, dwOKEffect, pdwEffect1); + + if (pdwEffect) + (*env)->ReleaseIntArrayElements(env, pdwEffect, pdwEffect1, 0); + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: GetClassFile + * Signature: ([CLorg/eclipse/swt/internal/ole/win32/GUID;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_GetClassFile + (JNIEnv *env, jclass that, jcharArray szFileName, jobject clsid) +{ + LPCWSTR szFileName1=NULL; + GUID guid, *clsid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "GetClassFile\n"); +#endif + if (clsid) { + clsid1=&guid; + getGUIDFields(env, clsid, clsid1); + } + + if (szFileName) + szFileName1 = (LPCWSTR)(*env)->GetCharArrayElements(env, szFileName, NULL); + + rc = GetClassFile(szFileName1, clsid1); + + if (szFileName) + (*env)->ReleaseCharArrayElements(env, szFileName, (jchar *)szFileName1, 0); + + if (clsid) { + setGUIDFields(env, clsid, clsid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: IIDFromString + * Signature: ([CLorg/eclipse/swt/internal/ole/win32/GUID;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_IIDFromString + (JNIEnv *env, jclass that, jcharArray lpsz, jobject lpiid) +{ + LPOLESTR lpsz1=NULL; + GUID guid, *lpiid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "IIDFromString\n"); +#endif + + if (lpsz) + lpsz1 = (LPOLESTR)(*env)->GetCharArrayElements(env, lpsz, NULL); + + if (lpiid) { + lpiid1=&guid; + getGUIDFields(env, lpiid, lpiid1); + } + + rc = (jint) IIDFromString(lpsz1, lpiid1); + + if (lpiid) { + setGUIDFields(env, lpiid, lpiid1); + } + + if (lpsz) + (*env)->ReleaseCharArrayElements(env, lpsz, (jchar *)lpsz1, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: IsEqualGUID + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;Lorg/eclipse/swt/internal/ole/win32/GUID;)Z + */ +JNIEXPORT jboolean JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_IsEqualGUID + (JNIEnv *env, jclass that, jobject rguid1, jobject rguid2) +{ + GUID guid1, *rguid11=NULL; + GUID guid2, *rguid21=NULL; + jboolean rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "IsEqualGUID\n"); +#endif + + if (rguid1) { + rguid11=&guid1; + getGUIDFields(env, rguid1, rguid11); + } + + if (rguid2) { + rguid21=&guid2; + getGUIDFields(env, rguid2, rguid21); + } + + rc = (jboolean) IsEqualGUID(rguid11, rguid21); + + if (rguid1) { + setGUIDFields(env, rguid1, rguid11); + } + if (rguid2) { + setGUIDFields(env, rguid2, rguid21); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (ILorg/eclipse/swt/internal/ole/win32/FORMATETC;I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_FORMATETC_2I + (JNIEnv *env, jclass that, jint Destination, jobject Source, jint Length) +{ + FORMATETC formatetc, *Source1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_FORMATETC_2I\n"); +#endif + + if (Source) { + Source1=&formatetc; + getFORMATETCFields(env, Source, Source1); + } + MoveMemory((PVOID)Destination, Source1, Length); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (ILorg/eclipse/swt/internal/ole/win32/GUID;I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_GUID_2I + (JNIEnv *env, jclass that, jint DestinationPtr, jobject Source, jint Length) +{ + GUID guid, *Source1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "MoveMemory__ILorg_eclipse_swt_internal_ole_win32_GUID_2I\n"); +#endif + + if (Source) { + Source1=&guid; + getGUIDFields(env, Source, Source1); + } + MoveMemory((PVOID)DestinationPtr, Source1, Length); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (ILorg/eclipse/swt/internal/ole/win32/OLEINPLACEFRAMEINFO;I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_OLEINPLACEFRAMEINFO_2I + (JNIEnv *env, jclass that, jint DestinationPtr, jobject Source, jint Length) +{ + OLEINPLACEFRAMEINFO oleinplaceframeinfo, *Source1=&oleinplaceframeinfo; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_OLEINPLACEFRAMEINFO_2I\n"); +#endif + + if (Source) { + getOLEINPLACEFRAMEINFOFields(env, Source, Source1); + } + + MoveMemory((PVOID)DestinationPtr, Source1, Length); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (ILorg/eclipse/swt/internal/ole/win32/STATSTG;I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_STATSTG_2I + (JNIEnv *env, jclass that, jint Destination, jobject Source, jint Length) +{ + STATSTG statstg, *Source1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_STATSTG_2I\n"); +#endif + + if (Source) { + Source1=&statstg; + getSTATSTGFields(env, Source, Source1); + } + MoveMemory((PVOID)Destination, Source1, Length); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (ILorg/eclipse/swt/internal/ole/win32/STGMEDIUM;I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2I + (JNIEnv *env, jclass that, jint Destination, jobject Source, jint Length) +{ + STGMEDIUM stgmedium, *Source1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2I\n"); +#endif + + if (Source) { + Source1=&stgmedium; + getSTGMEDIUMFields(env, Source, Source1); + } + MoveMemory((PVOID)Destination, Source1, Length); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/STGMEDIUM;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2II + (JNIEnv *env, jclass that, jobject Destination, jint SourcePtr, jint Length) +{ + STGMEDIUM stgmedium, *Destination1=&stgmedium; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2II\n"); +#endif + + MoveMemory((PVOID)Destination1, (CONST VOID *)SourcePtr, Length); + + if (Destination) { + setSTGMEDIUMFields(env, Destination, Destination1); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/DISPPARAMS;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_DISPPARAMS_2II + (JNIEnv *env, jclass that, jobject Destination, jint SourcePtr, jint Length) +{ + DISPPARAMS dispparams, *Destination1=&dispparams; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_DISPPARAMS_2II\n"); +#endif + + MoveMemory((PVOID)Destination1, (CONST VOID *)SourcePtr, Length); + + if (Destination) { + setDISPPARAMSFields(env, Destination, Destination1); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/FORMATETC;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FORMATETC_2II + (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length) +{ + FORMATETC formatetc, *Destination1=&formatetc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FORMATETC_2II\n"); +#endif + + MoveMemory((PVOID)Destination1, (CONST VOID *)Source, Length); + + if (Destination) { + setFORMATETCFields(env, Destination, Destination1); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_GUID_2II + (JNIEnv *env, jclass that, jobject Destination, jint SourcePtr, jint Length) +{ + GUID guid, *Destination1=&guid; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_GUID_2II\n"); +#endif + + MoveMemory((PVOID)Destination1, (CONST VOID *)SourcePtr, Length); + + if (Destination) { + setGUIDFields(env, Destination, Destination1); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/STATSTG;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_STATSTG_2II + (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length) +{ + STATSTG statstg, *Destination1=&statstg; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_STATSTG_2II\n"); +#endif + + MoveMemory((PVOID)Destination1, (CONST VOID *)Source, Length); + + if (Destination) { + setSTATSTGFields(env, Destination, Destination1); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/TYPEATTR;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_TYPEATTR_2II + (JNIEnv *env, jclass that, jobject Destination, jint SourcePtr, jint Length) +{ + TYPEATTR typeattr, *Destination1=&typeattr; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_TYPEATTR_2II\n"); +#endif + MoveMemory((PVOID)Destination1, (CONST VOID *)SourcePtr, Length); + if (Destination) { + setTYPEATTRFields(env, Destination, Destination1); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/win32/RECT;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_win32_RECT_2II + (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length) +{ + RECT rect, *lpDestination1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_win32_RECT_2II\n"); +#endif + + MoveMemory((PVOID)&rect, (CONST VOID *)Source, Length); + + if (Destination) { + lpDestination1 = ▭ + setRECTFields(env, Destination, lpDestination1); + } +} +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/FUNCDESC1;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FUNCDESC1_2II + (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length) +{ + FUNCDESC funcdesc, *lpDestination1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FUNCDESC1_2II\n"); +#endif + + MoveMemory((PVOID)&funcdesc, (CONST VOID *)Source, Length); + + if (Destination) { + lpDestination1 = &funcdesc; + setFUNCDESC1Fields(env, Destination, lpDestination1); + } +} +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/FUNCDESC2;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FUNCDESC2_2II + (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length) +{ + FUNCDESC funcdesc, *lpDestination1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_FUNCDESC2_2II\n"); +#endif + + MoveMemory((PVOID)&funcdesc, (CONST VOID *)Source, Length); + + if (Destination) { + lpDestination1 = &funcdesc; + setFUNCDESC2Fields(env, Destination, lpDestination1); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/VARDESC1;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_VARDESC1_2II + (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length) +{ + VARDESC vardesc, *lpDestination1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_VARDESC1_2II\n"); +#endif + + MoveMemory((PVOID)&vardesc, (CONST VOID *)Source, Length); + + if (Destination) { + lpDestination1 = &vardesc; + setVARDESC1Fields(env, Destination, lpDestination1); + } +} +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/ole/win32/VARDESC2;II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_VARDESC2_2II + (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length) +{ + VARDESC vardesc, *lpDestination1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__Lorg_eclipse_swt_internal_ole_win32_VARDESC2_2II\n"); +#endif + + MoveMemory((PVOID)&vardesc, (CONST VOID *)Source, Length); + + if (Destination) { + lpDestination1 = &vardesc; + setVARDESC2Fields(env, Destination, lpDestination1); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleCreate + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;Lorg/eclipse/swt/internal/ole/win32/GUID;ILorg/eclipse/swt/internal/ole/win32/FORMATETC;II[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleCreate + (JNIEnv *env, jclass that, jobject rclsid, jobject riid, jint renderopt, + jobject pFormatEtc, jint pClientSite, jint pStg, jintArray ppvObject) +{ + LPVOID *ppvObject1=NULL; + GUID guid1, *rclsid1=NULL; + GUID guid2, *riid1=NULL; + FORMATETC formatec, *pFormatEtc1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleCreate\n"); +#endif + + if (rclsid) { + rclsid1=&guid1; + getGUIDFields(env, rclsid, rclsid1); + } + if (riid) { + riid1=&guid2; + getGUIDFields(env, riid, riid1); + } + if (pFormatEtc) { + pFormatEtc1 = &formatec; + getFORMATETCFields(env, pFormatEtc, pFormatEtc1); + } + + if (ppvObject) + ppvObject1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppvObject, NULL); + + rc = (jint) OleCreate(rclsid1, riid1, renderopt, pFormatEtc1, (IOleClientSite * )pClientSite, (IStorage * )pStg, ppvObject1); + + if (ppvObject) + (*env)->ReleaseIntArrayElements(env, ppvObject, (jint *)ppvObject1, 0); + +/* all of these objects are inputs so we don't not need to set the + fields back +*/ + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleCreateFromFile + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;[CLorg/eclipse/swt/internal/ole/win32/GUID;ILorg/eclipse/swt/internal/ole/win32/FORMATETC;II[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleCreateFromFile + (JNIEnv *env, jclass that, jobject rclsid, jcharArray lpszFileName, jobject riid, jint renderopt, + jobject pFormatEtc, jint pClientSite, jint pStg, jintArray ppvObj) +{ + LPVOID *ppvObj1=NULL; + LPCOLESTR lpszFileName1=NULL; + GUID guid1, *rclsid1=NULL; + GUID guid2, *riid1=NULL; + FORMATETC formatec, *pFormatEtc1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleCreateFromFile\n"); +#endif + + if (rclsid) { + rclsid1=&guid1; + getGUIDFields(env, rclsid, rclsid1); + } + + if (riid) { + riid1=&guid2; + getGUIDFields(env, riid, riid1); + } + if (pFormatEtc) { + pFormatEtc1 = &formatec; + getFORMATETCFields(env, pFormatEtc, pFormatEtc1); + } + + if (lpszFileName) + lpszFileName1 = (LPCOLESTR)(*env)->GetCharArrayElements(env, lpszFileName, NULL); + + if (ppvObj) + ppvObj1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppvObj, NULL); + + rc = (jint) OleCreateFromFile(rclsid1, lpszFileName1, riid1, renderopt, pFormatEtc1, (LPOLECLIENTSITE)pClientSite, (LPSTORAGE)pStg, ppvObj1); + + if (ppvObj) + (*env)->ReleaseIntArrayElements(env, ppvObj, (jint *)ppvObj1, 0); + + if (lpszFileName) + (*env)->ReleaseCharArrayElements(env, lpszFileName, (jchar *)lpszFileName1, 0); + +/* all of these objects are inputs so we don't not need to set the + fields back +*/ + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleCreatePropertyFrame + * Signature: (III[CI[IIIIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleCreatePropertyFrame + (JNIEnv *env, jclass that, jint hwndOwner, jint x, jint y, jcharArray lpszCaption, jint cObjects, jintArray lplpUnk, jint cPages, jint lpPageClsID, jint lcid, jint dwReserved, jint lpvReserved) +{ + LPCOLESTR lpszCaption1=NULL; + jint *lplpUnk1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleCreatePropertyFrame\n"); +#endif + + if (lpszCaption) + lpszCaption1 = (LPCOLESTR)(*env)->GetCharArrayElements(env, lpszCaption, NULL); + + if (lplpUnk) + lplpUnk1 = (*env)->GetIntArrayElements(env, lplpUnk, NULL); + + rc = (jint) OleCreatePropertyFrame((HWND)hwndOwner, x, y, lpszCaption1, cObjects, (LPUNKNOWN FAR*)lplpUnk1, cPages, (LPCLSID)lpPageClsID, (LCID)lcid, dwReserved, (LPVOID)lpvReserved); + + if (lplpUnk) + (*env)->ReleaseIntArrayElements(env, lplpUnk, (jint *)lplpUnk1, 0); + + if (lpszCaption) + (*env)->ReleaseCharArrayElements(env, lpszCaption, (jchar *)lpszCaption1, 0); + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleIsRunning + * Signature: (I)Z + */ +JNIEXPORT jboolean JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleIsRunning + (JNIEnv *env, jclass that, jint pObject) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleIsRunning\n"); +#endif + return (jboolean) OleIsRunning((LPOLEOBJECT)pObject); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleLoad + * Signature: (ILorg/eclipse/swt/internal/ole/win32/GUID;I[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleLoad + (JNIEnv *env, jclass that, jint pStg, jobject riid, jint pClientSite, jintArray ppvObj) +{ + LPVOID *ppvObj1=NULL; + GUID guid, *riid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleLoad\n"); +#endif + if (riid) { + riid1=&guid; + getGUIDFields(env, riid, riid1); + } + + if (ppvObj) + ppvObj1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppvObj, NULL); + + rc = (jint) OleLoad((IStorage *)pStg, riid1, (IOleClientSite *)pClientSite, ppvObj1); /* cast it to an OLE function returning int */ + + if (ppvObj) + (*env)->ReleaseIntArrayElements(env, ppvObj, (jint *)ppvObj1, 0); + + if (riid) { + setGUIDFields(env, riid, riid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleRun + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleRun + (JNIEnv *env, jclass that, jint pUnknown) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleRun\n"); +#endif + return (jint) OleRun((LPUNKNOWN)pUnknown); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleSave + * Signature: (IIZ)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleSave + (JNIEnv *env, jclass that, jint pPS, jint pStg, jboolean fSameAsLoad) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleSave\n"); +#endif + return (jint) OleSave((IPersistStorage *)pPS, (IStorage *)pStg, fSameAsLoad); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleSetContainedObject + * Signature: (IZ)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleSetContainedObject + (JNIEnv *env, jclass that, jint pUnk, jboolean fContained) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleSetContainedObject\n"); +#endif + return (jint) OleSetContainedObject((LPUNKNOWN)pUnk, fContained); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleSetMenuDescriptor + * Signature: (IIIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleSetMenuDescriptor + (JNIEnv *env, jclass that, jint holemenu, jint hwndFrame, jint hwndActiveObject, jint lpFrame, jint lpActiveObj) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleSetMenuDescriptor\n"); +#endif + return (jint) OleSetMenuDescriptor((HOLEMENU)holemenu, (HWND)hwndFrame, (HWND)hwndActiveObject, (LPOLEINPLACEFRAME)lpFrame, (LPOLEINPLACEACTIVEOBJECT)lpActiveObj); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleTranslateColor + * Signature: (II[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleTranslateColor + (JNIEnv *env, jclass that, jint clr, jint hpal, jintArray pcolorref) +{ + jint *pcolorref1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleTranslateColor\n"); +#endif + + if (pcolorref) + pcolorref1 = (*env)->GetIntArrayElements(env, pcolorref, NULL); + + rc = (jint) OleTranslateColor((OLE_COLOR)clr, (HPALETTE)hpal, (COLORREF *)pcolorref1); + + if (pcolorref) + (*env)->ReleaseIntArrayElements(env, pcolorref, pcolorref1, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: RegisterDragDrop + * Signature: (II)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_RegisterDragDrop + (JNIEnv *env, jclass that, jint hwnd, jint pDropTarget) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "RegisterDragDrop\n"); +#endif + return (jint) RegisterDragDrop((HWND)hwnd, (IDropTarget *)pDropTarget); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: RevokeDragDrop + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_RevokeDragDrop + (JNIEnv *env, jclass that, jint hwnd) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "RevokeDragDrop\n"); +#endif + return (jint) RevokeDragDrop((HWND)hwnd); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: StgCreateDocfile + * Signature: ([CII[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_StgCreateDocfile + (JNIEnv *env, jclass that, jcharArray pwcsName, jint grfMode, jint reserved, jintArray ppstgOpen) +{ + jchar *pwcsName1=NULL; + IStorage **ppstgOpen1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "StgCreateDocfile\n"); +#endif + + if (pwcsName) + pwcsName1 = (*env)->GetCharArrayElements(env, pwcsName, NULL); + + if (ppstgOpen) + ppstgOpen1 = (IStorage **)(*env)->GetIntArrayElements(env, ppstgOpen, NULL); + + rc = (jint) StgCreateDocfile(pwcsName1, grfMode, reserved, ppstgOpen1); + + if (ppstgOpen) + (*env)->ReleaseIntArrayElements(env, ppstgOpen, (jint *)ppstgOpen1, 0); + + if (pwcsName) + (*env)->ReleaseCharArrayElements(env, pwcsName, pwcsName1, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: StgIsStorageFile + * Signature: ([C)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_StgIsStorageFile + (JNIEnv *env, jclass that, jcharArray pwcsName) +{ + const WCHAR *pwcsName1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "StgIsStorageFile\n"); +#endif + + if (pwcsName) + pwcsName1 = (const WCHAR *)(*env)->GetCharArrayElements(env, pwcsName, NULL); + + rc = (jint)StgIsStorageFile(pwcsName1); + + if (pwcsName) + (*env)->ReleaseCharArrayElements(env, pwcsName, (jchar *)pwcsName1, 0); + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: StgOpenStorage + * Signature: ([CIIII[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_StgOpenStorage + (JNIEnv *env, jclass that, jcharArray pwcsName, jint pstgPriority, jint grfMode, jint snbExclude, jint reserved, jintArray ppstgOpen) +{ + const WCHAR *pwcsName1=NULL; + IStorage **ppstgOpen1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "StgOpenStorage\n"); +#endif + + if (pwcsName) + pwcsName1 = (const WCHAR *)(*env)->GetCharArrayElements(env, pwcsName, NULL); + + if (ppstgOpen) + ppstgOpen1 = (IStorage **)(*env)->GetIntArrayElements(env, ppstgOpen, NULL); + + rc = (jint) StgOpenStorage(pwcsName1, (IStorage *)pstgPriority, grfMode, (SNB)snbExclude, reserved, ppstgOpen1); + + if (ppstgOpen) + (*env)->ReleaseIntArrayElements(env, ppstgOpen, (jint *)ppstgOpen1, 0); + + if (pwcsName) + (*env)->ReleaseCharArrayElements(env, pwcsName, (jchar *)pwcsName1, 0); + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: StringFromCLSID + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_StringFromCLSID + (JNIEnv *env, jclass that, jobject rclsid, jintArray ppsz) +{ + LPOLESTR *ppsz1=NULL; + GUID guid, *rclsid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_StringFromCLSID\n"); +#endif + + if (rclsid) { + rclsid1=&guid; + getGUIDFields(env, rclsid, rclsid1); + } + + if (ppsz) + ppsz1 = (LPOLESTR *)(*env)->GetIntArrayElements(env, ppsz, NULL); + + rc = (jint) StringFromCLSID(rclsid1, ppsz1); + + if (ppsz) + (*env)->ReleaseIntArrayElements(env, ppsz, (jint *)ppsz1, 0); + + if (rclsid) { + setGUIDFields(env, rclsid, rclsid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: SysAllocString + * Signature: ([C)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_SysAllocString + (JNIEnv *env, jclass that, jcharArray sz0) +{ + jchar *sz01=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "SysAllocString\n"); +#endif + if (sz0) + sz01 = (*env)->GetCharArrayElements(env, sz0, NULL); + rc = (jint) SysAllocString( (OLECHAR *) sz01); + if (sz0) + (*env)->ReleaseCharArrayElements(env, sz0, sz01, 0); + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: SysFreeString + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_SysFreeString + (JNIEnv *env, jclass that, jint bstr) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "SysFreeString\n"); +#endif + SysFreeString((BSTR)bstr); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: SysStringByteLen + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_SysStringByteLen + (JNIEnv *env, jclass that, jint bstr) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "SysStringByteLen\n"); +#endif + return (jint) SysStringByteLen((BSTR)bstr); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VariantChangeType + * Signature: (IISS)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VariantChangeType + (JNIEnv *env, jclass that, jint pvargDest, jint pvarSrc, jshort wFlags, jshort vt) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VariantChangeType\n"); +#endif + return (jint) VariantChangeType((VARIANTARG FAR* )pvargDest, (VARIANTARG FAR* )pvarSrc, wFlags, (VARTYPE) vt); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VariantClear + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VariantClear + (JNIEnv *env, jclass that, jint pvarg) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VariantClear\n"); +#endif + return (jint) VariantClear((VARIANTARG FAR* ) pvarg); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VariantInit + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VariantInit + (JNIEnv *env, jclass that, jint pvarg) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VariantInit\n"); +#endif + VariantInit((VARIANTARG FAR*)pvarg); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (II)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl) +{ + P_OLE_FN_1 fn; /* this is a function that returns int */ + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II\n"); +#endif + fn = (P_OLE_FN_1)(*(int **)ppVtbl)[fnNumber]; + return fn(ppVtbl); /* cast it to an OLE function returning int */ +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (II[C)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3C + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0) +{ + P_OLE_FN_2 fn; + jchar *arg01=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3C\n"); +#endif + + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) + arg01 = (*env)->GetCharArrayElements(env, arg0, NULL); + + rc = fn(ppVtbl, (jint)arg01); + + if (arg0) + (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (II[C[C)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3C_3C + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jcharArray arg1) +{ + P_OLE_FN_3 fn; /* this is a function that returns int */ + jchar *arg01=NULL, *arg11=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3C_3C\n"); +#endif + + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) + arg01 = (*env)->GetCharArrayElements(env, arg0, NULL); + + if (arg1) + arg11 = (*env)->GetCharArrayElements(env, arg1, NULL); + + rc = fn(ppVtbl, (jint)arg01, (jint)arg11); /* cast it to an OLE function returning int */ + + if (arg1) + (*env)->ReleaseCharArrayElements(env, arg1, arg11, 0); + + if (arg0) + (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (II[CI)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3CI + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jint arg1) +{ + P_OLE_FN_3 fn; /* this is a function that returns int */ + jchar *arg01=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3CI\n"); +#endif + + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) + arg01 = (*env)->GetCharArrayElements(env, arg0, NULL); + + rc = fn(ppVtbl, (jint)arg01, arg1); + + if (arg0) + (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (II[CIII[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3CIII_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jint arg1, jint arg2, jint arg3, jintArray arg4) +{ + P_OLE_FN_6 fn; /* this is a function that returns int */ + jchar *arg01=NULL; + jint *arg41=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3CIII_3I\n"); +#endif + + fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) + arg01 = (*env)->GetCharArrayElements(env, arg0, NULL); + if (arg4) + arg41 = (*env)->GetIntArrayElements(env, arg4, NULL); + + rc = fn(ppVtbl, (jint)arg01, arg1, arg2, arg3, (jint)arg41); /* cast it to an OLE function returning int */ + + if (arg4) + (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0); + if (arg0) + (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (II[CIIII[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3CIIII_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jint arg1, jint arg2, jint arg3, jint arg4, jintArray arg5) +{ + P_OLE_FN_7 fn; /* this is a function that returns int */ jchar *arg01=NULL; + jint *arg51=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3CIIII_3I\n"); +#endif + + fn = (P_OLE_FN_7)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) + arg01 = (*env)->GetCharArrayElements(env, arg0, NULL); + if (arg5) + arg51 = (*env)->GetIntArrayElements(env, arg5, NULL); + + rc = fn(ppVtbl, (jint)arg01, arg1, arg2, arg3, arg4, (jint)arg51); /* cast it to an OLE function returning int */ + + if (arg5) + (*env)->ReleaseIntArrayElements(env, arg5, arg51, 0); + if (arg0) + (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (II[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jintArray arg0) +{ + P_OLE_FN_2 fn; /* this is a function that returns int */ + jint *arg01=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3I\n"); +#endif + + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) + arg01 = (*env)->GetIntArrayElements(env, arg0, NULL); + + rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */ + + if (arg0) + (*env)->ReleaseIntArrayElements(env, arg0, arg01, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (III)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__III + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0) +{ + P_OLE_FN_2 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__III\n"); +#endif + + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + + rc = fn(ppVtbl, arg0); /* cast it to an OLE function returning int */ + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIII + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1) +{ + P_OLE_FN_3 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIII\n"); +#endif + + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + + rc = fn(ppVtbl, arg0, arg1); /* cast it to an OLE function returning int */ + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (III[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__III_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jintArray arg1) +{ + P_OLE_FN_3 fn; + + jint *arg11=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__III_3I\n"); +#endif + + fn = (P_OLE_FN_3)(*((jint **)ppVtbl))[fnNumber]; + + if (arg1) + arg11 = (*env)->GetIntArrayElements(env, arg1, NULL); + + rc = fn(ppVtbl, arg0, (jint)arg11); + + if (arg1) + (*env)->ReleaseIntArrayElements(env, arg1, arg11, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIII[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIII_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jintArray arg2) +{ + P_OLE_FN_4 fn; /* this is a function that returns int */ + jint *arg21=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIII_3I\n"); +#endif + + fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber]; + + if (arg2) + arg21 = (*env)->GetIntArrayElements(env, arg2, NULL); + + rc = fn(ppVtbl, arg0, arg1, (jint)arg21); /* cast it to an OLE function returning int */ + + if (arg2) + (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIII + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2) +{ + P_OLE_FN_4 fn; /* this is a function that returns int */ + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIII\n"); +#endif + + fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber]; + return fn(ppVtbl, arg0, arg1, arg2);; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIII[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIII_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jintArray arg3) +{ + P_OLE_FN_5 fn; /* this is a function that returns int */ + jint *arg31=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VtblCall__IIIII_3I\n"); +#endif + + fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber]; + + if (arg3) + arg31 = (*env)->GetIntArrayElements(env, arg3, NULL); + + rc = fn(ppVtbl, arg0, arg1, arg2, (jint)arg31); + + if (arg3) + (*env)->ReleaseIntArrayElements(env, arg3, arg31, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIIII[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIII_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jintArray arg4) +{ + P_OLE_FN_6 fn; + jint *arg41=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3CIIII_3I\n"); +#endif + + fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber]; + if (arg4) + arg41 = (*env)->GetIntArrayElements(env, arg4, NULL); + + rc = fn(ppVtbl, arg0, arg1, arg2, arg3, (jint)arg41); + + if (arg4) + (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIIIII[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIIII_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jintArray arg5) +{ + P_OLE_FN_7 fn; + + jint *arg51=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIIIII_3I\n"); +#endif + + fn = (P_OLE_FN_7)(*((jint **)ppVtbl))[fnNumber]; + + if (arg5) + arg51 = (*env)->GetIntArrayElements(env, arg5, NULL); + + rc = fn(ppVtbl, arg0, arg1, arg2, arg3, arg4, (jint)arg51); + + if (arg5) + (*env)->ReleaseIntArrayElements(env, arg5, arg51, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIILorg/eclipse/swt/internal/ole/win32/DVTARGETDEVICE;Lorg/eclipse/swt/internal/win32/SIZE;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_DVTARGETDEVICE_2Lorg_eclipse_swt_internal_win32_SIZE_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jobject arg2, jobject arg3) +{ + DVTARGETDEVICE dvtargetdevice, *arg21=NULL; + SIZE size, *arg31=NULL; + P_OLE_FN_5 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_DVTARGETDEVICE_2Lorg_eclipse_swt_internal_win32_SIZE_2\n"); +#endif + + fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber]; + if (arg2) { + arg21=&dvtargetdevice; + getDVTARGETDEVICEFields(env, arg2, arg21); + } + if (arg3) { + arg31=&size; + getSIZEFields(env, arg3, arg31); + } + + rc = fn(ppVtbl, arg0, arg1, (jint)arg21, (jint)arg31); /* cast it to an OLE function returning int */ + + if (arg2) { + setDVTARGETDEVICEFields(env, arg2, arg21); + } + if (arg3) { + setSIZEFields(env, arg3, arg31); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIILorg/eclipse/swt/internal/ole/win32/GUID;I[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_GUID_2I_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jobject arg2, jint arg3, jintArray arg4) +{ + jint *arg41=NULL; + GUID guid, *arg21=NULL; + P_OLE_FN_6 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_GUID_2I_3I\n"); +#endif + fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber]; + if (arg2) { + arg21=&guid; + getGUIDFields(env, arg2, arg21); + } + + if (arg4) + arg41 = (*env)->GetIntArrayElements(env, arg4, NULL); + + rc = fn(ppVtbl, arg0, arg1, (jint)arg21, arg3, (jint)arg41); /* cast it to an OLE function returning int */ + + if (arg4) + (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0); + + if (arg2) { + setGUIDFields(env, arg2, arg21); + } + return rc; +} + + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIILorg/eclipse/swt/internal/ole/win32/FORMATETC;[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_FORMATETC_2_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jintArray arg2) +{ + P_OLE_FN_4 fn; + FORMATETC formatetc, *arg11=NULL; + jint *arg21=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_FORMATETC_2_3I\n"); +#endif + + fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber]; + + if (arg1) { + arg11 = &formatetc; + getFORMATETCFields(env, arg1, arg11); + } + if (arg2) + arg21 = (*env)->GetIntArrayElements(env, arg2, NULL); + + rc = fn(ppVtbl, arg0, (jint)arg11, (jint)arg21); + + if (arg2) + (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0); + + if (arg1) { + setFORMATETCFields(env, arg1, arg11); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIILorg/eclipse/swt/internal/ole/win32/GUID;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1) +{ + GUID guid, *arg11=NULL; + P_OLE_FN_3 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIILorg_eclipse_swt_internal_ole_win32_GUID_2n"); +#endif + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + if (arg1) { + arg11=&guid; + getGUIDFields(env, arg1, arg11); + } + + rc = fn(ppVtbl, arg0, (jint)arg11); /* cast it to an COM function returning int */ + + if (arg1) { + setGUIDFields(env, arg1, arg11); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIILorg/eclipse/swt/internal/ole/win32/GUID;II)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2II + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jint arg2, jint arg3) +{ + GUID guid, *arg11=NULL; + P_OLE_FN_5 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2II\n"); +#endif + fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber]; + if (arg1) { + arg11=&guid; + getGUIDFields(env, arg1, arg11); + } + + rc = fn(ppVtbl, arg0, (jint)arg11, arg2, arg3); /* cast it to an OLE function returning int */ + + if (arg1) { + setGUIDFields(env, arg1, arg11); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIILorg/eclipse/swt/internal/ole/win32/GUID;IILorg/eclipse/swt/internal/ole/win32/DISPPARAMS;ILorg/eclipse/swt/internal/ole/win32/EXCEPINFO;[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2IILorg_eclipse_swt_internal_ole_win32_DISPPARAMS_2ILorg_eclipse_swt_internal_ole_win32_EXCEPINFO_2_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jint arg2, jint arg3, jobject arg4, jint arg5, jobject arg6, jintArray arg7) +{ + jint *arg71=NULL; + GUID guid, *arg11=NULL; + EXCEPINFO excepinfo, *arg61=NULL; + DISPPARAMS dispparams, *arg41=NULL; + P_OLE_FN_9 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2IILorg_eclipse_swt_internal_ole_win32_DISPPARAMS_2ILorg_eclipse_swt_internal_ole_win32_EXCEPINFO_2_3I\n"); +#endif + + fn = (P_OLE_FN_9)(*(int **)ppVtbl)[fnNumber]; + if (arg1) { + arg11=&guid; + getGUIDFields(env, arg1, arg11); + } + if (arg4) { + arg41=&dispparams; + getDISPPARAMSFields(env, arg4, arg41); + } + + if (arg6) { + arg61=&excepinfo; + getEXCEPINFOFields(env, arg6, arg61); + } + + if (arg7) + arg71 = (*env)->GetIntArrayElements(env, arg7, NULL); + + rc = fn(ppVtbl, arg0, (jint)arg11, arg2, arg3, (jint)arg41, arg5, (jint)arg61, (jint)arg71); /* cast it to an OLE function returning int */ + + if (arg7) + (*env)->ReleaseIntArrayElements(env, arg7, arg71, 0); + + if (arg6) { + setEXCEPINFOFields(env, arg6, arg61); + } + + if (arg4) { + setDISPPARAMSFields(env, arg4, arg41); + } + + if (arg1) { + setGUIDFields(env, arg1, arg11); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIILorg/eclipse/swt/internal/ole/win32/STATSTG;[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_STATSTG_2_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jintArray arg2) +{ + jint *arg21=NULL; + STATSTG statstg, *arg11=NULL; + P_OLE_FN_4 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VtblCall__IIILorg_eclipse_swt_internal_ole_win32_STATSTG_2_3I\n"); +#endif + fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber]; + if (arg1) { + arg11=&statstg; + getSTATSTGFields(env, arg1, arg11); + } + + if (arg2) + arg21 = (*env)->GetIntArrayElements(env, arg2, NULL); + + rc = fn(ppVtbl, arg0, (jint)arg11, (jint)arg21); /* cast it to an OLE function returning int */ + + if (arg2) + (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0); + + if (arg1) { + setSTATSTGFields(env, arg1, arg11); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIILorg/eclipse/swt/internal/win32/MSG;IIILorg/eclipse/swt/internal/win32/RECT;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_win32_MSG_2IIILorg_eclipse_swt_internal_win32_RECT_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jint arg2, jint arg3, jint arg4, jobject arg5) +{ + MSG msg, *arg11=NULL; + RECT rect, *arg51=NULL; + P_OLE_FN_7 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_win32_MSG_2IIILorg_eclipse_swt_internal_win32_RECT_2\n"); +#endif + + fn = (P_OLE_FN_7)(*(int **)ppVtbl)[fnNumber]; + if (arg1) { + arg11=&msg; + getMSGFields(env, arg1, arg11); + } + if (arg5) { + arg51=▭ + getRECTFields(env, arg5, arg51); + } + + rc = fn(ppVtbl, arg0, (jint)arg11, arg2, arg3, arg4, (jint)arg51); /* cast it to an OLE function returning int */ + + if (arg1) { + setMSGFields(env, arg1, arg11); + } + if (arg5) { + setRECTFields(env, arg5, arg51); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/win32/MSG;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_MSG_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + MSG msg, *arg01=NULL; + P_OLE_FN_2 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_win32_MSG_2\n"); +#endif + + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&msg; + getMSGFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */ + + if (arg0) { + setMSGFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIILorg/eclipse/swt/internal/win32/SIZE;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_win32_SIZE_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1) +{ + SIZE size, *arg11=NULL; + P_OLE_FN_3 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_win32_SIZE_2\n"); +#endif + + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + if (arg1) { + arg11=&size; + getSIZEFields(env, arg1, arg11); + } + + rc = fn(ppVtbl, arg0, (jint)arg11); /* cast it to an COM function returning int */ + + if (arg1) { + setSIZEFields(env, arg1, arg11); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIZ)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIZ + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jboolean arg1) +{ + P_OLE_FN_3 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIZ\n"); +#endif + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + + rc = fn(ppVtbl, arg0, arg1); /* cast it to an OLE function returning int */ + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/CAUUID;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_CAUUID_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + P_OLE_FN_2 fn; /* this is a function that returns int */ + CAUUID cauuid, *arg01=&cauuid; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3C\n"); +#endif + + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) { + getCAUUIDFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */ + + if (arg0) { + setCAUUIDFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/CONTROLINFO;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_CONTROLINFO_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + CONTROLINFO controlinfo, *arg01=NULL; + P_OLE_FN_2 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_CONTROLINFO_2\n"); +#endif + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&controlinfo; + getCONTROLINFOFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */ + + if (arg0) { + setCONTROLINFOFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/FORMATETC;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + P_OLE_FN_2 fn; + FORMATETC formatetc, *arg01=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2\n"); +#endif + + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) { + arg01 = &formatetc; + getFORMATETCFields(env, arg0, arg01); + } + rc = fn(ppVtbl, (jint)arg01); + + if (arg0) { + setFORMATETCFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/FORMATETC;Lorg/eclipse/swt/internal/ole/win32/STGMEDIUM;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jobject arg1) +{ + P_OLE_FN_3 fn; + FORMATETC formatetc, *arg01=NULL; + STGMEDIUM stgmedium, *arg11=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2\n"); +#endif + + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) { + arg01 = &formatetc; + getFORMATETCFields(env, arg0, arg01); + } + if (arg1) { + arg11 = &stgmedium; + getSTGMEDIUMFields(env, arg1, arg11); + } + rc = fn(ppVtbl, (jint)arg01, (jint)arg11); + + if (arg0) { + setFORMATETCFields(env, arg0, arg01); + } + if (arg1) { + setSTGMEDIUMFields(env, arg1, arg11); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/FORMATETC;Lorg/eclipse/swt/internal/ole/win32/STGMEDIUM;Z)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2Z + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jobject arg1, jboolean arg2) +{ + P_OLE_FN_4 fn; + FORMATETC formatetc, *arg01=NULL; + STGMEDIUM stgmedium, *arg11=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_FORMATETC_2Lorg_eclipse_swt_internal_ole_win32_STGMEDIUM_2Z\n"); +#endif + + fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) { + arg01 = &formatetc; + getFORMATETCFields(env, arg0, arg01); + } + if (arg1) { + arg11 = &stgmedium; + getSTGMEDIUMFields(env, arg1, arg11); + } + rc = fn(ppVtbl, (jint)arg01, (jint)arg11, (jint)arg2); + + if (arg0) { + setFORMATETCFields(env, arg0, arg01); + } + if (arg1) { + setSTGMEDIUMFields(env, arg1, arg11); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + GUID guid, *arg01=NULL; + P_OLE_FN_2 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2\n"); +#endif + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&guid; + getGUIDFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */ + + if (arg0) { + setGUIDFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jintArray arg1) +{ + jint *arg11=NULL; + GUID guid, *arg01=NULL; + P_OLE_FN_3 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2_3I\n"); +#endif + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) { + arg01=&guid; + getGUIDFields(env, arg0, arg01); + } + + if (arg1) + arg11 = (*env)->GetIntArrayElements(env, arg1, NULL); + + rc = fn(ppVtbl, (jint)arg01, (jint)arg11); /* cast it to an OLE function returning int */ + + if (arg1) + (*env)->ReleaseIntArrayElements(env, arg1, arg11, 0); + + if (arg0) { + setGUIDFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;III[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2III_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jint arg1, jint arg2, jint arg3, jintArray arg4) +{ + jint *arg41=NULL; + GUID guid, *arg01=NULL; + P_OLE_FN_6 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2III_3I\n"); +#endif + fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&guid; + getGUIDFields(env, arg0, arg01); + } + + if (arg4) + arg41 = (*env)->GetIntArrayElements(env, arg4, NULL); + + rc = fn(ppVtbl, (jint)arg01, arg1, arg2, arg3, (jint)arg41); /* cast it to an OLE function returning int */ + + if (arg4) + (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0); + + if (arg0) { + setGUIDFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;IIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2IIII + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + GUID guid, *arg01=NULL; + P_OLE_FN_6 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2IIII\n"); +#endif + fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&guid; + getGUIDFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01, arg1, arg2, arg3, arg4); + + if (arg0) { + setGUIDFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;ILorg/eclipse/swt/internal/ole/win32/OLECMD;Lorg/eclipse/swt/internal/ole/win32/OLECMDTEXT;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2ILorg_eclipse_swt_internal_ole_win32_OLECMD_2Lorg_eclipse_swt_internal_ole_win32_OLECMDTEXT_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jint arg1, jobject arg2, jobject arg3) +{ + GUID guid, *arg01=NULL; + OLECMD olecmd, *arg21=NULL; + OLECMDTEXT olecmdtext, *arg31=NULL; + + P_OLE_FN_5 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VtblCall__IILorg_eclipse_swt_internal_ole_win32_GUID_2ILorg_eclipse_swt_internal_ole_win32_OLECMD_2Lorg_eclipse_swt_internal_ole_win32_OLECMDTEXT_2\n"); +#endif + fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&guid; + getGUIDFields(env, arg0, arg01); + } + if (arg2) { + arg21=&olecmd; + getOLECMDFields(env, arg2, arg21); + } + if (arg3) { + arg31=&olecmdtext; + getOLECMDTEXTFields(env, arg3, arg31); + } + + rc = fn(ppVtbl, (jint)arg01, arg1, (jint)arg21, (jint)arg31); + + if (arg0) { + setGUIDFields(env, arg0, arg01); + } + if (arg2) { + setOLECMDFields(env, arg2, arg21); + } + if (arg3) { + setOLECMDTEXTFields(env, arg3, arg31); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/LICINFO;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_LICINFO_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + LICINFO licinfo, *arg01=NULL; + P_OLE_FN_2 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_LICINFO_2\n"); +#endif + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&licinfo; + getLICINFOFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */ + + if (arg0) { + setLICINFOFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/win32/RECT;IZ)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2IZ + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jint arg1, jboolean arg2) +{ + RECT rect, *arg01=NULL; + P_OLE_FN_4 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2IZ\n"); +#endif + + fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=▭ + getRECTFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01, arg1, arg2); /* cast it to an OLE function returning int */ + + if (arg0) { + setRECTFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/win32/RECT;Lorg/eclipse/swt/internal/win32/RECT;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2Lorg_eclipse_swt_internal_win32_RECT_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0, jobject arg1) +{ + RECT rect0, *arg01=NULL; + RECT rect1, *arg11=NULL; + P_OLE_FN_3 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2Lorg_eclipse_swt_internal_win32_RECT_2\n"); +#endif + + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&rect0; + getRECTFields(env, arg0, arg01); + } + if (arg1) { + arg11=&rect1; + getRECTFields(env, arg1, arg11); + } + rc = fn(ppVtbl, (jint)arg01, (jint)arg11); /* cast it to an OLE function returning int */ + + if (arg1) { + setRECTFields(env, arg1, arg11); + } + if (arg0) { + setRECTFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/win32/RECT;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + RECT rect0, *arg01=NULL; + P_OLE_FN_2 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_win32_RECT_2\n"); +#endif + + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&rect0; + getRECTFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01); /* cast it to an OLE function returning int */ + + if (arg0) { + setRECTFields(env, arg0, arg01); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (III[I[I[I[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__III_3I_3I_3I_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jintArray arg1, jintArray arg2, jintArray arg3, jintArray arg4) +{ + jint *arg11=NULL; + jint *arg21=NULL; + jint *arg31=NULL; + jint *arg41=NULL; + P_OLE_FN_6 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__III_3I_3I_3I_31\n"); +#endif + fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber]; + if (arg1) + arg11 = (*env)->GetIntArrayElements(env, arg1, NULL); + + if (arg2) + arg21 = (*env)->GetIntArrayElements(env, arg2, NULL); + + if (arg3) + arg31 = (*env)->GetIntArrayElements(env, arg3, NULL); + + if (arg4) + arg41 = (*env)->GetIntArrayElements(env, arg4, NULL); + + rc = fn(ppVtbl, arg0, (jint)arg11, (jint)arg21, (jint)arg31, (jint)arg41); /* cast it to an OLE function returning int */ + + if (arg1) + (*env)->ReleaseIntArrayElements(env, arg1, arg11, 0); + + if (arg2) + (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0); + + if (arg3) + (*env)->ReleaseIntArrayElements(env, arg3, arg31, 0); + + if (arg4) + (*env)->ReleaseIntArrayElements(env, arg4, arg41, 0); + + + return rc; +} +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (III[II[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__III_3II_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jintArray arg1, jint arg2, jintArray arg3) +{ + jint *arg11=NULL; + jint *arg31=NULL; + P_OLE_FN_5 fn; /* this is a function that returns int */ + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__III_3II_3I\n"); +#endif + fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber]; + if (arg1) + arg11 = (*env)->GetIntArrayElements(env, arg1, NULL); + + if (arg3) + arg31 = (*env)->GetIntArrayElements(env, arg3, NULL); + + rc = fn(ppVtbl, arg0, (jint)arg11, arg2, (jint)arg31); /* cast it to an OLE function returning int */ + + if (arg1) + (*env)->ReleaseIntArrayElements(env, arg1, arg11, 0); + + if (arg3) + (*env)->ReleaseIntArrayElements(env, arg3, arg31, 0); + + return rc; +} +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: WriteClassStg + * Signature: (ILorg/eclipse/swt/internal/ole/win32/GUID;)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_WriteClassStg + (JNIEnv *env, jclass that, jint pStg, jobject rclsid) +{ + GUID guid, *rclsid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "WriteClassStg\n"); +#endif + if (rclsid) { + rclsid1=&guid; + getGUIDFields(env, rclsid, rclsid1); + } + rc = (jint) WriteClassStg((IStorage *)pStg, rclsid1); + + if (rclsid) { + setGUIDFields(env, rclsid, rclsid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleGetClipboard + * Signature: ([I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleGetClipboard + (JNIEnv *env, jclass that, jintArray ppDataObj) +{ + IDataObject **ppDataObj1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleGetClipboard\n"); +#endif + if (ppDataObj) + ppDataObj1 = (IDataObject **)(*env)->GetIntArrayElements(env, ppDataObj, NULL); + + rc = (jint) OleGetClipboard(ppDataObj1); + + if (ppDataObj) + (*env)->ReleaseIntArrayElements(env, ppDataObj, (jint *)ppDataObj1, 0); + + return rc; +} + + /* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleIsCurrentClipboard + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleIsCurrentClipboard + (JNIEnv *env, jclass that, jint pDataObj) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleIsCurrentClipboard\n"); +#endif + return (jint) OleIsCurrentClipboard((IDataObject *)pDataObj); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleSetClipboard + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleSetClipboard + (JNIEnv *env, jclass that, jint pDataObj) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleSetClipboard\n"); +#endif + return (jint) OleSetClipboard((IDataObject *)pDataObj); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleFlushClipboard + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleFlushClipboard + (JNIEnv *env, jclass that) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleFlushClipboard\n"); +#endif + return (jint) OleFlushClipboard(); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: OleDraw + * Signature: (IIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_OleDraw + (JNIEnv *env, jclass that, jint pUnk, jint dwAspect, jint hdcDraw, jint lprcBounds) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "OleDraw\n"); +#endif + return (jint) OleDraw((LPUNKNOWN)pUnk, (DWORD)dwAspect, (HDC)hdcDraw, (LPRECT)lprcBounds); +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: ReleaseStgMedium + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_ReleaseStgMedium + (JNIEnv *env, jclass that, jint pmedium) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "ReleaseStgMedium\n"); +#endif + ReleaseStgMedium((STGMEDIUM *)pmedium); +} + +/* ------------- obsolete OLE calls ------------- */ + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: DispGetParam + * Signature: (Lorg/eclipse/swt/internal/ole/win32/DISPPARAMS;III[I)I + */ +/*JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_DispGetParam + (JNIEnv *env, jclass that, jobject pdispparams, jint position, jint vtTarg, jint pvarResult, jintArray puArgErr) +{ + unsigned int FAR *puArgErr1=NULL; + DISPPARAMS dispparams, *pdispparams1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "DispGetParam\n"); +#endif + + if (pdispparams) { + pdispparams1=&dispparams; + cacheDispparamsFids(env, pdispparams, &DispparamsFc); + getDISPPARAMSFields(env, pdispparams, pdispparams1, &DispparamsFc); + } + if (puArgErr) + puArgErr1 = (*env)->GetIntArrayElements(env, puArgErr, NULL); + + rc = (jint) DispGetParam(pdispparams1, position, (VARTYPE)vtTarg, (VARIANT FAR *)pvarResult, puArgErr1); + + if (puArgErr) + (*env)->ReleaseIntArrayElements(env, puArgErr, puArgErr1, 0); + + if (pdispparams) { + setDISPPARAMSFields(env, pdispparams, pdispparams1, &DispparamsFc); + } + return rc; +} +*/ +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (ILorg/eclipse/swt/internal/win32/SIZE;I)V + */ +/*JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_win32_SIZE_2I + (JNIEnv *env, jclass that, jint DestinationPtr, jobject Source, jint Length) +{ + SIZE size, *Source1=&size; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_win32_SIZE_2I\n"); +#endif + + if (Source) { + getSIZEFields(env, Source, Source1); + } + + MoveMemory((PVOID)DestinationPtr, Source1, Length); +} +*/ +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (II[CI[CI)I + */ +/*JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__II_3CI_3CI + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jcharArray arg0, jint arg1, jcharArray arg2, jint arg3) +{ + P_OLE_FN_5 fn; + jchar *arg01=NULL, *arg21=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__II_3CI_3CI\n"); +#endif + + fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber]; + + if (arg0) + arg01 = (*env)->GetCharArrayElements(env, arg0, NULL); + + if (arg2) + arg21 = (*env)->GetCharArrayElements(env, arg2, NULL); + + rc = fn(ppVtbl, (jint)arg01, arg1, (jint)arg21, arg3); + + if (arg2) + (*env)->ReleaseCharArrayElements(env, arg2, arg21, 0); + + if (arg0) + (*env)->ReleaseCharArrayElements(env, arg0, arg01, 0); + + return rc; +} +*/ +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIILorg/eclipse/swt/internal/ole/win32/GUID;[I)I + */ +/*JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2_3I + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jobject arg1, jintArray arg2) +{ + jint *arg21=NULL; + GUID guid, *arg11=NULL; + P_OLE_FN_4 fn; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIILorg_eclipse_swt_internal_ole_win32_GUID_2I_3I\n"); +#endif + + fn = (P_OLE_FN_4)(*(int **)ppVtbl)[fnNumber]; + if (arg1) { + arg11=&guid; + getGUIDFields(env, arg1, arg11); + } + + if (arg2) + arg21 = (*env)->GetIntArrayElements(env, arg2, NULL); + + rc = fn(ppVtbl, arg0, (jint)arg11, (jint)arg21); + + if (arg2) + (*env)->ReleaseIntArrayElements(env, arg2, arg21, 0); + + if (arg1) { + setGUIDFields(env, arg1, arg11); + } + return rc; +} +*/ +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIII)I + */ +/*JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIII + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1) +{ + P_OLE_FN_3 fn; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIII\n"); +#endif + + fn = (P_OLE_FN_3)(*(int **)ppVtbl)[fnNumber]; + rc = fn(ppVtbl, arg0, arg1); + return rc; +} +*/ + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/win32/MSG;)I + */ +/* +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_win32_MSG_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + MSG msg, *arg01=NULL; + P_OLE_FN_2 fn; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_MSG_2\n"); +#endif + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&msg; + getMSGFields(env, arg0, arg01); + } + + rc = fn(ppVtbl, (jint)arg01); + + if (arg0) { + setMSGFields(env, arg0, arg01); + } + return rc; +} +*/ +/* ------------- end obsolote OLE calls ------------- */ + +/* ------------- deleted OLE calls ------------- */ + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IILorg/eclipse/swt/internal/ole/win32/TYPEATTR;)I + */ +/* +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_TYPEATTR_2 + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jobject arg0) +{ + TYPEATTR typeattr, *arg01=NULL; + P_OLE_FN_2 fn; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IILorg_eclipse_swt_internal_ole_win32_TYPEATTR_2\n"); +#endif + fn = (P_OLE_FN_2)(*(int **)ppVtbl)[fnNumber]; + if (arg0) { + arg01=&typeattr; + cacheTypeattrFids(env, arg0, &TypeattrFc); + getTypeattrFields(env, arg0, arg01, &TypeattrFc); + } + + rc = fn(ppVtbl, (jint)arg01); + if (arg0) { + setTYPEATTRFields(env, arg0, arg01, &TypeattrFc); + } + return rc; +} +*/ + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: MoveMemory + * Signature: (ILorg/eclipse/swt/internal/ole/win32/EXCEPINFO;I)V + */ +/* JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_EXCEPINFO_2I + (JNIEnv *env, jclass that, jint Destination, jobject SourcePtr, jint Length) +{ + EXCEPINFO excepinfo, *SourcePtr1=&excepinfo; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_MoveMemory__ILorg_eclipse_swt_internal_ole_win32_EXCEPINFO_2I\n"); +#endif + + if (SourcePtr) { + getEXCEPINFOFields(env, SourcePtr, SourcePtr1); + } + + MoveMemory((PVOID)Destination, SourcePtr1, Length); +} +*/ +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: ProgIDFromCLSID + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;[C)I + */ +/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_ProgIDFromCLSID__Lorg_eclipse_swt_internal_ole_win32_GUID_2_3C + (JNIEnv *env, jclass that, jobject pclsid, jcharArray lplpszProgID) +{ + LPOLESTR *lplpszProgID1=NULL; + GUID guid, *pclsid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_ProgIDFromCLSID__Lorg_eclipse_swt_internal_ole_win32_GUID_2_3C\n"); +#endif + + if (pclsid) { + pclsid1=&guid; + getGUIDFields(env, pclsid, pclsid1); + } + + if (lplpszProgID) + lplpszProgID1 = (LPOLESTR *)(*env)->GetCharArrayElements(env, lplpszProgID, NULL); + + rc = (jint) ProgIDFromCLSID(pclsid1, lplpszProgID1); + + if (lplpszProgID) + (*env)->ReleaseCharArrayElements(env, lplpszProgID, (jchar *)lplpszProgID1, 0); + + if (pclsid) { + setGUIDFields(env, pclsid, pclsid1); + } + return rc; +} +*/ + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: ProgIDFromCLSID + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;[I)I + */ + JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_ProgIDFromCLSID__Lorg_eclipse_swt_internal_ole_win32_GUID_2_3I + (JNIEnv *env, jclass that, jobject pclsid, jintArray lplpszProgID) +{ + LPOLESTR *lplpszProgID1=NULL; + GUID guid, *pclsid1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_ProgIDFromCLSID__Lorg_eclipse_swt_internal_ole_win32_GUID_2_3I\n"); +#endif + + if (pclsid) { + pclsid1=&guid; + getGUIDFields(env, pclsid, pclsid1); + } + + if (lplpszProgID) + lplpszProgID1 = (LPOLESTR *)(*env)->GetIntArrayElements(env, lplpszProgID, NULL); + + rc = (jint) ProgIDFromCLSID(pclsid1, lplpszProgID1); + + if (lplpszProgID) + (*env)->ReleaseIntArrayElements(env, lplpszProgID, (jint *)lplpszProgID1, 0); + + if (pclsid) { + setGUIDFields(env, pclsid, pclsid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VariantCopyInd + * Signature: (II)I + */ +/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VariantCopyInd + (JNIEnv *env, jclass that, jint pvarDest, jint pvarSrc) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "VariantCopyInd\n"); +#endif + return (jint) VariantCopyInd((VARIANT FAR*)pvarDest, (VARIANTARG FAR*)pvarSrc); +} +*/ + + +/* MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II removed after OS version 0.80 */ +/* + * Class: org_eclipse_swt_internal_win32_OS + * Method: MoveMemory + * Signature: (Lorg/eclipse/swt/internal/win32/NMHEADER;II)V + */ +/* JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_win32_OS_MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II + (JNIEnv *env, jclass that, jobject Destination, jint Source, jint Length) +{ + NMHEADER nmheader, *lpDestination1=NULL; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II\n"); +#endif + + MoveMemory((PVOID)&nmheader, (CONST VOID *)Source, Length); + + if (Destination) { + lpDestination1 = &nmheader; + setNmheaderFields(env, Destination, lpDestination1); + } +} +*/ + +/* SendMessage__IIILorg_eclipse_swt_internal_win32_HDITEM_2 removed after OS version 0.80 */ +/* + * Class: org_eclipse_swt_internal_win32_OS + * Method: SendMessage + * Signature: (IIILorg/eclipse/swt/internal/win32/HDITEM;)I + */ +/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_win32_OS_SendMessage__IIILorg_eclipse_swt_internal_win32_HDITEM_2 + (JNIEnv *env, jclass that, jint hWnd, jint Msg, jint wParam, jobject lParam) +{ + HDITEM hditem, *lpParam1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "SendMessage__IIILorg_eclipse_swt_internal_win32_HDITEM_2\n"); +#endif + + if (lParam) { + lpParam1 = &hditem; + getHditemFields(env, lParam, lpParam1); + } + rc = (jint) SendMessage((HWND)hWnd, Msg, wParam, (LPARAM)lpParam1); + if (lParam) { + setHditemFields(env, lParam, lpParam1); + } + return rc; +} +*/ + +/* SendMessage__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2 removed after OS version 0.80 */ +/* + * Class: org_eclipse_swt_internal_win32_OS + * Method: SendMessage + * Signature: (IIILorg/eclipse/swt/internal/win32/HDLAYOUT;)I + */ +/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_win32_OS_SendMessage__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2 + (JNIEnv *env, jclass that, jint hWnd, jint Msg, jint wParam, jobject lParam) +{ + HDLAYOUT hdlayout, *lpParam1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "SendMessage__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2\n"); +#endif + + if (lParam) { + lpParam1 = &hdlayout; + getHdlayoutFields(env, lParam, lpParam1); + } + rc = (jint) SendMessage((HWND)hWnd, Msg, wParam, (LPARAM)lpParam1); + if (lParam) { + setHdlayoutFields(env, lParam, lpParam1); + } + return rc; +} +*/ +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CoGetInstanceFromIStorage + * Signature: (Lorg/eclipse/swt/internal/ole/win32/COSERVERINFO;Lorg/eclipse/swt/internal/ole/win32/GUID;IIIILorg/eclipse/swt/internal/ole/win32/MULTI_QI;)I + */ +/* +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CoGetInstanceFromIStorage + (JNIEnv *env, jclass that, jobject pServerInfo, jobject pclsid, jint punkOuter, jint dwClsCtx, + jint pstg, jint cmq, jobject rgmqResults) +{ + GUID guid, *pclsid1=NULL; + COSERVERINFO coserverinfo, *pServerInfo1=NULL; + MULTI_QI multi_qi, *rgmqResults1=NULL; + jint rc; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CoGetInstanceFromIStorage\n"); +#endif + + if (pclsid) { + pclsid1=&guid; + getGUIDFields(env, pclsid, pclsid1); + } + if (pServerInfo) { + pServerInfo1=&coserverinfo; + getCoserverinfoFields(env, pServerInfo, pServerInfo1); + } + if (rgmqResults) { + rgmqResults1=&multi_qi; + getMulti_qiFields(env, rgmqResults, rgmqResults1); + } + + rc = CoGetInstanceFromIStorage(pServerInfo1, pclsid1, (IUnknown *)punkOuter, dwClsCtx, (IStorage *)pstg, cmq, rgmqResults1); + + if (pclsid) { + setGUIDFields(env, pclsid, pclsid1); + } + if (pServerInfo) { + setCoserverinfoFields(env, pServerInfo, pServerInfo1); + } + if (rgmqResults) { + setMulti_qiFields(env, rgmqResults, rgmqResults1); + } + return rc; +} +*/ + +/****************** ACCESSIBILITY ****************/ +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: CreateStdAccessibleObject + * Signature: (IILorg/eclipse/swt/internal/ole/win32/GUID;[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_CreateStdAccessibleObject + (JNIEnv *env, jclass that, jint hwnd, jint idObject, jobject riidInterface, jintArray ppvObject) +{ + LPVOID *ppvObject1=NULL; + GUID guid, *riidInterface1=NULL; + jint rc = E_NOTIMPL; + HMODULE hm; + FARPROC fp; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "CreateStdAccessibleObject\n"); +#endif + + if (riidInterface) { + riidInterface1=&guid; + getGUIDFields(env, riidInterface, riidInterface1); + } + + if (ppvObject) + ppvObject1 = (LPVOID *)(*env)->GetIntArrayElements(env, ppvObject, NULL); + + /* + * CreateStdAccessibleObject is an oleacc specific call. + * If you link it into swt.dll, a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + if (!(hm = GetModuleHandle("oleacc.dll"))) hm = LoadLibrary("oleacc.dll"); + if (hm && (fp = GetProcAddress(hm, "CreateStdAccessibleObject"))) { + rc = (jint)fp((HWND)hwnd, idObject, riidInterface1, ppvObject1); + } + + if (riidInterface) { + setGUIDFields(env, riidInterface, riidInterface1); + } + + if (ppvObject) + (*env)->ReleaseIntArrayElements(env, ppvObject, (jint *)ppvObject1, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: LresultFromObject + * Signature: (Lorg/eclipse/swt/internal/ole/win32/GUID;II)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_LresultFromObject + (JNIEnv *env, jclass that, jobject riid, jint wParam, jint pAcc) +{ + GUID guid, *riid1=NULL; + jint rc = E_NOTIMPL; + HMODULE hm; + FARPROC fp; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "LresultFromObject\n"); +#endif + + if (riid) { + riid1=&guid; + getGUIDFields(env, riid, riid1); + } + /* + * LresultFromObject is an oleacc specific call. + * If you link it into swt.dll, a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + if (!(hm = GetModuleHandle("oleacc.dll"))) hm = LoadLibrary("oleacc.dll"); + if (hm && (fp = GetProcAddress(hm, "LresultFromObject"))) { + rc = (jint)fp(riid1, wParam, (LPUNKNOWN)pAcc); + } + if (riid) { + setGUIDFields(env, riid, riid1); + } + return rc; +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: NotifyWinEvent + * Signature: (IIII)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_NotifyWinEvent + (JNIEnv *env, jclass that, jint event, jint hwnd, jint idObject, jint idChild) +{ + HMODULE hm; + FARPROC fp; + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "NotifyWinEvent\n"); +#endif + + /* + * NotifyWinEvent is a Win2000 and Win98 specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "NotifyWinEvent"))) { + (fp)((DWORD)event, (HWND)hwnd, idObject, idChild); +// NotifyWinEvent((DWORD)event, (HWND)hwnd, idObject, idChild); + } +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIII + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3) +{ + P_OLE_FN_5 fn; /* this is a function that returns int */ + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIIII\n"); +#endif + fn = (P_OLE_FN_5)(*(int **)ppVtbl)[fnNumber]; + return fn(ppVtbl, arg0, arg1, arg2, arg3); /* cast it to an OLE function returning int */ +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIIIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIIII + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + P_OLE_FN_6 fn; /* this is a function that returns int */ + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIIIII\n"); +#endif + fn = (P_OLE_FN_6)(*(int **)ppVtbl)[fnNumber]; + return fn(ppVtbl, arg0, arg1, arg2, arg3, arg4); /* cast it to an OLE function returning int */ +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIIIIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIIIII + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5) +{ + P_OLE_FN_7 fn; /* this is a function that returns int */ + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIIIIII\n"); +#endif + fn = (P_OLE_FN_7)(*(int **)ppVtbl)[fnNumber]; + return fn(ppVtbl, arg0, arg1, arg2, arg3, arg4, arg5); /* cast it to an OLE function returning int */ +} + +/* + * Class: org_eclipse_swt_internal_ole_win32_COM + * Method: VtblCall + * Signature: (IIIIIIIIII)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_ole_win32_COM_VtblCall__IIIIIIIIII + (JNIEnv *env, jclass that, jint fnNumber, jint ppVtbl, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7) +{ + P_OLE_FN_9 fn; /* this is a function that returns int */ + +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "COM_VtblCall__IIIIIIIIII\n"); +#endif + fn = (P_OLE_FN_9)(*(int **)ppVtbl)[fnNumber]; + return fn(ppVtbl, arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7); /* cast it to an OLE function returning int */ +} diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com_structs.c b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com_structs.c index d5b60fa0d1..d939d62b36 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com_structs.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com_structs.c @@ -1,1038 +1,1038 @@ -/*******************************************************************************
-* Copyright (c) 2000, 2003 IBM Corporation and others.
-* All rights reserved. This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-*
-* Contributors:
-* IBM Corporation - initial API and implementation
-*******************************************************************************/
-
-#include "swt.h"
-#include "com_structs.h"
-
-#ifndef NO_CAUUID
-typedef struct CAUUID_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cElems, pElems;
-} CAUUID_FID_CACHE;
-
-CAUUID_FID_CACHE CAUUIDFc;
-
-void cacheCAUUIDFids(JNIEnv *env, jobject lpObject)
-{
- if (CAUUIDFc.cached) return;
- CAUUIDFc.clazz = (*env)->GetObjectClass(env, lpObject);
- CAUUIDFc.cElems = (*env)->GetFieldID(env, CAUUIDFc.clazz, "cElems", "I");
- CAUUIDFc.pElems = (*env)->GetFieldID(env, CAUUIDFc.clazz, "pElems", "I");
- CAUUIDFc.cached = 1;
-}
-
-CAUUID *getCAUUIDFields(JNIEnv *env, jobject lpObject, CAUUID *lpStruct)
-{
- if (!CAUUIDFc.cached) cacheCAUUIDFids(env, lpObject);
- lpStruct->cElems = (*env)->GetIntField(env, lpObject, CAUUIDFc.cElems);
- lpStruct->pElems = (GUID FAR *)(*env)->GetIntField(env, lpObject, CAUUIDFc.pElems);
- return lpStruct;
-}
-
-void setCAUUIDFields(JNIEnv *env, jobject lpObject, CAUUID *lpStruct)
-{
- if (!CAUUIDFc.cached) cacheCAUUIDFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, CAUUIDFc.cElems, (jint)lpStruct->cElems);
- (*env)->SetIntField(env, lpObject, CAUUIDFc.pElems, (jint)lpStruct->pElems);
-}
-#endif /* NO_CAUUID */
-
-#ifndef NO_CONTROLINFO
-typedef struct CONTROLINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cb, hAccel, cAccel, dwFlags;
-} CONTROLINFO_FID_CACHE;
-
-CONTROLINFO_FID_CACHE CONTROLINFOFc;
-
-void cacheCONTROLINFOFids(JNIEnv *env, jobject lpObject)
-{
- if (CONTROLINFOFc.cached) return;
- CONTROLINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- CONTROLINFOFc.cb = (*env)->GetFieldID(env, CONTROLINFOFc.clazz, "cb", "I");
- CONTROLINFOFc.hAccel = (*env)->GetFieldID(env, CONTROLINFOFc.clazz, "hAccel", "I");
- CONTROLINFOFc.cAccel = (*env)->GetFieldID(env, CONTROLINFOFc.clazz, "cAccel", "S");
- CONTROLINFOFc.dwFlags = (*env)->GetFieldID(env, CONTROLINFOFc.clazz, "dwFlags", "I");
- CONTROLINFOFc.cached = 1;
-}
-
-CONTROLINFO *getCONTROLINFOFields(JNIEnv *env, jobject lpObject, CONTROLINFO *lpStruct)
-{
- if (!CONTROLINFOFc.cached) cacheCONTROLINFOFids(env, lpObject);
- lpStruct->cb = (*env)->GetIntField(env, lpObject, CONTROLINFOFc.cb);
- lpStruct->hAccel = (HACCEL)(*env)->GetIntField(env, lpObject, CONTROLINFOFc.hAccel);
- lpStruct->cAccel = (*env)->GetShortField(env, lpObject, CONTROLINFOFc.cAccel);
- lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, CONTROLINFOFc.dwFlags);
- return lpStruct;
-}
-
-void setCONTROLINFOFields(JNIEnv *env, jobject lpObject, CONTROLINFO *lpStruct)
-{
- if (!CONTROLINFOFc.cached) cacheCONTROLINFOFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, CONTROLINFOFc.cb, (jint)lpStruct->cb);
- (*env)->SetIntField(env, lpObject, CONTROLINFOFc.hAccel, (jint)lpStruct->hAccel);
- (*env)->SetShortField(env, lpObject, CONTROLINFOFc.cAccel, (jshort)lpStruct->cAccel);
- (*env)->SetIntField(env, lpObject, CONTROLINFOFc.dwFlags, (jint)lpStruct->dwFlags);
-}
-#endif /* NO_CONTROLINFO */
-
-#ifndef NO_COSERVERINFO
-typedef struct COSERVERINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID dwReserved1, pwszName, pAuthInfo, dwReserved2;
-} COSERVERINFO_FID_CACHE;
-
-COSERVERINFO_FID_CACHE COSERVERINFOFc;
-
-void cacheCOSERVERINFOFids(JNIEnv *env, jobject lpObject)
-{
- if (COSERVERINFOFc.cached) return;
- COSERVERINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- COSERVERINFOFc.dwReserved1 = (*env)->GetFieldID(env, COSERVERINFOFc.clazz, "dwReserved1", "I");
- COSERVERINFOFc.pwszName = (*env)->GetFieldID(env, COSERVERINFOFc.clazz, "pwszName", "I");
- COSERVERINFOFc.pAuthInfo = (*env)->GetFieldID(env, COSERVERINFOFc.clazz, "pAuthInfo", "I");
- COSERVERINFOFc.dwReserved2 = (*env)->GetFieldID(env, COSERVERINFOFc.clazz, "dwReserved2", "I");
- COSERVERINFOFc.cached = 1;
-}
-
-COSERVERINFO *getCOSERVERINFOFields(JNIEnv *env, jobject lpObject, COSERVERINFO *lpStruct)
-{
- if (!COSERVERINFOFc.cached) cacheCOSERVERINFOFids(env, lpObject);
- lpStruct->dwReserved1 = (*env)->GetIntField(env, lpObject, COSERVERINFOFc.dwReserved1);
- lpStruct->pwszName = (LPWSTR)(*env)->GetIntField(env, lpObject, COSERVERINFOFc.pwszName);
- lpStruct->pAuthInfo = (COAUTHINFO *)(*env)->GetIntField(env, lpObject, COSERVERINFOFc.pAuthInfo);
- lpStruct->dwReserved2 = (*env)->GetIntField(env, lpObject, COSERVERINFOFc.dwReserved2);
- return lpStruct;
-}
-
-void setCOSERVERINFOFields(JNIEnv *env, jobject lpObject, COSERVERINFO *lpStruct)
-{
- if (!COSERVERINFOFc.cached) cacheCOSERVERINFOFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, COSERVERINFOFc.dwReserved1, (jint)lpStruct->dwReserved1);
- (*env)->SetIntField(env, lpObject, COSERVERINFOFc.pwszName, (jint)lpStruct->pwszName);
- (*env)->SetIntField(env, lpObject, COSERVERINFOFc.pAuthInfo, (jint)lpStruct->pAuthInfo);
- (*env)->SetIntField(env, lpObject, COSERVERINFOFc.dwReserved2, (jint)lpStruct->dwReserved2);
-}
-#endif /* NO_COSERVERINFO */
-
-#ifndef NO_DISPPARAMS
-typedef struct DISPPARAMS_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID rgvarg, rgdispidNamedArgs, cArgs, cNamedArgs;
-} DISPPARAMS_FID_CACHE;
-
-DISPPARAMS_FID_CACHE DISPPARAMSFc;
-
-void cacheDISPPARAMSFids(JNIEnv *env, jobject lpObject)
-{
- if (DISPPARAMSFc.cached) return;
- DISPPARAMSFc.clazz = (*env)->GetObjectClass(env, lpObject);
- DISPPARAMSFc.rgvarg = (*env)->GetFieldID(env, DISPPARAMSFc.clazz, "rgvarg", "I");
- DISPPARAMSFc.rgdispidNamedArgs = (*env)->GetFieldID(env, DISPPARAMSFc.clazz, "rgdispidNamedArgs", "I");
- DISPPARAMSFc.cArgs = (*env)->GetFieldID(env, DISPPARAMSFc.clazz, "cArgs", "I");
- DISPPARAMSFc.cNamedArgs = (*env)->GetFieldID(env, DISPPARAMSFc.clazz, "cNamedArgs", "I");
- DISPPARAMSFc.cached = 1;
-}
-
-DISPPARAMS *getDISPPARAMSFields(JNIEnv *env, jobject lpObject, DISPPARAMS *lpStruct)
-{
- if (!DISPPARAMSFc.cached) cacheDISPPARAMSFids(env, lpObject);
- lpStruct->rgvarg = (VARIANTARG FAR *)(*env)->GetIntField(env, lpObject, DISPPARAMSFc.rgvarg);
- lpStruct->rgdispidNamedArgs = (DISPID FAR *)(*env)->GetIntField(env, lpObject, DISPPARAMSFc.rgdispidNamedArgs);
- lpStruct->cArgs = (*env)->GetIntField(env, lpObject, DISPPARAMSFc.cArgs);
- lpStruct->cNamedArgs = (*env)->GetIntField(env, lpObject, DISPPARAMSFc.cNamedArgs);
- return lpStruct;
-}
-
-void setDISPPARAMSFields(JNIEnv *env, jobject lpObject, DISPPARAMS *lpStruct)
-{
- if (!DISPPARAMSFc.cached) cacheDISPPARAMSFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, DISPPARAMSFc.rgvarg, (jint)lpStruct->rgvarg);
- (*env)->SetIntField(env, lpObject, DISPPARAMSFc.rgdispidNamedArgs, (jint)lpStruct->rgdispidNamedArgs);
- (*env)->SetIntField(env, lpObject, DISPPARAMSFc.cArgs, (jint)lpStruct->cArgs);
- (*env)->SetIntField(env, lpObject, DISPPARAMSFc.cNamedArgs, (jint)lpStruct->cNamedArgs);
-}
-#endif /* NO_DISPPARAMS */
-
-#ifndef NO_DVTARGETDEVICE
-typedef struct DVTARGETDEVICE_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID tdSize, tdDriverNameOffset, tdDeviceNameOffset, tdPortNameOffset, tdExtDevmodeOffset, tdData;
-} DVTARGETDEVICE_FID_CACHE;
-
-DVTARGETDEVICE_FID_CACHE DVTARGETDEVICEFc;
-
-void cacheDVTARGETDEVICEFids(JNIEnv *env, jobject lpObject)
-{
- if (DVTARGETDEVICEFc.cached) return;
- DVTARGETDEVICEFc.clazz = (*env)->GetObjectClass(env, lpObject);
- DVTARGETDEVICEFc.tdSize = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdSize", "I");
- DVTARGETDEVICEFc.tdDriverNameOffset = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdDriverNameOffset", "S");
- DVTARGETDEVICEFc.tdDeviceNameOffset = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdDeviceNameOffset", "S");
- DVTARGETDEVICEFc.tdPortNameOffset = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdPortNameOffset", "S");
- DVTARGETDEVICEFc.tdExtDevmodeOffset = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdExtDevmodeOffset", "S");
- DVTARGETDEVICEFc.tdData = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdData", "B");
- DVTARGETDEVICEFc.cached = 1;
-}
-
-DVTARGETDEVICE *getDVTARGETDEVICEFields(JNIEnv *env, jobject lpObject, DVTARGETDEVICE *lpStruct)
-{
- if (!DVTARGETDEVICEFc.cached) cacheDVTARGETDEVICEFids(env, lpObject);
- lpStruct->tdSize = (*env)->GetIntField(env, lpObject, DVTARGETDEVICEFc.tdSize);
- lpStruct->tdDriverNameOffset = (*env)->GetShortField(env, lpObject, DVTARGETDEVICEFc.tdDriverNameOffset);
- lpStruct->tdDeviceNameOffset = (*env)->GetShortField(env, lpObject, DVTARGETDEVICEFc.tdDeviceNameOffset);
- lpStruct->tdPortNameOffset = (*env)->GetShortField(env, lpObject, DVTARGETDEVICEFc.tdPortNameOffset);
- lpStruct->tdExtDevmodeOffset = (*env)->GetShortField(env, lpObject, DVTARGETDEVICEFc.tdExtDevmodeOffset);
- *lpStruct->tdData = (*env)->GetByteField(env, lpObject, DVTARGETDEVICEFc.tdData);
- return lpStruct;
-}
-
-void setDVTARGETDEVICEFields(JNIEnv *env, jobject lpObject, DVTARGETDEVICE *lpStruct)
-{
- if (!DVTARGETDEVICEFc.cached) cacheDVTARGETDEVICEFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, DVTARGETDEVICEFc.tdSize, (jint)lpStruct->tdSize);
- (*env)->SetShortField(env, lpObject, DVTARGETDEVICEFc.tdDriverNameOffset, (jshort)lpStruct->tdDriverNameOffset);
- (*env)->SetShortField(env, lpObject, DVTARGETDEVICEFc.tdDeviceNameOffset, (jshort)lpStruct->tdDeviceNameOffset);
- (*env)->SetShortField(env, lpObject, DVTARGETDEVICEFc.tdPortNameOffset, (jshort)lpStruct->tdPortNameOffset);
- (*env)->SetShortField(env, lpObject, DVTARGETDEVICEFc.tdExtDevmodeOffset, (jshort)lpStruct->tdExtDevmodeOffset);
- (*env)->SetByteField(env, lpObject, DVTARGETDEVICEFc.tdData, (jbyte)*lpStruct->tdData);
-}
-#endif /* NO_DVTARGETDEVICE */
-
-#ifndef NO_EXCEPINFO
-typedef struct EXCEPINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID wCode, wReserved, bstrSource, bstrDescription, bstrHelpFile, dwHelpContext, pvReserved, pfnDeferredFillIn, scode;
-} EXCEPINFO_FID_CACHE;
-
-EXCEPINFO_FID_CACHE EXCEPINFOFc;
-
-void cacheEXCEPINFOFids(JNIEnv *env, jobject lpObject)
-{
- if (EXCEPINFOFc.cached) return;
- EXCEPINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- EXCEPINFOFc.wCode = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "wCode", "S");
- EXCEPINFOFc.wReserved = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "wReserved", "S");
- EXCEPINFOFc.bstrSource = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "bstrSource", "I");
- EXCEPINFOFc.bstrDescription = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "bstrDescription", "I");
- EXCEPINFOFc.bstrHelpFile = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "bstrHelpFile", "I");
- EXCEPINFOFc.dwHelpContext = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "dwHelpContext", "I");
- EXCEPINFOFc.pvReserved = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "pvReserved", "I");
- EXCEPINFOFc.pfnDeferredFillIn = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "pfnDeferredFillIn", "I");
- EXCEPINFOFc.scode = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "scode", "I");
- EXCEPINFOFc.cached = 1;
-}
-
-EXCEPINFO *getEXCEPINFOFields(JNIEnv *env, jobject lpObject, EXCEPINFO *lpStruct)
-{
- if (!EXCEPINFOFc.cached) cacheEXCEPINFOFids(env, lpObject);
- lpStruct->wCode = (*env)->GetShortField(env, lpObject, EXCEPINFOFc.wCode);
- lpStruct->wReserved = (*env)->GetShortField(env, lpObject, EXCEPINFOFc.wReserved);
- lpStruct->bstrSource = (BSTR)(*env)->GetIntField(env, lpObject, EXCEPINFOFc.bstrSource);
- lpStruct->bstrDescription = (BSTR)(*env)->GetIntField(env, lpObject, EXCEPINFOFc.bstrDescription);
- lpStruct->bstrHelpFile = (BSTR)(*env)->GetIntField(env, lpObject, EXCEPINFOFc.bstrHelpFile);
- lpStruct->dwHelpContext = (*env)->GetIntField(env, lpObject, EXCEPINFOFc.dwHelpContext);
- lpStruct->pvReserved = (void FAR *)(*env)->GetIntField(env, lpObject, EXCEPINFOFc.pvReserved);
- lpStruct->pfnDeferredFillIn = (HRESULT (STDAPICALLTYPE FAR* )(struct tagEXCEPINFO FAR*))(*env)->GetIntField(env, lpObject, EXCEPINFOFc.pfnDeferredFillIn);
- lpStruct->scode = (*env)->GetIntField(env, lpObject, EXCEPINFOFc.scode);
- return lpStruct;
-}
-
-void setEXCEPINFOFields(JNIEnv *env, jobject lpObject, EXCEPINFO *lpStruct)
-{
- if (!EXCEPINFOFc.cached) cacheEXCEPINFOFids(env, lpObject);
- (*env)->SetShortField(env, lpObject, EXCEPINFOFc.wCode, (jshort)lpStruct->wCode);
- (*env)->SetShortField(env, lpObject, EXCEPINFOFc.wReserved, (jshort)lpStruct->wReserved);
- (*env)->SetIntField(env, lpObject, EXCEPINFOFc.bstrSource, (jint)lpStruct->bstrSource);
- (*env)->SetIntField(env, lpObject, EXCEPINFOFc.bstrDescription, (jint)lpStruct->bstrDescription);
- (*env)->SetIntField(env, lpObject, EXCEPINFOFc.bstrHelpFile, (jint)lpStruct->bstrHelpFile);
- (*env)->SetIntField(env, lpObject, EXCEPINFOFc.dwHelpContext, (jint)lpStruct->dwHelpContext);
- (*env)->SetIntField(env, lpObject, EXCEPINFOFc.pvReserved, (jint)lpStruct->pvReserved);
- (*env)->SetIntField(env, lpObject, EXCEPINFOFc.pfnDeferredFillIn, (jint)lpStruct->pfnDeferredFillIn);
- (*env)->SetIntField(env, lpObject, EXCEPINFOFc.scode, (jint)lpStruct->scode);
-}
-#endif /* NO_EXCEPINFO */
-
-#ifndef NO_FORMATETC
-typedef struct FORMATETC_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cfFormat, ptd, dwAspect, lindex, tymed;
-} FORMATETC_FID_CACHE;
-
-FORMATETC_FID_CACHE FORMATETCFc;
-
-void cacheFORMATETCFids(JNIEnv *env, jobject lpObject)
-{
- if (FORMATETCFc.cached) return;
- FORMATETCFc.clazz = (*env)->GetObjectClass(env, lpObject);
- FORMATETCFc.cfFormat = (*env)->GetFieldID(env, FORMATETCFc.clazz, "cfFormat", "I");
- FORMATETCFc.ptd = (*env)->GetFieldID(env, FORMATETCFc.clazz, "ptd", "I");
- FORMATETCFc.dwAspect = (*env)->GetFieldID(env, FORMATETCFc.clazz, "dwAspect", "I");
- FORMATETCFc.lindex = (*env)->GetFieldID(env, FORMATETCFc.clazz, "lindex", "I");
- FORMATETCFc.tymed = (*env)->GetFieldID(env, FORMATETCFc.clazz, "tymed", "I");
- FORMATETCFc.cached = 1;
-}
-
-FORMATETC *getFORMATETCFields(JNIEnv *env, jobject lpObject, FORMATETC *lpStruct)
-{
- if (!FORMATETCFc.cached) cacheFORMATETCFids(env, lpObject);
- lpStruct->cfFormat = (CLIPFORMAT)(*env)->GetIntField(env, lpObject, FORMATETCFc.cfFormat);
- lpStruct->ptd = (DVTARGETDEVICE *)(*env)->GetIntField(env, lpObject, FORMATETCFc.ptd);
- lpStruct->dwAspect = (*env)->GetIntField(env, lpObject, FORMATETCFc.dwAspect);
- lpStruct->lindex = (*env)->GetIntField(env, lpObject, FORMATETCFc.lindex);
- lpStruct->tymed = (*env)->GetIntField(env, lpObject, FORMATETCFc.tymed);
- return lpStruct;
-}
-
-void setFORMATETCFields(JNIEnv *env, jobject lpObject, FORMATETC *lpStruct)
-{
- if (!FORMATETCFc.cached) cacheFORMATETCFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, FORMATETCFc.cfFormat, (jint)lpStruct->cfFormat);
- (*env)->SetIntField(env, lpObject, FORMATETCFc.ptd, (jint)lpStruct->ptd);
- (*env)->SetIntField(env, lpObject, FORMATETCFc.dwAspect, (jint)lpStruct->dwAspect);
- (*env)->SetIntField(env, lpObject, FORMATETCFc.lindex, (jint)lpStruct->lindex);
- (*env)->SetIntField(env, lpObject, FORMATETCFc.tymed, (jint)lpStruct->tymed);
-}
-#endif /* NO_FORMATETC */
-
-#ifndef NO_FUNCDESC1
-typedef struct FUNCDESC1_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID memid, lprgscode, lprgelemdescParam, funckind, invkind, callconv, cParams, cParamsOpt, oVft, cScodes, elemdescFunc_tdesc_union, elemdescFunc_tdesc_vt, elemdescFunc_paramdesc_pparamdescex, elemdescFunc_paramdesc_wParamFlags, wFuncFlags;
-} FUNCDESC1_FID_CACHE;
-
-FUNCDESC1_FID_CACHE FUNCDESC1Fc;
-
-void cacheFUNCDESC1Fids(JNIEnv *env, jobject lpObject)
-{
- if (FUNCDESC1Fc.cached) return;
- FUNCDESC1Fc.clazz = (*env)->GetObjectClass(env, lpObject);
- FUNCDESC1Fc.memid = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "memid", "I");
- FUNCDESC1Fc.lprgscode = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "lprgscode", "I");
- FUNCDESC1Fc.lprgelemdescParam = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "lprgelemdescParam", "I");
- FUNCDESC1Fc.funckind = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "funckind", "I");
- FUNCDESC1Fc.invkind = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "invkind", "I");
- FUNCDESC1Fc.callconv = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "callconv", "I");
- FUNCDESC1Fc.cParams = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "cParams", "S");
- FUNCDESC1Fc.cParamsOpt = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "cParamsOpt", "S");
- FUNCDESC1Fc.oVft = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "oVft", "S");
- FUNCDESC1Fc.cScodes = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "cScodes", "S");
- FUNCDESC1Fc.elemdescFunc_tdesc_union = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "elemdescFunc_tdesc_union", "I");
- FUNCDESC1Fc.elemdescFunc_tdesc_vt = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "elemdescFunc_tdesc_vt", "S");
- FUNCDESC1Fc.elemdescFunc_paramdesc_pparamdescex = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "elemdescFunc_paramdesc_pparamdescex", "I");
- FUNCDESC1Fc.elemdescFunc_paramdesc_wParamFlags = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "elemdescFunc_paramdesc_wParamFlags", "S");
- FUNCDESC1Fc.wFuncFlags = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "wFuncFlags", "S");
- FUNCDESC1Fc.cached = 1;
-}
-
-FUNCDESC *getFUNCDESC1Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct)
-{
- if (!FUNCDESC1Fc.cached) cacheFUNCDESC1Fids(env, lpObject);
- lpStruct->memid = (*env)->GetIntField(env, lpObject, FUNCDESC1Fc.memid);
- lpStruct->lprgscode = (SCODE FAR *)(*env)->GetIntField(env, lpObject, FUNCDESC1Fc.lprgscode);
- lpStruct->lprgelemdescParam = (ELEMDESC FAR *)(*env)->GetIntField(env, lpObject, FUNCDESC1Fc.lprgelemdescParam);
- lpStruct->funckind = (*env)->GetIntField(env, lpObject, FUNCDESC1Fc.funckind);
- lpStruct->invkind = (*env)->GetIntField(env, lpObject, FUNCDESC1Fc.invkind);
- lpStruct->callconv = (*env)->GetIntField(env, lpObject, FUNCDESC1Fc.callconv);
- lpStruct->cParams = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.cParams);
- lpStruct->cParamsOpt = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.cParamsOpt);
- lpStruct->oVft = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.oVft);
- lpStruct->cScodes = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.cScodes);
- lpStruct->elemdescFunc.tdesc.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR* )(*env)->GetIntField(env, lpObject, FUNCDESC1Fc.elemdescFunc_tdesc_union);
- lpStruct->elemdescFunc.tdesc.vt = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.elemdescFunc_tdesc_vt);
- lpStruct->elemdescFunc.paramdesc.pparamdescex = (LPPARAMDESCEX)(*env)->GetIntField(env, lpObject, FUNCDESC1Fc.elemdescFunc_paramdesc_pparamdescex);
- lpStruct->elemdescFunc.paramdesc.wParamFlags = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.elemdescFunc_paramdesc_wParamFlags);
- lpStruct->wFuncFlags = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.wFuncFlags);
- return lpStruct;
-}
-
-void setFUNCDESC1Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct)
-{
- if (!FUNCDESC1Fc.cached) cacheFUNCDESC1Fids(env, lpObject);
- (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.memid, (jint)lpStruct->memid);
- (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.lprgscode, (jint)lpStruct->lprgscode);
- (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.lprgelemdescParam, (jint)lpStruct->lprgelemdescParam);
- (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.funckind, (jint)lpStruct->funckind);
- (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.invkind, (jint)lpStruct->invkind);
- (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.callconv, (jint)lpStruct->callconv);
- (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.cParams, (jshort)lpStruct->cParams);
- (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.cParamsOpt, (jshort)lpStruct->cParamsOpt);
- (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.oVft, (jshort)lpStruct->oVft);
- (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.cScodes, (jshort)lpStruct->cScodes);
- (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.elemdescFunc_tdesc_union, (jint)lpStruct->elemdescFunc.tdesc.lptdesc);
- (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.elemdescFunc_tdesc_vt, (jshort)lpStruct->elemdescFunc.tdesc.vt);
- (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.elemdescFunc_paramdesc_pparamdescex, (jint)lpStruct->elemdescFunc.paramdesc.pparamdescex);
- (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.elemdescFunc_paramdesc_wParamFlags, (jshort)lpStruct->elemdescFunc.paramdesc.wParamFlags);
- (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.wFuncFlags, (jshort)lpStruct->wFuncFlags);
-}
-#endif /* NO_FUNCDESC1 */
-
-#ifndef NO_FUNCDESC2
-typedef struct FUNCDESC2_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID memid, lprgscode, lprgelemdescParam, funckind, invkind, callconv, cParams, cParamsOpt, oVft, cScodes, elemdescFunc_tdesc_union, elemdescFunc_tdesc_vt, elemdescFunc_idldesc_dwReserved, elemdescFunc_idldesc_wIDLFlags, wFuncFlags;
-} FUNCDESC2_FID_CACHE;
-
-FUNCDESC2_FID_CACHE FUNCDESC2Fc;
-
-void cacheFUNCDESC2Fids(JNIEnv *env, jobject lpObject)
-{
- if (FUNCDESC2Fc.cached) return;
- FUNCDESC2Fc.clazz = (*env)->GetObjectClass(env, lpObject);
- FUNCDESC2Fc.memid = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "memid", "I");
- FUNCDESC2Fc.lprgscode = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "lprgscode", "I");
- FUNCDESC2Fc.lprgelemdescParam = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "lprgelemdescParam", "I");
- FUNCDESC2Fc.funckind = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "funckind", "I");
- FUNCDESC2Fc.invkind = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "invkind", "I");
- FUNCDESC2Fc.callconv = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "callconv", "I");
- FUNCDESC2Fc.cParams = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "cParams", "S");
- FUNCDESC2Fc.cParamsOpt = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "cParamsOpt", "S");
- FUNCDESC2Fc.oVft = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "oVft", "S");
- FUNCDESC2Fc.cScodes = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "cScodes", "S");
- FUNCDESC2Fc.elemdescFunc_tdesc_union = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "elemdescFunc_tdesc_union", "I");
- FUNCDESC2Fc.elemdescFunc_tdesc_vt = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "elemdescFunc_tdesc_vt", "S");
- FUNCDESC2Fc.elemdescFunc_idldesc_dwReserved = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "elemdescFunc_idldesc_dwReserved", "I");
- FUNCDESC2Fc.elemdescFunc_idldesc_wIDLFlags = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "elemdescFunc_idldesc_wIDLFlags", "S");
- FUNCDESC2Fc.wFuncFlags = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "wFuncFlags", "S");
- FUNCDESC2Fc.cached = 1;
-}
-
-FUNCDESC *getFUNCDESC2Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct)
-{
- if (!FUNCDESC2Fc.cached) cacheFUNCDESC2Fids(env, lpObject);
- lpStruct->memid = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.memid);
- lpStruct->lprgscode = (SCODE FAR *)(*env)->GetIntField(env, lpObject, FUNCDESC2Fc.lprgscode);
- lpStruct->lprgelemdescParam = (ELEMDESC FAR *)(*env)->GetIntField(env, lpObject, FUNCDESC2Fc.lprgelemdescParam);
- lpStruct->funckind = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.funckind);
- lpStruct->invkind = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.invkind);
- lpStruct->callconv = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.callconv);
- lpStruct->cParams = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.cParams);
- lpStruct->cParamsOpt = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.cParamsOpt);
- lpStruct->oVft = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.oVft);
- lpStruct->cScodes = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.cScodes);
- lpStruct->elemdescFunc.tdesc.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR* )(*env)->GetIntField(env, lpObject, FUNCDESC2Fc.elemdescFunc_tdesc_union);
- lpStruct->elemdescFunc.tdesc.vt = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.elemdescFunc_tdesc_vt);
- lpStruct->elemdescFunc.idldesc.dwReserved = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.elemdescFunc_idldesc_dwReserved);
- lpStruct->elemdescFunc.idldesc.wIDLFlags = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.elemdescFunc_idldesc_wIDLFlags);
- lpStruct->wFuncFlags = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.wFuncFlags);
- return lpStruct;
-}
-
-void setFUNCDESC2Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct)
-{
- if (!FUNCDESC2Fc.cached) cacheFUNCDESC2Fids(env, lpObject);
- (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.memid, (jint)lpStruct->memid);
- (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.lprgscode, (jint)lpStruct->lprgscode);
- (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.lprgelemdescParam, (jint)lpStruct->lprgelemdescParam);
- (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.funckind, (jint)lpStruct->funckind);
- (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.invkind, (jint)lpStruct->invkind);
- (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.callconv, (jint)lpStruct->callconv);
- (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.cParams, (jshort)lpStruct->cParams);
- (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.cParamsOpt, (jshort)lpStruct->cParamsOpt);
- (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.oVft, (jshort)lpStruct->oVft);
- (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.cScodes, (jshort)lpStruct->cScodes);
- (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.elemdescFunc_tdesc_union, (jint)lpStruct->elemdescFunc.tdesc.lptdesc);
- (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.elemdescFunc_tdesc_vt, (jshort)lpStruct->elemdescFunc.tdesc.vt);
- (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.elemdescFunc_idldesc_dwReserved, (jint)lpStruct->elemdescFunc.idldesc.dwReserved);
- (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.elemdescFunc_idldesc_wIDLFlags, (jshort)lpStruct->elemdescFunc.idldesc.wIDLFlags);
- (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.wFuncFlags, (jshort)lpStruct->wFuncFlags);
-}
-#endif /* NO_FUNCDESC2 */
-
-#ifndef NO_GUID
-typedef struct GUID_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID data1, data2, data3, b0, b1, b2, b3, b4, b5, b6, b7;
-} GUID_FID_CACHE;
-
-GUID_FID_CACHE GUIDFc;
-
-void cacheGUIDFids(JNIEnv *env, jobject lpObject)
-{
- if (GUIDFc.cached) return;
- GUIDFc.clazz = (*env)->GetObjectClass(env, lpObject);
- GUIDFc.data1 = (*env)->GetFieldID(env, GUIDFc.clazz, "data1", "I");
- GUIDFc.data2 = (*env)->GetFieldID(env, GUIDFc.clazz, "data2", "S");
- GUIDFc.data3 = (*env)->GetFieldID(env, GUIDFc.clazz, "data3", "S");
- GUIDFc.b0 = (*env)->GetFieldID(env, GUIDFc.clazz, "b0", "B");
- GUIDFc.b1 = (*env)->GetFieldID(env, GUIDFc.clazz, "b1", "B");
- GUIDFc.b2 = (*env)->GetFieldID(env, GUIDFc.clazz, "b2", "B");
- GUIDFc.b3 = (*env)->GetFieldID(env, GUIDFc.clazz, "b3", "B");
- GUIDFc.b4 = (*env)->GetFieldID(env, GUIDFc.clazz, "b4", "B");
- GUIDFc.b5 = (*env)->GetFieldID(env, GUIDFc.clazz, "b5", "B");
- GUIDFc.b6 = (*env)->GetFieldID(env, GUIDFc.clazz, "b6", "B");
- GUIDFc.b7 = (*env)->GetFieldID(env, GUIDFc.clazz, "b7", "B");
- GUIDFc.cached = 1;
-}
-
-GUID *getGUIDFields(JNIEnv *env, jobject lpObject, GUID *lpStruct)
-{
- if (!GUIDFc.cached) cacheGUIDFids(env, lpObject);
- lpStruct->Data4[7] = (*env)->GetByteField(env, lpObject, GUIDFc.b7);
- lpStruct->Data4[6] = (*env)->GetByteField(env, lpObject, GUIDFc.b6);
- lpStruct->Data4[5] = (*env)->GetByteField(env, lpObject, GUIDFc.b5);
- lpStruct->Data4[4] = (*env)->GetByteField(env, lpObject, GUIDFc.b4);
- lpStruct->Data4[3] = (*env)->GetByteField(env, lpObject, GUIDFc.b3);
- lpStruct->Data4[2] = (*env)->GetByteField(env, lpObject, GUIDFc.b2);
- lpStruct->Data4[1] = (*env)->GetByteField(env, lpObject, GUIDFc.b1);
- lpStruct->Data4[0] = (*env)->GetByteField(env, lpObject, GUIDFc.b0);
- lpStruct->Data3 = (*env)->GetShortField(env, lpObject, GUIDFc.data3);
- lpStruct->Data2 = (*env)->GetShortField(env, lpObject, GUIDFc.data2);
- lpStruct->Data1 = (*env)->GetIntField(env, lpObject, GUIDFc.data1);
- return lpStruct;
-}
-
-void setGUIDFields(JNIEnv *env, jobject lpObject, GUID *lpStruct)
-{
- if (!GUIDFc.cached) cacheGUIDFids(env, lpObject);
- (*env)->SetByteField(env, lpObject, GUIDFc.b7, lpStruct->Data4[7]);
- (*env)->SetByteField(env, lpObject, GUIDFc.b6, lpStruct->Data4[6]);
- (*env)->SetByteField(env, lpObject, GUIDFc.b5, lpStruct->Data4[5]);
- (*env)->SetByteField(env, lpObject, GUIDFc.b4, lpStruct->Data4[4]);
- (*env)->SetByteField(env, lpObject, GUIDFc.b3, lpStruct->Data4[3]);
- (*env)->SetByteField(env, lpObject, GUIDFc.b2, lpStruct->Data4[2]);
- (*env)->SetByteField(env, lpObject, GUIDFc.b1, lpStruct->Data4[1]);
- (*env)->SetByteField(env, lpObject, GUIDFc.b0, lpStruct->Data4[0]);
- (*env)->SetShortField(env, lpObject, GUIDFc.data3, lpStruct->Data3);
- (*env)->SetShortField(env, lpObject, GUIDFc.data2, lpStruct->Data2);
- (*env)->SetIntField(env, lpObject, GUIDFc.data1, lpStruct->Data1);
-}
-
-#endif /* NO_GUID */
-
-#ifndef NO_LICINFO
-typedef struct LICINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbLicInfo, fRuntimeKeyAvail, fLicVerified;
-} LICINFO_FID_CACHE;
-
-LICINFO_FID_CACHE LICINFOFc;
-
-void cacheLICINFOFids(JNIEnv *env, jobject lpObject)
-{
- if (LICINFOFc.cached) return;
- LICINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LICINFOFc.cbLicInfo = (*env)->GetFieldID(env, LICINFOFc.clazz, "cbLicInfo", "I");
- LICINFOFc.fRuntimeKeyAvail = (*env)->GetFieldID(env, LICINFOFc.clazz, "fRuntimeKeyAvail", "I");
- LICINFOFc.fLicVerified = (*env)->GetFieldID(env, LICINFOFc.clazz, "fLicVerified", "I");
- LICINFOFc.cached = 1;
-}
-
-LICINFO *getLICINFOFields(JNIEnv *env, jobject lpObject, LICINFO *lpStruct)
-{
- if (!LICINFOFc.cached) cacheLICINFOFids(env, lpObject);
- lpStruct->cbLicInfo = (*env)->GetIntField(env, lpObject, LICINFOFc.cbLicInfo);
- lpStruct->fRuntimeKeyAvail = (*env)->GetIntField(env, lpObject, LICINFOFc.fRuntimeKeyAvail);
- lpStruct->fLicVerified = (*env)->GetIntField(env, lpObject, LICINFOFc.fLicVerified);
- return lpStruct;
-}
-
-void setLICINFOFields(JNIEnv *env, jobject lpObject, LICINFO *lpStruct)
-{
- if (!LICINFOFc.cached) cacheLICINFOFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, LICINFOFc.cbLicInfo, (jint)lpStruct->cbLicInfo);
- (*env)->SetIntField(env, lpObject, LICINFOFc.fRuntimeKeyAvail, (jint)lpStruct->fRuntimeKeyAvail);
- (*env)->SetIntField(env, lpObject, LICINFOFc.fLicVerified, (jint)lpStruct->fLicVerified);
-}
-#endif /* NO_LICINFO */
-
-#ifndef NO_OLECMD
-typedef struct OLECMD_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cmdID, cmdf;
-} OLECMD_FID_CACHE;
-
-OLECMD_FID_CACHE OLECMDFc;
-
-void cacheOLECMDFids(JNIEnv *env, jobject lpObject)
-{
- if (OLECMDFc.cached) return;
- OLECMDFc.clazz = (*env)->GetObjectClass(env, lpObject);
- OLECMDFc.cmdID = (*env)->GetFieldID(env, OLECMDFc.clazz, "cmdID", "I");
- OLECMDFc.cmdf = (*env)->GetFieldID(env, OLECMDFc.clazz, "cmdf", "I");
- OLECMDFc.cached = 1;
-}
-
-OLECMD *getOLECMDFields(JNIEnv *env, jobject lpObject, OLECMD *lpStruct)
-{
- if (!OLECMDFc.cached) cacheOLECMDFids(env, lpObject);
- lpStruct->cmdID = (*env)->GetIntField(env, lpObject, OLECMDFc.cmdID);
- lpStruct->cmdf = (*env)->GetIntField(env, lpObject, OLECMDFc.cmdf);
- return lpStruct;
-}
-
-void setOLECMDFields(JNIEnv *env, jobject lpObject, OLECMD *lpStruct)
-{
- if (!OLECMDFc.cached) cacheOLECMDFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, OLECMDFc.cmdID, (jint)lpStruct->cmdID);
- (*env)->SetIntField(env, lpObject, OLECMDFc.cmdf, (jint)lpStruct->cmdf);
-}
-#endif /* NO_OLECMD */
-
-#ifndef NO_OLECMDTEXT
-typedef struct OLECMDTEXT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cmdtextf, cwActual, cwBuf, rgwz;
-} OLECMDTEXT_FID_CACHE;
-
-OLECMDTEXT_FID_CACHE OLECMDTEXTFc;
-
-void cacheOLECMDTEXTFids(JNIEnv *env, jobject lpObject)
-{
- if (OLECMDTEXTFc.cached) return;
- OLECMDTEXTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- OLECMDTEXTFc.cmdtextf = (*env)->GetFieldID(env, OLECMDTEXTFc.clazz, "cmdtextf", "I");
- OLECMDTEXTFc.cwActual = (*env)->GetFieldID(env, OLECMDTEXTFc.clazz, "cwActual", "I");
- OLECMDTEXTFc.cwBuf = (*env)->GetFieldID(env, OLECMDTEXTFc.clazz, "cwBuf", "I");
- OLECMDTEXTFc.rgwz = (*env)->GetFieldID(env, OLECMDTEXTFc.clazz, "rgwz", "S");
- OLECMDTEXTFc.cached = 1;
-}
-
-OLECMDTEXT *getOLECMDTEXTFields(JNIEnv *env, jobject lpObject, OLECMDTEXT *lpStruct)
-{
- if (!OLECMDTEXTFc.cached) cacheOLECMDTEXTFids(env, lpObject);
- lpStruct->cmdtextf = (*env)->GetIntField(env, lpObject, OLECMDTEXTFc.cmdtextf);
- lpStruct->cwActual = (*env)->GetIntField(env, lpObject, OLECMDTEXTFc.cwActual);
- lpStruct->cwBuf = (*env)->GetIntField(env, lpObject, OLECMDTEXTFc.cwBuf);
- lpStruct->rgwz[0] = (*env)->GetShortField(env, lpObject, OLECMDTEXTFc.rgwz); /* SPECIAL */
- return lpStruct;
-}
-
-void setOLECMDTEXTFields(JNIEnv *env, jobject lpObject, OLECMDTEXT *lpStruct)
-{
- if (!OLECMDTEXTFc.cached) cacheOLECMDTEXTFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, OLECMDTEXTFc.cmdtextf, (jint)lpStruct->cmdtextf);
- (*env)->SetIntField(env, lpObject, OLECMDTEXTFc.cwActual, (jint)lpStruct->cwActual);
- (*env)->SetIntField(env, lpObject, OLECMDTEXTFc.cwBuf, (jint)lpStruct->cwBuf);
- (*env)->SetShortField(env, lpObject, OLECMDTEXTFc.rgwz, (jshort)lpStruct->rgwz[0]); /* SPECIAL */
-}
-#endif /* NO_OLECMDTEXT */
-
-#ifndef NO_OLEINPLACEFRAMEINFO
-typedef struct OLEINPLACEFRAMEINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cb, fMDIApp, hwndFrame, haccel, cAccelEntries;
-} OLEINPLACEFRAMEINFO_FID_CACHE;
-
-OLEINPLACEFRAMEINFO_FID_CACHE OLEINPLACEFRAMEINFOFc;
-
-void cacheOLEINPLACEFRAMEINFOFids(JNIEnv *env, jobject lpObject)
-{
- if (OLEINPLACEFRAMEINFOFc.cached) return;
- OLEINPLACEFRAMEINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- OLEINPLACEFRAMEINFOFc.cb = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "cb", "I");
- OLEINPLACEFRAMEINFOFc.fMDIApp = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "fMDIApp", "I");
- OLEINPLACEFRAMEINFOFc.hwndFrame = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "hwndFrame", "I");
- OLEINPLACEFRAMEINFOFc.haccel = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "haccel", "I");
- OLEINPLACEFRAMEINFOFc.cAccelEntries = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "cAccelEntries", "I");
- OLEINPLACEFRAMEINFOFc.cached = 1;
-}
-
-OLEINPLACEFRAMEINFO *getOLEINPLACEFRAMEINFOFields(JNIEnv *env, jobject lpObject, OLEINPLACEFRAMEINFO *lpStruct)
-{
- if (!OLEINPLACEFRAMEINFOFc.cached) cacheOLEINPLACEFRAMEINFOFids(env, lpObject);
- lpStruct->cb = (*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.cb);
- lpStruct->fMDIApp = (*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.fMDIApp);
- lpStruct->hwndFrame = (HWND)(*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.hwndFrame);
- lpStruct->haccel = (HACCEL)(*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.haccel);
- lpStruct->cAccelEntries = (*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.cAccelEntries);
- return lpStruct;
-}
-
-void setOLEINPLACEFRAMEINFOFields(JNIEnv *env, jobject lpObject, OLEINPLACEFRAMEINFO *lpStruct)
-{
- if (!OLEINPLACEFRAMEINFOFc.cached) cacheOLEINPLACEFRAMEINFOFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.cb, (jint)lpStruct->cb);
- (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.fMDIApp, (jint)lpStruct->fMDIApp);
- (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.hwndFrame, (jint)lpStruct->hwndFrame);
- (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.haccel, (jint)lpStruct->haccel);
- (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.cAccelEntries, (jint)lpStruct->cAccelEntries);
-}
-#endif /* NO_OLEINPLACEFRAMEINFO */
-
-#ifndef NO_STATSTG
-typedef struct STATSTG_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID pwcsName, type, cbSize, mtime_dwLowDateTime, mtime_dwHighDateTime, ctime_dwLowDateTime, ctime_dwHighDateTime, atime_dwLowDateTime, atime_dwHighDateTime, grfMode, grfLocksSupported, clsid_data1, clsid_data2, clsid_data3, clsid_b0, clsid_b1, clsid_b2, clsid_b3, clsid_b4, clsid_b5, clsid_b6, clsid_b7, grfStateBits, reserved;
-} STATSTG_FID_CACHE;
-
-STATSTG_FID_CACHE STATSTGFc;
-
-void cacheSTATSTGFids(JNIEnv *env, jobject lpObject)
-{
- if (STATSTGFc.cached) return;
- STATSTGFc.clazz = (*env)->GetObjectClass(env, lpObject);
- STATSTGFc.pwcsName = (*env)->GetFieldID(env, STATSTGFc.clazz, "pwcsName", "I");
- STATSTGFc.type = (*env)->GetFieldID(env, STATSTGFc.clazz, "type", "I");
- STATSTGFc.cbSize = (*env)->GetFieldID(env, STATSTGFc.clazz, "cbSize", "J");
- STATSTGFc.mtime_dwLowDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "mtime_dwLowDateTime", "I");
- STATSTGFc.mtime_dwHighDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "mtime_dwHighDateTime", "I");
- STATSTGFc.ctime_dwLowDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "ctime_dwLowDateTime", "I");
- STATSTGFc.ctime_dwHighDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "ctime_dwHighDateTime", "I");
- STATSTGFc.atime_dwLowDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "atime_dwLowDateTime", "I");
- STATSTGFc.atime_dwHighDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "atime_dwHighDateTime", "I");
- STATSTGFc.grfMode = (*env)->GetFieldID(env, STATSTGFc.clazz, "grfMode", "I");
- STATSTGFc.grfLocksSupported = (*env)->GetFieldID(env, STATSTGFc.clazz, "grfLocksSupported", "I");
- STATSTGFc.clsid_data1 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_data1", "I");
- STATSTGFc.clsid_data2 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_data2", "S");
- STATSTGFc.clsid_data3 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_data3", "S");
- STATSTGFc.clsid_b0 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b0", "B");
- STATSTGFc.clsid_b1 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b1", "B");
- STATSTGFc.clsid_b2 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b2", "B");
- STATSTGFc.clsid_b3 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b3", "B");
- STATSTGFc.clsid_b4 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b4", "B");
- STATSTGFc.clsid_b5 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b5", "B");
- STATSTGFc.clsid_b6 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b6", "B");
- STATSTGFc.clsid_b7 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b7", "B");
- STATSTGFc.grfStateBits = (*env)->GetFieldID(env, STATSTGFc.clazz, "grfStateBits", "I");
- STATSTGFc.reserved = (*env)->GetFieldID(env, STATSTGFc.clazz, "reserved", "I");
- STATSTGFc.cached = 1;
-}
-
-STATSTG *getSTATSTGFields(JNIEnv *env, jobject lpObject, STATSTG *lpStruct)
-{
- if (!STATSTGFc.cached) cacheSTATSTGFids(env, lpObject);
- lpStruct->pwcsName = (LPWSTR)(*env)->GetIntField(env, lpObject, STATSTGFc.pwcsName);
- lpStruct->type = (*env)->GetIntField(env, lpObject, STATSTGFc.type);
- lpStruct->cbSize.QuadPart = (*env)->GetLongField(env, lpObject, STATSTGFc.cbSize);
- lpStruct->mtime.dwLowDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.mtime_dwLowDateTime);
- lpStruct->mtime.dwHighDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.mtime_dwHighDateTime);
- lpStruct->ctime.dwLowDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.ctime_dwLowDateTime);
- lpStruct->ctime.dwHighDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.ctime_dwHighDateTime);
- lpStruct->atime.dwLowDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.atime_dwLowDateTime);
- lpStruct->atime.dwHighDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.atime_dwHighDateTime);
- lpStruct->grfMode = (*env)->GetIntField(env, lpObject, STATSTGFc.grfMode);
- lpStruct->grfLocksSupported = (*env)->GetIntField(env, lpObject, STATSTGFc.grfLocksSupported);
- lpStruct->clsid.Data4[7] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b7);
- lpStruct->clsid.Data4[6] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b6);
- lpStruct->clsid.Data4[5] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b5);
- lpStruct->clsid.Data4[4] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b4);
- lpStruct->clsid.Data4[3] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b3);
- lpStruct->clsid.Data4[2] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b2);
- lpStruct->clsid.Data4[1] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b1);
- lpStruct->clsid.Data4[0] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b0);
- lpStruct->clsid.Data3 = (*env)->GetShortField(env, lpObject, STATSTGFc.clsid_data3);
- lpStruct->clsid.Data2 = (*env)->GetShortField(env, lpObject, STATSTGFc.clsid_data2);
- lpStruct->clsid.Data1 = (*env)->GetIntField(env, lpObject, STATSTGFc.clsid_data1);
- lpStruct->grfStateBits = (*env)->GetIntField(env, lpObject, STATSTGFc.grfStateBits);
- lpStruct->reserved = (*env)->GetIntField(env, lpObject, STATSTGFc.reserved);
- return lpStruct;
-}
-
-void setSTATSTGFields(JNIEnv *env, jobject lpObject, STATSTG *lpStruct)
-{
- if (!STATSTGFc.cached) cacheSTATSTGFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, STATSTGFc.pwcsName, (jint)lpStruct->pwcsName);
- (*env)->SetIntField(env, lpObject, STATSTGFc.type, (jint)lpStruct->type);
- (*env)->SetLongField(env, lpObject, STATSTGFc.cbSize, (jlong)lpStruct->cbSize.QuadPart);
- (*env)->SetIntField(env, lpObject, STATSTGFc.mtime_dwLowDateTime, (jint)lpStruct->mtime.dwLowDateTime);
- (*env)->SetIntField(env, lpObject, STATSTGFc.mtime_dwHighDateTime, (jint)lpStruct->mtime.dwHighDateTime);
- (*env)->SetIntField(env, lpObject, STATSTGFc.ctime_dwLowDateTime, (jint)lpStruct->ctime.dwLowDateTime);
- (*env)->SetIntField(env, lpObject, STATSTGFc.ctime_dwHighDateTime, (jint)lpStruct->ctime.dwHighDateTime);
- (*env)->SetIntField(env, lpObject, STATSTGFc.atime_dwLowDateTime, (jint)lpStruct->atime.dwLowDateTime);
- (*env)->SetIntField(env, lpObject, STATSTGFc.atime_dwHighDateTime, (jint)lpStruct->atime.dwHighDateTime);
- (*env)->SetIntField(env, lpObject, STATSTGFc.grfMode, (jint)lpStruct->grfMode);
- (*env)->SetIntField(env, lpObject, STATSTGFc.grfLocksSupported, (jint)lpStruct->grfLocksSupported);
- (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b7, lpStruct->clsid.Data4[7]);
- (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b6, lpStruct->clsid.Data4[6]);
- (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b5, lpStruct->clsid.Data4[5]);
- (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b4, lpStruct->clsid.Data4[4]);
- (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b3, lpStruct->clsid.Data4[3]);
- (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b2, lpStruct->clsid.Data4[2]);
- (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b1, lpStruct->clsid.Data4[1]);
- (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b0, lpStruct->clsid.Data4[0]);
- (*env)->SetShortField(env, lpObject, STATSTGFc.clsid_data3, lpStruct->clsid.Data3);
- (*env)->SetShortField(env, lpObject, STATSTGFc.clsid_data2, lpStruct->clsid.Data2);
- (*env)->SetIntField(env, lpObject, STATSTGFc.clsid_data1, lpStruct->clsid.Data1);
- (*env)->SetIntField(env, lpObject, STATSTGFc.grfStateBits, (jint)lpStruct->grfStateBits);
- (*env)->SetIntField(env, lpObject, STATSTGFc.reserved, (jint)lpStruct->reserved);
-}
-#endif /* NO_STATSTG */
-
-#ifndef NO_STGMEDIUM
-typedef struct STGMEDIUM_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID tymed, unionField, pUnkForRelease;
-} STGMEDIUM_FID_CACHE;
-
-STGMEDIUM_FID_CACHE STGMEDIUMFc;
-
-void cacheSTGMEDIUMFids(JNIEnv *env, jobject lpObject)
-{
- if (STGMEDIUMFc.cached) return;
- STGMEDIUMFc.clazz = (*env)->GetObjectClass(env, lpObject);
- STGMEDIUMFc.tymed = (*env)->GetFieldID(env, STGMEDIUMFc.clazz, "tymed", "I");
- STGMEDIUMFc.unionField = (*env)->GetFieldID(env, STGMEDIUMFc.clazz, "unionField", "I");
- STGMEDIUMFc.pUnkForRelease = (*env)->GetFieldID(env, STGMEDIUMFc.clazz, "pUnkForRelease", "I");
- STGMEDIUMFc.cached = 1;
-}
-
-STGMEDIUM *getSTGMEDIUMFields(JNIEnv *env, jobject lpObject, STGMEDIUM *lpStruct)
-{
- if (!STGMEDIUMFc.cached) cacheSTGMEDIUMFids(env, lpObject);
- lpStruct->tymed = (*env)->GetIntField(env, lpObject, STGMEDIUMFc.tymed);
- lpStruct->hGlobal = (HGLOBAL)(*env)->GetIntField(env, lpObject, STGMEDIUMFc.unionField);
- lpStruct->pUnkForRelease = (IUnknown *)(*env)->GetIntField(env, lpObject, STGMEDIUMFc.pUnkForRelease);
- return lpStruct;
-}
-
-void setSTGMEDIUMFields(JNIEnv *env, jobject lpObject, STGMEDIUM *lpStruct)
-{
- if (!STGMEDIUMFc.cached) cacheSTGMEDIUMFids(env, lpObject);
- (*env)->SetIntField(env, lpObject, STGMEDIUMFc.tymed, (jint)lpStruct->tymed);
- (*env)->SetIntField(env, lpObject, STGMEDIUMFc.unionField, (jint)lpStruct->hGlobal);
- (*env)->SetIntField(env, lpObject, STGMEDIUMFc.pUnkForRelease, (jint)lpStruct->pUnkForRelease);
-}
-#endif /* NO_STGMEDIUM */
-
-#ifndef NO_TYPEATTR
-typedef struct TYPEATTR_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID guid_data1, guid_data2, guid_data3, guid_b0, guid_b1, guid_b2, guid_b3, guid_b4, guid_b5, guid_b6, guid_b7, lcid, dwReserved, memidConstructor, memidDestructor, lpstrSchema, cbSizeInstance, typekind, cFuncs, cVars, cImplTypes, cbSizeVft, cbAlignment, wTypeFlags, wMajorVerNum, wMinorVerNum, tdescAlias_unionField, tdescAlias_vt, idldescType_dwReserved, idldescType_wIDLFlags;
-} TYPEATTR_FID_CACHE;
-
-TYPEATTR_FID_CACHE TYPEATTRFc;
-
-void cacheTYPEATTRFids(JNIEnv *env, jobject lpObject)
-{
- if (TYPEATTRFc.cached) return;
- TYPEATTRFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TYPEATTRFc.guid_data1 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_data1", "I");
- TYPEATTRFc.guid_data2 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_data2", "S");
- TYPEATTRFc.guid_data3 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_data3", "S");
- TYPEATTRFc.guid_b0 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b0", "B");
- TYPEATTRFc.guid_b1 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b1", "B");
- TYPEATTRFc.guid_b2 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b2", "B");
- TYPEATTRFc.guid_b3 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b3", "B");
- TYPEATTRFc.guid_b4 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b4", "B");
- TYPEATTRFc.guid_b5 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b5", "B");
- TYPEATTRFc.guid_b6 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b6", "B");
- TYPEATTRFc.guid_b7 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b7", "B");
- TYPEATTRFc.lcid = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "lcid", "I");
- TYPEATTRFc.dwReserved = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "dwReserved", "I");
- TYPEATTRFc.memidConstructor = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "memidConstructor", "I");
- TYPEATTRFc.memidDestructor = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "memidDestructor", "I");
- TYPEATTRFc.lpstrSchema = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "lpstrSchema", "I");
- TYPEATTRFc.cbSizeInstance = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cbSizeInstance", "I");
- TYPEATTRFc.typekind = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "typekind", "I");
- TYPEATTRFc.cFuncs = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cFuncs", "S");
- TYPEATTRFc.cVars = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cVars", "S");
- TYPEATTRFc.cImplTypes = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cImplTypes", "S");
- TYPEATTRFc.cbSizeVft = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cbSizeVft", "S");
- TYPEATTRFc.cbAlignment = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cbAlignment", "S");
- TYPEATTRFc.wTypeFlags = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "wTypeFlags", "S");
- TYPEATTRFc.wMajorVerNum = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "wMajorVerNum", "S");
- TYPEATTRFc.wMinorVerNum = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "wMinorVerNum", "S");
- TYPEATTRFc.tdescAlias_unionField = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "tdescAlias_unionField", "I");
- TYPEATTRFc.tdescAlias_vt = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "tdescAlias_vt", "S");
- TYPEATTRFc.idldescType_dwReserved = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "idldescType_dwReserved", "I");
- TYPEATTRFc.idldescType_wIDLFlags = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "idldescType_wIDLFlags", "S");
- TYPEATTRFc.cached = 1;
-}
-
-TYPEATTR *getTYPEATTRFields(JNIEnv *env, jobject lpObject, TYPEATTR *lpStruct)
-{
- if (!TYPEATTRFc.cached) cacheTYPEATTRFids(env, lpObject);
- lpStruct->idldescType.wIDLFlags = (*env)->GetShortField(env, lpObject, TYPEATTRFc.idldescType_wIDLFlags);
- lpStruct->idldescType.dwReserved = (*env)->GetIntField(env, lpObject, TYPEATTRFc.idldescType_dwReserved);
- lpStruct->tdescAlias.vt = (*env)->GetShortField(env, lpObject, TYPEATTRFc.tdescAlias_vt);
- lpStruct->tdescAlias.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR *)(*env)->GetIntField(env, lpObject, TYPEATTRFc.tdescAlias_unionField);
- lpStruct->wMinorVerNum = (*env)->GetShortField(env, lpObject, TYPEATTRFc.wMinorVerNum);
- lpStruct->wMajorVerNum = (*env)->GetShortField(env, lpObject, TYPEATTRFc.wMajorVerNum);
- lpStruct->wTypeFlags = (*env)->GetShortField(env, lpObject, TYPEATTRFc.wTypeFlags);
- lpStruct->cbAlignment = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cbAlignment);
- lpStruct->cbSizeVft = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cbSizeVft);
- lpStruct->cImplTypes = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cImplTypes);
- lpStruct->cVars = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cVars);
- lpStruct->cFuncs = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cFuncs);
- lpStruct->typekind = (*env)->GetIntField(env, lpObject, TYPEATTRFc.typekind);
- lpStruct->cbSizeInstance = (*env)->GetIntField(env, lpObject, TYPEATTRFc.cbSizeInstance);
- lpStruct->lpstrSchema = (OLECHAR FAR *)(*env)->GetIntField(env, lpObject, TYPEATTRFc.lpstrSchema);
- lpStruct->memidDestructor = (*env)->GetIntField(env, lpObject, TYPEATTRFc.memidDestructor);
- lpStruct->memidConstructor = (*env)->GetIntField(env, lpObject, TYPEATTRFc.memidConstructor);
- lpStruct->dwReserved = (*env)->GetIntField(env, lpObject, TYPEATTRFc.dwReserved);
- lpStruct->lcid = (*env)->GetIntField(env, lpObject, TYPEATTRFc.lcid);
- lpStruct->guid.Data4[7] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b7);
- lpStruct->guid.Data4[6] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b6);
- lpStruct->guid.Data4[5] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b5);
- lpStruct->guid.Data4[4] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b4);
- lpStruct->guid.Data4[3] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b3);
- lpStruct->guid.Data4[2] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b2);
- lpStruct->guid.Data4[1] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b1);
- lpStruct->guid.Data4[0] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b0);
- lpStruct->guid.Data3 = (*env)->GetShortField(env, lpObject, TYPEATTRFc.guid_data3);
- lpStruct->guid.Data2 = (*env)->GetShortField(env, lpObject, TYPEATTRFc.guid_data2);
- lpStruct->guid.Data1 = (*env)->GetIntField(env, lpObject, TYPEATTRFc.guid_data1);
- return lpStruct;
-}
-
-void setTYPEATTRFields(JNIEnv *env, jobject lpObject, TYPEATTR *lpStruct)
-{
- if (!TYPEATTRFc.cached) cacheTYPEATTRFids(env, lpObject);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.idldescType_wIDLFlags, lpStruct->idldescType.wIDLFlags);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.idldescType_dwReserved, lpStruct->idldescType.dwReserved);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.tdescAlias_vt, lpStruct->tdescAlias.vt);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.tdescAlias_unionField, (jint)lpStruct->tdescAlias.lptdesc);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.wMinorVerNum, lpStruct->wMinorVerNum);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.wMajorVerNum, lpStruct->wMajorVerNum);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.wTypeFlags, lpStruct->wTypeFlags);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.cbAlignment, lpStruct->cbAlignment);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.cbSizeVft, lpStruct->cbSizeVft);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.cImplTypes, lpStruct->cImplTypes);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.cVars, lpStruct->cVars);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.cFuncs, lpStruct->cFuncs);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.typekind, lpStruct->typekind);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.cbSizeInstance, lpStruct->cbSizeInstance);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.lpstrSchema, (jint)lpStruct->lpstrSchema);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.memidDestructor, lpStruct->memidDestructor);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.memidConstructor, lpStruct->memidConstructor);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.dwReserved, lpStruct->dwReserved);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.lcid, lpStruct->lcid);
- (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b7, lpStruct->guid.Data4[7]);
- (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b6, lpStruct->guid.Data4[6]);
- (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b5, lpStruct->guid.Data4[5]);
- (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b4, lpStruct->guid.Data4[4]);
- (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b3, lpStruct->guid.Data4[3]);
- (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b2, lpStruct->guid.Data4[2]);
- (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b1, lpStruct->guid.Data4[1]);
- (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b0, lpStruct->guid.Data4[0]);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.guid_data3, lpStruct->guid.Data3);
- (*env)->SetShortField(env, lpObject, TYPEATTRFc.guid_data2, lpStruct->guid.Data2);
- (*env)->SetIntField(env, lpObject, TYPEATTRFc.guid_data1, lpStruct->guid.Data1);
-}
-#endif /* NO_TYPEATTR */
-
-#ifndef NO_VARDESC1
-typedef struct VARDESC1_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID memid, lpstrSchema, unionField, elemdescVar_tdesc_union, elemdescVar_tdesc_vt, elemdescVar_paramdesc_pparamdescex, elemdescVar_paramdesc_wParamFlags, wVarFlags, varkind;
-} VARDESC1_FID_CACHE;
-
-VARDESC1_FID_CACHE VARDESC1Fc;
-
-void cacheVARDESC1Fids(JNIEnv *env, jobject lpObject)
-{
- if (VARDESC1Fc.cached) return;
- VARDESC1Fc.clazz = (*env)->GetObjectClass(env, lpObject);
- VARDESC1Fc.memid = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "memid", "I");
- VARDESC1Fc.lpstrSchema = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "lpstrSchema", "I");
- VARDESC1Fc.unionField = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "unionField", "I");
- VARDESC1Fc.elemdescVar_tdesc_union = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "elemdescVar_tdesc_union", "I");
- VARDESC1Fc.elemdescVar_tdesc_vt = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "elemdescVar_tdesc_vt", "S");
- VARDESC1Fc.elemdescVar_paramdesc_pparamdescex = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "elemdescVar_paramdesc_pparamdescex", "I");
- VARDESC1Fc.elemdescVar_paramdesc_wParamFlags = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "elemdescVar_paramdesc_wParamFlags", "S");
- VARDESC1Fc.wVarFlags = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "wVarFlags", "S");
- VARDESC1Fc.varkind = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "varkind", "I");
- VARDESC1Fc.cached = 1;
-}
-
-VARDESC *getVARDESC1Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct)
-{
- if (!VARDESC1Fc.cached) cacheVARDESC1Fids(env, lpObject);
- lpStruct->varkind = (*env)->GetIntField(env, lpObject, VARDESC1Fc.varkind);
- lpStruct->wVarFlags = (*env)->GetShortField(env, lpObject, VARDESC1Fc.wVarFlags);
- lpStruct->elemdescVar.paramdesc.wParamFlags = (*env)->GetShortField(env, lpObject, VARDESC1Fc.elemdescVar_paramdesc_wParamFlags);
- lpStruct->elemdescVar.paramdesc.pparamdescex = (LPPARAMDESCEX)(*env)->GetIntField(env, lpObject, VARDESC1Fc.elemdescVar_paramdesc_pparamdescex);
- lpStruct->elemdescVar.tdesc.vt = (*env)->GetShortField(env, lpObject, VARDESC1Fc.elemdescVar_tdesc_vt);
- lpStruct->elemdescVar.tdesc.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR *)(*env)->GetIntField(env, lpObject, VARDESC1Fc.elemdescVar_tdesc_union);
- lpStruct->oInst = (*env)->GetIntField(env, lpObject, VARDESC1Fc.unionField);
- lpStruct->lpstrSchema = (OLECHAR FAR *)(*env)->GetIntField(env, lpObject, VARDESC1Fc.lpstrSchema);
- lpStruct->memid = (*env)->GetIntField(env, lpObject, VARDESC1Fc.memid);
- return lpStruct;
-}
-
-void setVARDESC1Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct)
-{
- if (!VARDESC1Fc.cached) cacheVARDESC1Fids(env, lpObject);
- (*env)->SetIntField(env, lpObject, VARDESC1Fc.varkind, lpStruct->varkind);
- (*env)->SetShortField(env, lpObject, VARDESC1Fc.wVarFlags, lpStruct->wVarFlags);
- (*env)->SetShortField(env, lpObject, VARDESC1Fc.elemdescVar_paramdesc_wParamFlags, lpStruct->elemdescVar.paramdesc.wParamFlags);
- (*env)->SetIntField(env, lpObject, VARDESC1Fc.elemdescVar_paramdesc_pparamdescex, (jint)lpStruct->elemdescVar.paramdesc.pparamdescex);
- (*env)->SetShortField(env, lpObject, VARDESC1Fc.elemdescVar_tdesc_vt, lpStruct->elemdescVar.tdesc.vt);
- (*env)->SetIntField(env, lpObject, VARDESC1Fc.elemdescVar_tdesc_union, (jint)lpStruct->elemdescVar.tdesc.lptdesc);
- (*env)->SetIntField(env, lpObject, VARDESC1Fc.unionField, lpStruct->oInst);
- (*env)->SetIntField(env, lpObject, VARDESC1Fc.lpstrSchema, (jint)lpStruct->lpstrSchema);
- (*env)->SetIntField(env, lpObject, VARDESC1Fc.memid, lpStruct->memid);
-}
-#endif /* NO_VARDESC1 */
-
-#ifndef NO_VARDESC2
-typedef struct VARDESC2_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID memid, lpstrSchema, unionField, elemdescVar_tdesc_union, elemdescVar_tdesc_vt, elemdescFunc_idldesc_dwReserved, elemdescFunc_idldesc_wIDLFlags, wVarFlags, varkind;
-} VARDESC2_FID_CACHE;
-
-VARDESC2_FID_CACHE VARDESC2Fc;
-
-void cacheVARDESC2Fids(JNIEnv *env, jobject lpObject)
-{
- if (VARDESC2Fc.cached) return;
- VARDESC2Fc.clazz = (*env)->GetObjectClass(env, lpObject);
- VARDESC2Fc.memid = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "memid", "I");
- VARDESC2Fc.lpstrSchema = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "lpstrSchema", "I");
- VARDESC2Fc.unionField = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "unionField", "I");
- VARDESC2Fc.elemdescVar_tdesc_union = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "elemdescVar_tdesc_union", "I");
- VARDESC2Fc.elemdescVar_tdesc_vt = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "elemdescVar_tdesc_vt", "S");
- VARDESC2Fc.elemdescFunc_idldesc_dwReserved = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "elemdescFunc_idldesc_dwReserved", "I");
- VARDESC2Fc.elemdescFunc_idldesc_wIDLFlags = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "elemdescFunc_idldesc_wIDLFlags", "S");
- VARDESC2Fc.wVarFlags = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "wVarFlags", "S");
- VARDESC2Fc.varkind = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "varkind", "I");
- VARDESC2Fc.cached = 1;
-}
-
-VARDESC *getVARDESC2Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct)
-{
- if (!VARDESC2Fc.cached) cacheVARDESC2Fids(env, lpObject);
- lpStruct->varkind = (*env)->GetIntField(env, lpObject, VARDESC2Fc.varkind);
- lpStruct->wVarFlags = (*env)->GetShortField(env, lpObject, VARDESC2Fc.wVarFlags);
- lpStruct->elemdescVar.idldesc.wIDLFlags = (*env)->GetShortField(env, lpObject, VARDESC2Fc.elemdescFunc_idldesc_wIDLFlags);
- lpStruct->elemdescVar.idldesc.dwReserved = (*env)->GetIntField(env, lpObject, VARDESC2Fc.elemdescFunc_idldesc_dwReserved);
- lpStruct->elemdescVar.tdesc.vt = (*env)->GetShortField(env, lpObject, VARDESC2Fc.elemdescVar_tdesc_vt);
- lpStruct->elemdescVar.tdesc.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR *)(*env)->GetIntField(env, lpObject, VARDESC2Fc.elemdescVar_tdesc_union);
- lpStruct->oInst = (*env)->GetIntField(env, lpObject, VARDESC2Fc.unionField);
- lpStruct->lpstrSchema = (OLECHAR FAR *)(*env)->GetIntField(env, lpObject, VARDESC2Fc.lpstrSchema);
- lpStruct->memid = (*env)->GetIntField(env, lpObject, VARDESC2Fc.memid);
- return lpStruct;
-}
-
-void setVARDESC2Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct)
-{
- if (!VARDESC2Fc.cached) cacheVARDESC2Fids(env, lpObject);
- (*env)->SetIntField(env, lpObject, VARDESC2Fc.varkind, lpStruct->varkind);
- (*env)->SetShortField(env, lpObject, VARDESC2Fc.wVarFlags, lpStruct->wVarFlags);
- (*env)->SetShortField(env, lpObject, VARDESC2Fc.elemdescFunc_idldesc_wIDLFlags, lpStruct->elemdescVar.idldesc.wIDLFlags);
- (*env)->SetIntField(env, lpObject, VARDESC2Fc.elemdescFunc_idldesc_dwReserved, lpStruct->elemdescVar.idldesc.dwReserved);
- (*env)->SetShortField(env, lpObject, VARDESC2Fc.elemdescVar_tdesc_vt, lpStruct->elemdescVar.tdesc.vt);
- (*env)->SetIntField(env, lpObject, VARDESC2Fc.elemdescVar_tdesc_union, (jint)lpStruct->elemdescVar.tdesc.lptdesc);
- (*env)->SetIntField(env, lpObject, VARDESC2Fc.unionField, lpStruct->oInst);
- (*env)->SetIntField(env, lpObject, VARDESC2Fc.lpstrSchema, (jint)lpStruct->lpstrSchema);
- (*env)->SetIntField(env, lpObject, VARDESC2Fc.memid, lpStruct->memid);
-}
-#endif /* NO_VARDESC2 */
+/******************************************************************************* +* Copyright (c) 2000, 2003 IBM Corporation and others. +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Common Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/cpl-v10.html +* +* Contributors: +* IBM Corporation - initial API and implementation +*******************************************************************************/ + +#include "swt.h" +#include "com_structs.h" + +#ifndef NO_CAUUID +typedef struct CAUUID_FID_CACHE { + int cached; + jclass clazz; + jfieldID cElems, pElems; +} CAUUID_FID_CACHE; + +CAUUID_FID_CACHE CAUUIDFc; + +void cacheCAUUIDFids(JNIEnv *env, jobject lpObject) +{ + if (CAUUIDFc.cached) return; + CAUUIDFc.clazz = (*env)->GetObjectClass(env, lpObject); + CAUUIDFc.cElems = (*env)->GetFieldID(env, CAUUIDFc.clazz, "cElems", "I"); + CAUUIDFc.pElems = (*env)->GetFieldID(env, CAUUIDFc.clazz, "pElems", "I"); + CAUUIDFc.cached = 1; +} + +CAUUID *getCAUUIDFields(JNIEnv *env, jobject lpObject, CAUUID *lpStruct) +{ + if (!CAUUIDFc.cached) cacheCAUUIDFids(env, lpObject); + lpStruct->cElems = (*env)->GetIntField(env, lpObject, CAUUIDFc.cElems); + lpStruct->pElems = (GUID FAR *)(*env)->GetIntField(env, lpObject, CAUUIDFc.pElems); + return lpStruct; +} + +void setCAUUIDFields(JNIEnv *env, jobject lpObject, CAUUID *lpStruct) +{ + if (!CAUUIDFc.cached) cacheCAUUIDFids(env, lpObject); + (*env)->SetIntField(env, lpObject, CAUUIDFc.cElems, (jint)lpStruct->cElems); + (*env)->SetIntField(env, lpObject, CAUUIDFc.pElems, (jint)lpStruct->pElems); +} +#endif /* NO_CAUUID */ + +#ifndef NO_CONTROLINFO +typedef struct CONTROLINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cb, hAccel, cAccel, dwFlags; +} CONTROLINFO_FID_CACHE; + +CONTROLINFO_FID_CACHE CONTROLINFOFc; + +void cacheCONTROLINFOFids(JNIEnv *env, jobject lpObject) +{ + if (CONTROLINFOFc.cached) return; + CONTROLINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + CONTROLINFOFc.cb = (*env)->GetFieldID(env, CONTROLINFOFc.clazz, "cb", "I"); + CONTROLINFOFc.hAccel = (*env)->GetFieldID(env, CONTROLINFOFc.clazz, "hAccel", "I"); + CONTROLINFOFc.cAccel = (*env)->GetFieldID(env, CONTROLINFOFc.clazz, "cAccel", "S"); + CONTROLINFOFc.dwFlags = (*env)->GetFieldID(env, CONTROLINFOFc.clazz, "dwFlags", "I"); + CONTROLINFOFc.cached = 1; +} + +CONTROLINFO *getCONTROLINFOFields(JNIEnv *env, jobject lpObject, CONTROLINFO *lpStruct) +{ + if (!CONTROLINFOFc.cached) cacheCONTROLINFOFids(env, lpObject); + lpStruct->cb = (*env)->GetIntField(env, lpObject, CONTROLINFOFc.cb); + lpStruct->hAccel = (HACCEL)(*env)->GetIntField(env, lpObject, CONTROLINFOFc.hAccel); + lpStruct->cAccel = (*env)->GetShortField(env, lpObject, CONTROLINFOFc.cAccel); + lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, CONTROLINFOFc.dwFlags); + return lpStruct; +} + +void setCONTROLINFOFields(JNIEnv *env, jobject lpObject, CONTROLINFO *lpStruct) +{ + if (!CONTROLINFOFc.cached) cacheCONTROLINFOFids(env, lpObject); + (*env)->SetIntField(env, lpObject, CONTROLINFOFc.cb, (jint)lpStruct->cb); + (*env)->SetIntField(env, lpObject, CONTROLINFOFc.hAccel, (jint)lpStruct->hAccel); + (*env)->SetShortField(env, lpObject, CONTROLINFOFc.cAccel, (jshort)lpStruct->cAccel); + (*env)->SetIntField(env, lpObject, CONTROLINFOFc.dwFlags, (jint)lpStruct->dwFlags); +} +#endif /* NO_CONTROLINFO */ + +#ifndef NO_COSERVERINFO +typedef struct COSERVERINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID dwReserved1, pwszName, pAuthInfo, dwReserved2; +} COSERVERINFO_FID_CACHE; + +COSERVERINFO_FID_CACHE COSERVERINFOFc; + +void cacheCOSERVERINFOFids(JNIEnv *env, jobject lpObject) +{ + if (COSERVERINFOFc.cached) return; + COSERVERINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + COSERVERINFOFc.dwReserved1 = (*env)->GetFieldID(env, COSERVERINFOFc.clazz, "dwReserved1", "I"); + COSERVERINFOFc.pwszName = (*env)->GetFieldID(env, COSERVERINFOFc.clazz, "pwszName", "I"); + COSERVERINFOFc.pAuthInfo = (*env)->GetFieldID(env, COSERVERINFOFc.clazz, "pAuthInfo", "I"); + COSERVERINFOFc.dwReserved2 = (*env)->GetFieldID(env, COSERVERINFOFc.clazz, "dwReserved2", "I"); + COSERVERINFOFc.cached = 1; +} + +COSERVERINFO *getCOSERVERINFOFields(JNIEnv *env, jobject lpObject, COSERVERINFO *lpStruct) +{ + if (!COSERVERINFOFc.cached) cacheCOSERVERINFOFids(env, lpObject); + lpStruct->dwReserved1 = (*env)->GetIntField(env, lpObject, COSERVERINFOFc.dwReserved1); + lpStruct->pwszName = (LPWSTR)(*env)->GetIntField(env, lpObject, COSERVERINFOFc.pwszName); + lpStruct->pAuthInfo = (COAUTHINFO *)(*env)->GetIntField(env, lpObject, COSERVERINFOFc.pAuthInfo); + lpStruct->dwReserved2 = (*env)->GetIntField(env, lpObject, COSERVERINFOFc.dwReserved2); + return lpStruct; +} + +void setCOSERVERINFOFields(JNIEnv *env, jobject lpObject, COSERVERINFO *lpStruct) +{ + if (!COSERVERINFOFc.cached) cacheCOSERVERINFOFids(env, lpObject); + (*env)->SetIntField(env, lpObject, COSERVERINFOFc.dwReserved1, (jint)lpStruct->dwReserved1); + (*env)->SetIntField(env, lpObject, COSERVERINFOFc.pwszName, (jint)lpStruct->pwszName); + (*env)->SetIntField(env, lpObject, COSERVERINFOFc.pAuthInfo, (jint)lpStruct->pAuthInfo); + (*env)->SetIntField(env, lpObject, COSERVERINFOFc.dwReserved2, (jint)lpStruct->dwReserved2); +} +#endif /* NO_COSERVERINFO */ + +#ifndef NO_DISPPARAMS +typedef struct DISPPARAMS_FID_CACHE { + int cached; + jclass clazz; + jfieldID rgvarg, rgdispidNamedArgs, cArgs, cNamedArgs; +} DISPPARAMS_FID_CACHE; + +DISPPARAMS_FID_CACHE DISPPARAMSFc; + +void cacheDISPPARAMSFids(JNIEnv *env, jobject lpObject) +{ + if (DISPPARAMSFc.cached) return; + DISPPARAMSFc.clazz = (*env)->GetObjectClass(env, lpObject); + DISPPARAMSFc.rgvarg = (*env)->GetFieldID(env, DISPPARAMSFc.clazz, "rgvarg", "I"); + DISPPARAMSFc.rgdispidNamedArgs = (*env)->GetFieldID(env, DISPPARAMSFc.clazz, "rgdispidNamedArgs", "I"); + DISPPARAMSFc.cArgs = (*env)->GetFieldID(env, DISPPARAMSFc.clazz, "cArgs", "I"); + DISPPARAMSFc.cNamedArgs = (*env)->GetFieldID(env, DISPPARAMSFc.clazz, "cNamedArgs", "I"); + DISPPARAMSFc.cached = 1; +} + +DISPPARAMS *getDISPPARAMSFields(JNIEnv *env, jobject lpObject, DISPPARAMS *lpStruct) +{ + if (!DISPPARAMSFc.cached) cacheDISPPARAMSFids(env, lpObject); + lpStruct->rgvarg = (VARIANTARG FAR *)(*env)->GetIntField(env, lpObject, DISPPARAMSFc.rgvarg); + lpStruct->rgdispidNamedArgs = (DISPID FAR *)(*env)->GetIntField(env, lpObject, DISPPARAMSFc.rgdispidNamedArgs); + lpStruct->cArgs = (*env)->GetIntField(env, lpObject, DISPPARAMSFc.cArgs); + lpStruct->cNamedArgs = (*env)->GetIntField(env, lpObject, DISPPARAMSFc.cNamedArgs); + return lpStruct; +} + +void setDISPPARAMSFields(JNIEnv *env, jobject lpObject, DISPPARAMS *lpStruct) +{ + if (!DISPPARAMSFc.cached) cacheDISPPARAMSFids(env, lpObject); + (*env)->SetIntField(env, lpObject, DISPPARAMSFc.rgvarg, (jint)lpStruct->rgvarg); + (*env)->SetIntField(env, lpObject, DISPPARAMSFc.rgdispidNamedArgs, (jint)lpStruct->rgdispidNamedArgs); + (*env)->SetIntField(env, lpObject, DISPPARAMSFc.cArgs, (jint)lpStruct->cArgs); + (*env)->SetIntField(env, lpObject, DISPPARAMSFc.cNamedArgs, (jint)lpStruct->cNamedArgs); +} +#endif /* NO_DISPPARAMS */ + +#ifndef NO_DVTARGETDEVICE +typedef struct DVTARGETDEVICE_FID_CACHE { + int cached; + jclass clazz; + jfieldID tdSize, tdDriverNameOffset, tdDeviceNameOffset, tdPortNameOffset, tdExtDevmodeOffset, tdData; +} DVTARGETDEVICE_FID_CACHE; + +DVTARGETDEVICE_FID_CACHE DVTARGETDEVICEFc; + +void cacheDVTARGETDEVICEFids(JNIEnv *env, jobject lpObject) +{ + if (DVTARGETDEVICEFc.cached) return; + DVTARGETDEVICEFc.clazz = (*env)->GetObjectClass(env, lpObject); + DVTARGETDEVICEFc.tdSize = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdSize", "I"); + DVTARGETDEVICEFc.tdDriverNameOffset = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdDriverNameOffset", "S"); + DVTARGETDEVICEFc.tdDeviceNameOffset = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdDeviceNameOffset", "S"); + DVTARGETDEVICEFc.tdPortNameOffset = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdPortNameOffset", "S"); + DVTARGETDEVICEFc.tdExtDevmodeOffset = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdExtDevmodeOffset", "S"); + DVTARGETDEVICEFc.tdData = (*env)->GetFieldID(env, DVTARGETDEVICEFc.clazz, "tdData", "B"); + DVTARGETDEVICEFc.cached = 1; +} + +DVTARGETDEVICE *getDVTARGETDEVICEFields(JNIEnv *env, jobject lpObject, DVTARGETDEVICE *lpStruct) +{ + if (!DVTARGETDEVICEFc.cached) cacheDVTARGETDEVICEFids(env, lpObject); + lpStruct->tdSize = (*env)->GetIntField(env, lpObject, DVTARGETDEVICEFc.tdSize); + lpStruct->tdDriverNameOffset = (*env)->GetShortField(env, lpObject, DVTARGETDEVICEFc.tdDriverNameOffset); + lpStruct->tdDeviceNameOffset = (*env)->GetShortField(env, lpObject, DVTARGETDEVICEFc.tdDeviceNameOffset); + lpStruct->tdPortNameOffset = (*env)->GetShortField(env, lpObject, DVTARGETDEVICEFc.tdPortNameOffset); + lpStruct->tdExtDevmodeOffset = (*env)->GetShortField(env, lpObject, DVTARGETDEVICEFc.tdExtDevmodeOffset); + *lpStruct->tdData = (*env)->GetByteField(env, lpObject, DVTARGETDEVICEFc.tdData); + return lpStruct; +} + +void setDVTARGETDEVICEFields(JNIEnv *env, jobject lpObject, DVTARGETDEVICE *lpStruct) +{ + if (!DVTARGETDEVICEFc.cached) cacheDVTARGETDEVICEFids(env, lpObject); + (*env)->SetIntField(env, lpObject, DVTARGETDEVICEFc.tdSize, (jint)lpStruct->tdSize); + (*env)->SetShortField(env, lpObject, DVTARGETDEVICEFc.tdDriverNameOffset, (jshort)lpStruct->tdDriverNameOffset); + (*env)->SetShortField(env, lpObject, DVTARGETDEVICEFc.tdDeviceNameOffset, (jshort)lpStruct->tdDeviceNameOffset); + (*env)->SetShortField(env, lpObject, DVTARGETDEVICEFc.tdPortNameOffset, (jshort)lpStruct->tdPortNameOffset); + (*env)->SetShortField(env, lpObject, DVTARGETDEVICEFc.tdExtDevmodeOffset, (jshort)lpStruct->tdExtDevmodeOffset); + (*env)->SetByteField(env, lpObject, DVTARGETDEVICEFc.tdData, (jbyte)*lpStruct->tdData); +} +#endif /* NO_DVTARGETDEVICE */ + +#ifndef NO_EXCEPINFO +typedef struct EXCEPINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID wCode, wReserved, bstrSource, bstrDescription, bstrHelpFile, dwHelpContext, pvReserved, pfnDeferredFillIn, scode; +} EXCEPINFO_FID_CACHE; + +EXCEPINFO_FID_CACHE EXCEPINFOFc; + +void cacheEXCEPINFOFids(JNIEnv *env, jobject lpObject) +{ + if (EXCEPINFOFc.cached) return; + EXCEPINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + EXCEPINFOFc.wCode = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "wCode", "S"); + EXCEPINFOFc.wReserved = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "wReserved", "S"); + EXCEPINFOFc.bstrSource = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "bstrSource", "I"); + EXCEPINFOFc.bstrDescription = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "bstrDescription", "I"); + EXCEPINFOFc.bstrHelpFile = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "bstrHelpFile", "I"); + EXCEPINFOFc.dwHelpContext = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "dwHelpContext", "I"); + EXCEPINFOFc.pvReserved = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "pvReserved", "I"); + EXCEPINFOFc.pfnDeferredFillIn = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "pfnDeferredFillIn", "I"); + EXCEPINFOFc.scode = (*env)->GetFieldID(env, EXCEPINFOFc.clazz, "scode", "I"); + EXCEPINFOFc.cached = 1; +} + +EXCEPINFO *getEXCEPINFOFields(JNIEnv *env, jobject lpObject, EXCEPINFO *lpStruct) +{ + if (!EXCEPINFOFc.cached) cacheEXCEPINFOFids(env, lpObject); + lpStruct->wCode = (*env)->GetShortField(env, lpObject, EXCEPINFOFc.wCode); + lpStruct->wReserved = (*env)->GetShortField(env, lpObject, EXCEPINFOFc.wReserved); + lpStruct->bstrSource = (BSTR)(*env)->GetIntField(env, lpObject, EXCEPINFOFc.bstrSource); + lpStruct->bstrDescription = (BSTR)(*env)->GetIntField(env, lpObject, EXCEPINFOFc.bstrDescription); + lpStruct->bstrHelpFile = (BSTR)(*env)->GetIntField(env, lpObject, EXCEPINFOFc.bstrHelpFile); + lpStruct->dwHelpContext = (*env)->GetIntField(env, lpObject, EXCEPINFOFc.dwHelpContext); + lpStruct->pvReserved = (void FAR *)(*env)->GetIntField(env, lpObject, EXCEPINFOFc.pvReserved); + lpStruct->pfnDeferredFillIn = (HRESULT (STDAPICALLTYPE FAR* )(struct tagEXCEPINFO FAR*))(*env)->GetIntField(env, lpObject, EXCEPINFOFc.pfnDeferredFillIn); + lpStruct->scode = (*env)->GetIntField(env, lpObject, EXCEPINFOFc.scode); + return lpStruct; +} + +void setEXCEPINFOFields(JNIEnv *env, jobject lpObject, EXCEPINFO *lpStruct) +{ + if (!EXCEPINFOFc.cached) cacheEXCEPINFOFids(env, lpObject); + (*env)->SetShortField(env, lpObject, EXCEPINFOFc.wCode, (jshort)lpStruct->wCode); + (*env)->SetShortField(env, lpObject, EXCEPINFOFc.wReserved, (jshort)lpStruct->wReserved); + (*env)->SetIntField(env, lpObject, EXCEPINFOFc.bstrSource, (jint)lpStruct->bstrSource); + (*env)->SetIntField(env, lpObject, EXCEPINFOFc.bstrDescription, (jint)lpStruct->bstrDescription); + (*env)->SetIntField(env, lpObject, EXCEPINFOFc.bstrHelpFile, (jint)lpStruct->bstrHelpFile); + (*env)->SetIntField(env, lpObject, EXCEPINFOFc.dwHelpContext, (jint)lpStruct->dwHelpContext); + (*env)->SetIntField(env, lpObject, EXCEPINFOFc.pvReserved, (jint)lpStruct->pvReserved); + (*env)->SetIntField(env, lpObject, EXCEPINFOFc.pfnDeferredFillIn, (jint)lpStruct->pfnDeferredFillIn); + (*env)->SetIntField(env, lpObject, EXCEPINFOFc.scode, (jint)lpStruct->scode); +} +#endif /* NO_EXCEPINFO */ + +#ifndef NO_FORMATETC +typedef struct FORMATETC_FID_CACHE { + int cached; + jclass clazz; + jfieldID cfFormat, ptd, dwAspect, lindex, tymed; +} FORMATETC_FID_CACHE; + +FORMATETC_FID_CACHE FORMATETCFc; + +void cacheFORMATETCFids(JNIEnv *env, jobject lpObject) +{ + if (FORMATETCFc.cached) return; + FORMATETCFc.clazz = (*env)->GetObjectClass(env, lpObject); + FORMATETCFc.cfFormat = (*env)->GetFieldID(env, FORMATETCFc.clazz, "cfFormat", "I"); + FORMATETCFc.ptd = (*env)->GetFieldID(env, FORMATETCFc.clazz, "ptd", "I"); + FORMATETCFc.dwAspect = (*env)->GetFieldID(env, FORMATETCFc.clazz, "dwAspect", "I"); + FORMATETCFc.lindex = (*env)->GetFieldID(env, FORMATETCFc.clazz, "lindex", "I"); + FORMATETCFc.tymed = (*env)->GetFieldID(env, FORMATETCFc.clazz, "tymed", "I"); + FORMATETCFc.cached = 1; +} + +FORMATETC *getFORMATETCFields(JNIEnv *env, jobject lpObject, FORMATETC *lpStruct) +{ + if (!FORMATETCFc.cached) cacheFORMATETCFids(env, lpObject); + lpStruct->cfFormat = (CLIPFORMAT)(*env)->GetIntField(env, lpObject, FORMATETCFc.cfFormat); + lpStruct->ptd = (DVTARGETDEVICE *)(*env)->GetIntField(env, lpObject, FORMATETCFc.ptd); + lpStruct->dwAspect = (*env)->GetIntField(env, lpObject, FORMATETCFc.dwAspect); + lpStruct->lindex = (*env)->GetIntField(env, lpObject, FORMATETCFc.lindex); + lpStruct->tymed = (*env)->GetIntField(env, lpObject, FORMATETCFc.tymed); + return lpStruct; +} + +void setFORMATETCFields(JNIEnv *env, jobject lpObject, FORMATETC *lpStruct) +{ + if (!FORMATETCFc.cached) cacheFORMATETCFids(env, lpObject); + (*env)->SetIntField(env, lpObject, FORMATETCFc.cfFormat, (jint)lpStruct->cfFormat); + (*env)->SetIntField(env, lpObject, FORMATETCFc.ptd, (jint)lpStruct->ptd); + (*env)->SetIntField(env, lpObject, FORMATETCFc.dwAspect, (jint)lpStruct->dwAspect); + (*env)->SetIntField(env, lpObject, FORMATETCFc.lindex, (jint)lpStruct->lindex); + (*env)->SetIntField(env, lpObject, FORMATETCFc.tymed, (jint)lpStruct->tymed); +} +#endif /* NO_FORMATETC */ + +#ifndef NO_FUNCDESC1 +typedef struct FUNCDESC1_FID_CACHE { + int cached; + jclass clazz; + jfieldID memid, lprgscode, lprgelemdescParam, funckind, invkind, callconv, cParams, cParamsOpt, oVft, cScodes, elemdescFunc_tdesc_union, elemdescFunc_tdesc_vt, elemdescFunc_paramdesc_pparamdescex, elemdescFunc_paramdesc_wParamFlags, wFuncFlags; +} FUNCDESC1_FID_CACHE; + +FUNCDESC1_FID_CACHE FUNCDESC1Fc; + +void cacheFUNCDESC1Fids(JNIEnv *env, jobject lpObject) +{ + if (FUNCDESC1Fc.cached) return; + FUNCDESC1Fc.clazz = (*env)->GetObjectClass(env, lpObject); + FUNCDESC1Fc.memid = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "memid", "I"); + FUNCDESC1Fc.lprgscode = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "lprgscode", "I"); + FUNCDESC1Fc.lprgelemdescParam = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "lprgelemdescParam", "I"); + FUNCDESC1Fc.funckind = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "funckind", "I"); + FUNCDESC1Fc.invkind = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "invkind", "I"); + FUNCDESC1Fc.callconv = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "callconv", "I"); + FUNCDESC1Fc.cParams = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "cParams", "S"); + FUNCDESC1Fc.cParamsOpt = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "cParamsOpt", "S"); + FUNCDESC1Fc.oVft = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "oVft", "S"); + FUNCDESC1Fc.cScodes = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "cScodes", "S"); + FUNCDESC1Fc.elemdescFunc_tdesc_union = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "elemdescFunc_tdesc_union", "I"); + FUNCDESC1Fc.elemdescFunc_tdesc_vt = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "elemdescFunc_tdesc_vt", "S"); + FUNCDESC1Fc.elemdescFunc_paramdesc_pparamdescex = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "elemdescFunc_paramdesc_pparamdescex", "I"); + FUNCDESC1Fc.elemdescFunc_paramdesc_wParamFlags = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "elemdescFunc_paramdesc_wParamFlags", "S"); + FUNCDESC1Fc.wFuncFlags = (*env)->GetFieldID(env, FUNCDESC1Fc.clazz, "wFuncFlags", "S"); + FUNCDESC1Fc.cached = 1; +} + +FUNCDESC *getFUNCDESC1Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct) +{ + if (!FUNCDESC1Fc.cached) cacheFUNCDESC1Fids(env, lpObject); + lpStruct->memid = (*env)->GetIntField(env, lpObject, FUNCDESC1Fc.memid); + lpStruct->lprgscode = (SCODE FAR *)(*env)->GetIntField(env, lpObject, FUNCDESC1Fc.lprgscode); + lpStruct->lprgelemdescParam = (ELEMDESC FAR *)(*env)->GetIntField(env, lpObject, FUNCDESC1Fc.lprgelemdescParam); + lpStruct->funckind = (*env)->GetIntField(env, lpObject, FUNCDESC1Fc.funckind); + lpStruct->invkind = (*env)->GetIntField(env, lpObject, FUNCDESC1Fc.invkind); + lpStruct->callconv = (*env)->GetIntField(env, lpObject, FUNCDESC1Fc.callconv); + lpStruct->cParams = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.cParams); + lpStruct->cParamsOpt = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.cParamsOpt); + lpStruct->oVft = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.oVft); + lpStruct->cScodes = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.cScodes); + lpStruct->elemdescFunc.tdesc.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR* )(*env)->GetIntField(env, lpObject, FUNCDESC1Fc.elemdescFunc_tdesc_union); + lpStruct->elemdescFunc.tdesc.vt = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.elemdescFunc_tdesc_vt); + lpStruct->elemdescFunc.paramdesc.pparamdescex = (LPPARAMDESCEX)(*env)->GetIntField(env, lpObject, FUNCDESC1Fc.elemdescFunc_paramdesc_pparamdescex); + lpStruct->elemdescFunc.paramdesc.wParamFlags = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.elemdescFunc_paramdesc_wParamFlags); + lpStruct->wFuncFlags = (*env)->GetShortField(env, lpObject, FUNCDESC1Fc.wFuncFlags); + return lpStruct; +} + +void setFUNCDESC1Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct) +{ + if (!FUNCDESC1Fc.cached) cacheFUNCDESC1Fids(env, lpObject); + (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.memid, (jint)lpStruct->memid); + (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.lprgscode, (jint)lpStruct->lprgscode); + (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.lprgelemdescParam, (jint)lpStruct->lprgelemdescParam); + (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.funckind, (jint)lpStruct->funckind); + (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.invkind, (jint)lpStruct->invkind); + (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.callconv, (jint)lpStruct->callconv); + (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.cParams, (jshort)lpStruct->cParams); + (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.cParamsOpt, (jshort)lpStruct->cParamsOpt); + (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.oVft, (jshort)lpStruct->oVft); + (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.cScodes, (jshort)lpStruct->cScodes); + (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.elemdescFunc_tdesc_union, (jint)lpStruct->elemdescFunc.tdesc.lptdesc); + (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.elemdescFunc_tdesc_vt, (jshort)lpStruct->elemdescFunc.tdesc.vt); + (*env)->SetIntField(env, lpObject, FUNCDESC1Fc.elemdescFunc_paramdesc_pparamdescex, (jint)lpStruct->elemdescFunc.paramdesc.pparamdescex); + (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.elemdescFunc_paramdesc_wParamFlags, (jshort)lpStruct->elemdescFunc.paramdesc.wParamFlags); + (*env)->SetShortField(env, lpObject, FUNCDESC1Fc.wFuncFlags, (jshort)lpStruct->wFuncFlags); +} +#endif /* NO_FUNCDESC1 */ + +#ifndef NO_FUNCDESC2 +typedef struct FUNCDESC2_FID_CACHE { + int cached; + jclass clazz; + jfieldID memid, lprgscode, lprgelemdescParam, funckind, invkind, callconv, cParams, cParamsOpt, oVft, cScodes, elemdescFunc_tdesc_union, elemdescFunc_tdesc_vt, elemdescFunc_idldesc_dwReserved, elemdescFunc_idldesc_wIDLFlags, wFuncFlags; +} FUNCDESC2_FID_CACHE; + +FUNCDESC2_FID_CACHE FUNCDESC2Fc; + +void cacheFUNCDESC2Fids(JNIEnv *env, jobject lpObject) +{ + if (FUNCDESC2Fc.cached) return; + FUNCDESC2Fc.clazz = (*env)->GetObjectClass(env, lpObject); + FUNCDESC2Fc.memid = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "memid", "I"); + FUNCDESC2Fc.lprgscode = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "lprgscode", "I"); + FUNCDESC2Fc.lprgelemdescParam = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "lprgelemdescParam", "I"); + FUNCDESC2Fc.funckind = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "funckind", "I"); + FUNCDESC2Fc.invkind = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "invkind", "I"); + FUNCDESC2Fc.callconv = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "callconv", "I"); + FUNCDESC2Fc.cParams = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "cParams", "S"); + FUNCDESC2Fc.cParamsOpt = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "cParamsOpt", "S"); + FUNCDESC2Fc.oVft = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "oVft", "S"); + FUNCDESC2Fc.cScodes = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "cScodes", "S"); + FUNCDESC2Fc.elemdescFunc_tdesc_union = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "elemdescFunc_tdesc_union", "I"); + FUNCDESC2Fc.elemdescFunc_tdesc_vt = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "elemdescFunc_tdesc_vt", "S"); + FUNCDESC2Fc.elemdescFunc_idldesc_dwReserved = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "elemdescFunc_idldesc_dwReserved", "I"); + FUNCDESC2Fc.elemdescFunc_idldesc_wIDLFlags = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "elemdescFunc_idldesc_wIDLFlags", "S"); + FUNCDESC2Fc.wFuncFlags = (*env)->GetFieldID(env, FUNCDESC2Fc.clazz, "wFuncFlags", "S"); + FUNCDESC2Fc.cached = 1; +} + +FUNCDESC *getFUNCDESC2Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct) +{ + if (!FUNCDESC2Fc.cached) cacheFUNCDESC2Fids(env, lpObject); + lpStruct->memid = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.memid); + lpStruct->lprgscode = (SCODE FAR *)(*env)->GetIntField(env, lpObject, FUNCDESC2Fc.lprgscode); + lpStruct->lprgelemdescParam = (ELEMDESC FAR *)(*env)->GetIntField(env, lpObject, FUNCDESC2Fc.lprgelemdescParam); + lpStruct->funckind = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.funckind); + lpStruct->invkind = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.invkind); + lpStruct->callconv = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.callconv); + lpStruct->cParams = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.cParams); + lpStruct->cParamsOpt = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.cParamsOpt); + lpStruct->oVft = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.oVft); + lpStruct->cScodes = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.cScodes); + lpStruct->elemdescFunc.tdesc.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR* )(*env)->GetIntField(env, lpObject, FUNCDESC2Fc.elemdescFunc_tdesc_union); + lpStruct->elemdescFunc.tdesc.vt = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.elemdescFunc_tdesc_vt); + lpStruct->elemdescFunc.idldesc.dwReserved = (*env)->GetIntField(env, lpObject, FUNCDESC2Fc.elemdescFunc_idldesc_dwReserved); + lpStruct->elemdescFunc.idldesc.wIDLFlags = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.elemdescFunc_idldesc_wIDLFlags); + lpStruct->wFuncFlags = (*env)->GetShortField(env, lpObject, FUNCDESC2Fc.wFuncFlags); + return lpStruct; +} + +void setFUNCDESC2Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct) +{ + if (!FUNCDESC2Fc.cached) cacheFUNCDESC2Fids(env, lpObject); + (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.memid, (jint)lpStruct->memid); + (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.lprgscode, (jint)lpStruct->lprgscode); + (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.lprgelemdescParam, (jint)lpStruct->lprgelemdescParam); + (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.funckind, (jint)lpStruct->funckind); + (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.invkind, (jint)lpStruct->invkind); + (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.callconv, (jint)lpStruct->callconv); + (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.cParams, (jshort)lpStruct->cParams); + (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.cParamsOpt, (jshort)lpStruct->cParamsOpt); + (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.oVft, (jshort)lpStruct->oVft); + (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.cScodes, (jshort)lpStruct->cScodes); + (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.elemdescFunc_tdesc_union, (jint)lpStruct->elemdescFunc.tdesc.lptdesc); + (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.elemdescFunc_tdesc_vt, (jshort)lpStruct->elemdescFunc.tdesc.vt); + (*env)->SetIntField(env, lpObject, FUNCDESC2Fc.elemdescFunc_idldesc_dwReserved, (jint)lpStruct->elemdescFunc.idldesc.dwReserved); + (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.elemdescFunc_idldesc_wIDLFlags, (jshort)lpStruct->elemdescFunc.idldesc.wIDLFlags); + (*env)->SetShortField(env, lpObject, FUNCDESC2Fc.wFuncFlags, (jshort)lpStruct->wFuncFlags); +} +#endif /* NO_FUNCDESC2 */ + +#ifndef NO_GUID +typedef struct GUID_FID_CACHE { + int cached; + jclass clazz; + jfieldID data1, data2, data3, b0, b1, b2, b3, b4, b5, b6, b7; +} GUID_FID_CACHE; + +GUID_FID_CACHE GUIDFc; + +void cacheGUIDFids(JNIEnv *env, jobject lpObject) +{ + if (GUIDFc.cached) return; + GUIDFc.clazz = (*env)->GetObjectClass(env, lpObject); + GUIDFc.data1 = (*env)->GetFieldID(env, GUIDFc.clazz, "data1", "I"); + GUIDFc.data2 = (*env)->GetFieldID(env, GUIDFc.clazz, "data2", "S"); + GUIDFc.data3 = (*env)->GetFieldID(env, GUIDFc.clazz, "data3", "S"); + GUIDFc.b0 = (*env)->GetFieldID(env, GUIDFc.clazz, "b0", "B"); + GUIDFc.b1 = (*env)->GetFieldID(env, GUIDFc.clazz, "b1", "B"); + GUIDFc.b2 = (*env)->GetFieldID(env, GUIDFc.clazz, "b2", "B"); + GUIDFc.b3 = (*env)->GetFieldID(env, GUIDFc.clazz, "b3", "B"); + GUIDFc.b4 = (*env)->GetFieldID(env, GUIDFc.clazz, "b4", "B"); + GUIDFc.b5 = (*env)->GetFieldID(env, GUIDFc.clazz, "b5", "B"); + GUIDFc.b6 = (*env)->GetFieldID(env, GUIDFc.clazz, "b6", "B"); + GUIDFc.b7 = (*env)->GetFieldID(env, GUIDFc.clazz, "b7", "B"); + GUIDFc.cached = 1; +} + +GUID *getGUIDFields(JNIEnv *env, jobject lpObject, GUID *lpStruct) +{ + if (!GUIDFc.cached) cacheGUIDFids(env, lpObject); + lpStruct->Data4[7] = (*env)->GetByteField(env, lpObject, GUIDFc.b7); + lpStruct->Data4[6] = (*env)->GetByteField(env, lpObject, GUIDFc.b6); + lpStruct->Data4[5] = (*env)->GetByteField(env, lpObject, GUIDFc.b5); + lpStruct->Data4[4] = (*env)->GetByteField(env, lpObject, GUIDFc.b4); + lpStruct->Data4[3] = (*env)->GetByteField(env, lpObject, GUIDFc.b3); + lpStruct->Data4[2] = (*env)->GetByteField(env, lpObject, GUIDFc.b2); + lpStruct->Data4[1] = (*env)->GetByteField(env, lpObject, GUIDFc.b1); + lpStruct->Data4[0] = (*env)->GetByteField(env, lpObject, GUIDFc.b0); + lpStruct->Data3 = (*env)->GetShortField(env, lpObject, GUIDFc.data3); + lpStruct->Data2 = (*env)->GetShortField(env, lpObject, GUIDFc.data2); + lpStruct->Data1 = (*env)->GetIntField(env, lpObject, GUIDFc.data1); + return lpStruct; +} + +void setGUIDFields(JNIEnv *env, jobject lpObject, GUID *lpStruct) +{ + if (!GUIDFc.cached) cacheGUIDFids(env, lpObject); + (*env)->SetByteField(env, lpObject, GUIDFc.b7, lpStruct->Data4[7]); + (*env)->SetByteField(env, lpObject, GUIDFc.b6, lpStruct->Data4[6]); + (*env)->SetByteField(env, lpObject, GUIDFc.b5, lpStruct->Data4[5]); + (*env)->SetByteField(env, lpObject, GUIDFc.b4, lpStruct->Data4[4]); + (*env)->SetByteField(env, lpObject, GUIDFc.b3, lpStruct->Data4[3]); + (*env)->SetByteField(env, lpObject, GUIDFc.b2, lpStruct->Data4[2]); + (*env)->SetByteField(env, lpObject, GUIDFc.b1, lpStruct->Data4[1]); + (*env)->SetByteField(env, lpObject, GUIDFc.b0, lpStruct->Data4[0]); + (*env)->SetShortField(env, lpObject, GUIDFc.data3, lpStruct->Data3); + (*env)->SetShortField(env, lpObject, GUIDFc.data2, lpStruct->Data2); + (*env)->SetIntField(env, lpObject, GUIDFc.data1, lpStruct->Data1); +} + +#endif /* NO_GUID */ + +#ifndef NO_LICINFO +typedef struct LICINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbLicInfo, fRuntimeKeyAvail, fLicVerified; +} LICINFO_FID_CACHE; + +LICINFO_FID_CACHE LICINFOFc; + +void cacheLICINFOFids(JNIEnv *env, jobject lpObject) +{ + if (LICINFOFc.cached) return; + LICINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + LICINFOFc.cbLicInfo = (*env)->GetFieldID(env, LICINFOFc.clazz, "cbLicInfo", "I"); + LICINFOFc.fRuntimeKeyAvail = (*env)->GetFieldID(env, LICINFOFc.clazz, "fRuntimeKeyAvail", "I"); + LICINFOFc.fLicVerified = (*env)->GetFieldID(env, LICINFOFc.clazz, "fLicVerified", "I"); + LICINFOFc.cached = 1; +} + +LICINFO *getLICINFOFields(JNIEnv *env, jobject lpObject, LICINFO *lpStruct) +{ + if (!LICINFOFc.cached) cacheLICINFOFids(env, lpObject); + lpStruct->cbLicInfo = (*env)->GetIntField(env, lpObject, LICINFOFc.cbLicInfo); + lpStruct->fRuntimeKeyAvail = (*env)->GetIntField(env, lpObject, LICINFOFc.fRuntimeKeyAvail); + lpStruct->fLicVerified = (*env)->GetIntField(env, lpObject, LICINFOFc.fLicVerified); + return lpStruct; +} + +void setLICINFOFields(JNIEnv *env, jobject lpObject, LICINFO *lpStruct) +{ + if (!LICINFOFc.cached) cacheLICINFOFids(env, lpObject); + (*env)->SetIntField(env, lpObject, LICINFOFc.cbLicInfo, (jint)lpStruct->cbLicInfo); + (*env)->SetIntField(env, lpObject, LICINFOFc.fRuntimeKeyAvail, (jint)lpStruct->fRuntimeKeyAvail); + (*env)->SetIntField(env, lpObject, LICINFOFc.fLicVerified, (jint)lpStruct->fLicVerified); +} +#endif /* NO_LICINFO */ + +#ifndef NO_OLECMD +typedef struct OLECMD_FID_CACHE { + int cached; + jclass clazz; + jfieldID cmdID, cmdf; +} OLECMD_FID_CACHE; + +OLECMD_FID_CACHE OLECMDFc; + +void cacheOLECMDFids(JNIEnv *env, jobject lpObject) +{ + if (OLECMDFc.cached) return; + OLECMDFc.clazz = (*env)->GetObjectClass(env, lpObject); + OLECMDFc.cmdID = (*env)->GetFieldID(env, OLECMDFc.clazz, "cmdID", "I"); + OLECMDFc.cmdf = (*env)->GetFieldID(env, OLECMDFc.clazz, "cmdf", "I"); + OLECMDFc.cached = 1; +} + +OLECMD *getOLECMDFields(JNIEnv *env, jobject lpObject, OLECMD *lpStruct) +{ + if (!OLECMDFc.cached) cacheOLECMDFids(env, lpObject); + lpStruct->cmdID = (*env)->GetIntField(env, lpObject, OLECMDFc.cmdID); + lpStruct->cmdf = (*env)->GetIntField(env, lpObject, OLECMDFc.cmdf); + return lpStruct; +} + +void setOLECMDFields(JNIEnv *env, jobject lpObject, OLECMD *lpStruct) +{ + if (!OLECMDFc.cached) cacheOLECMDFids(env, lpObject); + (*env)->SetIntField(env, lpObject, OLECMDFc.cmdID, (jint)lpStruct->cmdID); + (*env)->SetIntField(env, lpObject, OLECMDFc.cmdf, (jint)lpStruct->cmdf); +} +#endif /* NO_OLECMD */ + +#ifndef NO_OLECMDTEXT +typedef struct OLECMDTEXT_FID_CACHE { + int cached; + jclass clazz; + jfieldID cmdtextf, cwActual, cwBuf, rgwz; +} OLECMDTEXT_FID_CACHE; + +OLECMDTEXT_FID_CACHE OLECMDTEXTFc; + +void cacheOLECMDTEXTFids(JNIEnv *env, jobject lpObject) +{ + if (OLECMDTEXTFc.cached) return; + OLECMDTEXTFc.clazz = (*env)->GetObjectClass(env, lpObject); + OLECMDTEXTFc.cmdtextf = (*env)->GetFieldID(env, OLECMDTEXTFc.clazz, "cmdtextf", "I"); + OLECMDTEXTFc.cwActual = (*env)->GetFieldID(env, OLECMDTEXTFc.clazz, "cwActual", "I"); + OLECMDTEXTFc.cwBuf = (*env)->GetFieldID(env, OLECMDTEXTFc.clazz, "cwBuf", "I"); + OLECMDTEXTFc.rgwz = (*env)->GetFieldID(env, OLECMDTEXTFc.clazz, "rgwz", "S"); + OLECMDTEXTFc.cached = 1; +} + +OLECMDTEXT *getOLECMDTEXTFields(JNIEnv *env, jobject lpObject, OLECMDTEXT *lpStruct) +{ + if (!OLECMDTEXTFc.cached) cacheOLECMDTEXTFids(env, lpObject); + lpStruct->cmdtextf = (*env)->GetIntField(env, lpObject, OLECMDTEXTFc.cmdtextf); + lpStruct->cwActual = (*env)->GetIntField(env, lpObject, OLECMDTEXTFc.cwActual); + lpStruct->cwBuf = (*env)->GetIntField(env, lpObject, OLECMDTEXTFc.cwBuf); + lpStruct->rgwz[0] = (*env)->GetShortField(env, lpObject, OLECMDTEXTFc.rgwz); /* SPECIAL */ + return lpStruct; +} + +void setOLECMDTEXTFields(JNIEnv *env, jobject lpObject, OLECMDTEXT *lpStruct) +{ + if (!OLECMDTEXTFc.cached) cacheOLECMDTEXTFids(env, lpObject); + (*env)->SetIntField(env, lpObject, OLECMDTEXTFc.cmdtextf, (jint)lpStruct->cmdtextf); + (*env)->SetIntField(env, lpObject, OLECMDTEXTFc.cwActual, (jint)lpStruct->cwActual); + (*env)->SetIntField(env, lpObject, OLECMDTEXTFc.cwBuf, (jint)lpStruct->cwBuf); + (*env)->SetShortField(env, lpObject, OLECMDTEXTFc.rgwz, (jshort)lpStruct->rgwz[0]); /* SPECIAL */ +} +#endif /* NO_OLECMDTEXT */ + +#ifndef NO_OLEINPLACEFRAMEINFO +typedef struct OLEINPLACEFRAMEINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cb, fMDIApp, hwndFrame, haccel, cAccelEntries; +} OLEINPLACEFRAMEINFO_FID_CACHE; + +OLEINPLACEFRAMEINFO_FID_CACHE OLEINPLACEFRAMEINFOFc; + +void cacheOLEINPLACEFRAMEINFOFids(JNIEnv *env, jobject lpObject) +{ + if (OLEINPLACEFRAMEINFOFc.cached) return; + OLEINPLACEFRAMEINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + OLEINPLACEFRAMEINFOFc.cb = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "cb", "I"); + OLEINPLACEFRAMEINFOFc.fMDIApp = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "fMDIApp", "I"); + OLEINPLACEFRAMEINFOFc.hwndFrame = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "hwndFrame", "I"); + OLEINPLACEFRAMEINFOFc.haccel = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "haccel", "I"); + OLEINPLACEFRAMEINFOFc.cAccelEntries = (*env)->GetFieldID(env, OLEINPLACEFRAMEINFOFc.clazz, "cAccelEntries", "I"); + OLEINPLACEFRAMEINFOFc.cached = 1; +} + +OLEINPLACEFRAMEINFO *getOLEINPLACEFRAMEINFOFields(JNIEnv *env, jobject lpObject, OLEINPLACEFRAMEINFO *lpStruct) +{ + if (!OLEINPLACEFRAMEINFOFc.cached) cacheOLEINPLACEFRAMEINFOFids(env, lpObject); + lpStruct->cb = (*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.cb); + lpStruct->fMDIApp = (*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.fMDIApp); + lpStruct->hwndFrame = (HWND)(*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.hwndFrame); + lpStruct->haccel = (HACCEL)(*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.haccel); + lpStruct->cAccelEntries = (*env)->GetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.cAccelEntries); + return lpStruct; +} + +void setOLEINPLACEFRAMEINFOFields(JNIEnv *env, jobject lpObject, OLEINPLACEFRAMEINFO *lpStruct) +{ + if (!OLEINPLACEFRAMEINFOFc.cached) cacheOLEINPLACEFRAMEINFOFids(env, lpObject); + (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.cb, (jint)lpStruct->cb); + (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.fMDIApp, (jint)lpStruct->fMDIApp); + (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.hwndFrame, (jint)lpStruct->hwndFrame); + (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.haccel, (jint)lpStruct->haccel); + (*env)->SetIntField(env, lpObject, OLEINPLACEFRAMEINFOFc.cAccelEntries, (jint)lpStruct->cAccelEntries); +} +#endif /* NO_OLEINPLACEFRAMEINFO */ + +#ifndef NO_STATSTG +typedef struct STATSTG_FID_CACHE { + int cached; + jclass clazz; + jfieldID pwcsName, type, cbSize, mtime_dwLowDateTime, mtime_dwHighDateTime, ctime_dwLowDateTime, ctime_dwHighDateTime, atime_dwLowDateTime, atime_dwHighDateTime, grfMode, grfLocksSupported, clsid_data1, clsid_data2, clsid_data3, clsid_b0, clsid_b1, clsid_b2, clsid_b3, clsid_b4, clsid_b5, clsid_b6, clsid_b7, grfStateBits, reserved; +} STATSTG_FID_CACHE; + +STATSTG_FID_CACHE STATSTGFc; + +void cacheSTATSTGFids(JNIEnv *env, jobject lpObject) +{ + if (STATSTGFc.cached) return; + STATSTGFc.clazz = (*env)->GetObjectClass(env, lpObject); + STATSTGFc.pwcsName = (*env)->GetFieldID(env, STATSTGFc.clazz, "pwcsName", "I"); + STATSTGFc.type = (*env)->GetFieldID(env, STATSTGFc.clazz, "type", "I"); + STATSTGFc.cbSize = (*env)->GetFieldID(env, STATSTGFc.clazz, "cbSize", "J"); + STATSTGFc.mtime_dwLowDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "mtime_dwLowDateTime", "I"); + STATSTGFc.mtime_dwHighDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "mtime_dwHighDateTime", "I"); + STATSTGFc.ctime_dwLowDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "ctime_dwLowDateTime", "I"); + STATSTGFc.ctime_dwHighDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "ctime_dwHighDateTime", "I"); + STATSTGFc.atime_dwLowDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "atime_dwLowDateTime", "I"); + STATSTGFc.atime_dwHighDateTime = (*env)->GetFieldID(env, STATSTGFc.clazz, "atime_dwHighDateTime", "I"); + STATSTGFc.grfMode = (*env)->GetFieldID(env, STATSTGFc.clazz, "grfMode", "I"); + STATSTGFc.grfLocksSupported = (*env)->GetFieldID(env, STATSTGFc.clazz, "grfLocksSupported", "I"); + STATSTGFc.clsid_data1 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_data1", "I"); + STATSTGFc.clsid_data2 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_data2", "S"); + STATSTGFc.clsid_data3 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_data3", "S"); + STATSTGFc.clsid_b0 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b0", "B"); + STATSTGFc.clsid_b1 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b1", "B"); + STATSTGFc.clsid_b2 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b2", "B"); + STATSTGFc.clsid_b3 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b3", "B"); + STATSTGFc.clsid_b4 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b4", "B"); + STATSTGFc.clsid_b5 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b5", "B"); + STATSTGFc.clsid_b6 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b6", "B"); + STATSTGFc.clsid_b7 = (*env)->GetFieldID(env, STATSTGFc.clazz, "clsid_b7", "B"); + STATSTGFc.grfStateBits = (*env)->GetFieldID(env, STATSTGFc.clazz, "grfStateBits", "I"); + STATSTGFc.reserved = (*env)->GetFieldID(env, STATSTGFc.clazz, "reserved", "I"); + STATSTGFc.cached = 1; +} + +STATSTG *getSTATSTGFields(JNIEnv *env, jobject lpObject, STATSTG *lpStruct) +{ + if (!STATSTGFc.cached) cacheSTATSTGFids(env, lpObject); + lpStruct->pwcsName = (LPWSTR)(*env)->GetIntField(env, lpObject, STATSTGFc.pwcsName); + lpStruct->type = (*env)->GetIntField(env, lpObject, STATSTGFc.type); + lpStruct->cbSize.QuadPart = (*env)->GetLongField(env, lpObject, STATSTGFc.cbSize); + lpStruct->mtime.dwLowDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.mtime_dwLowDateTime); + lpStruct->mtime.dwHighDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.mtime_dwHighDateTime); + lpStruct->ctime.dwLowDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.ctime_dwLowDateTime); + lpStruct->ctime.dwHighDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.ctime_dwHighDateTime); + lpStruct->atime.dwLowDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.atime_dwLowDateTime); + lpStruct->atime.dwHighDateTime = (*env)->GetIntField(env, lpObject, STATSTGFc.atime_dwHighDateTime); + lpStruct->grfMode = (*env)->GetIntField(env, lpObject, STATSTGFc.grfMode); + lpStruct->grfLocksSupported = (*env)->GetIntField(env, lpObject, STATSTGFc.grfLocksSupported); + lpStruct->clsid.Data4[7] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b7); + lpStruct->clsid.Data4[6] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b6); + lpStruct->clsid.Data4[5] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b5); + lpStruct->clsid.Data4[4] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b4); + lpStruct->clsid.Data4[3] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b3); + lpStruct->clsid.Data4[2] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b2); + lpStruct->clsid.Data4[1] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b1); + lpStruct->clsid.Data4[0] = (*env)->GetByteField(env, lpObject, STATSTGFc.clsid_b0); + lpStruct->clsid.Data3 = (*env)->GetShortField(env, lpObject, STATSTGFc.clsid_data3); + lpStruct->clsid.Data2 = (*env)->GetShortField(env, lpObject, STATSTGFc.clsid_data2); + lpStruct->clsid.Data1 = (*env)->GetIntField(env, lpObject, STATSTGFc.clsid_data1); + lpStruct->grfStateBits = (*env)->GetIntField(env, lpObject, STATSTGFc.grfStateBits); + lpStruct->reserved = (*env)->GetIntField(env, lpObject, STATSTGFc.reserved); + return lpStruct; +} + +void setSTATSTGFields(JNIEnv *env, jobject lpObject, STATSTG *lpStruct) +{ + if (!STATSTGFc.cached) cacheSTATSTGFids(env, lpObject); + (*env)->SetIntField(env, lpObject, STATSTGFc.pwcsName, (jint)lpStruct->pwcsName); + (*env)->SetIntField(env, lpObject, STATSTGFc.type, (jint)lpStruct->type); + (*env)->SetLongField(env, lpObject, STATSTGFc.cbSize, (jlong)lpStruct->cbSize.QuadPart); + (*env)->SetIntField(env, lpObject, STATSTGFc.mtime_dwLowDateTime, (jint)lpStruct->mtime.dwLowDateTime); + (*env)->SetIntField(env, lpObject, STATSTGFc.mtime_dwHighDateTime, (jint)lpStruct->mtime.dwHighDateTime); + (*env)->SetIntField(env, lpObject, STATSTGFc.ctime_dwLowDateTime, (jint)lpStruct->ctime.dwLowDateTime); + (*env)->SetIntField(env, lpObject, STATSTGFc.ctime_dwHighDateTime, (jint)lpStruct->ctime.dwHighDateTime); + (*env)->SetIntField(env, lpObject, STATSTGFc.atime_dwLowDateTime, (jint)lpStruct->atime.dwLowDateTime); + (*env)->SetIntField(env, lpObject, STATSTGFc.atime_dwHighDateTime, (jint)lpStruct->atime.dwHighDateTime); + (*env)->SetIntField(env, lpObject, STATSTGFc.grfMode, (jint)lpStruct->grfMode); + (*env)->SetIntField(env, lpObject, STATSTGFc.grfLocksSupported, (jint)lpStruct->grfLocksSupported); + (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b7, lpStruct->clsid.Data4[7]); + (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b6, lpStruct->clsid.Data4[6]); + (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b5, lpStruct->clsid.Data4[5]); + (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b4, lpStruct->clsid.Data4[4]); + (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b3, lpStruct->clsid.Data4[3]); + (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b2, lpStruct->clsid.Data4[2]); + (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b1, lpStruct->clsid.Data4[1]); + (*env)->SetByteField(env, lpObject, STATSTGFc.clsid_b0, lpStruct->clsid.Data4[0]); + (*env)->SetShortField(env, lpObject, STATSTGFc.clsid_data3, lpStruct->clsid.Data3); + (*env)->SetShortField(env, lpObject, STATSTGFc.clsid_data2, lpStruct->clsid.Data2); + (*env)->SetIntField(env, lpObject, STATSTGFc.clsid_data1, lpStruct->clsid.Data1); + (*env)->SetIntField(env, lpObject, STATSTGFc.grfStateBits, (jint)lpStruct->grfStateBits); + (*env)->SetIntField(env, lpObject, STATSTGFc.reserved, (jint)lpStruct->reserved); +} +#endif /* NO_STATSTG */ + +#ifndef NO_STGMEDIUM +typedef struct STGMEDIUM_FID_CACHE { + int cached; + jclass clazz; + jfieldID tymed, unionField, pUnkForRelease; +} STGMEDIUM_FID_CACHE; + +STGMEDIUM_FID_CACHE STGMEDIUMFc; + +void cacheSTGMEDIUMFids(JNIEnv *env, jobject lpObject) +{ + if (STGMEDIUMFc.cached) return; + STGMEDIUMFc.clazz = (*env)->GetObjectClass(env, lpObject); + STGMEDIUMFc.tymed = (*env)->GetFieldID(env, STGMEDIUMFc.clazz, "tymed", "I"); + STGMEDIUMFc.unionField = (*env)->GetFieldID(env, STGMEDIUMFc.clazz, "unionField", "I"); + STGMEDIUMFc.pUnkForRelease = (*env)->GetFieldID(env, STGMEDIUMFc.clazz, "pUnkForRelease", "I"); + STGMEDIUMFc.cached = 1; +} + +STGMEDIUM *getSTGMEDIUMFields(JNIEnv *env, jobject lpObject, STGMEDIUM *lpStruct) +{ + if (!STGMEDIUMFc.cached) cacheSTGMEDIUMFids(env, lpObject); + lpStruct->tymed = (*env)->GetIntField(env, lpObject, STGMEDIUMFc.tymed); + lpStruct->hGlobal = (HGLOBAL)(*env)->GetIntField(env, lpObject, STGMEDIUMFc.unionField); + lpStruct->pUnkForRelease = (IUnknown *)(*env)->GetIntField(env, lpObject, STGMEDIUMFc.pUnkForRelease); + return lpStruct; +} + +void setSTGMEDIUMFields(JNIEnv *env, jobject lpObject, STGMEDIUM *lpStruct) +{ + if (!STGMEDIUMFc.cached) cacheSTGMEDIUMFids(env, lpObject); + (*env)->SetIntField(env, lpObject, STGMEDIUMFc.tymed, (jint)lpStruct->tymed); + (*env)->SetIntField(env, lpObject, STGMEDIUMFc.unionField, (jint)lpStruct->hGlobal); + (*env)->SetIntField(env, lpObject, STGMEDIUMFc.pUnkForRelease, (jint)lpStruct->pUnkForRelease); +} +#endif /* NO_STGMEDIUM */ + +#ifndef NO_TYPEATTR +typedef struct TYPEATTR_FID_CACHE { + int cached; + jclass clazz; + jfieldID guid_data1, guid_data2, guid_data3, guid_b0, guid_b1, guid_b2, guid_b3, guid_b4, guid_b5, guid_b6, guid_b7, lcid, dwReserved, memidConstructor, memidDestructor, lpstrSchema, cbSizeInstance, typekind, cFuncs, cVars, cImplTypes, cbSizeVft, cbAlignment, wTypeFlags, wMajorVerNum, wMinorVerNum, tdescAlias_unionField, tdescAlias_vt, idldescType_dwReserved, idldescType_wIDLFlags; +} TYPEATTR_FID_CACHE; + +TYPEATTR_FID_CACHE TYPEATTRFc; + +void cacheTYPEATTRFids(JNIEnv *env, jobject lpObject) +{ + if (TYPEATTRFc.cached) return; + TYPEATTRFc.clazz = (*env)->GetObjectClass(env, lpObject); + TYPEATTRFc.guid_data1 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_data1", "I"); + TYPEATTRFc.guid_data2 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_data2", "S"); + TYPEATTRFc.guid_data3 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_data3", "S"); + TYPEATTRFc.guid_b0 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b0", "B"); + TYPEATTRFc.guid_b1 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b1", "B"); + TYPEATTRFc.guid_b2 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b2", "B"); + TYPEATTRFc.guid_b3 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b3", "B"); + TYPEATTRFc.guid_b4 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b4", "B"); + TYPEATTRFc.guid_b5 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b5", "B"); + TYPEATTRFc.guid_b6 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b6", "B"); + TYPEATTRFc.guid_b7 = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "guid_b7", "B"); + TYPEATTRFc.lcid = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "lcid", "I"); + TYPEATTRFc.dwReserved = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "dwReserved", "I"); + TYPEATTRFc.memidConstructor = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "memidConstructor", "I"); + TYPEATTRFc.memidDestructor = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "memidDestructor", "I"); + TYPEATTRFc.lpstrSchema = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "lpstrSchema", "I"); + TYPEATTRFc.cbSizeInstance = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cbSizeInstance", "I"); + TYPEATTRFc.typekind = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "typekind", "I"); + TYPEATTRFc.cFuncs = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cFuncs", "S"); + TYPEATTRFc.cVars = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cVars", "S"); + TYPEATTRFc.cImplTypes = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cImplTypes", "S"); + TYPEATTRFc.cbSizeVft = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cbSizeVft", "S"); + TYPEATTRFc.cbAlignment = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "cbAlignment", "S"); + TYPEATTRFc.wTypeFlags = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "wTypeFlags", "S"); + TYPEATTRFc.wMajorVerNum = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "wMajorVerNum", "S"); + TYPEATTRFc.wMinorVerNum = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "wMinorVerNum", "S"); + TYPEATTRFc.tdescAlias_unionField = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "tdescAlias_unionField", "I"); + TYPEATTRFc.tdescAlias_vt = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "tdescAlias_vt", "S"); + TYPEATTRFc.idldescType_dwReserved = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "idldescType_dwReserved", "I"); + TYPEATTRFc.idldescType_wIDLFlags = (*env)->GetFieldID(env, TYPEATTRFc.clazz, "idldescType_wIDLFlags", "S"); + TYPEATTRFc.cached = 1; +} + +TYPEATTR *getTYPEATTRFields(JNIEnv *env, jobject lpObject, TYPEATTR *lpStruct) +{ + if (!TYPEATTRFc.cached) cacheTYPEATTRFids(env, lpObject); + lpStruct->idldescType.wIDLFlags = (*env)->GetShortField(env, lpObject, TYPEATTRFc.idldescType_wIDLFlags); + lpStruct->idldescType.dwReserved = (*env)->GetIntField(env, lpObject, TYPEATTRFc.idldescType_dwReserved); + lpStruct->tdescAlias.vt = (*env)->GetShortField(env, lpObject, TYPEATTRFc.tdescAlias_vt); + lpStruct->tdescAlias.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR *)(*env)->GetIntField(env, lpObject, TYPEATTRFc.tdescAlias_unionField); + lpStruct->wMinorVerNum = (*env)->GetShortField(env, lpObject, TYPEATTRFc.wMinorVerNum); + lpStruct->wMajorVerNum = (*env)->GetShortField(env, lpObject, TYPEATTRFc.wMajorVerNum); + lpStruct->wTypeFlags = (*env)->GetShortField(env, lpObject, TYPEATTRFc.wTypeFlags); + lpStruct->cbAlignment = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cbAlignment); + lpStruct->cbSizeVft = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cbSizeVft); + lpStruct->cImplTypes = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cImplTypes); + lpStruct->cVars = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cVars); + lpStruct->cFuncs = (*env)->GetShortField(env, lpObject, TYPEATTRFc.cFuncs); + lpStruct->typekind = (*env)->GetIntField(env, lpObject, TYPEATTRFc.typekind); + lpStruct->cbSizeInstance = (*env)->GetIntField(env, lpObject, TYPEATTRFc.cbSizeInstance); + lpStruct->lpstrSchema = (OLECHAR FAR *)(*env)->GetIntField(env, lpObject, TYPEATTRFc.lpstrSchema); + lpStruct->memidDestructor = (*env)->GetIntField(env, lpObject, TYPEATTRFc.memidDestructor); + lpStruct->memidConstructor = (*env)->GetIntField(env, lpObject, TYPEATTRFc.memidConstructor); + lpStruct->dwReserved = (*env)->GetIntField(env, lpObject, TYPEATTRFc.dwReserved); + lpStruct->lcid = (*env)->GetIntField(env, lpObject, TYPEATTRFc.lcid); + lpStruct->guid.Data4[7] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b7); + lpStruct->guid.Data4[6] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b6); + lpStruct->guid.Data4[5] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b5); + lpStruct->guid.Data4[4] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b4); + lpStruct->guid.Data4[3] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b3); + lpStruct->guid.Data4[2] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b2); + lpStruct->guid.Data4[1] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b1); + lpStruct->guid.Data4[0] = (*env)->GetByteField(env, lpObject, TYPEATTRFc.guid_b0); + lpStruct->guid.Data3 = (*env)->GetShortField(env, lpObject, TYPEATTRFc.guid_data3); + lpStruct->guid.Data2 = (*env)->GetShortField(env, lpObject, TYPEATTRFc.guid_data2); + lpStruct->guid.Data1 = (*env)->GetIntField(env, lpObject, TYPEATTRFc.guid_data1); + return lpStruct; +} + +void setTYPEATTRFields(JNIEnv *env, jobject lpObject, TYPEATTR *lpStruct) +{ + if (!TYPEATTRFc.cached) cacheTYPEATTRFids(env, lpObject); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.idldescType_wIDLFlags, lpStruct->idldescType.wIDLFlags); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.idldescType_dwReserved, lpStruct->idldescType.dwReserved); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.tdescAlias_vt, lpStruct->tdescAlias.vt); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.tdescAlias_unionField, (jint)lpStruct->tdescAlias.lptdesc); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.wMinorVerNum, lpStruct->wMinorVerNum); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.wMajorVerNum, lpStruct->wMajorVerNum); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.wTypeFlags, lpStruct->wTypeFlags); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.cbAlignment, lpStruct->cbAlignment); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.cbSizeVft, lpStruct->cbSizeVft); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.cImplTypes, lpStruct->cImplTypes); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.cVars, lpStruct->cVars); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.cFuncs, lpStruct->cFuncs); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.typekind, lpStruct->typekind); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.cbSizeInstance, lpStruct->cbSizeInstance); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.lpstrSchema, (jint)lpStruct->lpstrSchema); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.memidDestructor, lpStruct->memidDestructor); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.memidConstructor, lpStruct->memidConstructor); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.dwReserved, lpStruct->dwReserved); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.lcid, lpStruct->lcid); + (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b7, lpStruct->guid.Data4[7]); + (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b6, lpStruct->guid.Data4[6]); + (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b5, lpStruct->guid.Data4[5]); + (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b4, lpStruct->guid.Data4[4]); + (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b3, lpStruct->guid.Data4[3]); + (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b2, lpStruct->guid.Data4[2]); + (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b1, lpStruct->guid.Data4[1]); + (*env)->SetByteField(env, lpObject, TYPEATTRFc.guid_b0, lpStruct->guid.Data4[0]); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.guid_data3, lpStruct->guid.Data3); + (*env)->SetShortField(env, lpObject, TYPEATTRFc.guid_data2, lpStruct->guid.Data2); + (*env)->SetIntField(env, lpObject, TYPEATTRFc.guid_data1, lpStruct->guid.Data1); +} +#endif /* NO_TYPEATTR */ + +#ifndef NO_VARDESC1 +typedef struct VARDESC1_FID_CACHE { + int cached; + jclass clazz; + jfieldID memid, lpstrSchema, unionField, elemdescVar_tdesc_union, elemdescVar_tdesc_vt, elemdescVar_paramdesc_pparamdescex, elemdescVar_paramdesc_wParamFlags, wVarFlags, varkind; +} VARDESC1_FID_CACHE; + +VARDESC1_FID_CACHE VARDESC1Fc; + +void cacheVARDESC1Fids(JNIEnv *env, jobject lpObject) +{ + if (VARDESC1Fc.cached) return; + VARDESC1Fc.clazz = (*env)->GetObjectClass(env, lpObject); + VARDESC1Fc.memid = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "memid", "I"); + VARDESC1Fc.lpstrSchema = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "lpstrSchema", "I"); + VARDESC1Fc.unionField = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "unionField", "I"); + VARDESC1Fc.elemdescVar_tdesc_union = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "elemdescVar_tdesc_union", "I"); + VARDESC1Fc.elemdescVar_tdesc_vt = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "elemdescVar_tdesc_vt", "S"); + VARDESC1Fc.elemdescVar_paramdesc_pparamdescex = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "elemdescVar_paramdesc_pparamdescex", "I"); + VARDESC1Fc.elemdescVar_paramdesc_wParamFlags = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "elemdescVar_paramdesc_wParamFlags", "S"); + VARDESC1Fc.wVarFlags = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "wVarFlags", "S"); + VARDESC1Fc.varkind = (*env)->GetFieldID(env, VARDESC1Fc.clazz, "varkind", "I"); + VARDESC1Fc.cached = 1; +} + +VARDESC *getVARDESC1Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct) +{ + if (!VARDESC1Fc.cached) cacheVARDESC1Fids(env, lpObject); + lpStruct->varkind = (*env)->GetIntField(env, lpObject, VARDESC1Fc.varkind); + lpStruct->wVarFlags = (*env)->GetShortField(env, lpObject, VARDESC1Fc.wVarFlags); + lpStruct->elemdescVar.paramdesc.wParamFlags = (*env)->GetShortField(env, lpObject, VARDESC1Fc.elemdescVar_paramdesc_wParamFlags); + lpStruct->elemdescVar.paramdesc.pparamdescex = (LPPARAMDESCEX)(*env)->GetIntField(env, lpObject, VARDESC1Fc.elemdescVar_paramdesc_pparamdescex); + lpStruct->elemdescVar.tdesc.vt = (*env)->GetShortField(env, lpObject, VARDESC1Fc.elemdescVar_tdesc_vt); + lpStruct->elemdescVar.tdesc.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR *)(*env)->GetIntField(env, lpObject, VARDESC1Fc.elemdescVar_tdesc_union); + lpStruct->oInst = (*env)->GetIntField(env, lpObject, VARDESC1Fc.unionField); + lpStruct->lpstrSchema = (OLECHAR FAR *)(*env)->GetIntField(env, lpObject, VARDESC1Fc.lpstrSchema); + lpStruct->memid = (*env)->GetIntField(env, lpObject, VARDESC1Fc.memid); + return lpStruct; +} + +void setVARDESC1Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct) +{ + if (!VARDESC1Fc.cached) cacheVARDESC1Fids(env, lpObject); + (*env)->SetIntField(env, lpObject, VARDESC1Fc.varkind, lpStruct->varkind); + (*env)->SetShortField(env, lpObject, VARDESC1Fc.wVarFlags, lpStruct->wVarFlags); + (*env)->SetShortField(env, lpObject, VARDESC1Fc.elemdescVar_paramdesc_wParamFlags, lpStruct->elemdescVar.paramdesc.wParamFlags); + (*env)->SetIntField(env, lpObject, VARDESC1Fc.elemdescVar_paramdesc_pparamdescex, (jint)lpStruct->elemdescVar.paramdesc.pparamdescex); + (*env)->SetShortField(env, lpObject, VARDESC1Fc.elemdescVar_tdesc_vt, lpStruct->elemdescVar.tdesc.vt); + (*env)->SetIntField(env, lpObject, VARDESC1Fc.elemdescVar_tdesc_union, (jint)lpStruct->elemdescVar.tdesc.lptdesc); + (*env)->SetIntField(env, lpObject, VARDESC1Fc.unionField, lpStruct->oInst); + (*env)->SetIntField(env, lpObject, VARDESC1Fc.lpstrSchema, (jint)lpStruct->lpstrSchema); + (*env)->SetIntField(env, lpObject, VARDESC1Fc.memid, lpStruct->memid); +} +#endif /* NO_VARDESC1 */ + +#ifndef NO_VARDESC2 +typedef struct VARDESC2_FID_CACHE { + int cached; + jclass clazz; + jfieldID memid, lpstrSchema, unionField, elemdescVar_tdesc_union, elemdescVar_tdesc_vt, elemdescFunc_idldesc_dwReserved, elemdescFunc_idldesc_wIDLFlags, wVarFlags, varkind; +} VARDESC2_FID_CACHE; + +VARDESC2_FID_CACHE VARDESC2Fc; + +void cacheVARDESC2Fids(JNIEnv *env, jobject lpObject) +{ + if (VARDESC2Fc.cached) return; + VARDESC2Fc.clazz = (*env)->GetObjectClass(env, lpObject); + VARDESC2Fc.memid = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "memid", "I"); + VARDESC2Fc.lpstrSchema = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "lpstrSchema", "I"); + VARDESC2Fc.unionField = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "unionField", "I"); + VARDESC2Fc.elemdescVar_tdesc_union = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "elemdescVar_tdesc_union", "I"); + VARDESC2Fc.elemdescVar_tdesc_vt = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "elemdescVar_tdesc_vt", "S"); + VARDESC2Fc.elemdescFunc_idldesc_dwReserved = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "elemdescFunc_idldesc_dwReserved", "I"); + VARDESC2Fc.elemdescFunc_idldesc_wIDLFlags = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "elemdescFunc_idldesc_wIDLFlags", "S"); + VARDESC2Fc.wVarFlags = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "wVarFlags", "S"); + VARDESC2Fc.varkind = (*env)->GetFieldID(env, VARDESC2Fc.clazz, "varkind", "I"); + VARDESC2Fc.cached = 1; +} + +VARDESC *getVARDESC2Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct) +{ + if (!VARDESC2Fc.cached) cacheVARDESC2Fids(env, lpObject); + lpStruct->varkind = (*env)->GetIntField(env, lpObject, VARDESC2Fc.varkind); + lpStruct->wVarFlags = (*env)->GetShortField(env, lpObject, VARDESC2Fc.wVarFlags); + lpStruct->elemdescVar.idldesc.wIDLFlags = (*env)->GetShortField(env, lpObject, VARDESC2Fc.elemdescFunc_idldesc_wIDLFlags); + lpStruct->elemdescVar.idldesc.dwReserved = (*env)->GetIntField(env, lpObject, VARDESC2Fc.elemdescFunc_idldesc_dwReserved); + lpStruct->elemdescVar.tdesc.vt = (*env)->GetShortField(env, lpObject, VARDESC2Fc.elemdescVar_tdesc_vt); + lpStruct->elemdescVar.tdesc.lptdesc = (struct FARSTRUCT tagTYPEDESC FAR *)(*env)->GetIntField(env, lpObject, VARDESC2Fc.elemdescVar_tdesc_union); + lpStruct->oInst = (*env)->GetIntField(env, lpObject, VARDESC2Fc.unionField); + lpStruct->lpstrSchema = (OLECHAR FAR *)(*env)->GetIntField(env, lpObject, VARDESC2Fc.lpstrSchema); + lpStruct->memid = (*env)->GetIntField(env, lpObject, VARDESC2Fc.memid); + return lpStruct; +} + +void setVARDESC2Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct) +{ + if (!VARDESC2Fc.cached) cacheVARDESC2Fids(env, lpObject); + (*env)->SetIntField(env, lpObject, VARDESC2Fc.varkind, lpStruct->varkind); + (*env)->SetShortField(env, lpObject, VARDESC2Fc.wVarFlags, lpStruct->wVarFlags); + (*env)->SetShortField(env, lpObject, VARDESC2Fc.elemdescFunc_idldesc_wIDLFlags, lpStruct->elemdescVar.idldesc.wIDLFlags); + (*env)->SetIntField(env, lpObject, VARDESC2Fc.elemdescFunc_idldesc_dwReserved, lpStruct->elemdescVar.idldesc.dwReserved); + (*env)->SetShortField(env, lpObject, VARDESC2Fc.elemdescVar_tdesc_vt, lpStruct->elemdescVar.tdesc.vt); + (*env)->SetIntField(env, lpObject, VARDESC2Fc.elemdescVar_tdesc_union, (jint)lpStruct->elemdescVar.tdesc.lptdesc); + (*env)->SetIntField(env, lpObject, VARDESC2Fc.unionField, lpStruct->oInst); + (*env)->SetIntField(env, lpObject, VARDESC2Fc.lpstrSchema, (jint)lpStruct->lpstrSchema); + (*env)->SetIntField(env, lpObject, VARDESC2Fc.memid, lpStruct->memid); +} +#endif /* NO_VARDESC2 */ diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com_structs.h b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com_structs.h index 066a4d6f39..16a103d653 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com_structs.h +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/com_structs.h @@ -1,121 +1,121 @@ -/*******************************************************************************
-* Copyright (c) 2000, 2003 IBM Corporation and others.
-* All rights reserved. This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-*
-* Contributors:
-* IBM Corporation - initial API and implementation
-*******************************************************************************/
-
-#include "os_structs.h"
-
-/* used to cast Vtabl entries */
-
-/* P_OLE_FN_x typedef for an OLE function returning int with x params*/
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_9)(jint, jint, jint, jint, jint, jint, jint, jint, jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_8)(jint, jint, jint, jint, jint, jint, jint, jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_7)(jint, jint, jint, jint, jint, jint, jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_6)(jint, jint, jint, jint, jint, jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_5)(jint, jint, jint, jint, jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_4)(jint, jint, jint, jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_3)(jint, jint, jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_2)(jint, jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_1)(jint);
-typedef jint (STDMETHODCALLTYPE *P_OLE_FN_0)(void);
-
-#ifndef NO_CAUUID
-CAUUID *getCAUUIDFields(JNIEnv *env, jobject lpObject, CAUUID *lpStruct);
-void setCAUUIDFields(JNIEnv *env, jobject lpObject, CAUUID *lpStruct);
-#endif /* NO_CAUUID */
-
-#ifndef NO_CONTROLINFO
-CONTROLINFO *getCONTROLINFOFields(JNIEnv *env, jobject lpObject, CONTROLINFO *lpStruct);
-void setCONTROLINFOFields(JNIEnv *env, jobject lpObject, CONTROLINFO *lpStruct);
-#endif /* NO_CONTROLINFO */
-
-#ifndef NO_COSERVERINFO
-COSERVERINFO *getCOSERVERINFOFields(JNIEnv *env, jobject lpObject, COSERVERINFO *lpStruct);
-void setCOSERVERINFOFields(JNIEnv *env, jobject lpObject, COSERVERINFO *lpStruct);
-#endif /* NO_COSERVERINFO */
-
-#ifndef NO_DISPPARAMS
-DISPPARAMS *getDISPPARAMSFields(JNIEnv *env, jobject lpObject, DISPPARAMS *lpStruct);
-void setDISPPARAMSFields(JNIEnv *env, jobject lpObject, DISPPARAMS *lpStruct);
-#endif /* NO_DISPPARAMS */
-
-#ifndef NO_DVTARGETDEVICE
-DVTARGETDEVICE *getDVTARGETDEVICEFields(JNIEnv *env, jobject lpObject, DVTARGETDEVICE *lpStruct);
-void setDVTARGETDEVICEFields(JNIEnv *env, jobject lpObject, DVTARGETDEVICE *lpStruct);
-#endif /* NO_DVTARGETDEVICE */
-
-#ifndef NO_EXCEPINFO
-EXCEPINFO *getEXCEPINFOFields(JNIEnv *env, jobject lpObject, EXCEPINFO *lpStruct);
-void setEXCEPINFOFields(JNIEnv *env, jobject lpObject, EXCEPINFO *lpStruct);
-#endif /* NO_EXCEPINFO */
-
-#ifndef NO_FORMATETC
-FORMATETC *getFORMATETCFields(JNIEnv *env, jobject lpObject, FORMATETC *lpStruct);
-void setFORMATETCFields(JNIEnv *env, jobject lpObject, FORMATETC *lpStruct);
-#endif /* NO_FORMATETC */
-
-#ifndef NO_FUNCDESC1
-FUNCDESC *getFUNCDESC1Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct);
-void setFUNCDESC1Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct);
-#endif /* NO_FUNCDESC1 */
-
-#ifndef NO_FUNCDESC2
-FUNCDESC *getFUNCDESC2Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct);
-void setFUNCDESC2Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct);
-#endif /* NO_FUNCDESC2 */
-
-#ifndef NO_GUID
-GUID *getGUIDFields(JNIEnv *env, jobject lpObject, GUID *lpStruct);
-void setGUIDFields(JNIEnv *env, jobject lpObject, GUID *lpStruct);
-#endif /* NO_GUID */
-
-#ifndef NO_LICINFO
-LICINFO *getLICINFOFields(JNIEnv *env, jobject lpObject, LICINFO *lpStruct);
-void setLICINFOFields(JNIEnv *env, jobject lpObject, LICINFO *lpStruct);
-#endif /* NO_LICINFO */
-
-#ifndef NO_OLECMD
-OLECMD *getOLECMDFields(JNIEnv *env, jobject lpObject, OLECMD *lpStruct);
-void setOLECMDFields(JNIEnv *env, jobject lpObject, OLECMD *lpStruct);
-#endif /* NO_OLECMD */
-
-#ifndef NO_OLECMDTEXT
-OLECMDTEXT *getOLECMDTEXTFields(JNIEnv *env, jobject lpObject, OLECMDTEXT *lpStruct);
-void setOLECMDTEXTFields(JNIEnv *env, jobject lpObject, OLECMDTEXT *lpStruct);
-#endif /* NO_OLECMDTEXT */
-
-#ifndef NO_OLEINPLACEFRAMEINFO
-OLEINPLACEFRAMEINFO *getOLEINPLACEFRAMEINFOFields(JNIEnv *env, jobject lpObject, OLEINPLACEFRAMEINFO *lpStruct);
-void setOLEINPLACEFRAMEINFOFields(JNIEnv *env, jobject lpObject, OLEINPLACEFRAMEINFO *lpStruct);
-#endif /* NO_OLEINPLACEFRAMEINFO */
-
-#ifndef NO_STATSTG
-STATSTG *getSTATSTGFields(JNIEnv *env, jobject lpObject, STATSTG *lpStruct);
-void setSTATSTGFields(JNIEnv *env, jobject lpObject, STATSTG *lpStruct);
-#endif /* NO_STATSTG */
-
-#ifndef NO_STGMEDIUM
-STGMEDIUM *getSTGMEDIUMFields(JNIEnv *env, jobject lpObject, STGMEDIUM *lpStruct);
-void setSTGMEDIUMFields(JNIEnv *env, jobject lpObject, STGMEDIUM *lpStruct);
-#endif /* NO_STGMEDIUM */
-
-#ifndef NO_TYPEATTR
-TYPEATTR *getTYPEATTRFields(JNIEnv *env, jobject lpObject, TYPEATTR *lpStruct);
-void setTYPEATTRFields(JNIEnv *env, jobject lpObject, TYPEATTR *lpStruct);
-#endif /* NO_TYPEATTR */
-
-#ifndef NO_VARDESC1
-VARDESC *getVARDESC1Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct);
-void setVARDESC1Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct);
-#endif /* NO_VARDESC1 */
-
-#ifndef NO_VARDESC2
-VARDESC *getVARDESC2Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct);
-void setVARDESC2Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct);
-#endif /* NO_VARDESC2 */
+/******************************************************************************* +* Copyright (c) 2000, 2003 IBM Corporation and others. +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Common Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/cpl-v10.html +* +* Contributors: +* IBM Corporation - initial API and implementation +*******************************************************************************/ + +#include "os_structs.h" + +/* used to cast Vtabl entries */ + +/* P_OLE_FN_x typedef for an OLE function returning int with x params*/ +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_9)(jint, jint, jint, jint, jint, jint, jint, jint, jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_8)(jint, jint, jint, jint, jint, jint, jint, jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_7)(jint, jint, jint, jint, jint, jint, jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_6)(jint, jint, jint, jint, jint, jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_5)(jint, jint, jint, jint, jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_4)(jint, jint, jint, jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_3)(jint, jint, jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_2)(jint, jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_1)(jint); +typedef jint (STDMETHODCALLTYPE *P_OLE_FN_0)(void); + +#ifndef NO_CAUUID +CAUUID *getCAUUIDFields(JNIEnv *env, jobject lpObject, CAUUID *lpStruct); +void setCAUUIDFields(JNIEnv *env, jobject lpObject, CAUUID *lpStruct); +#endif /* NO_CAUUID */ + +#ifndef NO_CONTROLINFO +CONTROLINFO *getCONTROLINFOFields(JNIEnv *env, jobject lpObject, CONTROLINFO *lpStruct); +void setCONTROLINFOFields(JNIEnv *env, jobject lpObject, CONTROLINFO *lpStruct); +#endif /* NO_CONTROLINFO */ + +#ifndef NO_COSERVERINFO +COSERVERINFO *getCOSERVERINFOFields(JNIEnv *env, jobject lpObject, COSERVERINFO *lpStruct); +void setCOSERVERINFOFields(JNIEnv *env, jobject lpObject, COSERVERINFO *lpStruct); +#endif /* NO_COSERVERINFO */ + +#ifndef NO_DISPPARAMS +DISPPARAMS *getDISPPARAMSFields(JNIEnv *env, jobject lpObject, DISPPARAMS *lpStruct); +void setDISPPARAMSFields(JNIEnv *env, jobject lpObject, DISPPARAMS *lpStruct); +#endif /* NO_DISPPARAMS */ + +#ifndef NO_DVTARGETDEVICE +DVTARGETDEVICE *getDVTARGETDEVICEFields(JNIEnv *env, jobject lpObject, DVTARGETDEVICE *lpStruct); +void setDVTARGETDEVICEFields(JNIEnv *env, jobject lpObject, DVTARGETDEVICE *lpStruct); +#endif /* NO_DVTARGETDEVICE */ + +#ifndef NO_EXCEPINFO +EXCEPINFO *getEXCEPINFOFields(JNIEnv *env, jobject lpObject, EXCEPINFO *lpStruct); +void setEXCEPINFOFields(JNIEnv *env, jobject lpObject, EXCEPINFO *lpStruct); +#endif /* NO_EXCEPINFO */ + +#ifndef NO_FORMATETC +FORMATETC *getFORMATETCFields(JNIEnv *env, jobject lpObject, FORMATETC *lpStruct); +void setFORMATETCFields(JNIEnv *env, jobject lpObject, FORMATETC *lpStruct); +#endif /* NO_FORMATETC */ + +#ifndef NO_FUNCDESC1 +FUNCDESC *getFUNCDESC1Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct); +void setFUNCDESC1Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct); +#endif /* NO_FUNCDESC1 */ + +#ifndef NO_FUNCDESC2 +FUNCDESC *getFUNCDESC2Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct); +void setFUNCDESC2Fields(JNIEnv *env, jobject lpObject, FUNCDESC *lpStruct); +#endif /* NO_FUNCDESC2 */ + +#ifndef NO_GUID +GUID *getGUIDFields(JNIEnv *env, jobject lpObject, GUID *lpStruct); +void setGUIDFields(JNIEnv *env, jobject lpObject, GUID *lpStruct); +#endif /* NO_GUID */ + +#ifndef NO_LICINFO +LICINFO *getLICINFOFields(JNIEnv *env, jobject lpObject, LICINFO *lpStruct); +void setLICINFOFields(JNIEnv *env, jobject lpObject, LICINFO *lpStruct); +#endif /* NO_LICINFO */ + +#ifndef NO_OLECMD +OLECMD *getOLECMDFields(JNIEnv *env, jobject lpObject, OLECMD *lpStruct); +void setOLECMDFields(JNIEnv *env, jobject lpObject, OLECMD *lpStruct); +#endif /* NO_OLECMD */ + +#ifndef NO_OLECMDTEXT +OLECMDTEXT *getOLECMDTEXTFields(JNIEnv *env, jobject lpObject, OLECMDTEXT *lpStruct); +void setOLECMDTEXTFields(JNIEnv *env, jobject lpObject, OLECMDTEXT *lpStruct); +#endif /* NO_OLECMDTEXT */ + +#ifndef NO_OLEINPLACEFRAMEINFO +OLEINPLACEFRAMEINFO *getOLEINPLACEFRAMEINFOFields(JNIEnv *env, jobject lpObject, OLEINPLACEFRAMEINFO *lpStruct); +void setOLEINPLACEFRAMEINFOFields(JNIEnv *env, jobject lpObject, OLEINPLACEFRAMEINFO *lpStruct); +#endif /* NO_OLEINPLACEFRAMEINFO */ + +#ifndef NO_STATSTG +STATSTG *getSTATSTGFields(JNIEnv *env, jobject lpObject, STATSTG *lpStruct); +void setSTATSTGFields(JNIEnv *env, jobject lpObject, STATSTG *lpStruct); +#endif /* NO_STATSTG */ + +#ifndef NO_STGMEDIUM +STGMEDIUM *getSTGMEDIUMFields(JNIEnv *env, jobject lpObject, STGMEDIUM *lpStruct); +void setSTGMEDIUMFields(JNIEnv *env, jobject lpObject, STGMEDIUM *lpStruct); +#endif /* NO_STGMEDIUM */ + +#ifndef NO_TYPEATTR +TYPEATTR *getTYPEATTRFields(JNIEnv *env, jobject lpObject, TYPEATTR *lpStruct); +void setTYPEATTRFields(JNIEnv *env, jobject lpObject, TYPEATTR *lpStruct); +#endif /* NO_TYPEATTR */ + +#ifndef NO_VARDESC1 +VARDESC *getVARDESC1Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct); +void setVARDESC1Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct); +#endif /* NO_VARDESC1 */ + +#ifndef NO_VARDESC2 +VARDESC *getVARDESC2Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct); +void setVARDESC2Fields(JNIEnv *env, jobject lpObject, VARDESC *lpStruct); +#endif /* NO_VARDESC2 */ diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.c b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.c index 2d870ef78c..bd5ea9b967 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.c @@ -1,6998 +1,6998 @@ -/*******************************************************************************
-* Copyright (c) 2000, 2003 IBM Corporation and others.
-* All rights reserved. This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-*
-* Contributors:
-* IBM Corporation - initial API and implementation
-*******************************************************************************/
-
-#include "swt.h"
-#include "os_structs.h"
-
-#define OS_NATIVE(func) Java_org_eclipse_swt_internal_win32_OS_##func
-
-#ifndef NO_AbortDoc
-JNIEXPORT jint JNICALL OS_NATIVE(AbortDoc)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "AbortDoc\n")
- rc = (jint)AbortDoc((HDC)arg0);
- NATIVE_EXIT(env, that, "AbortDoc\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ActivateKeyboardLayout
-JNIEXPORT jint JNICALL OS_NATIVE(ActivateKeyboardLayout)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ActivateKeyboardLayout\n")
- rc = (jint)ActivateKeyboardLayout((HKL)arg0, arg1);
- NATIVE_EXIT(env, that, "ActivateKeyboardLayout\n")
- return rc;
-}
-#endif
-
-#ifndef NO_AdjustWindowRectEx
-JNIEXPORT jboolean JNICALL OS_NATIVE(AdjustWindowRectEx)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jboolean arg2, jint arg3)
-{
- RECT _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "AdjustWindowRectEx\n")
- if (arg0) lparg0 = getRECTFields(env, arg0, &_arg0);
- rc = (jboolean)AdjustWindowRectEx(lparg0, arg1, arg2, arg3);
- if (arg0) setRECTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "AdjustWindowRectEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_Arc
-JNIEXPORT jboolean JNICALL OS_NATIVE(Arc)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "Arc\n")
- rc = (jboolean)Arc((HDC)arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
- NATIVE_EXIT(env, that, "Arc\n")
- return rc;
-}
-#endif
-
-#ifndef NO_BeginDeferWindowPos
-JNIEXPORT jint JNICALL OS_NATIVE(BeginDeferWindowPos)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "BeginDeferWindowPos\n")
- rc = (jint)BeginDeferWindowPos(arg0);
- NATIVE_EXIT(env, that, "BeginDeferWindowPos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_BeginPaint
-JNIEXPORT jint JNICALL OS_NATIVE(BeginPaint)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- PAINTSTRUCT _arg1, *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "BeginPaint\n")
- if (arg1) lparg1 = getPAINTSTRUCTFields(env, arg1, &_arg1);
- rc = (jint)BeginPaint((HWND)arg0, lparg1);
- if (arg1) setPAINTSTRUCTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "BeginPaint\n")
- return rc;
-}
-#endif
-
-#ifndef NO_BitBlt
-JNIEXPORT jboolean JNICALL OS_NATIVE(BitBlt)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "BitBlt\n")
- rc = (jboolean)BitBlt((HDC)arg0, arg1, arg2, arg3, arg4, (HDC)arg5, arg6, arg7, arg8);
- NATIVE_EXIT(env, that, "BitBlt\n")
- return rc;
-}
-#endif
-
-#ifndef NO_BringWindowToTop
-JNIEXPORT jboolean JNICALL OS_NATIVE(BringWindowToTop)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "BringWindowToTop\n")
- rc = (jboolean)BringWindowToTop((HWND)arg0);
- NATIVE_EXIT(env, that, "BringWindowToTop\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CallNextHookEx
-JNIEXPORT jint JNICALL OS_NATIVE(CallNextHookEx)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CallNextHookEx\n")
- rc = (jint)CallNextHookEx((HHOOK)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "CallNextHookEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CallWindowProcA
-JNIEXPORT jint JNICALL OS_NATIVE(CallWindowProcA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CallWindowProcA\n")
- rc = (jint)CallWindowProcA((WNDPROC)arg0, (HWND)arg1, arg2, arg3, arg4);
- NATIVE_EXIT(env, that, "CallWindowProcA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CallWindowProcW
-JNIEXPORT jint JNICALL OS_NATIVE(CallWindowProcW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CallWindowProcW\n")
- rc = (jint)CallWindowProcW((WNDPROC)arg0, (HWND)arg1, arg2, arg3, arg4);
- NATIVE_EXIT(env, that, "CallWindowProcW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CharLowerA
-JNIEXPORT jshort JNICALL OS_NATIVE(CharLowerA)
- (JNIEnv *env, jclass that, jshort arg0)
-{
- jshort rc;
- NATIVE_ENTER(env, that, "CharLowerA\n")
- rc = (jshort)CharLowerA((LPSTR)arg0);
- NATIVE_EXIT(env, that, "CharLowerA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CharLowerW
-JNIEXPORT jshort JNICALL OS_NATIVE(CharLowerW)
- (JNIEnv *env, jclass that, jshort arg0)
-{
- jshort rc;
- NATIVE_ENTER(env, that, "CharLowerW\n")
- rc = (jshort)CharLowerW((LPWSTR)arg0);
- NATIVE_EXIT(env, that, "CharLowerW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CharUpperA
-JNIEXPORT jshort JNICALL OS_NATIVE(CharUpperA)
- (JNIEnv *env, jclass that, jshort arg0)
-{
- jshort rc;
- NATIVE_ENTER(env, that, "CharUpperA\n")
- rc = (jshort)CharUpperA((LPSTR)arg0);
- NATIVE_EXIT(env, that, "CharUpperA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CharUpperW
-JNIEXPORT jshort JNICALL OS_NATIVE(CharUpperW)
- (JNIEnv *env, jclass that, jshort arg0)
-{
- jshort rc;
- NATIVE_ENTER(env, that, "CharUpperW\n")
- rc = (jshort)CharUpperW((LPWSTR)arg0);
- NATIVE_EXIT(env, that, "CharUpperW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CheckMenuItem
-JNIEXPORT jboolean JNICALL OS_NATIVE(CheckMenuItem)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "CheckMenuItem\n")
- rc = (jboolean)CheckMenuItem((HMENU)arg0, (UINT)arg1, (UINT)arg2);
- NATIVE_EXIT(env, that, "CheckMenuItem\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ChooseColorA
-JNIEXPORT jboolean JNICALL OS_NATIVE(ChooseColorA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- CHOOSECOLOR _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ChooseColorA\n")
- if (arg0) lparg0 = getCHOOSECOLORFields(env, arg0, &_arg0);
- rc = (jboolean)ChooseColorA(lparg0);
- if (arg0) setCHOOSECOLORFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "ChooseColorA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ChooseColorW
-JNIEXPORT jboolean JNICALL OS_NATIVE(ChooseColorW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- CHOOSECOLOR _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ChooseColorW\n")
- if (arg0) lparg0 = getCHOOSECOLORFields(env, arg0, &_arg0);
- rc = (jboolean)ChooseColorW((LPCHOOSECOLORW)lparg0);
- if (arg0) setCHOOSECOLORFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "ChooseColorW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ChooseFontA
-JNIEXPORT jboolean JNICALL OS_NATIVE(ChooseFontA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- CHOOSEFONT _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ChooseFontA\n")
- if (arg0) lparg0 = getCHOOSEFONTFields(env, arg0, &_arg0);
- rc = (jboolean)ChooseFontA(lparg0);
- if (arg0) setCHOOSEFONTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "ChooseFontA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ChooseFontW
-JNIEXPORT jboolean JNICALL OS_NATIVE(ChooseFontW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- CHOOSEFONT _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ChooseFontW\n")
- if (arg0) lparg0 = getCHOOSEFONTFields(env, arg0, &_arg0);
- rc = (jboolean)ChooseFontW((LPCHOOSEFONTW)lparg0);
- if (arg0) setCHOOSEFONTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "ChooseFontW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ClientToScreen
-JNIEXPORT jboolean JNICALL OS_NATIVE(ClientToScreen)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- POINT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ClientToScreen\n")
- if (arg1) lparg1 = getPOINTFields(env, arg1, &_arg1);
- rc = (jboolean)ClientToScreen((HWND)arg0, lparg1);
- if (arg1) setPOINTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "ClientToScreen\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CloseClipboard
-JNIEXPORT jboolean JNICALL OS_NATIVE(CloseClipboard)
- (JNIEnv *env, jclass that)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "CloseClipboard\n")
- rc = (jboolean)CloseClipboard();
- NATIVE_EXIT(env, that, "CloseClipboard\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CombineRgn
-JNIEXPORT jint JNICALL OS_NATIVE(CombineRgn)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CombineRgn\n")
- rc = (jint)CombineRgn((HRGN)arg0, (HRGN)arg1, (HRGN)arg2, arg3);
- NATIVE_EXIT(env, that, "CombineRgn\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CommDlgExtendedError
-JNIEXPORT jint JNICALL OS_NATIVE(CommDlgExtendedError)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CommDlgExtendedError\n")
- rc = (jint)CommDlgExtendedError();
- NATIVE_EXIT(env, that, "CommDlgExtendedError\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CommandBar_1AddAdornments
-JNIEXPORT jboolean JNICALL OS_NATIVE(CommandBar_1AddAdornments)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "CommandBar_1AddAdornments\n")
- rc = (jboolean)CommandBar_AddAdornments((HWND)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "CommandBar_1AddAdornments\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CommandBar_1Create
-JNIEXPORT jint JNICALL OS_NATIVE(CommandBar_1Create)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CommandBar_1Create\n")
- rc = (jint)CommandBar_Create((HINSTANCE)arg0, (HWND)arg1, arg2);
- NATIVE_EXIT(env, that, "CommandBar_1Create\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CommandBar_1Destroy
-JNIEXPORT void JNICALL OS_NATIVE(CommandBar_1Destroy)
- (JNIEnv *env, jclass that, jint arg0)
-{
- NATIVE_ENTER(env, that, "CommandBar_1Destroy\n")
- CommandBar_Destroy((HWND)arg0);
- NATIVE_EXIT(env, that, "CommandBar_1Destroy\n")
-}
-#endif
-
-#ifndef NO_CommandBar_1DrawMenuBar
-JNIEXPORT jboolean JNICALL OS_NATIVE(CommandBar_1DrawMenuBar)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "CommandBar_1DrawMenuBar\n")
- rc = (jboolean)CommandBar_DrawMenuBar((HWND)arg0, (WORD)arg1);
- NATIVE_EXIT(env, that, "CommandBar_1DrawMenuBar\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CommandBar_1Height
-JNIEXPORT jint JNICALL OS_NATIVE(CommandBar_1Height)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CommandBar_1Height\n")
- rc = (jint)CommandBar_Height((HWND)arg0);
- NATIVE_EXIT(env, that, "CommandBar_1Height\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CommandBar_1InsertMenubarEx
-JNIEXPORT jboolean JNICALL OS_NATIVE(CommandBar_1InsertMenubarEx)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "CommandBar_1InsertMenubarEx\n")
- rc = (jboolean)CommandBar_InsertMenubarEx((HWND)arg0, (HINSTANCE)arg1, (LPTSTR)arg2, (WORD)arg3);
- NATIVE_EXIT(env, that, "CommandBar_1InsertMenubarEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CommandBar_1Show
-JNIEXPORT jboolean JNICALL OS_NATIVE(CommandBar_1Show)
- (JNIEnv *env, jclass that, jint arg0, jboolean arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "CommandBar_1Show\n")
- rc = (jboolean)CommandBar_Show((HWND)arg0, (BOOL)arg1);
- NATIVE_EXIT(env, that, "CommandBar_1Show\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CopyImage
-JNIEXPORT jint JNICALL OS_NATIVE(CopyImage)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CopyImage\n")
- rc = (jint)CopyImage((HANDLE)arg0, arg1, arg2, arg3, arg4);
- NATIVE_EXIT(env, that, "CopyImage\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateAcceleratorTableA
-JNIEXPORT jint JNICALL OS_NATIVE(CreateAcceleratorTableA)
- (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1)
-{
- jbyte *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateAcceleratorTableA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- rc = (jint)CreateAcceleratorTableA((LPACCEL)lparg0, arg1);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "CreateAcceleratorTableA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateAcceleratorTableW
-JNIEXPORT jint JNICALL OS_NATIVE(CreateAcceleratorTableW)
- (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1)
-{
- jbyte *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateAcceleratorTableW\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- rc = (jint)CreateAcceleratorTableW((LPACCEL)lparg0, arg1);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "CreateAcceleratorTableW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateBitmap
-JNIEXPORT jint JNICALL OS_NATIVE(CreateBitmap)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jbyteArray arg4)
-{
- jbyte *lparg4=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateBitmap\n")
- if (arg4) lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL);
- rc = (jint)CreateBitmap(arg0, arg1, arg2, arg3, (CONST VOID *)lparg4);
- if (arg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0);
- NATIVE_EXIT(env, that, "CreateBitmap\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateCaret
-JNIEXPORT jboolean JNICALL OS_NATIVE(CreateCaret)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "CreateCaret\n")
- rc = (jboolean)CreateCaret((HWND)arg0, (HBITMAP)arg1, arg2, arg3);
- NATIVE_EXIT(env, that, "CreateCaret\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateCompatibleBitmap
-JNIEXPORT jint JNICALL OS_NATIVE(CreateCompatibleBitmap)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreateCompatibleBitmap\n")
- rc = (jint)CreateCompatibleBitmap((HDC)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "CreateCompatibleBitmap\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateCompatibleDC
-JNIEXPORT jint JNICALL OS_NATIVE(CreateCompatibleDC)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreateCompatibleDC\n")
- rc = (jint)CreateCompatibleDC((HDC)arg0);
- NATIVE_EXIT(env, that, "CreateCompatibleDC\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateCursor
-JNIEXPORT jint JNICALL OS_NATIVE(CreateCursor)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jbyteArray arg5, jbyteArray arg6)
-{
- jbyte *lparg5=NULL;
- jbyte *lparg6=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateCursor\n")
- if (arg5) lparg5 = (*env)->GetByteArrayElements(env, arg5, NULL);
- if (arg6) lparg6 = (*env)->GetByteArrayElements(env, arg6, NULL);
- rc = (jint)CreateCursor((HINSTANCE)arg0, arg1, arg2, arg3, arg4, (CONST VOID *)lparg5, (CONST VOID *)lparg6);
- if (arg5) (*env)->ReleaseByteArrayElements(env, arg5, lparg5, 0);
- if (arg6) (*env)->ReleaseByteArrayElements(env, arg6, lparg6, 0);
- NATIVE_EXIT(env, that, "CreateCursor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateDCA
-JNIEXPORT jint JNICALL OS_NATIVE(CreateDCA)
- (JNIEnv *env, jclass that, jbyteArray arg0, jbyteArray arg1, jint arg2, jint arg3)
-{
- jbyte *lparg0=NULL;
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateDCA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)CreateDCA((LPSTR)lparg0, (LPSTR)lparg1, (LPSTR)arg2, (CONST DEVMODE *)arg3);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "CreateDCA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateDCW
-JNIEXPORT jint JNICALL OS_NATIVE(CreateDCW)
- (JNIEnv *env, jclass that, jcharArray arg0, jcharArray arg1, jint arg2, jint arg3)
-{
- jchar *lparg0=NULL;
- jchar *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateDCW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jint)CreateDCW((LPWSTR)lparg0, (LPWSTR)lparg1, (LPWSTR)arg2, (CONST DEVMODEW *)arg3);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "CreateDCW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateDIBSection
-JNIEXPORT jint JNICALL OS_NATIVE(CreateDIBSection)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jintArray arg3, jint arg4, jint arg5)
-{
- jbyte *lparg1=NULL;
- jint *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateDIBSection\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jint)CreateDIBSection((HDC)arg0, (BITMAPINFO *)lparg1, arg2, (VOID **)lparg3, (HANDLE)arg4, arg5);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "CreateDIBSection\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateFontIndirectA__I
-JNIEXPORT jint JNICALL OS_NATIVE(CreateFontIndirectA__I)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreateFontIndirectA__I\n")
- rc = (jint)CreateFontIndirectA((LPLOGFONTA)arg0);
- NATIVE_EXIT(env, that, "CreateFontIndirectA__I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2
-JNIEXPORT jint JNICALL OS_NATIVE(CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- LOGFONTA _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2\n")
- if (arg0) lparg0 = getLOGFONTAFields(env, arg0, &_arg0);
- rc = (jint)CreateFontIndirectA(lparg0);
- if (arg0) setLOGFONTAFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateFontIndirectW__I
-JNIEXPORT jint JNICALL OS_NATIVE(CreateFontIndirectW__I)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreateFontIndirectW__I\n")
- rc = (jint)CreateFontIndirectW((LPLOGFONTW)arg0);
- NATIVE_EXIT(env, that, "CreateFontIndirectW__I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateFontIndirectW__Lorg_eclipse_swt_internal_win32_LOGFONTW_2
-JNIEXPORT jint JNICALL OS_NATIVE(CreateFontIndirectW__Lorg_eclipse_swt_internal_win32_LOGFONTW_2)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- LOGFONTW _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateFontIndirectW__Lorg_eclipse_swt_internal_win32_LOGFONTW_2\n")
- if (arg0) lparg0 = getLOGFONTWFields(env, arg0, &_arg0);
- rc = (jint)CreateFontIndirectW(lparg0);
- if (arg0) setLOGFONTWFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "CreateFontIndirectW__Lorg_eclipse_swt_internal_win32_LOGFONTW_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateIconIndirect
-JNIEXPORT jint JNICALL OS_NATIVE(CreateIconIndirect)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- ICONINFO _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateIconIndirect\n")
- if (arg0) lparg0 = getICONINFOFields(env, arg0, &_arg0);
- rc = (jint)CreateIconIndirect(lparg0);
- if (arg0) setICONINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "CreateIconIndirect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateMenu
-JNIEXPORT jint JNICALL OS_NATIVE(CreateMenu)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreateMenu\n")
- rc = (jint)CreateMenu();
- NATIVE_EXIT(env, that, "CreateMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreatePalette
-JNIEXPORT jint JNICALL OS_NATIVE(CreatePalette)
- (JNIEnv *env, jclass that, jbyteArray arg0)
-{
- jbyte *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreatePalette\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- rc = (jint)CreatePalette((LOGPALETTE *)lparg0);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "CreatePalette\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreatePatternBrush
-JNIEXPORT jint JNICALL OS_NATIVE(CreatePatternBrush)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreatePatternBrush\n")
- rc = (jint)CreatePatternBrush((HBITMAP)arg0);
- NATIVE_EXIT(env, that, "CreatePatternBrush\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreatePen
-JNIEXPORT jint JNICALL OS_NATIVE(CreatePen)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreatePen\n")
- rc = (jint)CreatePen(arg0, arg1, (COLORREF)arg2);
- NATIVE_EXIT(env, that, "CreatePen\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreatePopupMenu
-JNIEXPORT jint JNICALL OS_NATIVE(CreatePopupMenu)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreatePopupMenu\n")
- rc = (jint)CreatePopupMenu();
- NATIVE_EXIT(env, that, "CreatePopupMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateRectRgn
-JNIEXPORT jint JNICALL OS_NATIVE(CreateRectRgn)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreateRectRgn\n")
- rc = (jint)CreateRectRgn(arg0, arg1, arg2, arg3);
- NATIVE_EXIT(env, that, "CreateRectRgn\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateSolidBrush
-JNIEXPORT jint JNICALL OS_NATIVE(CreateSolidBrush)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "CreateSolidBrush\n")
- rc = (jint)CreateSolidBrush((COLORREF)arg0);
- NATIVE_EXIT(env, that, "CreateSolidBrush\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateWindowExA
-JNIEXPORT jint JNICALL OS_NATIVE(CreateWindowExA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jbyteArray arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9, jint arg10, jobject arg11)
-{
- jbyte *lparg1=NULL;
- jbyte *lparg2=NULL;
- CREATESTRUCT _arg11, *lparg11=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateWindowExA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- if (arg11) lparg11 = getCREATESTRUCTFields(env, arg11, &_arg11);
- rc = (jint)CreateWindowExA(arg0, (LPSTR)lparg1, lparg2, arg3, arg4, arg5, arg6, arg7, (HWND)arg8, (HMENU)arg9, (HINSTANCE)arg10, lparg11);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- if (arg11) setCREATESTRUCTFields(env, arg11, lparg11);
- NATIVE_EXIT(env, that, "CreateWindowExA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_CreateWindowExW
-JNIEXPORT jint JNICALL OS_NATIVE(CreateWindowExW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jcharArray arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9, jint arg10, jobject arg11)
-{
- jchar *lparg1=NULL;
- jchar *lparg2=NULL;
- CREATESTRUCT _arg11, *lparg11=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "CreateWindowExW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- if (arg11) lparg11 = getCREATESTRUCTFields(env, arg11, &_arg11);
- rc = (jint)CreateWindowExW(arg0, (LPWSTR)lparg1, (LPWSTR)lparg2, arg3, arg4, arg5, arg6, arg7, (HWND)arg8, (HMENU)arg9, (HINSTANCE)arg10, lparg11);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- if (arg11) setCREATESTRUCTFields(env, arg11, lparg11);
- NATIVE_EXIT(env, that, "CreateWindowExW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DefFrameProcA
-JNIEXPORT jint JNICALL OS_NATIVE(DefFrameProcA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jint rc;
- NATIVE_ENTER(env, that, "DefFrameProcA\n")
- rc = (jint)DefFrameProcA((HWND)arg0, (HWND)arg1, arg2, (WPARAM)arg3, (LPARAM)arg4);
- NATIVE_EXIT(env, that, "DefFrameProcA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DefFrameProcW
-JNIEXPORT jint JNICALL OS_NATIVE(DefFrameProcW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jint rc;
- NATIVE_ENTER(env, that, "DefFrameProcW\n")
- rc = (jint)DefFrameProcW((HWND)arg0, (HWND)arg1, arg2, (WPARAM)arg3, (LPARAM)arg4);
- NATIVE_EXIT(env, that, "DefFrameProcW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DefMDIChildProcA
-JNIEXPORT jint JNICALL OS_NATIVE(DefMDIChildProcA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "DefMDIChildProcA\n")
- rc = (jint)DefMDIChildProcA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "DefMDIChildProcA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DefMDIChildProcW
-JNIEXPORT jint JNICALL OS_NATIVE(DefMDIChildProcW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "DefMDIChildProcW\n")
- rc = (jint)DefMDIChildProcW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "DefMDIChildProcW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DefWindowProcA
-JNIEXPORT jint JNICALL OS_NATIVE(DefWindowProcA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "DefWindowProcA\n")
- rc = (jint)DefWindowProcA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "DefWindowProcA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DefWindowProcW
-JNIEXPORT jint JNICALL OS_NATIVE(DefWindowProcW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "DefWindowProcW\n")
- rc = (jint)DefWindowProcW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "DefWindowProcW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DeferWindowPos
-JNIEXPORT jint JNICALL OS_NATIVE(DeferWindowPos)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7)
-{
- jint rc;
- NATIVE_ENTER(env, that, "DeferWindowPos\n")
- rc = (jint)DeferWindowPos((HDWP)arg0, (HWND)arg1, (HWND)arg2, arg3, arg4, arg5, arg6, arg7);
- NATIVE_EXIT(env, that, "DeferWindowPos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DeleteDC
-JNIEXPORT jboolean JNICALL OS_NATIVE(DeleteDC)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DeleteDC\n")
- rc = (jboolean)DeleteDC((HDC)arg0);
- NATIVE_EXIT(env, that, "DeleteDC\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DeleteMenu
-JNIEXPORT jboolean JNICALL OS_NATIVE(DeleteMenu)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DeleteMenu\n")
- rc = (jboolean)DeleteMenu((HMENU)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "DeleteMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DeleteObject
-JNIEXPORT jboolean JNICALL OS_NATIVE(DeleteObject)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DeleteObject\n")
- rc = (jboolean)DeleteObject((HGDIOBJ)arg0);
- NATIVE_EXIT(env, that, "DeleteObject\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DestroyAcceleratorTable
-JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyAcceleratorTable)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DestroyAcceleratorTable\n")
- rc = (jboolean)DestroyAcceleratorTable((HACCEL)arg0);
- NATIVE_EXIT(env, that, "DestroyAcceleratorTable\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DestroyCaret
-JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyCaret)
- (JNIEnv *env, jclass that)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DestroyCaret\n")
- rc = (jboolean)DestroyCaret();
- NATIVE_EXIT(env, that, "DestroyCaret\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DestroyCursor
-JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyCursor)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DestroyCursor\n")
- rc = (jboolean)DestroyCursor((HCURSOR)arg0);
- NATIVE_EXIT(env, that, "DestroyCursor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DestroyIcon
-JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyIcon)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DestroyIcon\n")
- rc = (jboolean)DestroyIcon((HICON)arg0);
- NATIVE_EXIT(env, that, "DestroyIcon\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DestroyMenu
-JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyMenu)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DestroyMenu\n")
- rc = (jboolean)DestroyMenu((HMENU)arg0);
- NATIVE_EXIT(env, that, "DestroyMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DestroyWindow
-JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyWindow)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DestroyWindow\n")
- rc = (jboolean)DestroyWindow((HWND)arg0);
- NATIVE_EXIT(env, that, "DestroyWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DispatchMessageA
-JNIEXPORT jint JNICALL OS_NATIVE(DispatchMessageA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- MSG _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "DispatchMessageA\n")
- if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0);
- rc = (jint)DispatchMessageA(lparg0);
- if (arg0) setMSGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "DispatchMessageA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DispatchMessageW
-JNIEXPORT jint JNICALL OS_NATIVE(DispatchMessageW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- MSG _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "DispatchMessageW\n")
- if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0);
- rc = (jint)DispatchMessageW(lparg0);
- if (arg0) setMSGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "DispatchMessageW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DragDetect
-JNIEXPORT jboolean JNICALL OS_NATIVE(DragDetect)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- POINT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "DragDetect\n")
- if (arg1) lparg1 = getPOINTFields(env, arg1, &_arg1);
- rc = (jboolean)DragDetect((HWND)arg0, *lparg1);
- if (arg1) setPOINTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "DragDetect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DragFinish
-JNIEXPORT void JNICALL OS_NATIVE(DragFinish)
- (JNIEnv *env, jclass that, jint arg0)
-{
- NATIVE_ENTER(env, that, "DragFinish\n")
- DragFinish((HDROP)arg0);
- NATIVE_EXIT(env, that, "DragFinish\n")
-}
-#endif
-
-#ifndef NO_DragQueryFileA
-JNIEXPORT jint JNICALL OS_NATIVE(DragQueryFileA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jint arg3)
-{
- jbyte *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "DragQueryFileA\n")
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- rc = (jint)DragQueryFileA((HDROP)arg0, arg1, (LPTSTR)lparg2, arg3);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "DragQueryFileA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DragQueryFileW
-JNIEXPORT jint JNICALL OS_NATIVE(DragQueryFileW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3)
-{
- jchar *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "DragQueryFileW\n")
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- rc = (jint)DragQueryFileW((HDROP)arg0, arg1, (LPWSTR)lparg2, arg3);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "DragQueryFileW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawEdge
-JNIEXPORT jboolean JNICALL OS_NATIVE(DrawEdge)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jint arg3)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "DrawEdge\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)DrawEdge((HDC)arg0, lparg1, arg2, arg3);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "DrawEdge\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawFocusRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(DrawFocusRect)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "DrawFocusRect\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)DrawFocusRect((HDC)arg0, lparg1);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "DrawFocusRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawFrameControl
-JNIEXPORT jboolean JNICALL OS_NATIVE(DrawFrameControl)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jint arg3)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "DrawFrameControl\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)DrawFrameControl((HDC)arg0, lparg1, arg2, arg3);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "DrawFrameControl\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawIconEx
-JNIEXPORT jboolean JNICALL OS_NATIVE(DrawIconEx)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DrawIconEx\n")
- rc = (jboolean)DrawIconEx((HDC)arg0, arg1, arg2, (HICON)arg3, arg4, arg5, arg6, (HBRUSH)arg7, arg8);
- NATIVE_EXIT(env, that, "DrawIconEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawMenuBar
-JNIEXPORT jboolean JNICALL OS_NATIVE(DrawMenuBar)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DrawMenuBar\n")
- rc = (jboolean)DrawMenuBar((HWND)arg0);
- NATIVE_EXIT(env, that, "DrawMenuBar\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawStateA
-JNIEXPORT jboolean JNICALL OS_NATIVE(DrawStateA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DrawStateA\n")
- rc = (jboolean)DrawStateA((HDC)arg0, (HBRUSH)arg1, (DRAWSTATEPROC)arg2, (LPARAM)arg3, (WPARAM)arg4, arg5, arg6, arg7, arg8, arg9);
- NATIVE_EXIT(env, that, "DrawStateA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawStateW
-JNIEXPORT jboolean JNICALL OS_NATIVE(DrawStateW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "DrawStateW\n")
- rc = (jboolean)DrawStateW((HDC)arg0, (HBRUSH)arg1, (DRAWSTATEPROC)arg2, (LPARAM)arg3, (WPARAM)arg4, arg5, arg6, arg7, arg8, arg9);
- NATIVE_EXIT(env, that, "DrawStateW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawTextA
-JNIEXPORT jint JNICALL OS_NATIVE(DrawTextA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jobject arg3, jint arg4)
-{
- jbyte *lparg1=NULL;
- RECT _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "DrawTextA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3);
- rc = (jint)DrawTextA((HDC)arg0, (LPSTR)lparg1, arg2, lparg3, arg4);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg3) setRECTFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "DrawTextA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_DrawTextW
-JNIEXPORT jint JNICALL OS_NATIVE(DrawTextW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jobject arg3, jint arg4)
-{
- jchar *lparg1=NULL;
- RECT _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "DrawTextW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3);
- rc = (jint)DrawTextW((HDC)arg0, (LPWSTR)lparg1, arg2, lparg3, arg4);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg3) setRECTFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "DrawTextW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_Ellipse
-JNIEXPORT jboolean JNICALL OS_NATIVE(Ellipse)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "Ellipse\n")
- rc = (jboolean)Ellipse((HDC)arg0, arg1, arg2, arg3, arg4);
- NATIVE_EXIT(env, that, "Ellipse\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnableMenuItem
-JNIEXPORT jboolean JNICALL OS_NATIVE(EnableMenuItem)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EnableMenuItem\n")
- rc = (jboolean)EnableMenuItem((HMENU)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "EnableMenuItem\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnableScrollBar
-JNIEXPORT jboolean JNICALL OS_NATIVE(EnableScrollBar)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EnableScrollBar\n")
- rc = (jboolean)EnableScrollBar((HWND)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "EnableScrollBar\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnableWindow
-JNIEXPORT jboolean JNICALL OS_NATIVE(EnableWindow)
- (JNIEnv *env, jclass that, jint arg0, jboolean arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EnableWindow\n")
- rc = (jboolean)EnableWindow((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "EnableWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EndDeferWindowPos
-JNIEXPORT jboolean JNICALL OS_NATIVE(EndDeferWindowPos)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EndDeferWindowPos\n")
- rc = (jboolean)EndDeferWindowPos((HDWP)arg0);
- NATIVE_EXIT(env, that, "EndDeferWindowPos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EndDoc
-JNIEXPORT jint JNICALL OS_NATIVE(EndDoc)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "EndDoc\n")
- rc = (jint)EndDoc((HDC)arg0);
- NATIVE_EXIT(env, that, "EndDoc\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EndPage
-JNIEXPORT jint JNICALL OS_NATIVE(EndPage)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "EndPage\n")
- rc = (jint)EndPage((HDC)arg0);
- NATIVE_EXIT(env, that, "EndPage\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EndPaint
-JNIEXPORT jint JNICALL OS_NATIVE(EndPaint)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- PAINTSTRUCT _arg1, *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "EndPaint\n")
- if (arg1) lparg1 = getPAINTSTRUCTFields(env, arg1, &_arg1);
- rc = (jint)EndPaint((HWND)arg0, lparg1);
- if (arg1) setPAINTSTRUCTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "EndPaint\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnumFontFamiliesA
-JNIEXPORT jint JNICALL OS_NATIVE(EnumFontFamiliesA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jint arg3)
-{
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "EnumFontFamiliesA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)EnumFontFamiliesA((HDC)arg0, (LPSTR)lparg1, (FONTENUMPROC)arg2, (LPARAM)arg3);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "EnumFontFamiliesA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnumFontFamiliesW
-JNIEXPORT jint JNICALL OS_NATIVE(EnumFontFamiliesW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jint arg3)
-{
- jchar *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "EnumFontFamiliesW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jint)EnumFontFamiliesW((HDC)arg0, (LPCWSTR)lparg1, (FONTENUMPROCW)arg2, (LPARAM)arg3);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "EnumFontFamiliesW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnumSystemLocalesA
-JNIEXPORT jboolean JNICALL OS_NATIVE(EnumSystemLocalesA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EnumSystemLocalesA\n")
- rc = (jboolean)EnumSystemLocalesA((LOCALE_ENUMPROCA)arg0, arg1);
- NATIVE_EXIT(env, that, "EnumSystemLocalesA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnumSystemLocalesW
-JNIEXPORT jboolean JNICALL OS_NATIVE(EnumSystemLocalesW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EnumSystemLocalesW\n")
- rc = (jboolean)EnumSystemLocalesW((LOCALE_ENUMPROCW)arg0, arg1);
- NATIVE_EXIT(env, that, "EnumSystemLocalesW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EqualRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(EqualRect)
- (JNIEnv *env, jclass that, jobject arg0, jobject arg1)
-{
- RECT _arg0, *lparg0=NULL;
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "EqualRect\n")
- if (arg0) lparg0 = getRECTFields(env, arg0, &_arg0);
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)EqualRect((CONST RECT *)lparg0, (CONST RECT *)lparg1);
- if (arg0) setRECTFields(env, arg0, lparg0);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "EqualRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EqualRgn
-JNIEXPORT jboolean JNICALL OS_NATIVE(EqualRgn)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EqualRgn\n")
- rc = (jboolean)EqualRgn((HRGN)arg0, (HRGN)arg1);
- NATIVE_EXIT(env, that, "EqualRgn\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ExpandEnvironmentStringsA
-JNIEXPORT jint JNICALL OS_NATIVE(ExpandEnvironmentStringsA)
- (JNIEnv *env, jclass that, jbyteArray arg0, jbyteArray arg1, jint arg2)
-{
- jbyte *lparg0=NULL;
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ExpandEnvironmentStringsA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)ExpandEnvironmentStringsA(lparg0, lparg1, arg2);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "ExpandEnvironmentStringsA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ExpandEnvironmentStringsW
-JNIEXPORT jint JNICALL OS_NATIVE(ExpandEnvironmentStringsW)
- (JNIEnv *env, jclass that, jcharArray arg0, jcharArray arg1, jint arg2)
-{
- jchar *lparg0=NULL;
- jchar *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ExpandEnvironmentStringsW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jint)ExpandEnvironmentStringsW(lparg0, lparg1, arg2);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "ExpandEnvironmentStringsW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ExtTextOutA
-JNIEXPORT jboolean JNICALL OS_NATIVE(ExtTextOutA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jobject arg4, jbyteArray arg5, jint arg6, jintArray arg7)
-{
- RECT _arg4, *lparg4=NULL;
- jbyte *lparg5=NULL;
- jint *lparg7=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ExtTextOutA\n")
- if (arg4) lparg4 = getRECTFields(env, arg4, &_arg4);
- if (arg5) lparg5 = (*env)->GetByteArrayElements(env, arg5, NULL);
- if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL);
- rc = (jboolean)ExtTextOutA((HDC)arg0, arg1, arg2, arg3, lparg4, (LPSTR)lparg5, arg6, (CONST INT *)lparg7);
- if (arg4) setRECTFields(env, arg4, lparg4);
- if (arg5) (*env)->ReleaseByteArrayElements(env, arg5, lparg5, 0);
- if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0);
- NATIVE_EXIT(env, that, "ExtTextOutA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ExtTextOutW
-JNIEXPORT jboolean JNICALL OS_NATIVE(ExtTextOutW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jobject arg4, jcharArray arg5, jint arg6, jintArray arg7)
-{
- RECT _arg4, *lparg4=NULL;
- jchar *lparg5=NULL;
- jint *lparg7=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ExtTextOutW\n")
- if (arg4) lparg4 = getRECTFields(env, arg4, &_arg4);
- if (arg5) lparg5 = (*env)->GetCharArrayElements(env, arg5, NULL);
- if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL);
- rc = (jboolean)ExtTextOutW((HDC)arg0, arg1, arg2, arg3, lparg4, (LPWSTR)lparg5, arg6, (CONST INT *)lparg7);
- if (arg4) setRECTFields(env, arg4, lparg4);
- if (arg5) (*env)->ReleaseCharArrayElements(env, arg5, lparg5, 0);
- if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0);
- NATIVE_EXIT(env, that, "ExtTextOutW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ExtractIconExA
-JNIEXPORT jint JNICALL OS_NATIVE(ExtractIconExA)
- (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1, jintArray arg2, jintArray arg3, jint arg4)
-{
- jbyte *lparg0=NULL;
- jint *lparg2=NULL;
- jint *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ExtractIconExA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jint)ExtractIconExA((LPSTR)lparg0, arg1, (HICON FAR *)lparg2, (HICON FAR *)lparg3, arg4);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "ExtractIconExA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ExtractIconExW
-JNIEXPORT jint JNICALL OS_NATIVE(ExtractIconExW)
- (JNIEnv *env, jclass that, jcharArray arg0, jint arg1, jintArray arg2, jintArray arg3, jint arg4)
-{
- jchar *lparg0=NULL;
- jint *lparg2=NULL;
- jint *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ExtractIconExW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jint)ExtractIconExW((LPWSTR)lparg0, arg1, (HICON FAR *)lparg2, (HICON FAR *)lparg3, arg4);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "ExtractIconExW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_FillRect
-JNIEXPORT jint JNICALL OS_NATIVE(FillRect)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- RECT _arg1, *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "FillRect\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jint)FillRect((HDC)arg0, lparg1, (HBRUSH)arg2);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "FillRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_FindWindowA
-JNIEXPORT jint JNICALL OS_NATIVE(FindWindowA)
- (JNIEnv *env, jclass that, jbyteArray arg0, jbyteArray arg1)
-{
- jbyte *lparg0=NULL;
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "FindWindowA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)FindWindowA((LPSTR)lparg0, (LPSTR)lparg1);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "FindWindowA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_FindWindowW
-JNIEXPORT jint JNICALL OS_NATIVE(FindWindowW)
- (JNIEnv *env, jclass that, jcharArray arg0, jcharArray arg1)
-{
- jchar *lparg0=NULL;
- jchar *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "FindWindowW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jint)FindWindowW((LPWSTR)lparg0, (LPWSTR)lparg1);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "FindWindowW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_FreeLibrary
-JNIEXPORT jboolean JNICALL OS_NATIVE(FreeLibrary)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "FreeLibrary\n")
- rc = (jboolean)FreeLibrary((HMODULE)arg0);
- NATIVE_EXIT(env, that, "FreeLibrary\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetACP
-JNIEXPORT jint JNICALL OS_NATIVE(GetACP)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetACP\n")
- rc = (jint)GetACP();
- NATIVE_EXIT(env, that, "GetACP\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetActiveWindow
-JNIEXPORT jint JNICALL OS_NATIVE(GetActiveWindow)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetActiveWindow\n")
- rc = (jint)GetActiveWindow();
- NATIVE_EXIT(env, that, "GetActiveWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetBkColor
-JNIEXPORT jint JNICALL OS_NATIVE(GetBkColor)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetBkColor\n")
- rc = (jint)GetBkColor((HDC)arg0);
- NATIVE_EXIT(env, that, "GetBkColor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCapture
-JNIEXPORT jint JNICALL OS_NATIVE(GetCapture)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetCapture\n")
- rc = (jint)GetCapture();
- NATIVE_EXIT(env, that, "GetCapture\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCaretPos
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetCaretPos)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- POINT _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetCaretPos\n")
- if (arg0) lparg0 = getPOINTFields(env, arg0, &_arg0);
- rc = (jboolean)GetCaretPos(lparg0);
- if (arg0) setPOINTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetCaretPos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCharABCWidthsA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetCharABCWidthsA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
- jint *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetCharABCWidthsA\n")
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jboolean)GetCharABCWidthsA((HDC)arg0, arg1, arg2, (LPABC)lparg3);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetCharABCWidthsA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCharABCWidthsW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetCharABCWidthsW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
- jint *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetCharABCWidthsW\n")
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jboolean)GetCharABCWidthsW((HDC)arg0, arg1, arg2, (LPABC)lparg3);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetCharABCWidthsW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCharWidthA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetCharWidthA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
- jint *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetCharWidthA\n")
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jboolean)GetCharWidthA((HDC)arg0, arg1, arg2, (LPINT)lparg3);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetCharWidthA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCharWidthW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetCharWidthW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
- jint *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetCharWidthW\n")
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jboolean)GetCharWidthW((HDC)arg0, arg1, arg2, (LPINT)lparg3);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetCharWidthW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCharacterPlacementA
-JNIEXPORT jint JNICALL OS_NATIVE(GetCharacterPlacementA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jint arg3, jobject arg4, jint arg5)
-{
- jbyte *lparg1=NULL;
- GCP_RESULTS _arg4, *lparg4=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetCharacterPlacementA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg4) lparg4 = getGCP_RESULTSFields(env, arg4, &_arg4);
- rc = (jint)GetCharacterPlacementA((HDC)arg0, (LPSTR)lparg1, arg2, arg3, lparg4, arg5);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg4) setGCP_RESULTSFields(env, arg4, lparg4);
- NATIVE_EXIT(env, that, "GetCharacterPlacementA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCharacterPlacementW
-JNIEXPORT jint JNICALL OS_NATIVE(GetCharacterPlacementW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jint arg3, jobject arg4, jint arg5)
-{
- jchar *lparg1=NULL;
- GCP_RESULTS _arg4, *lparg4=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetCharacterPlacementW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg4) lparg4 = getGCP_RESULTSFields(env, arg4, &_arg4);
- rc = (jint)GetCharacterPlacementW((HDC)arg0, (LPWSTR)lparg1, arg2, arg3, (LPGCP_RESULTSW)lparg4, arg5);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg4) setGCP_RESULTSFields(env, arg4, lparg4);
- NATIVE_EXIT(env, that, "GetCharacterPlacementW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetClassInfoA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetClassInfoA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jobject arg2)
-{
- jbyte *lparg1=NULL;
- WNDCLASS _arg2, *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetClassInfoA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = getWNDCLASSFields(env, arg2, &_arg2);
- rc = (jboolean)GetClassInfoA((HINSTANCE)arg0, (LPSTR)lparg1, lparg2);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg2) setWNDCLASSFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetClassInfoA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetClassInfoW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetClassInfoW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jobject arg2)
-{
- jchar *lparg1=NULL;
- WNDCLASS _arg2, *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetClassInfoW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = getWNDCLASSFields(env, arg2, &_arg2);
- rc = (jboolean)GetClassInfoW((HINSTANCE)arg0, (LPWSTR)lparg1, (LPWNDCLASSW)lparg2);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg2) setWNDCLASSFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetClassInfoW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetClientRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetClientRect)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetClientRect\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)GetClientRect((HWND)arg0, lparg1);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetClientRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetClipBox
-JNIEXPORT jint JNICALL OS_NATIVE(GetClipBox)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- RECT _arg1, *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetClipBox\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jint)GetClipBox((HDC)arg0, lparg1);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetClipBox\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetClipRgn
-JNIEXPORT jint JNICALL OS_NATIVE(GetClipRgn)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetClipRgn\n")
- rc = (jint)GetClipRgn((HDC)arg0, (HRGN)arg1);
- NATIVE_EXIT(env, that, "GetClipRgn\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetClipboardData
-JNIEXPORT jint JNICALL OS_NATIVE(GetClipboardData)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetClipboardData\n")
- rc = (jint)GetClipboardData(arg0);
- NATIVE_EXIT(env, that, "GetClipboardData\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetClipboardFormatNameA
-JNIEXPORT jint JNICALL OS_NATIVE(GetClipboardFormatNameA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2)
-{
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetClipboardFormatNameA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)GetClipboardFormatNameA(arg0, lparg1, arg2);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetClipboardFormatNameA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetClipboardFormatNameW
-JNIEXPORT jint JNICALL OS_NATIVE(GetClipboardFormatNameW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2)
-{
- jchar *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetClipboardFormatNameW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jint)GetClipboardFormatNameW(arg0, (LPWSTR)lparg1, arg2);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetClipboardFormatNameW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCurrentObject
-JNIEXPORT jint JNICALL OS_NATIVE(GetCurrentObject)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetCurrentObject\n")
- rc = (jint)GetCurrentObject((HDC)arg0, arg1);
- NATIVE_EXIT(env, that, "GetCurrentObject\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCurrentProcessId
-JNIEXPORT jint JNICALL OS_NATIVE(GetCurrentProcessId)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetCurrentProcessId\n")
- rc = (jint)GetCurrentProcessId();
- NATIVE_EXIT(env, that, "GetCurrentProcessId\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCurrentThreadId
-JNIEXPORT jint JNICALL OS_NATIVE(GetCurrentThreadId)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetCurrentThreadId\n")
- rc = (jint)GetCurrentThreadId();
- NATIVE_EXIT(env, that, "GetCurrentThreadId\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCursor
-JNIEXPORT jint JNICALL OS_NATIVE(GetCursor)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetCursor\n")
- rc = (jint)GetCursor();
- NATIVE_EXIT(env, that, "GetCursor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetCursorPos
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetCursorPos)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- POINT _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetCursorPos\n")
- if (arg0) lparg0 = getPOINTFields(env, arg0, &_arg0);
- rc = (jboolean)GetCursorPos(lparg0);
- if (arg0) setPOINTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetCursorPos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDC
-JNIEXPORT jint JNICALL OS_NATIVE(GetDC)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetDC\n")
- rc = (jint)GetDC((HWND)arg0);
- NATIVE_EXIT(env, that, "GetDC\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDCEx
-JNIEXPORT jint JNICALL OS_NATIVE(GetDCEx)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetDCEx\n")
- rc = (jint)GetDCEx((HWND)arg0, (HRGN)arg1, arg2);
- NATIVE_EXIT(env, that, "GetDCEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDIBColorTable
-JNIEXPORT jint JNICALL OS_NATIVE(GetDIBColorTable)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3)
-{
- jbyte *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetDIBColorTable\n")
- if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL);
- rc = (jint)GetDIBColorTable((HDC)arg0, arg1, arg2, (RGBQUAD *)lparg3);
- if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetDIBColorTable\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDIBits
-JNIEXPORT jint JNICALL OS_NATIVE(GetDIBits)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jbyteArray arg5, jint arg6)
-{
- jbyte *lparg5=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetDIBits\n")
- if (arg5) lparg5 = (*env)->GetByteArrayElements(env, arg5, NULL);
- rc = (jint)GetDIBits((HDC)arg0, (HBITMAP)arg1, arg2, arg3, (LPVOID)arg4, (LPBITMAPINFO)lparg5, arg6);
- if (arg5) (*env)->ReleaseByteArrayElements(env, arg5, lparg5, 0);
- NATIVE_EXIT(env, that, "GetDIBits\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDesktopWindow
-JNIEXPORT jint JNICALL OS_NATIVE(GetDesktopWindow)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetDesktopWindow\n")
- rc = (jint)GetDesktopWindow();
- NATIVE_EXIT(env, that, "GetDesktopWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDeviceCaps
-JNIEXPORT jint JNICALL OS_NATIVE(GetDeviceCaps)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetDeviceCaps\n")
- rc = (jint)GetDeviceCaps((HDC)arg0, arg1);
- NATIVE_EXIT(env, that, "GetDeviceCaps\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDialogBaseUnits
-JNIEXPORT jint JNICALL OS_NATIVE(GetDialogBaseUnits)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetDialogBaseUnits\n")
- rc = (jint)GetDialogBaseUnits();
- NATIVE_EXIT(env, that, "GetDialogBaseUnits\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDlgItem
-JNIEXPORT jint JNICALL OS_NATIVE(GetDlgItem)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetDlgItem\n")
- rc = (jint)GetDlgItem((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "GetDlgItem\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetDoubleClickTime
-JNIEXPORT jint JNICALL OS_NATIVE(GetDoubleClickTime)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetDoubleClickTime\n")
- rc = (jint)GetDoubleClickTime();
- NATIVE_EXIT(env, that, "GetDoubleClickTime\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetFocus
-JNIEXPORT jint JNICALL OS_NATIVE(GetFocus)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetFocus\n")
- rc = (jint)GetFocus();
- NATIVE_EXIT(env, that, "GetFocus\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetFontLanguageInfo
-JNIEXPORT jint JNICALL OS_NATIVE(GetFontLanguageInfo)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetFontLanguageInfo\n")
- rc = (jint)GetFontLanguageInfo((HDC)arg0);
- NATIVE_EXIT(env, that, "GetFontLanguageInfo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetIconInfo
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetIconInfo)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- ICONINFO _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetIconInfo\n")
- if (arg1) lparg1 = getICONINFOFields(env, arg1, &_arg1);
- rc = (jboolean)GetIconInfo((HICON)arg0, lparg1);
- if (arg1) setICONINFOFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetIconInfo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetKeyNameTextA
-JNIEXPORT jint JNICALL OS_NATIVE(GetKeyNameTextA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2)
-{
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetKeyNameTextA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)GetKeyNameTextA(arg0, (LPSTR)lparg1, arg2);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetKeyNameTextA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetKeyNameTextW
-JNIEXPORT jint JNICALL OS_NATIVE(GetKeyNameTextW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2)
-{
- jchar *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetKeyNameTextW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jint)GetKeyNameTextW(arg0, (LPWSTR)lparg1, arg2);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetKeyNameTextW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetKeyState
-JNIEXPORT jshort JNICALL OS_NATIVE(GetKeyState)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jshort rc;
- NATIVE_ENTER(env, that, "GetKeyState\n")
- rc = (jshort)GetKeyState(arg0);
- NATIVE_EXIT(env, that, "GetKeyState\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetKeyboardLayout
-JNIEXPORT jint JNICALL OS_NATIVE(GetKeyboardLayout)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetKeyboardLayout\n")
- rc = (jint)GetKeyboardLayout(arg0);
- NATIVE_EXIT(env, that, "GetKeyboardLayout\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetKeyboardLayoutList
-JNIEXPORT jint JNICALL OS_NATIVE(GetKeyboardLayoutList)
- (JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
- jint *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetKeyboardLayoutList\n")
- if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
- rc = (jint)GetKeyboardLayoutList(arg0, (HKL FAR *)lparg1);
- if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetKeyboardLayoutList\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetKeyboardState
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetKeyboardState)
- (JNIEnv *env, jclass that, jbyteArray arg0)
-{
- jbyte *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetKeyboardState\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- rc = (jboolean)GetKeyboardState((PBYTE)lparg0);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "GetKeyboardState\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetLastActivePopup
-JNIEXPORT jint JNICALL OS_NATIVE(GetLastActivePopup)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetLastActivePopup\n")
- rc = (jint)GetLastActivePopup((HWND)arg0);
- NATIVE_EXIT(env, that, "GetLastActivePopup\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetLastError
-JNIEXPORT jint JNICALL OS_NATIVE(GetLastError)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetLastError\n")
- rc = (jint)GetLastError();
- NATIVE_EXIT(env, that, "GetLastError\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetLocaleInfoA
-JNIEXPORT jint JNICALL OS_NATIVE(GetLocaleInfoA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jint arg3)
-{
- jbyte *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetLocaleInfoA\n")
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- rc = (jint)GetLocaleInfoA(arg0, arg1, (LPSTR)lparg2, arg3);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "GetLocaleInfoA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetLocaleInfoW
-JNIEXPORT jint JNICALL OS_NATIVE(GetLocaleInfoW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3)
-{
- jchar *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetLocaleInfoW\n")
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- rc = (jint)GetLocaleInfoW(arg0, arg1, (LPWSTR)lparg2, arg3);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "GetLocaleInfoW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMenu
-JNIEXPORT jint JNICALL OS_NATIVE(GetMenu)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetMenu\n")
- rc = (jint)GetMenu((HWND)arg0);
- NATIVE_EXIT(env, that, "GetMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMenuDefaultItem
-JNIEXPORT jint JNICALL OS_NATIVE(GetMenuDefaultItem)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetMenuDefaultItem\n")
- rc = (jint)GetMenuDefaultItem((HMENU)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "GetMenuDefaultItem\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMenuItemCount
-JNIEXPORT jint JNICALL OS_NATIVE(GetMenuItemCount)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetMenuItemCount\n")
- rc = (jint)GetMenuItemCount((HMENU)arg0);
- NATIVE_EXIT(env, that, "GetMenuItemCount\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMenuItemInfoA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetMenuItemInfoA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3)
-{
- MENUITEMINFO _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetMenuItemInfoA\n")
- if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3);
- rc = (jboolean)GetMenuItemInfoA((HMENU)arg0, arg1, arg2, lparg3);
- if (arg3) setMENUITEMINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "GetMenuItemInfoA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMenuItemInfoW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetMenuItemInfoW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3)
-{
- MENUITEMINFO _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetMenuItemInfoW\n")
- if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3);
- rc = (jboolean)GetMenuItemInfoW((HMENU)arg0, arg1, arg2, (LPMENUITEMINFOW)lparg3);
- if (arg3) setMENUITEMINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "GetMenuItemInfoW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMessageA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetMessageA)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3)
-{
- MSG _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetMessageA\n")
- if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0);
- rc = (jboolean)GetMessageA(lparg0, (HWND)arg1, arg2, arg3);
- if (arg0) setMSGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetMessageA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMessagePos
-JNIEXPORT jint JNICALL OS_NATIVE(GetMessagePos)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetMessagePos\n")
- rc = (jint)GetMessagePos();
- NATIVE_EXIT(env, that, "GetMessagePos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMessageTime
-JNIEXPORT jint JNICALL OS_NATIVE(GetMessageTime)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetMessageTime\n")
- rc = (jint)GetMessageTime();
- NATIVE_EXIT(env, that, "GetMessageTime\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMessageW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetMessageW)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3)
-{
- MSG _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetMessageW\n")
- if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0);
- rc = (jboolean)GetMessageW(lparg0, (HWND)arg1, arg2, arg3);
- if (arg0) setMSGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetMessageW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetModuleHandleA
-JNIEXPORT jint JNICALL OS_NATIVE(GetModuleHandleA)
- (JNIEnv *env, jclass that, jbyteArray arg0)
-{
- jbyte *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetModuleHandleA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- rc = (jint)GetModuleHandleA((LPSTR)lparg0);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "GetModuleHandleA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetModuleHandleW
-JNIEXPORT jint JNICALL OS_NATIVE(GetModuleHandleW)
- (JNIEnv *env, jclass that, jcharArray arg0)
-{
- jchar *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetModuleHandleW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- rc = (jint)GetModuleHandleW((LPWSTR)lparg0);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "GetModuleHandleW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetNearestPaletteIndex
-JNIEXPORT jint JNICALL OS_NATIVE(GetNearestPaletteIndex)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetNearestPaletteIndex\n")
- rc = (jint)GetNearestPaletteIndex((HPALETTE)arg0, (COLORREF)arg1);
- NATIVE_EXIT(env, that, "GetNearestPaletteIndex\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- BITMAP _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2\n")
- if (arg2) lparg2 = getBITMAPFields(env, arg2, &_arg2);
- rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setBITMAPFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- DIBSECTION _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2\n")
- if (arg2) lparg2 = getDIBSECTIONFields(env, arg2, &_arg2);
- rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setDIBSECTIONFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- LOGBRUSH _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2\n")
- if (arg2) lparg2 = getLOGBRUSHFields(env, arg2, &_arg2);
- rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setLOGBRUSHFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- LOGFONTA _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2\n")
- if (arg2) lparg2 = getLOGFONTAFields(env, arg2, &_arg2);
- rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setLOGFONTAFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- LOGPEN _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2\n")
- if (arg2) lparg2 = getLOGPENFields(env, arg2, &_arg2);
- rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setLOGPENFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_BITMAP_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_BITMAP_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- BITMAP _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_BITMAP_2\n")
- if (arg2) lparg2 = getBITMAPFields(env, arg2, &_arg2);
- rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setBITMAPFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_BITMAP_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_DIBSECTION_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_DIBSECTION_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- DIBSECTION _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_DIBSECTION_2\n")
- if (arg2) lparg2 = getDIBSECTIONFields(env, arg2, &_arg2);
- rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setDIBSECTIONFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_DIBSECTION_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- LOGBRUSH _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2\n")
- if (arg2) lparg2 = getLOGBRUSHFields(env, arg2, &_arg2);
- rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setLOGBRUSHFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_LOGFONTW_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_LOGFONTW_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- LOGFONTW _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGFONTW_2\n")
- if (arg2) lparg2 = getLOGFONTWFields(env, arg2, &_arg2);
- rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setLOGFONTWFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGFONTW_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_LOGPEN_2
-JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_LOGPEN_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- LOGPEN _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGPEN_2\n")
- if (arg2) lparg2 = getLOGPENFields(env, arg2, &_arg2);
- rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2);
- if (arg2) setLOGPENFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGPEN_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetOpenFileNameA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetOpenFileNameA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- OPENFILENAME _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetOpenFileNameA\n")
- if (arg0) lparg0 = getOPENFILENAMEFields(env, arg0, &_arg0);
- rc = (jboolean)GetOpenFileNameA(lparg0);
- if (arg0) setOPENFILENAMEFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetOpenFileNameA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetOpenFileNameW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetOpenFileNameW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- OPENFILENAME _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetOpenFileNameW\n")
- if (arg0) lparg0 = getOPENFILENAMEFields(env, arg0, &_arg0);
- rc = (jboolean)GetOpenFileNameW((LPOPENFILENAMEW)lparg0);
- if (arg0) setOPENFILENAMEFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetOpenFileNameW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetPaletteEntries
-JNIEXPORT jint JNICALL OS_NATIVE(GetPaletteEntries)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3)
-{
- jbyte *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetPaletteEntries\n")
- if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL);
- rc = (jint)GetPaletteEntries((HPALETTE)arg0, arg1, arg2, (LPPALETTEENTRY)lparg3);
- if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetPaletteEntries\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetParent
-JNIEXPORT jint JNICALL OS_NATIVE(GetParent)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetParent\n")
- rc = (jint)GetParent((HWND)arg0);
- NATIVE_EXIT(env, that, "GetParent\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetPixel
-JNIEXPORT jint JNICALL OS_NATIVE(GetPixel)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetPixel\n")
- rc = (jint)GetPixel((HDC)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "GetPixel\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetProcAddress
-JNIEXPORT jint JNICALL OS_NATIVE(GetProcAddress)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1)
-{
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetProcAddress\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)GetProcAddress((HMODULE)arg0, (LPCTSTR)lparg1);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetProcAddress\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetProcessHeap
-JNIEXPORT jint JNICALL OS_NATIVE(GetProcessHeap)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetProcessHeap\n")
- rc = (jint)GetProcessHeap();
- NATIVE_EXIT(env, that, "GetProcessHeap\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetProfileStringA
-JNIEXPORT jint JNICALL OS_NATIVE(GetProfileStringA)
- (JNIEnv *env, jclass that, jbyteArray arg0, jbyteArray arg1, jbyteArray arg2, jbyteArray arg3, jint arg4)
-{
- jbyte *lparg0=NULL;
- jbyte *lparg1=NULL;
- jbyte *lparg2=NULL;
- jbyte *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetProfileStringA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL);
- rc = (jint)GetProfileStringA((LPSTR)lparg0, (LPSTR)lparg1, (LPSTR)lparg2, (LPSTR)lparg3, arg4);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetProfileStringA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetProfileStringW
-JNIEXPORT jint JNICALL OS_NATIVE(GetProfileStringW)
- (JNIEnv *env, jclass that, jcharArray arg0, jcharArray arg1, jcharArray arg2, jcharArray arg3, jint arg4)
-{
- jchar *lparg0=NULL;
- jchar *lparg1=NULL;
- jchar *lparg2=NULL;
- jchar *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetProfileStringW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetCharArrayElements(env, arg3, NULL);
- rc = (jint)GetProfileStringW((LPWSTR)lparg0, (LPWSTR)lparg1, (LPWSTR)lparg2, (LPWSTR)lparg3, arg4);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseCharArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetProfileStringW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetROP2
-JNIEXPORT jint JNICALL OS_NATIVE(GetROP2)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetROP2\n")
- rc = (jint)GetROP2((HDC)arg0);
- NATIVE_EXIT(env, that, "GetROP2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetRegionData
-JNIEXPORT jint JNICALL OS_NATIVE(GetRegionData)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2)
-{
- jint *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetRegionData\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- rc = (jint)GetRegionData((HRGN)arg0, arg1, (RGNDATA *)lparg2);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "GetRegionData\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetRgnBox
-JNIEXPORT jint JNICALL OS_NATIVE(GetRgnBox)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- RECT _arg1, *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetRgnBox\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jint)GetRgnBox((HRGN)arg0, lparg1);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetRgnBox\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetSaveFileNameA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetSaveFileNameA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- OPENFILENAME _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetSaveFileNameA\n")
- if (arg0) lparg0 = getOPENFILENAMEFields(env, arg0, &_arg0);
- rc = (jboolean)GetSaveFileNameA(lparg0);
- if (arg0) setOPENFILENAMEFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetSaveFileNameA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetSaveFileNameW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetSaveFileNameW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- OPENFILENAME _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetSaveFileNameW\n")
- if (arg0) lparg0 = getOPENFILENAMEFields(env, arg0, &_arg0);
- rc = (jboolean)GetSaveFileNameW((LPOPENFILENAMEW)lparg0);
- if (arg0) setOPENFILENAMEFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetSaveFileNameW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetScrollInfo
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetScrollInfo)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- SCROLLINFO _arg2, *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetScrollInfo\n")
- if (arg2) lparg2 = getSCROLLINFOFields(env, arg2, &_arg2);
- rc = (jboolean)GetScrollInfo((HWND)arg0, arg1, lparg2);
- if (arg2) setSCROLLINFOFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "GetScrollInfo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetStockObject
-JNIEXPORT jint JNICALL OS_NATIVE(GetStockObject)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetStockObject\n")
- rc = (jint)GetStockObject(arg0);
- NATIVE_EXIT(env, that, "GetStockObject\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetSysColor
-JNIEXPORT jint JNICALL OS_NATIVE(GetSysColor)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetSysColor\n")
- rc = (jint)GetSysColor(arg0);
- NATIVE_EXIT(env, that, "GetSysColor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetSysColorBrush
-JNIEXPORT jint JNICALL OS_NATIVE(GetSysColorBrush)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetSysColorBrush\n")
- rc = (jint)GetSysColorBrush(arg0);
- NATIVE_EXIT(env, that, "GetSysColorBrush\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetSystemMenu
-JNIEXPORT jint JNICALL OS_NATIVE(GetSystemMenu)
- (JNIEnv *env, jclass that, jint arg0, jboolean arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetSystemMenu\n")
- rc = (jint)GetSystemMenu((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "GetSystemMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetSystemMetrics
-JNIEXPORT jint JNICALL OS_NATIVE(GetSystemMetrics)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetSystemMetrics\n")
- rc = (jint)GetSystemMetrics(arg0);
- NATIVE_EXIT(env, that, "GetSystemMetrics\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetSystemPaletteEntries
-JNIEXPORT jint JNICALL OS_NATIVE(GetSystemPaletteEntries)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3)
-{
- jbyte *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetSystemPaletteEntries\n")
- if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL);
- rc = (jint)GetSystemPaletteEntries((HDC)arg0, (UINT)arg1, (UINT)arg2, (LPPALETTEENTRY)lparg3);
- if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "GetSystemPaletteEntries\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetTextCharset
-JNIEXPORT jint JNICALL OS_NATIVE(GetTextCharset)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetTextCharset\n")
- rc = (jint)GetTextCharset((HDC)arg0);
- NATIVE_EXIT(env, that, "GetTextCharset\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetTextColor
-JNIEXPORT jint JNICALL OS_NATIVE(GetTextColor)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetTextColor\n")
- rc = (jint)GetTextColor((HDC)arg0);
- NATIVE_EXIT(env, that, "GetTextColor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetTextExtentPoint32A
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetTextExtentPoint32A)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jobject arg3)
-{
- jbyte *lparg1=NULL;
- SIZE _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetTextExtentPoint32A\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg3) lparg3 = getSIZEFields(env, arg3, &_arg3);
- rc = (jboolean)GetTextExtentPoint32A((HDC)arg0, (LPSTR)lparg1, arg2, lparg3);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg3) setSIZEFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "GetTextExtentPoint32A\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetTextExtentPoint32W
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetTextExtentPoint32W)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jobject arg3)
-{
- jchar *lparg1=NULL;
- SIZE _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetTextExtentPoint32W\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg3) lparg3 = getSIZEFields(env, arg3, &_arg3);
- rc = (jboolean)GetTextExtentPoint32W((HDC)arg0, (LPWSTR)lparg1, arg2, lparg3);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg3) setSIZEFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "GetTextExtentPoint32W\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetTextMetricsA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetTextMetricsA)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- TEXTMETRICA _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetTextMetricsA\n")
- if (arg1) lparg1 = getTEXTMETRICAFields(env, arg1, &_arg1);
- rc = (jboolean)GetTextMetricsA((HDC)arg0, lparg1);
- if (arg1) setTEXTMETRICAFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetTextMetricsA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetTextMetricsW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetTextMetricsW)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- TEXTMETRICW _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetTextMetricsW\n")
- if (arg1) lparg1 = getTEXTMETRICWFields(env, arg1, &_arg1);
- rc = (jboolean)GetTextMetricsW((HDC)arg0, lparg1);
- if (arg1) setTEXTMETRICWFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetTextMetricsW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetTickCount
-JNIEXPORT jint JNICALL OS_NATIVE(GetTickCount)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetTickCount\n")
- rc = (jint)GetTickCount();
- NATIVE_EXIT(env, that, "GetTickCount\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetUpdateRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetUpdateRect)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jboolean arg2)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetUpdateRect\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)GetUpdateRect((HWND)arg0, (LPRECT)lparg1, (BOOL)arg2);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetUpdateRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetUpdateRgn
-JNIEXPORT jint JNICALL OS_NATIVE(GetUpdateRgn)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetUpdateRgn\n")
- rc = (jint)GetUpdateRgn((HWND)arg0, (HRGN)arg1, arg2);
- NATIVE_EXIT(env, that, "GetUpdateRgn\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetVersionExA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetVersionExA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- OSVERSIONINFOA _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetVersionExA\n")
- if (arg0) lparg0 = getOSVERSIONINFOAFields(env, arg0, &_arg0);
- rc = (jboolean)GetVersionExA(lparg0);
- if (arg0) setOSVERSIONINFOAFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetVersionExA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetVersionExW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetVersionExW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- OSVERSIONINFOW _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetVersionExW\n")
- if (arg0) lparg0 = getOSVERSIONINFOWFields(env, arg0, &_arg0);
- rc = (jboolean)GetVersionExW(lparg0);
- if (arg0) setOSVERSIONINFOWFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "GetVersionExW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindow
-JNIEXPORT jint JNICALL OS_NATIVE(GetWindow)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetWindow\n")
- rc = (jint)GetWindow((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "GetWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowLongA
-JNIEXPORT jint JNICALL OS_NATIVE(GetWindowLongA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetWindowLongA\n")
- rc = (jint)GetWindowLongA((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "GetWindowLongA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowLongW
-JNIEXPORT jint JNICALL OS_NATIVE(GetWindowLongW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetWindowLongW\n")
- rc = (jint)GetWindowLongW((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "GetWindowLongW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowPlacement
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetWindowPlacement)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- WINDOWPLACEMENT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetWindowPlacement\n")
- if (arg1) lparg1 = getWINDOWPLACEMENTFields(env, arg1, &_arg1);
- rc = (jboolean)GetWindowPlacement((HWND)arg0, lparg1);
- if (arg1) setWINDOWPLACEMENTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetWindowPlacement\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetWindowRect)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetWindowRect\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)GetWindowRect((HWND)arg0, lparg1);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetWindowRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowTextA
-JNIEXPORT jint JNICALL OS_NATIVE(GetWindowTextA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2)
-{
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetWindowTextA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)GetWindowTextA((HWND)arg0, (LPSTR)lparg1, arg2);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetWindowTextA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowTextLengthA
-JNIEXPORT jint JNICALL OS_NATIVE(GetWindowTextLengthA)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetWindowTextLengthA\n")
- rc = (jint)GetWindowTextLengthA((HWND)arg0);
- NATIVE_EXIT(env, that, "GetWindowTextLengthA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowTextLengthW
-JNIEXPORT jint JNICALL OS_NATIVE(GetWindowTextLengthW)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetWindowTextLengthW\n")
- rc = (jint)GetWindowTextLengthW((HWND)arg0);
- NATIVE_EXIT(env, that, "GetWindowTextLengthW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowTextW
-JNIEXPORT jint JNICALL OS_NATIVE(GetWindowTextW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2)
-{
- jchar *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetWindowTextW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jint)GetWindowTextW((HWND)arg0, (LPWSTR)lparg1, arg2);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetWindowTextW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetWindowThreadProcessId
-JNIEXPORT jint JNICALL OS_NATIVE(GetWindowThreadProcessId)
- (JNIEnv *env, jclass that, jint arg0, jintArray arg1)
-{
- jint *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "GetWindowThreadProcessId\n")
- if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
- rc = (jint)GetWindowThreadProcessId((HWND)arg0, (LPDWORD)lparg1);
- if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "GetWindowThreadProcessId\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GlobalAlloc
-JNIEXPORT jint JNICALL OS_NATIVE(GlobalAlloc)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GlobalAlloc\n")
- rc = (jint)GlobalAlloc(arg0, arg1);
- NATIVE_EXIT(env, that, "GlobalAlloc\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GlobalFree
-JNIEXPORT jint JNICALL OS_NATIVE(GlobalFree)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GlobalFree\n")
- rc = (jint)GlobalFree((HANDLE)arg0);
- NATIVE_EXIT(env, that, "GlobalFree\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GlobalLock
-JNIEXPORT jint JNICALL OS_NATIVE(GlobalLock)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GlobalLock\n")
- rc = (jint)GlobalLock((HANDLE)arg0);
- NATIVE_EXIT(env, that, "GlobalLock\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GlobalSize
-JNIEXPORT jint JNICALL OS_NATIVE(GlobalSize)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GlobalSize\n")
- rc = (jint)GlobalSize((HANDLE)arg0);
- NATIVE_EXIT(env, that, "GlobalSize\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GlobalUnlock
-JNIEXPORT jboolean JNICALL OS_NATIVE(GlobalUnlock)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "GlobalUnlock\n")
- rc = (jboolean)GlobalUnlock((HANDLE)arg0);
- NATIVE_EXIT(env, that, "GlobalUnlock\n")
- return rc;
-}
-#endif
-
-#ifndef NO_HeapAlloc
-JNIEXPORT jint JNICALL OS_NATIVE(HeapAlloc)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "HeapAlloc\n")
- rc = (jint)HeapAlloc((HANDLE)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "HeapAlloc\n")
- return rc;
-}
-#endif
-
-#ifndef NO_HeapFree
-JNIEXPORT jboolean JNICALL OS_NATIVE(HeapFree)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "HeapFree\n")
- rc = (jboolean)HeapFree((HANDLE)arg0, arg1, (LPVOID)arg2);
- NATIVE_EXIT(env, that, "HeapFree\n")
- return rc;
-}
-#endif
-
-#ifndef NO_HideCaret
-JNIEXPORT jboolean JNICALL OS_NATIVE(HideCaret)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "HideCaret\n")
- rc = (jboolean)HideCaret((HWND)arg0);
- NATIVE_EXIT(env, that, "HideCaret\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1Add
-JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1Add)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImageList_1Add\n")
- rc = (jint)ImageList_Add((HIMAGELIST)arg0, (HBITMAP)arg1, (HBITMAP)arg2);
- NATIVE_EXIT(env, that, "ImageList_1Add\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1AddMasked
-JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1AddMasked)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImageList_1AddMasked\n")
- rc = (jint)ImageList_AddMasked((HIMAGELIST)arg0, (HBITMAP)arg1, (COLORREF)arg2);
- NATIVE_EXIT(env, that, "ImageList_1AddMasked\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1Create
-JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1Create)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImageList_1Create\n")
- rc = (jint)ImageList_Create(arg0, arg1, arg2, arg3, arg4);
- NATIVE_EXIT(env, that, "ImageList_1Create\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1Destroy
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1Destroy)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImageList_1Destroy\n")
- rc = (jboolean)ImageList_Destroy((HIMAGELIST)arg0);
- NATIVE_EXIT(env, that, "ImageList_1Destroy\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1GetIcon
-JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1GetIcon)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImageList_1GetIcon\n")
- rc = (jint)ImageList_GetIcon((HIMAGELIST)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "ImageList_1GetIcon\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1GetIconSize
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1GetIconSize)
- (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jintArray arg2)
-{
- jint *lparg1=NULL;
- jint *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ImageList_1GetIconSize\n")
- if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- rc = (jboolean)ImageList_GetIconSize((HIMAGELIST)arg0, lparg1, lparg2);
- if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "ImageList_1GetIconSize\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1GetImageCount
-JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1GetImageCount)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImageList_1GetImageCount\n")
- rc = (jint)ImageList_GetImageCount((HIMAGELIST)arg0);
- NATIVE_EXIT(env, that, "ImageList_1GetImageCount\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1Remove
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1Remove)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImageList_1Remove\n")
- rc = (jboolean)ImageList_Remove((HIMAGELIST)arg0, arg1);
- NATIVE_EXIT(env, that, "ImageList_1Remove\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1Replace
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1Replace)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImageList_1Replace\n")
- rc = (jboolean)ImageList_Replace((HIMAGELIST)arg0, arg1, (HBITMAP)arg2, (HBITMAP)arg3);
- NATIVE_EXIT(env, that, "ImageList_1Replace\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1ReplaceIcon
-JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1ReplaceIcon)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImageList_1ReplaceIcon\n")
- rc = (jint)ImageList_ReplaceIcon((HIMAGELIST)arg0, arg1, (HICON)arg2);
- NATIVE_EXIT(env, that, "ImageList_1ReplaceIcon\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImageList_1SetIconSize
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1SetIconSize)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImageList_1SetIconSize\n")
- rc = (jboolean)ImageList_SetIconSize((HIMAGELIST)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "ImageList_1SetIconSize\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmAssociateContext
-JNIEXPORT jint JNICALL OS_NATIVE(ImmAssociateContext)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImmAssociateContext\n")
- rc = (jint)ImmAssociateContext((HWND)arg0, (HIMC)arg1);
- NATIVE_EXIT(env, that, "ImmAssociateContext\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmCreateContext
-JNIEXPORT jint JNICALL OS_NATIVE(ImmCreateContext)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImmCreateContext\n")
- rc = (jint)ImmCreateContext();
- NATIVE_EXIT(env, that, "ImmCreateContext\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmDestroyContext
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmDestroyContext)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmDestroyContext\n")
- rc = (jboolean)ImmDestroyContext((HIMC)arg0);
- NATIVE_EXIT(env, that, "ImmDestroyContext\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmGetCompositionFontA
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmGetCompositionFontA)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- LOGFONTA _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmGetCompositionFontA\n")
- if (arg1) lparg1 = getLOGFONTAFields(env, arg1, &_arg1);
- rc = (jboolean)ImmGetCompositionFontA((HIMC)arg0, lparg1);
- if (arg1) setLOGFONTAFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "ImmGetCompositionFontA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmGetCompositionFontW
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmGetCompositionFontW)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- LOGFONTW _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmGetCompositionFontW\n")
- if (arg1) lparg1 = getLOGFONTWFields(env, arg1, &_arg1);
- rc = (jboolean)ImmGetCompositionFontW((HIMC)arg0, lparg1);
- if (arg1) setLOGFONTWFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "ImmGetCompositionFontW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmGetCompositionStringA
-JNIEXPORT jint JNICALL OS_NATIVE(ImmGetCompositionStringA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jint arg3)
-{
- jbyte *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ImmGetCompositionStringA\n")
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- rc = (jint)ImmGetCompositionStringA((HIMC)arg0, arg1, (LPSTR)lparg2, arg3);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "ImmGetCompositionStringA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmGetCompositionStringW
-JNIEXPORT jint JNICALL OS_NATIVE(ImmGetCompositionStringW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3)
-{
- jchar *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ImmGetCompositionStringW\n")
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- rc = (jint)ImmGetCompositionStringW((HIMC)arg0, arg1, (LPWSTR)lparg2, arg3);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "ImmGetCompositionStringW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmGetContext
-JNIEXPORT jint JNICALL OS_NATIVE(ImmGetContext)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImmGetContext\n")
- rc = (jint)ImmGetContext((HWND)arg0);
- NATIVE_EXIT(env, that, "ImmGetContext\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmGetConversionStatus
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmGetConversionStatus)
- (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jintArray arg2)
-{
- jint *lparg1=NULL;
- jint *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmGetConversionStatus\n")
- if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- rc = (jboolean)ImmGetConversionStatus((HIMC)arg0, lparg1, lparg2);
- if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "ImmGetConversionStatus\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmGetDefaultIMEWnd
-JNIEXPORT jint JNICALL OS_NATIVE(ImmGetDefaultIMEWnd)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ImmGetDefaultIMEWnd\n")
- rc = (jint)ImmGetDefaultIMEWnd((HWND)arg0);
- NATIVE_EXIT(env, that, "ImmGetDefaultIMEWnd\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmGetOpenStatus
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmGetOpenStatus)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmGetOpenStatus\n")
- rc = (jboolean)ImmGetOpenStatus((HIMC)arg0);
- NATIVE_EXIT(env, that, "ImmGetOpenStatus\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmReleaseContext
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmReleaseContext)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmReleaseContext\n")
- rc = (jboolean)ImmReleaseContext((HWND)arg0, (HIMC)arg1);
- NATIVE_EXIT(env, that, "ImmReleaseContext\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmSetCompositionFontA
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetCompositionFontA)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- LOGFONTA _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmSetCompositionFontA\n")
- if (arg1) lparg1 = getLOGFONTAFields(env, arg1, &_arg1);
- rc = (jboolean)ImmSetCompositionFontA((HIMC)arg0, lparg1);
- if (arg1) setLOGFONTAFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "ImmSetCompositionFontA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmSetCompositionFontW
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetCompositionFontW)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- LOGFONTW _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmSetCompositionFontW\n")
- if (arg1) lparg1 = getLOGFONTWFields(env, arg1, &_arg1);
- rc = (jboolean)ImmSetCompositionFontW((HIMC)arg0, lparg1);
- if (arg1) setLOGFONTWFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "ImmSetCompositionFontW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmSetCompositionWindow
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetCompositionWindow)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- COMPOSITIONFORM _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmSetCompositionWindow\n")
- if (arg1) lparg1 = getCOMPOSITIONFORMFields(env, arg1, &_arg1);
- rc = (jboolean)ImmSetCompositionWindow((HIMC)arg0, lparg1);
- if (arg1) setCOMPOSITIONFORMFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "ImmSetCompositionWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmSetConversionStatus
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetConversionStatus)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmSetConversionStatus\n")
- rc = (jboolean)ImmSetConversionStatus((HIMC)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "ImmSetConversionStatus\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ImmSetOpenStatus
-JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetOpenStatus)
- (JNIEnv *env, jclass that, jint arg0, jboolean arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ImmSetOpenStatus\n")
- rc = (jboolean)ImmSetOpenStatus((HIMC)arg0, arg1);
- NATIVE_EXIT(env, that, "ImmSetOpenStatus\n")
- return rc;
-}
-#endif
-
-#ifndef NO_InitCommonControls
-JNIEXPORT void JNICALL OS_NATIVE(InitCommonControls)
- (JNIEnv *env, jclass that)
-{
- NATIVE_ENTER(env, that, "InitCommonControls\n")
- InitCommonControls();
- NATIVE_EXIT(env, that, "InitCommonControls\n")
-}
-#endif
-
-#ifndef NO_InitCommonControlsEx
-JNIEXPORT jboolean JNICALL OS_NATIVE(InitCommonControlsEx)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- INITCOMMONCONTROLSEX _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "InitCommonControlsEx\n")
- if (arg0) lparg0 = getINITCOMMONCONTROLSEXFields(env, arg0, &_arg0);
- rc = (jboolean)InitCommonControlsEx(lparg0);
- if (arg0) setINITCOMMONCONTROLSEXFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "InitCommonControlsEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_InsertMenuA
-JNIEXPORT jboolean JNICALL OS_NATIVE(InsertMenuA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jbyteArray arg4)
-{
- jbyte *lparg4=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "InsertMenuA\n")
- if (arg4) lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL);
- rc = (jboolean)InsertMenuA((HMENU)arg0, arg1, arg2, arg3, lparg4);
- if (arg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0);
- NATIVE_EXIT(env, that, "InsertMenuA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_InsertMenuItemA
-JNIEXPORT jboolean JNICALL OS_NATIVE(InsertMenuItemA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3)
-{
- MENUITEMINFO _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "InsertMenuItemA\n")
- if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3);
- rc = (jboolean)InsertMenuItemA((HMENU)arg0, arg1, arg2, lparg3);
- if (arg3) setMENUITEMINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "InsertMenuItemA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_InsertMenuItemW
-JNIEXPORT jboolean JNICALL OS_NATIVE(InsertMenuItemW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3)
-{
- MENUITEMINFO _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "InsertMenuItemW\n")
- if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3);
- rc = (jboolean)InsertMenuItemW((HMENU)arg0, arg1, arg2, (LPMENUITEMINFOW)lparg3);
- if (arg3) setMENUITEMINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "InsertMenuItemW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_InsertMenuW
-JNIEXPORT jboolean JNICALL OS_NATIVE(InsertMenuW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jcharArray arg4)
-{
- jchar *lparg4=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "InsertMenuW\n")
- if (arg4) lparg4 = (*env)->GetCharArrayElements(env, arg4, NULL);
- rc = (jboolean)InsertMenuW((HMENU)arg0, arg1, arg2, arg3, lparg4);
- if (arg4) (*env)->ReleaseCharArrayElements(env, arg4, lparg4, 0);
- NATIVE_EXIT(env, that, "InsertMenuW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_InvalidateRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(InvalidateRect)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jboolean arg2)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "InvalidateRect\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)InvalidateRect((HWND)arg0, lparg1, arg2);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "InvalidateRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_InvalidateRgn
-JNIEXPORT jboolean JNICALL OS_NATIVE(InvalidateRgn)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "InvalidateRgn\n")
- rc = (jboolean)InvalidateRgn((HWND)arg0, (HRGN)arg1, arg2);
- NATIVE_EXIT(env, that, "InvalidateRgn\n")
- return rc;
-}
-#endif
-
-#ifndef NO_IsDBCSLeadByte
-JNIEXPORT jboolean JNICALL OS_NATIVE(IsDBCSLeadByte)
- (JNIEnv *env, jclass that, jbyte arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "IsDBCSLeadByte\n")
- rc = (jboolean)IsDBCSLeadByte(arg0);
- NATIVE_EXIT(env, that, "IsDBCSLeadByte\n")
- return rc;
-}
-#endif
-
-#ifndef NO_IsIconic
-JNIEXPORT jboolean JNICALL OS_NATIVE(IsIconic)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "IsIconic\n")
- rc = (jboolean)IsIconic((HWND)arg0);
- NATIVE_EXIT(env, that, "IsIconic\n")
- return rc;
-}
-#endif
-
-#ifndef NO_IsWindowEnabled
-JNIEXPORT jboolean JNICALL OS_NATIVE(IsWindowEnabled)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "IsWindowEnabled\n")
- rc = (jboolean)IsWindowEnabled((HWND)arg0);
- NATIVE_EXIT(env, that, "IsWindowEnabled\n")
- return rc;
-}
-#endif
-
-#ifndef NO_IsWindowVisible
-JNIEXPORT jboolean JNICALL OS_NATIVE(IsWindowVisible)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "IsWindowVisible\n")
- rc = (jboolean)IsWindowVisible((HWND)arg0);
- NATIVE_EXIT(env, that, "IsWindowVisible\n")
- return rc;
-}
-#endif
-
-#ifndef NO_IsZoomed
-JNIEXPORT jboolean JNICALL OS_NATIVE(IsZoomed)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "IsZoomed\n")
- rc = (jboolean)IsZoomed((HWND)arg0);
- NATIVE_EXIT(env, that, "IsZoomed\n")
- return rc;
-}
-#endif
-
-#ifndef NO_KillTimer
-JNIEXPORT jboolean JNICALL OS_NATIVE(KillTimer)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "KillTimer\n")
- rc = (jboolean)KillTimer((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "KillTimer\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LineTo
-JNIEXPORT jboolean JNICALL OS_NATIVE(LineTo)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "LineTo\n")
- rc = (jboolean)LineTo((HDC)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "LineTo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadBitmapA
-JNIEXPORT jint JNICALL OS_NATIVE(LoadBitmapA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "LoadBitmapA\n")
- rc = (jint)LoadBitmapA((HINSTANCE)arg0, (LPSTR)arg1);
- NATIVE_EXIT(env, that, "LoadBitmapA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadBitmapW
-JNIEXPORT jint JNICALL OS_NATIVE(LoadBitmapW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "LoadBitmapW\n")
- rc = (jint)LoadBitmapW((HINSTANCE)arg0, (LPWSTR)arg1);
- NATIVE_EXIT(env, that, "LoadBitmapW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadCursorA
-JNIEXPORT jint JNICALL OS_NATIVE(LoadCursorA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "LoadCursorA\n")
- rc = (jint)LoadCursorA((HINSTANCE)arg0, (LPSTR)arg1);
- NATIVE_EXIT(env, that, "LoadCursorA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadCursorW
-JNIEXPORT jint JNICALL OS_NATIVE(LoadCursorW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "LoadCursorW\n")
- rc = (jint)LoadCursorW((HINSTANCE)arg0, (LPWSTR)arg1);
- NATIVE_EXIT(env, that, "LoadCursorW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadIconA
-JNIEXPORT jint JNICALL OS_NATIVE(LoadIconA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "LoadIconA\n")
- rc = (jint)LoadIconA((HINSTANCE)arg0, (LPSTR)arg1);
- NATIVE_EXIT(env, that, "LoadIconA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadIconW
-JNIEXPORT jint JNICALL OS_NATIVE(LoadIconW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "LoadIconW\n")
- rc = (jint)LoadIconW((HINSTANCE)arg0, (LPWSTR)arg1);
- NATIVE_EXIT(env, that, "LoadIconW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadImageA
-JNIEXPORT jint JNICALL OS_NATIVE(LoadImageA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jint arg3, jint arg4, jint arg5)
-{
- jbyte *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "LoadImageA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jint)LoadImageA((HINSTANCE)arg0, (LPSTR)lparg1, arg2, arg3, arg4, arg5);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "LoadImageA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadImageW
-JNIEXPORT jint JNICALL OS_NATIVE(LoadImageW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jint arg3, jint arg4, jint arg5)
-{
- jchar *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "LoadImageW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jint)LoadImageW((HINSTANCE)arg0, (LPWSTR)lparg1, arg2, arg3, arg4, arg5);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "LoadImageW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadLibraryA
-JNIEXPORT jint JNICALL OS_NATIVE(LoadLibraryA)
- (JNIEnv *env, jclass that, jbyteArray arg0)
-{
- jbyte *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "LoadLibraryA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- rc = (jint)LoadLibraryA((LPSTR)lparg0);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "LoadLibraryA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_LoadLibraryW
-JNIEXPORT jint JNICALL OS_NATIVE(LoadLibraryW)
- (JNIEnv *env, jclass that, jcharArray arg0)
-{
- jchar *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "LoadLibraryW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- rc = (jint)LoadLibraryW((LPWSTR)lparg0);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "LoadLibraryW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MapVirtualKeyA
-JNIEXPORT jint JNICALL OS_NATIVE(MapVirtualKeyA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "MapVirtualKeyA\n")
- rc = (jint)MapVirtualKeyA(arg0, arg1);
- NATIVE_EXIT(env, that, "MapVirtualKeyA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MapVirtualKeyW
-JNIEXPORT jint JNICALL OS_NATIVE(MapVirtualKeyW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "MapVirtualKeyW\n")
- rc = (jint)MapVirtualKeyW(arg0, arg1);
- NATIVE_EXIT(env, that, "MapVirtualKeyW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MapWindowPoints__IILorg_eclipse_swt_internal_win32_POINT_2I
-JNIEXPORT jint JNICALL OS_NATIVE(MapWindowPoints__IILorg_eclipse_swt_internal_win32_POINT_2I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3)
-{
- POINT _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "MapWindowPoints__IILorg_eclipse_swt_internal_win32_POINT_2I\n")
- if (arg2) lparg2 = getPOINTFields(env, arg2, &_arg2);
- rc = (jint)MapWindowPoints((HWND)arg0, (HWND)arg1, (LPPOINT)lparg2, arg3);
- if (arg2) setPOINTFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "MapWindowPoints__IILorg_eclipse_swt_internal_win32_POINT_2I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MapWindowPoints__IILorg_eclipse_swt_internal_win32_RECT_2I
-JNIEXPORT jint JNICALL OS_NATIVE(MapWindowPoints__IILorg_eclipse_swt_internal_win32_RECT_2I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3)
-{
- RECT _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "MapWindowPoints__IILorg_eclipse_swt_internal_win32_RECT_2I\n")
- if (arg2) lparg2 = getRECTFields(env, arg2, &_arg2);
- rc = (jint)MapWindowPoints((HWND)arg0, (HWND)arg1, (LPPOINT)lparg2, arg3);
- if (arg2) setRECTFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "MapWindowPoints__IILorg_eclipse_swt_internal_win32_RECT_2I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MessageBeep
-JNIEXPORT jboolean JNICALL OS_NATIVE(MessageBeep)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "MessageBeep\n")
- rc = (jboolean)MessageBeep(arg0);
- NATIVE_EXIT(env, that, "MessageBeep\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MessageBoxA
-JNIEXPORT jint JNICALL OS_NATIVE(MessageBoxA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jbyteArray arg2, jint arg3)
-{
- jbyte *lparg1=NULL;
- jbyte *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "MessageBoxA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- rc = (jint)MessageBoxA((HWND)arg0, (LPSTR)lparg1, (LPSTR)lparg2, arg3);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "MessageBoxA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MessageBoxW
-JNIEXPORT jint JNICALL OS_NATIVE(MessageBoxW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jcharArray arg2, jint arg3)
-{
- jchar *lparg1=NULL;
- jchar *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "MessageBoxW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- rc = (jint)MessageBoxW((HWND)arg0, (LPWSTR)lparg1, (LPWSTR)lparg2, arg3);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "MessageBoxW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- DROPFILES _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I\n")
- if (arg1) lparg1 = getDROPFILESFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- GRADIENT_RECT _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I\n")
- if (arg1) lparg1 = getGRADIENT_RECTFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- LOGFONTA _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I\n")
- if (arg1) lparg1 = getLOGFONTAFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTW_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTW_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- LOGFONTW _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTW_2I\n")
- if (arg1) lparg1 = getLOGFONTWFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTW_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- MEASUREITEMSTRUCT _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2I\n")
- if (arg1) lparg1 = getMEASUREITEMSTRUCTFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- NMLVCUSTOMDRAW _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2I\n")
- if (arg1) lparg1 = getNMLVCUSTOMDRAWFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- NMTTDISPINFOA _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I\n")
- if (arg1) lparg1 = getNMTTDISPINFOAFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- NMTTDISPINFOW _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I\n")
- if (arg1) lparg1 = getNMTTDISPINFOWFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- NMTVCUSTOMDRAW _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2I\n")
- if (arg1) lparg1 = getNMTVCUSTOMDRAWFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_RECT_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_RECT_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- RECT _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_RECT_2I\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_RECT_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- TRIVERTEX _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I\n")
- if (arg1) lparg1 = getTRIVERTEXFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_WINDOWPOS_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_WINDOWPOS_2I)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2)
-{
- WINDOWPOS _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_WINDOWPOS_2I\n")
- if (arg1) lparg1 = getWINDOWPOSFields(env, arg1, &_arg1);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- if (arg1) setWINDOWPOSFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_WINDOWPOS_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__I_3BI
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3BI)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2)
-{
- jbyte *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__I_3BI\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, JNI_ABORT);
- NATIVE_EXIT(env, that, "MoveMemory__I_3BI\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__I_3CI
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3CI)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2)
-{
- jchar *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__I_3CI\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, JNI_ABORT);
- NATIVE_EXIT(env, that, "MoveMemory__I_3CI\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__I_3DI
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3DI)
- (JNIEnv *env, jclass that, jint arg0, jdoubleArray arg1, jint arg2)
-{
- jdouble *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__I_3DI\n")
- if (arg1) lparg1 = (*env)->GetDoubleArrayElements(env, arg1, NULL);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- if (arg1) (*env)->ReleaseDoubleArrayElements(env, arg1, lparg1, JNI_ABORT);
- NATIVE_EXIT(env, that, "MoveMemory__I_3DI\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__I_3FI
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3FI)
- (JNIEnv *env, jclass that, jint arg0, jfloatArray arg1, jint arg2)
-{
- jfloat *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__I_3FI\n")
- if (arg1) lparg1 = (*env)->GetFloatArrayElements(env, arg1, NULL);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- if (arg1) (*env)->ReleaseFloatArrayElements(env, arg1, lparg1, JNI_ABORT);
- NATIVE_EXIT(env, that, "MoveMemory__I_3FI\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__I_3II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3II)
- (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jint arg2)
-{
- jint *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__I_3II\n")
- if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, JNI_ABORT);
- NATIVE_EXIT(env, that, "MoveMemory__I_3II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__I_3SI
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3SI)
- (JNIEnv *env, jclass that, jint arg0, jshortArray arg1, jint arg2)
-{
- jshort *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__I_3SI\n")
- if (arg1) lparg1 = (*env)->GetShortArrayElements(env, arg1, NULL);
- MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2);
- if (arg1) (*env)->ReleaseShortArrayElements(env, arg1, lparg1, JNI_ABORT);
- NATIVE_EXIT(env, that, "MoveMemory__I_3SI\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2_3BI
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2_3BI)
- (JNIEnv *env, jclass that, jobject arg0, jbyteArray arg1, jint arg2)
-{
- BITMAPINFOHEADER _arg0, *lparg0=NULL;
- jbyte *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2_3BI\n")
- if (arg0) lparg0 = &_arg0;
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- MoveMemory((PVOID)lparg0, (CONST VOID *)lparg1, arg2);
- if (arg0) setBITMAPINFOHEADERFields(env, arg0, lparg0);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2_3BI\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_DRAWITEMSTRUCT_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_DRAWITEMSTRUCT_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- DRAWITEMSTRUCT _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_DRAWITEMSTRUCT_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setDRAWITEMSTRUCTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_DRAWITEMSTRUCT_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_HDITEM_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_HDITEM_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- HDITEM _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_HDITEM_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setHDITEMFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_HDITEM_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- HELPINFO _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setHELPINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- LOGFONTA _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setLOGFONTAFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTW_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTW_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- LOGFONTW _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTW_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setLOGFONTWFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTW_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- MEASUREITEMSTRUCT _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setMEASUREITEMSTRUCTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_MSG_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_MSG_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- MSG _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_MSG_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setMSGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_MSG_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMHDR_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMHDR_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMHDR _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHDR_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMHDRFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHDR_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMHEADER _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMHEADERFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMLISTVIEW_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMLISTVIEW_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMLISTVIEW _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMLISTVIEW_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMLISTVIEWFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMLISTVIEW_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMLVCUSTOMDRAW _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMLVCUSTOMDRAWFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMREBARCHEVRON _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMREBARCHEVRONFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTOOLBAR_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMTOOLBAR_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMTOOLBAR _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTOOLBAR_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMTOOLBARFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTOOLBAR_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMTTDISPINFOA _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMTTDISPINFOAFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMTTDISPINFOW _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMTTDISPINFOWFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- NMTVCUSTOMDRAW _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setNMTVCUSTOMDRAWFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_TVITEM_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_TVITEM_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- TVITEM _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_TVITEM_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setTVITEMFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_TVITEM_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_WINDOWPOS_2II
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_WINDOWPOS_2II)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2)
-{
- WINDOWPOS _arg0, *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_WINDOWPOS_2II\n")
- if (arg0) lparg0 = &_arg0;
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) setWINDOWPOSFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_WINDOWPOS_2II\n")
-}
-#endif
-
-#ifndef NO_MoveMemory___3BII
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3BII)
- (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1, jint arg2)
-{
- jbyte *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory___3BII\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "MoveMemory___3BII\n")
-}
-#endif
-
-#ifndef NO_MoveMemory___3BLorg_eclipse_swt_internal_win32_ACCEL_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3BLorg_eclipse_swt_internal_win32_ACCEL_2I)
- (JNIEnv *env, jclass that, jbyteArray arg0, jobject arg1, jint arg2)
-{
- jbyte *lparg0=NULL;
- ACCEL _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory___3BLorg_eclipse_swt_internal_win32_ACCEL_2I\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = getACCELFields(env, arg1, &_arg1);
- MoveMemory((PVOID)lparg0, (CONST VOID *)lparg1, arg2);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "MoveMemory___3BLorg_eclipse_swt_internal_win32_ACCEL_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory___3BLorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2I
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3BLorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2I)
- (JNIEnv *env, jclass that, jbyteArray arg0, jobject arg1, jint arg2)
-{
- jbyte *lparg0=NULL;
- BITMAPINFOHEADER _arg1, *lparg1=NULL;
- NATIVE_ENTER(env, that, "MoveMemory___3BLorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2I\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- if (arg1) lparg1 = getBITMAPINFOHEADERFields(env, arg1, &_arg1);
- MoveMemory((PVOID)lparg0, (CONST VOID *)lparg1, arg2);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "MoveMemory___3BLorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2I\n")
-}
-#endif
-
-#ifndef NO_MoveMemory___3CII
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3CII)
- (JNIEnv *env, jclass that, jcharArray arg0, jint arg1, jint arg2)
-{
- jchar *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory___3CII\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "MoveMemory___3CII\n")
-}
-#endif
-
-#ifndef NO_MoveMemory___3DII
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3DII)
- (JNIEnv *env, jclass that, jdoubleArray arg0, jint arg1, jint arg2)
-{
- jdouble *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory___3DII\n")
- if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL);
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "MoveMemory___3DII\n")
-}
-#endif
-
-#ifndef NO_MoveMemory___3FII
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3FII)
- (JNIEnv *env, jclass that, jfloatArray arg0, jint arg1, jint arg2)
-{
- jfloat *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory___3FII\n")
- if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL);
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "MoveMemory___3FII\n")
-}
-#endif
-
-#ifndef NO_MoveMemory___3III
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3III)
- (JNIEnv *env, jclass that, jintArray arg0, jint arg1, jint arg2)
-{
- jint *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory___3III\n")
- if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "MoveMemory___3III\n")
-}
-#endif
-
-#ifndef NO_MoveMemory___3SII
-JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3SII)
- (JNIEnv *env, jclass that, jshortArray arg0, jint arg1, jint arg2)
-{
- jshort *lparg0=NULL;
- NATIVE_ENTER(env, that, "MoveMemory___3SII\n")
- if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL);
- MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2);
- if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "MoveMemory___3SII\n")
-}
-#endif
-
-#ifndef NO_MoveToEx
-JNIEXPORT jboolean JNICALL OS_NATIVE(MoveToEx)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "MoveToEx\n")
- rc = (jboolean)MoveToEx((HDC)arg0, arg1, arg2, (LPPOINT)arg3);
- NATIVE_EXIT(env, that, "MoveToEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MsgWaitForMultipleObjectsEx
-JNIEXPORT jint JNICALL OS_NATIVE(MsgWaitForMultipleObjectsEx)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jint rc;
- NATIVE_ENTER(env, that, "MsgWaitForMultipleObjectsEx\n")
- rc = (jint)MsgWaitForMultipleObjectsEx((DWORD)arg0, (LPHANDLE)arg1, (DWORD)arg2, (DWORD)arg3, (DWORD)arg4);
- NATIVE_EXIT(env, that, "MsgWaitForMultipleObjectsEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MultiByteToWideChar__IIII_3CI
-JNIEXPORT jint JNICALL OS_NATIVE(MultiByteToWideChar__IIII_3CI)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jcharArray arg4, jint arg5)
-{
- jchar *lparg4=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "MultiByteToWideChar__IIII_3CI\n")
- if (arg4) lparg4 = (*env)->GetCharArrayElements(env, arg4, NULL);
- rc = (jint)MultiByteToWideChar(arg0, arg1, (LPCSTR)arg2, arg3, (LPWSTR)lparg4, arg5);
- if (arg4) (*env)->ReleaseCharArrayElements(env, arg4, lparg4, 0);
- NATIVE_EXIT(env, that, "MultiByteToWideChar__IIII_3CI\n")
- return rc;
-}
-#endif
-
-#ifndef NO_MultiByteToWideChar__II_3BI_3CI
-JNIEXPORT jint JNICALL OS_NATIVE(MultiByteToWideChar__II_3BI_3CI)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jint arg3, jcharArray arg4, jint arg5)
-{
- jbyte *lparg2=NULL;
- jchar *lparg4=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "MultiByteToWideChar__II_3BI_3CI\n")
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- if (arg4) lparg4 = (*env)->GetCharArrayElements(env, arg4, NULL);
- rc = (jint)MultiByteToWideChar(arg0, arg1, (LPCSTR)lparg2, arg3, (LPWSTR)lparg4, arg5);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- if (arg4) (*env)->ReleaseCharArrayElements(env, arg4, lparg4, 0);
- NATIVE_EXIT(env, that, "MultiByteToWideChar__II_3BI_3CI\n")
- return rc;
-}
-#endif
-
-#ifndef NO_OleInitialize
-JNIEXPORT jint JNICALL OS_NATIVE(OleInitialize)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "OleInitialize\n")
- rc = (jint)OleInitialize((LPVOID)arg0);
- NATIVE_EXIT(env, that, "OleInitialize\n")
- return rc;
-}
-#endif
-
-#ifndef NO_OleUninitialize
-JNIEXPORT void JNICALL OS_NATIVE(OleUninitialize)
- (JNIEnv *env, jclass that)
-{
- NATIVE_ENTER(env, that, "OleUninitialize\n")
- OleUninitialize();
- NATIVE_EXIT(env, that, "OleUninitialize\n")
-}
-#endif
-
-#ifndef NO_OpenClipboard
-JNIEXPORT jboolean JNICALL OS_NATIVE(OpenClipboard)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "OpenClipboard\n")
- rc = (jboolean)OpenClipboard((HWND)arg0);
- NATIVE_EXIT(env, that, "OpenClipboard\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PatBlt
-JNIEXPORT jboolean JNICALL OS_NATIVE(PatBlt)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "PatBlt\n")
- rc = (jboolean)PatBlt((HDC)arg0, arg1, arg2, arg3, arg4, arg5);
- NATIVE_EXIT(env, that, "PatBlt\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PeekMessageA
-JNIEXPORT jboolean JNICALL OS_NATIVE(PeekMessageA)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- MSG _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "PeekMessageA\n")
- if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0);
- rc = (jboolean)PeekMessageA(lparg0, (HWND)arg1, arg2, arg3, arg4);
- if (arg0) setMSGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "PeekMessageA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PeekMessageW
-JNIEXPORT jboolean JNICALL OS_NATIVE(PeekMessageW)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- MSG _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "PeekMessageW\n")
- if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0);
- rc = (jboolean)PeekMessageW(lparg0, (HWND)arg1, arg2, arg3, arg4);
- if (arg0) setMSGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "PeekMessageW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_Pie
-JNIEXPORT jboolean JNICALL OS_NATIVE(Pie)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "Pie\n")
- rc = (jboolean)Pie((HDC)arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
- NATIVE_EXIT(env, that, "Pie\n")
- return rc;
-}
-#endif
-
-#ifndef NO_Polygon
-JNIEXPORT jboolean JNICALL OS_NATIVE(Polygon)
- (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jint arg2)
-{
- jint *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "Polygon\n")
- if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
- rc = (jboolean)Polygon((HDC)arg0, (CONST POINT *)lparg1, arg2);
- if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "Polygon\n")
- return rc;
-}
-#endif
-
-#ifndef NO_Polyline
-JNIEXPORT jboolean JNICALL OS_NATIVE(Polyline)
- (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jint arg2)
-{
- jint *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "Polyline\n")
- if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
- rc = (jboolean)Polyline((HDC)arg0, (CONST POINT *)lparg1, arg2);
- if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "Polyline\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PostMessageA
-JNIEXPORT jboolean JNICALL OS_NATIVE(PostMessageA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "PostMessageA\n")
- rc = (jboolean)PostMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "PostMessageA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PostMessageW
-JNIEXPORT jboolean JNICALL OS_NATIVE(PostMessageW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "PostMessageW\n")
- rc = (jboolean)PostMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "PostMessageW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PostThreadMessageA
-JNIEXPORT jboolean JNICALL OS_NATIVE(PostThreadMessageA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "PostThreadMessageA\n")
- rc = (jboolean)PostThreadMessageA(arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "PostThreadMessageA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PostThreadMessageW
-JNIEXPORT jboolean JNICALL OS_NATIVE(PostThreadMessageW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "PostThreadMessageW\n")
- rc = (jboolean)PostThreadMessageW(arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "PostThreadMessageW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PrintDlgA
-JNIEXPORT jboolean JNICALL OS_NATIVE(PrintDlgA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- PRINTDLG _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "PrintDlgA\n")
- if (arg0) lparg0 = getPRINTDLGFields(env, arg0, &_arg0);
- rc = (jboolean)PrintDlgA(lparg0);
- if (arg0) setPRINTDLGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "PrintDlgA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PrintDlgW
-JNIEXPORT jboolean JNICALL OS_NATIVE(PrintDlgW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- PRINTDLG _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "PrintDlgW\n")
- if (arg0) lparg0 = getPRINTDLGFields(env, arg0, &_arg0);
- rc = (jboolean)PrintDlgW((LPPRINTDLGW)lparg0);
- if (arg0) setPRINTDLGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "PrintDlgW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PtInRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(PtInRect)
- (JNIEnv *env, jclass that, jobject arg0, jobject arg1)
-{
- RECT _arg0, *lparg0=NULL;
- POINT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "PtInRect\n")
- if (arg0) lparg0 = getRECTFields(env, arg0, &_arg0);
- if (arg1) lparg1 = getPOINTFields(env, arg1, &_arg1);
- rc = (jboolean)PtInRect(lparg0, *lparg1);
- if (arg0) setRECTFields(env, arg0, lparg0);
- if (arg1) setPOINTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "PtInRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_PtInRegion
-JNIEXPORT jboolean JNICALL OS_NATIVE(PtInRegion)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "PtInRegion\n")
- rc = (jboolean)PtInRegion((HRGN)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "PtInRegion\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RealizePalette
-JNIEXPORT jint JNICALL OS_NATIVE(RealizePalette)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "RealizePalette\n")
- rc = (jint)RealizePalette((HDC)arg0);
- NATIVE_EXIT(env, that, "RealizePalette\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RectInRegion
-JNIEXPORT jboolean JNICALL OS_NATIVE(RectInRegion)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "RectInRegion\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)RectInRegion((HRGN)arg0, lparg1);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "RectInRegion\n")
- return rc;
-}
-#endif
-
-#ifndef NO_Rectangle
-JNIEXPORT jboolean JNICALL OS_NATIVE(Rectangle)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "Rectangle\n")
- rc = (jboolean)Rectangle((HDC)arg0, arg1, arg2, arg3, arg4);
- NATIVE_EXIT(env, that, "Rectangle\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RedrawWindow
-JNIEXPORT jboolean JNICALL OS_NATIVE(RedrawWindow)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jint arg3)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "RedrawWindow\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)RedrawWindow((HWND)arg0, lparg1, (HRGN)arg2, arg3);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "RedrawWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegCloseKey
-JNIEXPORT jint JNICALL OS_NATIVE(RegCloseKey)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "RegCloseKey\n")
- rc = (jint)RegCloseKey((HKEY)arg0);
- NATIVE_EXIT(env, that, "RegCloseKey\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegEnumKeyExA
-JNIEXPORT jint JNICALL OS_NATIVE(RegEnumKeyExA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jintArray arg3, jintArray arg4, jbyteArray arg5, jintArray arg6, jobject arg7)
-{
- jbyte *lparg2=NULL;
- jint *lparg3=NULL;
- jint *lparg4=NULL;
- jbyte *lparg5=NULL;
- jint *lparg6=NULL;
- FILETIME _arg7, *lparg7=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegEnumKeyExA\n")
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
- if (arg5) lparg5 = (*env)->GetByteArrayElements(env, arg5, NULL);
- if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL);
- if (arg7) lparg7 = getFILETIMEFields(env, arg7, &_arg7);
- rc = (jint)RegEnumKeyExA((HKEY)arg0, arg1, (LPSTR)lparg2, lparg3, lparg4, (LPSTR)lparg5, lparg6, lparg7);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
- if (arg5) (*env)->ReleaseByteArrayElements(env, arg5, lparg5, 0);
- if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0);
- if (arg7) setFILETIMEFields(env, arg7, lparg7);
- NATIVE_EXIT(env, that, "RegEnumKeyExA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegEnumKeyExW
-JNIEXPORT jint JNICALL OS_NATIVE(RegEnumKeyExW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jintArray arg3, jintArray arg4, jcharArray arg5, jintArray arg6, jobject arg7)
-{
- jchar *lparg2=NULL;
- jint *lparg3=NULL;
- jint *lparg4=NULL;
- jchar *lparg5=NULL;
- jint *lparg6=NULL;
- FILETIME _arg7, *lparg7=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegEnumKeyExW\n")
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
- if (arg5) lparg5 = (*env)->GetCharArrayElements(env, arg5, NULL);
- if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL);
- if (arg7) lparg7 = getFILETIMEFields(env, arg7, &_arg7);
- rc = (jint)RegEnumKeyExW((HKEY)arg0, arg1, (LPWSTR)lparg2, lparg3, lparg4, (LPWSTR)lparg5, lparg6, lparg7);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
- if (arg5) (*env)->ReleaseCharArrayElements(env, arg5, lparg5, 0);
- if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0);
- if (arg7) setFILETIMEFields(env, arg7, lparg7);
- NATIVE_EXIT(env, that, "RegEnumKeyExW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegOpenKeyExA
-JNIEXPORT jint JNICALL OS_NATIVE(RegOpenKeyExA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jint arg3, jintArray arg4)
-{
- jbyte *lparg1=NULL;
- jint *lparg4=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegOpenKeyExA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
- rc = (jint)RegOpenKeyExA((HKEY)arg0, (LPSTR)lparg1, arg2, arg3, (PHKEY)lparg4);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
- NATIVE_EXIT(env, that, "RegOpenKeyExA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegOpenKeyExW
-JNIEXPORT jint JNICALL OS_NATIVE(RegOpenKeyExW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jint arg3, jintArray arg4)
-{
- jchar *lparg1=NULL;
- jint *lparg4=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegOpenKeyExW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
- rc = (jint)RegOpenKeyExW((HKEY)arg0, (LPWSTR)lparg1, arg2, arg3, (PHKEY)lparg4);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
- NATIVE_EXIT(env, that, "RegOpenKeyExW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegQueryInfoKeyA
-JNIEXPORT jint JNICALL OS_NATIVE(RegQueryInfoKeyA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3, jintArray arg4, jintArray arg5, jintArray arg6, jintArray arg7, jintArray arg8, jintArray arg9, jintArray arg10, jint arg11)
-{
- jint *lparg2=NULL;
- jint *lparg4=NULL;
- jint *lparg5=NULL;
- jint *lparg6=NULL;
- jint *lparg7=NULL;
- jint *lparg8=NULL;
- jint *lparg9=NULL;
- jint *lparg10=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegQueryInfoKeyA\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
- if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL);
- if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL);
- if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL);
- if (arg8) lparg8 = (*env)->GetIntArrayElements(env, arg8, NULL);
- if (arg9) lparg9 = (*env)->GetIntArrayElements(env, arg9, NULL);
- if (arg10) lparg10 = (*env)->GetIntArrayElements(env, arg10, NULL);
- rc = (jint)RegQueryInfoKeyA((HKEY)arg0, (LPSTR)arg1, lparg2, (LPDWORD)arg3, lparg4, lparg5, lparg6, lparg7, lparg8, lparg9, lparg10, (PFILETIME)arg11);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
- if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0);
- if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0);
- if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0);
- if (arg8) (*env)->ReleaseIntArrayElements(env, arg8, lparg8, 0);
- if (arg9) (*env)->ReleaseIntArrayElements(env, arg9, lparg9, 0);
- if (arg10) (*env)->ReleaseIntArrayElements(env, arg10, lparg10, 0);
- NATIVE_EXIT(env, that, "RegQueryInfoKeyA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegQueryInfoKeyW
-JNIEXPORT jint JNICALL OS_NATIVE(RegQueryInfoKeyW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3, jintArray arg4, jintArray arg5, jintArray arg6, jintArray arg7, jintArray arg8, jintArray arg9, jintArray arg10, jint arg11)
-{
- jint *lparg2=NULL;
- jint *lparg4=NULL;
- jint *lparg5=NULL;
- jint *lparg6=NULL;
- jint *lparg7=NULL;
- jint *lparg8=NULL;
- jint *lparg9=NULL;
- jint *lparg10=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegQueryInfoKeyW\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL);
- if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL);
- if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL);
- if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL);
- if (arg8) lparg8 = (*env)->GetIntArrayElements(env, arg8, NULL);
- if (arg9) lparg9 = (*env)->GetIntArrayElements(env, arg9, NULL);
- if (arg10) lparg10 = (*env)->GetIntArrayElements(env, arg10, NULL);
- rc = (jint)RegQueryInfoKeyW((HKEY)arg0, (LPWSTR)arg1, lparg2, (LPDWORD)arg3, lparg4, lparg5, lparg6, lparg7, lparg8, lparg9, lparg10, (PFILETIME)arg11);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0);
- if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0);
- if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0);
- if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0);
- if (arg8) (*env)->ReleaseIntArrayElements(env, arg8, lparg8, 0);
- if (arg9) (*env)->ReleaseIntArrayElements(env, arg9, lparg9, 0);
- if (arg10) (*env)->ReleaseIntArrayElements(env, arg10, lparg10, 0);
- NATIVE_EXIT(env, that, "RegQueryInfoKeyW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegQueryValueExA
-JNIEXPORT jint JNICALL OS_NATIVE(RegQueryValueExA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jintArray arg3, jbyteArray arg4, jintArray arg5)
-{
- jbyte *lparg1=NULL;
- jint *lparg3=NULL;
- jbyte *lparg4=NULL;
- jint *lparg5=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegQueryValueExA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- if (arg4) lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL);
- if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL);
- rc = (jint)RegQueryValueExA((HKEY)arg0, (LPSTR)lparg1, (LPDWORD)arg2, lparg3, (LPBYTE)lparg4, lparg5);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- if (arg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0);
- if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0);
- NATIVE_EXIT(env, that, "RegQueryValueExA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegQueryValueExW
-JNIEXPORT jint JNICALL OS_NATIVE(RegQueryValueExW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jintArray arg3, jcharArray arg4, jintArray arg5)
-{
- jchar *lparg1=NULL;
- jint *lparg3=NULL;
- jchar *lparg4=NULL;
- jint *lparg5=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegQueryValueExW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- if (arg4) lparg4 = (*env)->GetCharArrayElements(env, arg4, NULL);
- if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL);
- rc = (jint)RegQueryValueExW((HKEY)arg0, (LPWSTR)lparg1, (LPDWORD)arg2, lparg3, (LPBYTE)lparg4, lparg5);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- if (arg4) (*env)->ReleaseCharArrayElements(env, arg4, lparg4, 0);
- if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0);
- NATIVE_EXIT(env, that, "RegQueryValueExW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegisterClassA
-JNIEXPORT jint JNICALL OS_NATIVE(RegisterClassA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- WNDCLASS _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegisterClassA\n")
- if (arg0) lparg0 = getWNDCLASSFields(env, arg0, &_arg0);
- rc = (jint)RegisterClassA(lparg0);
- if (arg0) setWNDCLASSFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "RegisterClassA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegisterClassW
-JNIEXPORT jint JNICALL OS_NATIVE(RegisterClassW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- WNDCLASS _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegisterClassW\n")
- if (arg0) lparg0 = getWNDCLASSFields(env, arg0, &_arg0);
- rc = (jint)RegisterClassW((LPWNDCLASSW)lparg0);
- if (arg0) setWNDCLASSFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "RegisterClassW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegisterClipboardFormatA
-JNIEXPORT jint JNICALL OS_NATIVE(RegisterClipboardFormatA)
- (JNIEnv *env, jclass that, jbyteArray arg0)
-{
- jbyte *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegisterClipboardFormatA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- rc = (jint)RegisterClipboardFormatA((LPTSTR)lparg0);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "RegisterClipboardFormatA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RegisterClipboardFormatW
-JNIEXPORT jint JNICALL OS_NATIVE(RegisterClipboardFormatW)
- (JNIEnv *env, jclass that, jcharArray arg0)
-{
- jchar *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "RegisterClipboardFormatW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- rc = (jint)RegisterClipboardFormatW((LPWSTR)lparg0);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "RegisterClipboardFormatW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ReleaseCapture
-JNIEXPORT jboolean JNICALL OS_NATIVE(ReleaseCapture)
- (JNIEnv *env, jclass that)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ReleaseCapture\n")
- rc = (jboolean)ReleaseCapture();
- NATIVE_EXIT(env, that, "ReleaseCapture\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ReleaseDC
-JNIEXPORT jint JNICALL OS_NATIVE(ReleaseDC)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "ReleaseDC\n")
- rc = (jint)ReleaseDC((HWND)arg0, (HDC)arg1);
- NATIVE_EXIT(env, that, "ReleaseDC\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RemoveMenu
-JNIEXPORT jboolean JNICALL OS_NATIVE(RemoveMenu)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "RemoveMenu\n")
- rc = (jboolean)RemoveMenu((HMENU)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "RemoveMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_RoundRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(RoundRect)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "RoundRect\n")
- rc = (jboolean)RoundRect((HDC)arg0, arg1, arg2, arg3, arg4, arg5, arg6);
- NATIVE_EXIT(env, that, "RoundRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHBrowseForFolderA
-JNIEXPORT jint JNICALL OS_NATIVE(SHBrowseForFolderA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- BROWSEINFO _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SHBrowseForFolderA\n")
- if (arg0) lparg0 = getBROWSEINFOFields(env, arg0, &_arg0);
- rc = (jint)SHBrowseForFolderA(lparg0);
- if (arg0) setBROWSEINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "SHBrowseForFolderA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHBrowseForFolderW
-JNIEXPORT jint JNICALL OS_NATIVE(SHBrowseForFolderW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- BROWSEINFO _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SHBrowseForFolderW\n")
- if (arg0) lparg0 = getBROWSEINFOFields(env, arg0, &_arg0);
- rc = (jint)SHBrowseForFolderW((LPBROWSEINFOW)lparg0);
- if (arg0) setBROWSEINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "SHBrowseForFolderW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHCreateMenuBar
-JNIEXPORT jboolean JNICALL OS_NATIVE(SHCreateMenuBar)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- SHMENUBARINFO _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SHCreateMenuBar\n")
- if (arg0) lparg0 = getSHMENUBARINFOFields(env, arg0, &_arg0);
- rc = (jboolean)SHCreateMenuBar((PSHMENUBARINFO)lparg0);
- if (arg0) setSHMENUBARINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "SHCreateMenuBar\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHGetMalloc
-JNIEXPORT jint JNICALL OS_NATIVE(SHGetMalloc)
- (JNIEnv *env, jclass that, jintArray arg0)
-{
- jint *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SHGetMalloc\n")
- if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL);
- rc = (jint)SHGetMalloc((LPMALLOC *)lparg0);
- if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "SHGetMalloc\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHGetPathFromIDListA
-JNIEXPORT jboolean JNICALL OS_NATIVE(SHGetPathFromIDListA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1)
-{
- jbyte *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SHGetPathFromIDListA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jboolean)SHGetPathFromIDListA((LPCITEMIDLIST)arg0, (LPSTR)lparg1);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "SHGetPathFromIDListA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHGetPathFromIDListW
-JNIEXPORT jboolean JNICALL OS_NATIVE(SHGetPathFromIDListW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1)
-{
- jchar *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SHGetPathFromIDListW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jboolean)SHGetPathFromIDListW((LPCITEMIDLIST)arg0, (LPWSTR)lparg1);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "SHGetPathFromIDListW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHHandleWMSettingChange
-JNIEXPORT jboolean JNICALL OS_NATIVE(SHHandleWMSettingChange)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- SHACTIVATEINFO _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SHHandleWMSettingChange\n")
- if (arg3) lparg3 = getSHACTIVATEINFOFields(env, arg3, &_arg3);
- rc = (jboolean)SHHandleWMSettingChange((HWND)arg0, arg1, arg2, lparg3);
- if (arg3) setSHACTIVATEINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SHHandleWMSettingChange\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHRecognizeGesture
-JNIEXPORT jint JNICALL OS_NATIVE(SHRecognizeGesture)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- SHRGINFO _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SHRecognizeGesture\n")
- if (arg0) lparg0 = getSHRGINFOFields(env, arg0, &_arg0);
- rc = (jint)SHRecognizeGesture(lparg0);
- if (arg0) setSHRGINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "SHRecognizeGesture\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHSendBackToFocusWindow
-JNIEXPORT void JNICALL OS_NATIVE(SHSendBackToFocusWindow)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- NATIVE_ENTER(env, that, "SHSendBackToFocusWindow\n")
- SHSendBackToFocusWindow(arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "SHSendBackToFocusWindow\n")
-}
-#endif
-
-#ifndef NO_SHSetAppKeyWndAssoc
-JNIEXPORT jboolean JNICALL OS_NATIVE(SHSetAppKeyWndAssoc)
- (JNIEnv *env, jclass that, jbyte arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SHSetAppKeyWndAssoc\n")
- rc = (jboolean)SHSetAppKeyWndAssoc((BYTE)arg0, (HWND)arg1);
- NATIVE_EXIT(env, that, "SHSetAppKeyWndAssoc\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SHSipPreference
-JNIEXPORT jboolean JNICALL OS_NATIVE(SHSipPreference)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SHSipPreference\n")
- rc = (jboolean)SHSipPreference((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "SHSipPreference\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ScreenToClient
-JNIEXPORT jboolean JNICALL OS_NATIVE(ScreenToClient)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- POINT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ScreenToClient\n")
- if (arg1) lparg1 = getPOINTFields(env, arg1, &_arg1);
- rc = (jboolean)ScreenToClient((HWND)arg0, lparg1);
- if (arg1) setPOINTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "ScreenToClient\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ScrollWindowEx
-JNIEXPORT jint JNICALL OS_NATIVE(ScrollWindowEx)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3, jobject arg4, jint arg5, jobject arg6, jint arg7)
-{
- RECT _arg3, *lparg3=NULL;
- RECT _arg4, *lparg4=NULL;
- RECT _arg6, *lparg6=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ScrollWindowEx\n")
- if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3);
- if (arg4) lparg4 = getRECTFields(env, arg4, &_arg4);
- if (arg6) lparg6 = getRECTFields(env, arg6, &_arg6);
- rc = (jint)ScrollWindowEx((HWND)arg0, arg1, arg2, lparg3, lparg4, (HRGN)arg5, lparg6, arg7);
- if (arg3) setRECTFields(env, arg3, lparg3);
- if (arg4) setRECTFields(env, arg4, lparg4);
- if (arg6) setRECTFields(env, arg6, lparg6);
- NATIVE_EXIT(env, that, "ScrollWindowEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SelectClipRgn
-JNIEXPORT jint JNICALL OS_NATIVE(SelectClipRgn)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SelectClipRgn\n")
- rc = (jint)SelectClipRgn((HDC)arg0, (HRGN)arg1);
- NATIVE_EXIT(env, that, "SelectClipRgn\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SelectObject
-JNIEXPORT jint JNICALL OS_NATIVE(SelectObject)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SelectObject\n")
- rc = (jint)SelectObject((HDC)arg0, (HGDIOBJ)arg1);
- NATIVE_EXIT(env, that, "SelectObject\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SelectPalette
-JNIEXPORT jint JNICALL OS_NATIVE(SelectPalette)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SelectPalette\n")
- rc = (jint)SelectPalette((HDC)arg0, (HPALETTE)arg1, arg2);
- NATIVE_EXIT(env, that, "SelectPalette\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIII
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIII)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIII\n")
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIII\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- LVCOLUMN _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2\n")
- if (arg3) lparg3 = getLVCOLUMNFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setLVCOLUMNFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- LVHITTESTINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2\n")
- if (arg3) lparg3 = getLVHITTESTINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setLVHITTESTINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- LVITEM _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2\n")
- if (arg3) lparg3 = getLVITEMFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setLVITEMFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- REBARBANDINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2\n")
- if (arg3) lparg3 = getREBARBANDINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setREBARBANDINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- RECT _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2\n")
- if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setRECTFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TBBUTTONINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2\n")
- if (arg3) lparg3 = getTBBUTTONINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTBBUTTONINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TBBUTTON _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2\n")
- if (arg3) lparg3 = getTBBUTTONFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTBBUTTONFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TCITEM _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2\n")
- if (arg3) lparg3 = getTCITEMFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTCITEMFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TOOLINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2\n")
- if (arg3) lparg3 = getTOOLINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTOOLINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TVHITTESTINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2\n")
- if (arg3) lparg3 = getTVHITTESTINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTVHITTESTINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TVINSERTSTRUCT _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2\n")
- if (arg3) lparg3 = getTVINSERTSTRUCTFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTVINSERTSTRUCTFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TVITEM _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2\n")
- if (arg3) lparg3 = getTVITEMFields(env, arg3, &_arg3);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTVITEMFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__III_3B
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__III_3B)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3)
-{
- jbyte *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__III_3B\n")
- if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SendMessageA__III_3B\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__III_3I
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__III_3I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
- jint *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__III_3I\n")
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SendMessageA__III_3I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__III_3S
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__III_3S)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jshortArray arg3)
-{
- jshort *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__III_3S\n")
- if (arg3) lparg3 = (*env)->GetShortArrayElements(env, arg3, NULL);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) (*env)->ReleaseShortArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SendMessageA__III_3S\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__II_3II
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__II_3II)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3)
-{
- jint *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__II_3II\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)arg3);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "SendMessageA__II_3II\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageA__II_3I_3I
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__II_3I_3I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jintArray arg3)
-{
- jint *lparg2=NULL;
- jint *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageA__II_3I_3I\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)lparg3);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SendMessageA__II_3I_3I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIII
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIII)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIII\n")
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIII\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- LVCOLUMN _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2\n")
- if (arg3) lparg3 = getLVCOLUMNFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setLVCOLUMNFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- LVHITTESTINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2\n")
- if (arg3) lparg3 = getLVHITTESTINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setLVHITTESTINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_LVITEM_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_LVITEM_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- LVITEM _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVITEM_2\n")
- if (arg3) lparg3 = getLVITEMFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setLVITEMFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVITEM_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- REBARBANDINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2\n")
- if (arg3) lparg3 = getREBARBANDINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setREBARBANDINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- RECT _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2\n")
- if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setRECTFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TBBUTTONINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2\n")
- if (arg3) lparg3 = getTBBUTTONINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTBBUTTONINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TBBUTTON _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2\n")
- if (arg3) lparg3 = getTBBUTTONFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTBBUTTONFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TCITEM _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2\n")
- if (arg3) lparg3 = getTCITEMFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTCITEMFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TOOLINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2\n")
- if (arg3) lparg3 = getTOOLINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTOOLINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TVHITTESTINFO _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2\n")
- if (arg3) lparg3 = getTVHITTESTINFOFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTVHITTESTINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TVINSERTSTRUCT _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2\n")
- if (arg3) lparg3 = getTVINSERTSTRUCTFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTVINSERTSTRUCTFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TVITEM_2
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TVITEM_2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
-{
- TVITEM _arg3, *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVITEM_2\n")
- if (arg3) lparg3 = getTVITEMFields(env, arg3, &_arg3);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) setTVITEMFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVITEM_2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__III_3C
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__III_3C)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jcharArray arg3)
-{
- jchar *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__III_3C\n")
- if (arg3) lparg3 = (*env)->GetCharArrayElements(env, arg3, NULL);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) (*env)->ReleaseCharArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SendMessageW__III_3C\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__III_3I
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__III_3I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3)
-{
- jint *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__III_3I\n")
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SendMessageW__III_3I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__III_3S
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__III_3S)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jshortArray arg3)
-{
- jshort *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__III_3S\n")
- if (arg3) lparg3 = (*env)->GetShortArrayElements(env, arg3, NULL);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
- if (arg3) (*env)->ReleaseShortArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SendMessageW__III_3S\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__II_3II
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__II_3II)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3)
-{
- jint *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__II_3II\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)arg3);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "SendMessageW__II_3II\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetActiveWindow
-JNIEXPORT jint JNICALL OS_NATIVE(SetActiveWindow)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetActiveWindow\n")
- rc = (jint)SetActiveWindow((HWND)arg0);
- NATIVE_EXIT(env, that, "SetActiveWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetBkColor
-JNIEXPORT jint JNICALL OS_NATIVE(SetBkColor)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetBkColor\n")
- rc = (jint)SetBkColor((HDC)arg0, (COLORREF)arg1);
- NATIVE_EXIT(env, that, "SetBkColor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetBkMode
-JNIEXPORT jint JNICALL OS_NATIVE(SetBkMode)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetBkMode\n")
- rc = (jint)SetBkMode((HDC)arg0, arg1);
- NATIVE_EXIT(env, that, "SetBkMode\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetCapture
-JNIEXPORT jint JNICALL OS_NATIVE(SetCapture)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetCapture\n")
- rc = (jint)SetCapture((HWND)arg0);
- NATIVE_EXIT(env, that, "SetCapture\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetCaretPos
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetCaretPos)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SetCaretPos\n")
- rc = (jboolean)SetCaretPos(arg0, arg1);
- NATIVE_EXIT(env, that, "SetCaretPos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetClipboardData
-JNIEXPORT jint JNICALL OS_NATIVE(SetClipboardData)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetClipboardData\n")
- rc = (jint)SetClipboardData(arg0, (HANDLE)arg1);
- NATIVE_EXIT(env, that, "SetClipboardData\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetCursor
-JNIEXPORT jint JNICALL OS_NATIVE(SetCursor)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetCursor\n")
- rc = (jint)SetCursor((HCURSOR)arg0);
- NATIVE_EXIT(env, that, "SetCursor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetCursorPos
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetCursorPos)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SetCursorPos\n")
- rc = (jboolean)SetCursorPos(arg0, arg1);
- NATIVE_EXIT(env, that, "SetCursorPos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetDIBColorTable
-JNIEXPORT jint JNICALL OS_NATIVE(SetDIBColorTable)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3)
-{
- jbyte *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SetDIBColorTable\n")
- if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL);
- rc = (jint)SetDIBColorTable((HDC)arg0, arg1, arg2, (RGBQUAD *)lparg3);
- if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SetDIBColorTable\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetErrorMode
-JNIEXPORT jint JNICALL OS_NATIVE(SetErrorMode)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetErrorMode\n")
- rc = (jint)SetErrorMode(arg0);
- NATIVE_EXIT(env, that, "SetErrorMode\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetFocus
-JNIEXPORT jint JNICALL OS_NATIVE(SetFocus)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetFocus\n")
- rc = (jint)SetFocus((HWND)arg0);
- NATIVE_EXIT(env, that, "SetFocus\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetForegroundWindow
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetForegroundWindow)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SetForegroundWindow\n")
- rc = (jboolean)SetForegroundWindow((HWND)arg0);
- NATIVE_EXIT(env, that, "SetForegroundWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetMenu
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenu)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SetMenu\n")
- rc = (jboolean)SetMenu((HWND)arg0, (HMENU)arg1);
- NATIVE_EXIT(env, that, "SetMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetMenuDefaultItem
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenuDefaultItem)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SetMenuDefaultItem\n")
- rc = (jboolean)SetMenuDefaultItem((HMENU)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "SetMenuDefaultItem\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetMenuItemInfoA
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenuItemInfoA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3)
-{
- MENUITEMINFO _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SetMenuItemInfoA\n")
- if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3);
- rc = (jboolean)SetMenuItemInfoA((HMENU)arg0, arg1, arg2, lparg3);
- if (arg3) setMENUITEMINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SetMenuItemInfoA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetMenuItemInfoW
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenuItemInfoW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3)
-{
- MENUITEMINFO _arg3, *lparg3=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SetMenuItemInfoW\n")
- if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3);
- rc = (jboolean)SetMenuItemInfoW((HMENU)arg0, arg1, arg2, (LPMENUITEMINFOW)lparg3);
- if (arg3) setMENUITEMINFOFields(env, arg3, lparg3);
- NATIVE_EXIT(env, that, "SetMenuItemInfoW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetPaletteEntries
-JNIEXPORT jint JNICALL OS_NATIVE(SetPaletteEntries)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3)
-{
- jbyte *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SetPaletteEntries\n")
- if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL);
- rc = (jint)SetPaletteEntries((HPALETTE)arg0, arg1, arg2, (PALETTEENTRY *)lparg3);
- if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SetPaletteEntries\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetParent
-JNIEXPORT jint JNICALL OS_NATIVE(SetParent)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetParent\n")
- rc = (jint)SetParent((HWND)arg0, (HWND)arg1);
- NATIVE_EXIT(env, that, "SetParent\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetPixel
-JNIEXPORT jint JNICALL OS_NATIVE(SetPixel)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetPixel\n")
- rc = (jint)SetPixel((HDC)arg0, arg1, arg2, arg3);
- NATIVE_EXIT(env, that, "SetPixel\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetROP2
-JNIEXPORT jint JNICALL OS_NATIVE(SetROP2)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetROP2\n")
- rc = (jint)SetROP2((HDC)arg0, arg1);
- NATIVE_EXIT(env, that, "SetROP2\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetRect)
- (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- RECT _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SetRect\n")
- if (arg0) lparg0 = getRECTFields(env, arg0, &_arg0);
- rc = (jboolean)SetRect(lparg0, arg1, arg2, arg3, arg4);
- if (arg0) setRECTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "SetRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetRectRgn
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetRectRgn)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SetRectRgn\n")
- rc = (jboolean)SetRectRgn((HRGN)arg0, arg1, arg2, arg3, arg4);
- NATIVE_EXIT(env, that, "SetRectRgn\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetScrollInfo
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetScrollInfo)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jboolean arg3)
-{
- SCROLLINFO _arg2, *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SetScrollInfo\n")
- if (arg2) lparg2 = getSCROLLINFOFields(env, arg2, &_arg2);
- rc = (jboolean)SetScrollInfo((HWND)arg0, arg1, lparg2, arg3);
- if (arg2) setSCROLLINFOFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "SetScrollInfo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetStretchBltMode
-JNIEXPORT jint JNICALL OS_NATIVE(SetStretchBltMode)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetStretchBltMode\n")
- rc = (jint)SetStretchBltMode((HDC)arg0, arg1);
- NATIVE_EXIT(env, that, "SetStretchBltMode\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetTextAlign
-JNIEXPORT jint JNICALL OS_NATIVE(SetTextAlign)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetTextAlign\n")
- rc = (jint)SetTextAlign((HDC)arg0, arg1);
- NATIVE_EXIT(env, that, "SetTextAlign\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetTextColor
-JNIEXPORT jint JNICALL OS_NATIVE(SetTextColor)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetTextColor\n")
- rc = (jint)SetTextColor((HDC)arg0, (COLORREF)arg1);
- NATIVE_EXIT(env, that, "SetTextColor\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetTimer
-JNIEXPORT jint JNICALL OS_NATIVE(SetTimer)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetTimer\n")
- rc = (jint)SetTimer((HWND)arg0, arg1, arg2, (TIMERPROC)arg3);
- NATIVE_EXIT(env, that, "SetTimer\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetWindowLongA
-JNIEXPORT jint JNICALL OS_NATIVE(SetWindowLongA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetWindowLongA\n")
- rc = (jint)SetWindowLongA((HWND)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "SetWindowLongA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetWindowLongW
-JNIEXPORT jint JNICALL OS_NATIVE(SetWindowLongW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetWindowLongW\n")
- rc = (jint)SetWindowLongW((HWND)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "SetWindowLongW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetWindowPlacement
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetWindowPlacement)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- WINDOWPLACEMENT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SetWindowPlacement\n")
- if (arg1) lparg1 = getWINDOWPLACEMENTFields(env, arg1, &_arg1);
- rc = (jboolean)SetWindowPlacement((HWND)arg0, lparg1);
- if (arg1) setWINDOWPLACEMENTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "SetWindowPlacement\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetWindowPos
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetWindowPos)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "SetWindowPos\n")
- rc = (jboolean)SetWindowPos((HWND)arg0, (HWND)arg1, arg2, arg3, arg4, arg5, arg6);
- NATIVE_EXIT(env, that, "SetWindowPos\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetWindowTextA
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetWindowTextA)
- (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1)
-{
- jbyte *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SetWindowTextA\n")
- if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL);
- rc = (jboolean)SetWindowTextA((HWND)arg0, (LPSTR)lparg1);
- if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "SetWindowTextA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetWindowTextW
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetWindowTextW)
- (JNIEnv *env, jclass that, jint arg0, jcharArray arg1)
-{
- jchar *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SetWindowTextW\n")
- if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL);
- rc = (jboolean)SetWindowTextW((HWND)arg0, (LPWSTR)lparg1);
- if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "SetWindowTextW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetWindowsHookExA
-JNIEXPORT jint JNICALL OS_NATIVE(SetWindowsHookExA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetWindowsHookExA\n")
- rc = (jint)SetWindowsHookExA(arg0, (HOOKPROC)arg1, (HINSTANCE)arg2, arg3);
- NATIVE_EXIT(env, that, "SetWindowsHookExA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetWindowsHookExW
-JNIEXPORT jint JNICALL OS_NATIVE(SetWindowsHookExW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetWindowsHookExW\n")
- rc = (jint)SetWindowsHookExW(arg0, (HOOKPROC)arg1, (HINSTANCE)arg2, arg3);
- NATIVE_EXIT(env, that, "SetWindowsHookExW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ShellExecuteExA
-JNIEXPORT jboolean JNICALL OS_NATIVE(ShellExecuteExA)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- SHELLEXECUTEINFO _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ShellExecuteExA\n")
- if (arg0) lparg0 = getSHELLEXECUTEINFOFields(env, arg0, &_arg0);
- rc = (jboolean)ShellExecuteExA(lparg0);
- if (arg0) setSHELLEXECUTEINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "ShellExecuteExA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ShellExecuteExW
-JNIEXPORT jboolean JNICALL OS_NATIVE(ShellExecuteExW)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- SHELLEXECUTEINFO _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ShellExecuteExW\n")
- if (arg0) lparg0 = getSHELLEXECUTEINFOFields(env, arg0, &_arg0);
- rc = (jboolean)ShellExecuteExW((LPSHELLEXECUTEINFOW)lparg0);
- if (arg0) setSHELLEXECUTEINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "ShellExecuteExW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ShowCaret
-JNIEXPORT jboolean JNICALL OS_NATIVE(ShowCaret)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ShowCaret\n")
- rc = (jboolean)ShowCaret((HWND)arg0);
- NATIVE_EXIT(env, that, "ShowCaret\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ShowOwnedPopups
-JNIEXPORT jboolean JNICALL OS_NATIVE(ShowOwnedPopups)
- (JNIEnv *env, jclass that, jint arg0, jboolean arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ShowOwnedPopups\n")
- rc = (jboolean)ShowOwnedPopups((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "ShowOwnedPopups\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ShowScrollBar
-JNIEXPORT jboolean JNICALL OS_NATIVE(ShowScrollBar)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ShowScrollBar\n")
- rc = (jboolean)ShowScrollBar((HWND)arg0, arg1, arg2);
- NATIVE_EXIT(env, that, "ShowScrollBar\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ShowWindow
-JNIEXPORT jboolean JNICALL OS_NATIVE(ShowWindow)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "ShowWindow\n")
- rc = (jboolean)ShowWindow((HWND)arg0, arg1);
- NATIVE_EXIT(env, that, "ShowWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SipGetInfo
-JNIEXPORT jboolean JNICALL OS_NATIVE(SipGetInfo)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- SIPINFO _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SipGetInfo\n")
- if (arg0) lparg0 = getSIPINFOFields(env, arg0, &_arg0);
- rc = (jboolean)SipGetInfo(lparg0);
- if (arg0) setSIPINFOFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "SipGetInfo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_StartDocA
-JNIEXPORT jint JNICALL OS_NATIVE(StartDocA)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- DOCINFO _arg1, *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "StartDocA\n")
- if (arg1) lparg1 = getDOCINFOFields(env, arg1, &_arg1);
- rc = (jint)StartDocA((HDC)arg0, lparg1);
- if (arg1) setDOCINFOFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "StartDocA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_StartDocW
-JNIEXPORT jint JNICALL OS_NATIVE(StartDocW)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- DOCINFO _arg1, *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "StartDocW\n")
- if (arg1) lparg1 = getDOCINFOFields(env, arg1, &_arg1);
- rc = (jint)StartDocW((HDC)arg0, (LPDOCINFOW)lparg1);
- if (arg1) setDOCINFOFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "StartDocW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_StartPage
-JNIEXPORT jint JNICALL OS_NATIVE(StartPage)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "StartPage\n")
- rc = (jint)StartPage((HDC)arg0);
- NATIVE_EXIT(env, that, "StartPage\n")
- return rc;
-}
-#endif
-
-#ifndef NO_StretchBlt
-JNIEXPORT jboolean JNICALL OS_NATIVE(StretchBlt)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9, jint arg10)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "StretchBlt\n")
- rc = (jboolean)StretchBlt((HDC)arg0, arg1, arg2, arg3, arg4, (HDC)arg5, arg6, arg7, arg8, arg9, arg10);
- NATIVE_EXIT(env, that, "StretchBlt\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I
-JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3)
-{
- NONCLIENTMETRICSA _arg2, *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I\n")
- if (arg2) lparg2 = getNONCLIENTMETRICSAFields(env, arg2, &_arg2);
- rc = (jboolean)SystemParametersInfoA(arg0, arg1, lparg2, arg3);
- if (arg2) setNONCLIENTMETRICSAFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I
-JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3)
-{
- RECT _arg2, *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I\n")
- if (arg2) lparg2 = getRECTFields(env, arg2, &_arg2);
- rc = (jboolean)SystemParametersInfoA(arg0, arg1, lparg2, arg3);
- if (arg2) setRECTFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SystemParametersInfoA__II_3II
-JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoA__II_3II)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3)
-{
- jint *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SystemParametersInfoA__II_3II\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- rc = (jboolean)SystemParametersInfoA(arg0, arg1, lparg2, arg3);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "SystemParametersInfoA__II_3II\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I
-JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3)
-{
- NONCLIENTMETRICSW _arg2, *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I\n")
- if (arg2) lparg2 = getNONCLIENTMETRICSWFields(env, arg2, &_arg2);
- rc = (jboolean)SystemParametersInfoW(arg0, arg1, lparg2, arg3);
- if (arg2) setNONCLIENTMETRICSWFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_RECT_2I
-JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_RECT_2I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3)
-{
- RECT _arg2, *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_RECT_2I\n")
- if (arg2) lparg2 = getRECTFields(env, arg2, &_arg2);
- rc = (jboolean)SystemParametersInfoW(arg0, arg1, lparg2, arg3);
- if (arg2) setRECTFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_RECT_2I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SystemParametersInfoW__II_3II
-JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoW__II_3II)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3)
-{
- jint *lparg2=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SystemParametersInfoW__II_3II\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- rc = (jboolean)SystemParametersInfoW(arg0, arg1, lparg2, arg3);
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- NATIVE_EXIT(env, that, "SystemParametersInfoW__II_3II\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ToAscii
-JNIEXPORT jint JNICALL OS_NATIVE(ToAscii)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jshortArray arg3, jint arg4)
-{
- jbyte *lparg2=NULL;
- jshort *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ToAscii\n")
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetShortArrayElements(env, arg3, NULL);
- rc = (jint)ToAscii(arg0, arg1, (PBYTE)lparg2, (LPWORD)lparg3, arg4);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseShortArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "ToAscii\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ToUnicode
-JNIEXPORT jint JNICALL OS_NATIVE(ToUnicode)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jcharArray arg3, jint arg4, jint arg5)
-{
- jbyte *lparg2=NULL;
- jchar *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "ToUnicode\n")
- if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetCharArrayElements(env, arg3, NULL);
- rc = (jint)ToUnicode(arg0, arg1, (PBYTE)lparg2, (LPWSTR)lparg3, arg4, arg5);
- if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseCharArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "ToUnicode\n")
- return rc;
-}
-#endif
-
-#ifndef NO_TrackMouseEvent
-JNIEXPORT jboolean JNICALL OS_NATIVE(TrackMouseEvent)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- TRACKMOUSEEVENT _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "TrackMouseEvent\n")
- if (arg0) lparg0 = getTRACKMOUSEEVENTFields(env, arg0, &_arg0);
- rc = (jboolean)TrackMouseEvent(lparg0);
- if (arg0) setTRACKMOUSEEVENTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "TrackMouseEvent\n")
- return rc;
-}
-#endif
-
-#ifndef NO_TrackPopupMenu
-JNIEXPORT jboolean JNICALL OS_NATIVE(TrackPopupMenu)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jobject arg6)
-{
- RECT _arg6, *lparg6=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "TrackPopupMenu\n")
- if (arg6) lparg6 = getRECTFields(env, arg6, &_arg6);
- rc = (jboolean)TrackPopupMenu((HMENU)arg0, arg1, arg2, arg3, arg4, (HWND)arg5, lparg6);
- if (arg6) setRECTFields(env, arg6, lparg6);
- NATIVE_EXIT(env, that, "TrackPopupMenu\n")
- return rc;
-}
-#endif
-
-#ifndef NO_TranslateAcceleratorA
-JNIEXPORT jint JNICALL OS_NATIVE(TranslateAcceleratorA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- MSG _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "TranslateAcceleratorA\n")
- if (arg2) lparg2 = getMSGFields(env, arg2, &_arg2);
- rc = (jint)TranslateAcceleratorA((HWND)arg0, (HACCEL)arg1, lparg2);
- if (arg2) setMSGFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "TranslateAcceleratorA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_TranslateAcceleratorW
-JNIEXPORT jint JNICALL OS_NATIVE(TranslateAcceleratorW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2)
-{
- MSG _arg2, *lparg2=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "TranslateAcceleratorW\n")
- if (arg2) lparg2 = getMSGFields(env, arg2, &_arg2);
- rc = (jint)TranslateAcceleratorW((HWND)arg0, (HACCEL)arg1, lparg2);
- if (arg2) setMSGFields(env, arg2, lparg2);
- NATIVE_EXIT(env, that, "TranslateAcceleratorW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_TranslateCharsetInfo
-JNIEXPORT jboolean JNICALL OS_NATIVE(TranslateCharsetInfo)
- (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jint arg2)
-{
- jint *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "TranslateCharsetInfo\n")
- if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL);
- rc = (jboolean)TranslateCharsetInfo((DWORD *)arg0, (LPCHARSETINFO)lparg1, arg2);
- if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0);
- NATIVE_EXIT(env, that, "TranslateCharsetInfo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_TranslateMDISysAccel
-JNIEXPORT jboolean JNICALL OS_NATIVE(TranslateMDISysAccel)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- MSG _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "TranslateMDISysAccel\n")
- if (arg1) lparg1 = getMSGFields(env, arg1, &_arg1);
- rc = (jboolean)TranslateMDISysAccel((HWND)arg0, (LPMSG)lparg1);
- if (arg1) setMSGFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "TranslateMDISysAccel\n")
- return rc;
-}
-#endif
-
-#ifndef NO_TranslateMessage
-JNIEXPORT jboolean JNICALL OS_NATIVE(TranslateMessage)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- MSG _arg0, *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "TranslateMessage\n")
- if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0);
- rc = (jboolean)TranslateMessage(lparg0);
- if (arg0) setMSGFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "TranslateMessage\n")
- return rc;
-}
-#endif
-
-#ifndef NO_TransparentImage
-JNIEXPORT jboolean JNICALL OS_NATIVE(TransparentImage)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9, jint arg10)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "TransparentImage\n")
- rc = (jboolean)TransparentImage((HDC)arg0, arg1, arg2, arg3, arg4, (HANDLE)arg5, arg6, arg7, arg8, arg9, (COLORREF)arg10);
- NATIVE_EXIT(env, that, "TransparentImage\n")
- return rc;
-}
-#endif
-
-#ifndef NO_UnhookWindowsHookEx
-JNIEXPORT jboolean JNICALL OS_NATIVE(UnhookWindowsHookEx)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "UnhookWindowsHookEx\n")
- rc = (jboolean)UnhookWindowsHookEx((HHOOK)arg0);
- NATIVE_EXIT(env, that, "UnhookWindowsHookEx\n")
- return rc;
-}
-#endif
-
-#ifndef NO_UnregisterClassA
-JNIEXPORT jboolean JNICALL OS_NATIVE(UnregisterClassA)
- (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1)
-{
- jbyte *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "UnregisterClassA\n")
- if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL);
- rc = (jboolean)UnregisterClassA((LPSTR)lparg0, (HINSTANCE)arg1);
- if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "UnregisterClassA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_UnregisterClassW
-JNIEXPORT jboolean JNICALL OS_NATIVE(UnregisterClassW)
- (JNIEnv *env, jclass that, jcharArray arg0, jint arg1)
-{
- jchar *lparg0=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "UnregisterClassW\n")
- if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL);
- rc = (jboolean)UnregisterClassW((LPWSTR)lparg0, (HINSTANCE)arg1);
- if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0);
- NATIVE_EXIT(env, that, "UnregisterClassW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_UpdateWindow
-JNIEXPORT jboolean JNICALL OS_NATIVE(UpdateWindow)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "UpdateWindow\n")
- rc = (jboolean)UpdateWindow((HWND)arg0);
- NATIVE_EXIT(env, that, "UpdateWindow\n")
- return rc;
-}
-#endif
-
-#ifndef NO_ValidateRect
-JNIEXPORT jboolean JNICALL OS_NATIVE(ValidateRect)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "ValidateRect\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- rc = (jboolean)ValidateRect((HWND)arg0, lparg1);
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "ValidateRect\n")
- return rc;
-}
-#endif
-
-#ifndef NO_VkKeyScanA
-JNIEXPORT jshort JNICALL OS_NATIVE(VkKeyScanA)
- (JNIEnv *env, jclass that, jshort arg0)
-{
- jshort rc;
- NATIVE_ENTER(env, that, "VkKeyScanA\n")
- rc = (jshort)VkKeyScanA((TCHAR)arg0);
- NATIVE_EXIT(env, that, "VkKeyScanA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_VkKeyScanW
-JNIEXPORT jshort JNICALL OS_NATIVE(VkKeyScanW)
- (JNIEnv *env, jclass that, jshort arg0)
-{
- jshort rc;
- NATIVE_ENTER(env, that, "VkKeyScanW\n")
- rc = (jshort)VkKeyScanW((WCHAR)arg0);
- NATIVE_EXIT(env, that, "VkKeyScanW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_WaitMessage
-JNIEXPORT jboolean JNICALL OS_NATIVE(WaitMessage)
- (JNIEnv *env, jclass that)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "WaitMessage\n")
- rc = (jboolean)WaitMessage();
- NATIVE_EXIT(env, that, "WaitMessage\n")
- return rc;
-}
-#endif
-
-#ifndef NO_WideCharToMultiByte__II_3CIII_3B_3Z
-JNIEXPORT jint JNICALL OS_NATIVE(WideCharToMultiByte__II_3CIII_3B_3Z)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3, jint arg4, jint arg5, jbyteArray arg6, jbooleanArray arg7)
-{
- jchar *lparg2=NULL;
- jbyte *lparg6=NULL;
- jboolean *lparg7=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "WideCharToMultiByte__II_3CIII_3B_3Z\n")
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- if (arg6) lparg6 = (*env)->GetByteArrayElements(env, arg6, NULL);
- if (arg7) lparg7 = (*env)->GetBooleanArrayElements(env, arg7, NULL);
- rc = (jint)WideCharToMultiByte(arg0, arg1, (LPCWSTR)lparg2, arg3, (LPSTR)arg4, arg5, (LPCSTR)lparg6, (LPBOOL)lparg7);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- if (arg6) (*env)->ReleaseByteArrayElements(env, arg6, lparg6, 0);
- if (arg7) (*env)->ReleaseBooleanArrayElements(env, arg7, lparg7, 0);
- NATIVE_EXIT(env, that, "WideCharToMultiByte__II_3CIII_3B_3Z\n")
- return rc;
-}
-#endif
-
-#ifndef NO_WideCharToMultiByte__II_3CI_3BI_3B_3Z
-JNIEXPORT jint JNICALL OS_NATIVE(WideCharToMultiByte__II_3CI_3BI_3B_3Z)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3, jbyteArray arg4, jint arg5, jbyteArray arg6, jbooleanArray arg7)
-{
- jchar *lparg2=NULL;
- jbyte *lparg4=NULL;
- jbyte *lparg6=NULL;
- jboolean *lparg7=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "WideCharToMultiByte__II_3CI_3BI_3B_3Z\n")
- if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL);
- if (arg4) lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL);
- if (arg6) lparg6 = (*env)->GetByteArrayElements(env, arg6, NULL);
- if (arg7) lparg7 = (*env)->GetBooleanArrayElements(env, arg7, NULL);
- rc = (jint)WideCharToMultiByte(arg0, arg1, (LPCWSTR)lparg2, arg3, (LPSTR)lparg4, arg5, (LPCSTR)lparg6, (LPBOOL)lparg7);
- if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0);
- if (arg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0);
- if (arg6) (*env)->ReleaseByteArrayElements(env, arg6, lparg6, 0);
- if (arg7) (*env)->ReleaseBooleanArrayElements(env, arg7, lparg7, 0);
- NATIVE_EXIT(env, that, "WideCharToMultiByte__II_3CI_3BI_3B_3Z\n")
- return rc;
-}
-#endif
-
-#ifndef NO_WindowFromDC
-JNIEXPORT jint JNICALL OS_NATIVE(WindowFromDC)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "WindowFromDC\n")
- rc = (jint)WindowFromDC((HDC)arg0);
- NATIVE_EXIT(env, that, "WindowFromDC\n")
- return rc;
-}
-#endif
-
-#ifndef NO_WindowFromPoint
-JNIEXPORT jint JNICALL OS_NATIVE(WindowFromPoint)
- (JNIEnv *env, jclass that, jobject arg0)
-{
- POINT _arg0, *lparg0=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "WindowFromPoint\n")
- if (arg0) lparg0 = getPOINTFields(env, arg0, &_arg0);
- rc = (jint)WindowFromPoint(*lparg0);
- if (arg0) setPOINTFields(env, arg0, lparg0);
- NATIVE_EXIT(env, that, "WindowFromPoint\n")
- return rc;
-}
-#endif
-
+/******************************************************************************* +* Copyright (c) 2000, 2003 IBM Corporation and others. +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Common Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/cpl-v10.html +* +* Contributors: +* IBM Corporation - initial API and implementation +*******************************************************************************/ + +#include "swt.h" +#include "os_structs.h" + +#define OS_NATIVE(func) Java_org_eclipse_swt_internal_win32_OS_##func + +#ifndef NO_AbortDoc +JNIEXPORT jint JNICALL OS_NATIVE(AbortDoc) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "AbortDoc\n") + rc = (jint)AbortDoc((HDC)arg0); + NATIVE_EXIT(env, that, "AbortDoc\n") + return rc; +} +#endif + +#ifndef NO_ActivateKeyboardLayout +JNIEXPORT jint JNICALL OS_NATIVE(ActivateKeyboardLayout) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "ActivateKeyboardLayout\n") + rc = (jint)ActivateKeyboardLayout((HKL)arg0, arg1); + NATIVE_EXIT(env, that, "ActivateKeyboardLayout\n") + return rc; +} +#endif + +#ifndef NO_AdjustWindowRectEx +JNIEXPORT jboolean JNICALL OS_NATIVE(AdjustWindowRectEx) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jboolean arg2, jint arg3) +{ + RECT _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "AdjustWindowRectEx\n") + if (arg0) lparg0 = getRECTFields(env, arg0, &_arg0); + rc = (jboolean)AdjustWindowRectEx(lparg0, arg1, arg2, arg3); + if (arg0) setRECTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "AdjustWindowRectEx\n") + return rc; +} +#endif + +#ifndef NO_Arc +JNIEXPORT jboolean JNICALL OS_NATIVE(Arc) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8) +{ + jboolean rc; + NATIVE_ENTER(env, that, "Arc\n") + rc = (jboolean)Arc((HDC)arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8); + NATIVE_EXIT(env, that, "Arc\n") + return rc; +} +#endif + +#ifndef NO_BeginDeferWindowPos +JNIEXPORT jint JNICALL OS_NATIVE(BeginDeferWindowPos) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "BeginDeferWindowPos\n") + rc = (jint)BeginDeferWindowPos(arg0); + NATIVE_EXIT(env, that, "BeginDeferWindowPos\n") + return rc; +} +#endif + +#ifndef NO_BeginPaint +JNIEXPORT jint JNICALL OS_NATIVE(BeginPaint) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + PAINTSTRUCT _arg1, *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "BeginPaint\n") + if (arg1) lparg1 = getPAINTSTRUCTFields(env, arg1, &_arg1); + rc = (jint)BeginPaint((HWND)arg0, lparg1); + if (arg1) setPAINTSTRUCTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "BeginPaint\n") + return rc; +} +#endif + +#ifndef NO_BitBlt +JNIEXPORT jboolean JNICALL OS_NATIVE(BitBlt) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8) +{ + jboolean rc; + NATIVE_ENTER(env, that, "BitBlt\n") + rc = (jboolean)BitBlt((HDC)arg0, arg1, arg2, arg3, arg4, (HDC)arg5, arg6, arg7, arg8); + NATIVE_EXIT(env, that, "BitBlt\n") + return rc; +} +#endif + +#ifndef NO_BringWindowToTop +JNIEXPORT jboolean JNICALL OS_NATIVE(BringWindowToTop) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "BringWindowToTop\n") + rc = (jboolean)BringWindowToTop((HWND)arg0); + NATIVE_EXIT(env, that, "BringWindowToTop\n") + return rc; +} +#endif + +#ifndef NO_CallNextHookEx +JNIEXPORT jint JNICALL OS_NATIVE(CallNextHookEx) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "CallNextHookEx\n") + rc = (jint)CallNextHookEx((HHOOK)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "CallNextHookEx\n") + return rc; +} +#endif + +#ifndef NO_CallWindowProcA +JNIEXPORT jint JNICALL OS_NATIVE(CallWindowProcA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jint rc; + NATIVE_ENTER(env, that, "CallWindowProcA\n") + rc = (jint)CallWindowProcA((WNDPROC)arg0, (HWND)arg1, arg2, arg3, arg4); + NATIVE_EXIT(env, that, "CallWindowProcA\n") + return rc; +} +#endif + +#ifndef NO_CallWindowProcW +JNIEXPORT jint JNICALL OS_NATIVE(CallWindowProcW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jint rc; + NATIVE_ENTER(env, that, "CallWindowProcW\n") + rc = (jint)CallWindowProcW((WNDPROC)arg0, (HWND)arg1, arg2, arg3, arg4); + NATIVE_EXIT(env, that, "CallWindowProcW\n") + return rc; +} +#endif + +#ifndef NO_CharLowerA +JNIEXPORT jshort JNICALL OS_NATIVE(CharLowerA) + (JNIEnv *env, jclass that, jshort arg0) +{ + jshort rc; + NATIVE_ENTER(env, that, "CharLowerA\n") + rc = (jshort)CharLowerA((LPSTR)arg0); + NATIVE_EXIT(env, that, "CharLowerA\n") + return rc; +} +#endif + +#ifndef NO_CharLowerW +JNIEXPORT jshort JNICALL OS_NATIVE(CharLowerW) + (JNIEnv *env, jclass that, jshort arg0) +{ + jshort rc; + NATIVE_ENTER(env, that, "CharLowerW\n") + rc = (jshort)CharLowerW((LPWSTR)arg0); + NATIVE_EXIT(env, that, "CharLowerW\n") + return rc; +} +#endif + +#ifndef NO_CharUpperA +JNIEXPORT jshort JNICALL OS_NATIVE(CharUpperA) + (JNIEnv *env, jclass that, jshort arg0) +{ + jshort rc; + NATIVE_ENTER(env, that, "CharUpperA\n") + rc = (jshort)CharUpperA((LPSTR)arg0); + NATIVE_EXIT(env, that, "CharUpperA\n") + return rc; +} +#endif + +#ifndef NO_CharUpperW +JNIEXPORT jshort JNICALL OS_NATIVE(CharUpperW) + (JNIEnv *env, jclass that, jshort arg0) +{ + jshort rc; + NATIVE_ENTER(env, that, "CharUpperW\n") + rc = (jshort)CharUpperW((LPWSTR)arg0); + NATIVE_EXIT(env, that, "CharUpperW\n") + return rc; +} +#endif + +#ifndef NO_CheckMenuItem +JNIEXPORT jboolean JNICALL OS_NATIVE(CheckMenuItem) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "CheckMenuItem\n") + rc = (jboolean)CheckMenuItem((HMENU)arg0, (UINT)arg1, (UINT)arg2); + NATIVE_EXIT(env, that, "CheckMenuItem\n") + return rc; +} +#endif + +#ifndef NO_ChooseColorA +JNIEXPORT jboolean JNICALL OS_NATIVE(ChooseColorA) + (JNIEnv *env, jclass that, jobject arg0) +{ + CHOOSECOLOR _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ChooseColorA\n") + if (arg0) lparg0 = getCHOOSECOLORFields(env, arg0, &_arg0); + rc = (jboolean)ChooseColorA(lparg0); + if (arg0) setCHOOSECOLORFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "ChooseColorA\n") + return rc; +} +#endif + +#ifndef NO_ChooseColorW +JNIEXPORT jboolean JNICALL OS_NATIVE(ChooseColorW) + (JNIEnv *env, jclass that, jobject arg0) +{ + CHOOSECOLOR _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ChooseColorW\n") + if (arg0) lparg0 = getCHOOSECOLORFields(env, arg0, &_arg0); + rc = (jboolean)ChooseColorW((LPCHOOSECOLORW)lparg0); + if (arg0) setCHOOSECOLORFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "ChooseColorW\n") + return rc; +} +#endif + +#ifndef NO_ChooseFontA +JNIEXPORT jboolean JNICALL OS_NATIVE(ChooseFontA) + (JNIEnv *env, jclass that, jobject arg0) +{ + CHOOSEFONT _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ChooseFontA\n") + if (arg0) lparg0 = getCHOOSEFONTFields(env, arg0, &_arg0); + rc = (jboolean)ChooseFontA(lparg0); + if (arg0) setCHOOSEFONTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "ChooseFontA\n") + return rc; +} +#endif + +#ifndef NO_ChooseFontW +JNIEXPORT jboolean JNICALL OS_NATIVE(ChooseFontW) + (JNIEnv *env, jclass that, jobject arg0) +{ + CHOOSEFONT _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ChooseFontW\n") + if (arg0) lparg0 = getCHOOSEFONTFields(env, arg0, &_arg0); + rc = (jboolean)ChooseFontW((LPCHOOSEFONTW)lparg0); + if (arg0) setCHOOSEFONTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "ChooseFontW\n") + return rc; +} +#endif + +#ifndef NO_ClientToScreen +JNIEXPORT jboolean JNICALL OS_NATIVE(ClientToScreen) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + POINT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ClientToScreen\n") + if (arg1) lparg1 = getPOINTFields(env, arg1, &_arg1); + rc = (jboolean)ClientToScreen((HWND)arg0, lparg1); + if (arg1) setPOINTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "ClientToScreen\n") + return rc; +} +#endif + +#ifndef NO_CloseClipboard +JNIEXPORT jboolean JNICALL OS_NATIVE(CloseClipboard) + (JNIEnv *env, jclass that) +{ + jboolean rc; + NATIVE_ENTER(env, that, "CloseClipboard\n") + rc = (jboolean)CloseClipboard(); + NATIVE_EXIT(env, that, "CloseClipboard\n") + return rc; +} +#endif + +#ifndef NO_CombineRgn +JNIEXPORT jint JNICALL OS_NATIVE(CombineRgn) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "CombineRgn\n") + rc = (jint)CombineRgn((HRGN)arg0, (HRGN)arg1, (HRGN)arg2, arg3); + NATIVE_EXIT(env, that, "CombineRgn\n") + return rc; +} +#endif + +#ifndef NO_CommDlgExtendedError +JNIEXPORT jint JNICALL OS_NATIVE(CommDlgExtendedError) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "CommDlgExtendedError\n") + rc = (jint)CommDlgExtendedError(); + NATIVE_EXIT(env, that, "CommDlgExtendedError\n") + return rc; +} +#endif + +#ifndef NO_CommandBar_1AddAdornments +JNIEXPORT jboolean JNICALL OS_NATIVE(CommandBar_1AddAdornments) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "CommandBar_1AddAdornments\n") + rc = (jboolean)CommandBar_AddAdornments((HWND)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "CommandBar_1AddAdornments\n") + return rc; +} +#endif + +#ifndef NO_CommandBar_1Create +JNIEXPORT jint JNICALL OS_NATIVE(CommandBar_1Create) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "CommandBar_1Create\n") + rc = (jint)CommandBar_Create((HINSTANCE)arg0, (HWND)arg1, arg2); + NATIVE_EXIT(env, that, "CommandBar_1Create\n") + return rc; +} +#endif + +#ifndef NO_CommandBar_1Destroy +JNIEXPORT void JNICALL OS_NATIVE(CommandBar_1Destroy) + (JNIEnv *env, jclass that, jint arg0) +{ + NATIVE_ENTER(env, that, "CommandBar_1Destroy\n") + CommandBar_Destroy((HWND)arg0); + NATIVE_EXIT(env, that, "CommandBar_1Destroy\n") +} +#endif + +#ifndef NO_CommandBar_1DrawMenuBar +JNIEXPORT jboolean JNICALL OS_NATIVE(CommandBar_1DrawMenuBar) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "CommandBar_1DrawMenuBar\n") + rc = (jboolean)CommandBar_DrawMenuBar((HWND)arg0, (WORD)arg1); + NATIVE_EXIT(env, that, "CommandBar_1DrawMenuBar\n") + return rc; +} +#endif + +#ifndef NO_CommandBar_1Height +JNIEXPORT jint JNICALL OS_NATIVE(CommandBar_1Height) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "CommandBar_1Height\n") + rc = (jint)CommandBar_Height((HWND)arg0); + NATIVE_EXIT(env, that, "CommandBar_1Height\n") + return rc; +} +#endif + +#ifndef NO_CommandBar_1InsertMenubarEx +JNIEXPORT jboolean JNICALL OS_NATIVE(CommandBar_1InsertMenubarEx) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jboolean rc; + NATIVE_ENTER(env, that, "CommandBar_1InsertMenubarEx\n") + rc = (jboolean)CommandBar_InsertMenubarEx((HWND)arg0, (HINSTANCE)arg1, (LPTSTR)arg2, (WORD)arg3); + NATIVE_EXIT(env, that, "CommandBar_1InsertMenubarEx\n") + return rc; +} +#endif + +#ifndef NO_CommandBar_1Show +JNIEXPORT jboolean JNICALL OS_NATIVE(CommandBar_1Show) + (JNIEnv *env, jclass that, jint arg0, jboolean arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "CommandBar_1Show\n") + rc = (jboolean)CommandBar_Show((HWND)arg0, (BOOL)arg1); + NATIVE_EXIT(env, that, "CommandBar_1Show\n") + return rc; +} +#endif + +#ifndef NO_CopyImage +JNIEXPORT jint JNICALL OS_NATIVE(CopyImage) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jint rc; + NATIVE_ENTER(env, that, "CopyImage\n") + rc = (jint)CopyImage((HANDLE)arg0, arg1, arg2, arg3, arg4); + NATIVE_EXIT(env, that, "CopyImage\n") + return rc; +} +#endif + +#ifndef NO_CreateAcceleratorTableA +JNIEXPORT jint JNICALL OS_NATIVE(CreateAcceleratorTableA) + (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1) +{ + jbyte *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateAcceleratorTableA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + rc = (jint)CreateAcceleratorTableA((LPACCEL)lparg0, arg1); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "CreateAcceleratorTableA\n") + return rc; +} +#endif + +#ifndef NO_CreateAcceleratorTableW +JNIEXPORT jint JNICALL OS_NATIVE(CreateAcceleratorTableW) + (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1) +{ + jbyte *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateAcceleratorTableW\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + rc = (jint)CreateAcceleratorTableW((LPACCEL)lparg0, arg1); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "CreateAcceleratorTableW\n") + return rc; +} +#endif + +#ifndef NO_CreateBitmap +JNIEXPORT jint JNICALL OS_NATIVE(CreateBitmap) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jbyteArray arg4) +{ + jbyte *lparg4=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateBitmap\n") + if (arg4) lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL); + rc = (jint)CreateBitmap(arg0, arg1, arg2, arg3, (CONST VOID *)lparg4); + if (arg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0); + NATIVE_EXIT(env, that, "CreateBitmap\n") + return rc; +} +#endif + +#ifndef NO_CreateCaret +JNIEXPORT jboolean JNICALL OS_NATIVE(CreateCaret) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jboolean rc; + NATIVE_ENTER(env, that, "CreateCaret\n") + rc = (jboolean)CreateCaret((HWND)arg0, (HBITMAP)arg1, arg2, arg3); + NATIVE_EXIT(env, that, "CreateCaret\n") + return rc; +} +#endif + +#ifndef NO_CreateCompatibleBitmap +JNIEXPORT jint JNICALL OS_NATIVE(CreateCompatibleBitmap) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "CreateCompatibleBitmap\n") + rc = (jint)CreateCompatibleBitmap((HDC)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "CreateCompatibleBitmap\n") + return rc; +} +#endif + +#ifndef NO_CreateCompatibleDC +JNIEXPORT jint JNICALL OS_NATIVE(CreateCompatibleDC) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "CreateCompatibleDC\n") + rc = (jint)CreateCompatibleDC((HDC)arg0); + NATIVE_EXIT(env, that, "CreateCompatibleDC\n") + return rc; +} +#endif + +#ifndef NO_CreateCursor +JNIEXPORT jint JNICALL OS_NATIVE(CreateCursor) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jbyteArray arg5, jbyteArray arg6) +{ + jbyte *lparg5=NULL; + jbyte *lparg6=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateCursor\n") + if (arg5) lparg5 = (*env)->GetByteArrayElements(env, arg5, NULL); + if (arg6) lparg6 = (*env)->GetByteArrayElements(env, arg6, NULL); + rc = (jint)CreateCursor((HINSTANCE)arg0, arg1, arg2, arg3, arg4, (CONST VOID *)lparg5, (CONST VOID *)lparg6); + if (arg5) (*env)->ReleaseByteArrayElements(env, arg5, lparg5, 0); + if (arg6) (*env)->ReleaseByteArrayElements(env, arg6, lparg6, 0); + NATIVE_EXIT(env, that, "CreateCursor\n") + return rc; +} +#endif + +#ifndef NO_CreateDCA +JNIEXPORT jint JNICALL OS_NATIVE(CreateDCA) + (JNIEnv *env, jclass that, jbyteArray arg0, jbyteArray arg1, jint arg2, jint arg3) +{ + jbyte *lparg0=NULL; + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateDCA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)CreateDCA((LPSTR)lparg0, (LPSTR)lparg1, (LPSTR)arg2, (CONST DEVMODE *)arg3); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "CreateDCA\n") + return rc; +} +#endif + +#ifndef NO_CreateDCW +JNIEXPORT jint JNICALL OS_NATIVE(CreateDCW) + (JNIEnv *env, jclass that, jcharArray arg0, jcharArray arg1, jint arg2, jint arg3) +{ + jchar *lparg0=NULL; + jchar *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateDCW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jint)CreateDCW((LPWSTR)lparg0, (LPWSTR)lparg1, (LPWSTR)arg2, (CONST DEVMODEW *)arg3); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "CreateDCW\n") + return rc; +} +#endif + +#ifndef NO_CreateDIBSection +JNIEXPORT jint JNICALL OS_NATIVE(CreateDIBSection) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jintArray arg3, jint arg4, jint arg5) +{ + jbyte *lparg1=NULL; + jint *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateDIBSection\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jint)CreateDIBSection((HDC)arg0, (BITMAPINFO *)lparg1, arg2, (VOID **)lparg3, (HANDLE)arg4, arg5); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "CreateDIBSection\n") + return rc; +} +#endif + +#ifndef NO_CreateFontIndirectA__I +JNIEXPORT jint JNICALL OS_NATIVE(CreateFontIndirectA__I) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "CreateFontIndirectA__I\n") + rc = (jint)CreateFontIndirectA((LPLOGFONTA)arg0); + NATIVE_EXIT(env, that, "CreateFontIndirectA__I\n") + return rc; +} +#endif + +#ifndef NO_CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2 +JNIEXPORT jint JNICALL OS_NATIVE(CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2) + (JNIEnv *env, jclass that, jobject arg0) +{ + LOGFONTA _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2\n") + if (arg0) lparg0 = getLOGFONTAFields(env, arg0, &_arg0); + rc = (jint)CreateFontIndirectA(lparg0); + if (arg0) setLOGFONTAFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2\n") + return rc; +} +#endif + +#ifndef NO_CreateFontIndirectW__I +JNIEXPORT jint JNICALL OS_NATIVE(CreateFontIndirectW__I) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "CreateFontIndirectW__I\n") + rc = (jint)CreateFontIndirectW((LPLOGFONTW)arg0); + NATIVE_EXIT(env, that, "CreateFontIndirectW__I\n") + return rc; +} +#endif + +#ifndef NO_CreateFontIndirectW__Lorg_eclipse_swt_internal_win32_LOGFONTW_2 +JNIEXPORT jint JNICALL OS_NATIVE(CreateFontIndirectW__Lorg_eclipse_swt_internal_win32_LOGFONTW_2) + (JNIEnv *env, jclass that, jobject arg0) +{ + LOGFONTW _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateFontIndirectW__Lorg_eclipse_swt_internal_win32_LOGFONTW_2\n") + if (arg0) lparg0 = getLOGFONTWFields(env, arg0, &_arg0); + rc = (jint)CreateFontIndirectW(lparg0); + if (arg0) setLOGFONTWFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "CreateFontIndirectW__Lorg_eclipse_swt_internal_win32_LOGFONTW_2\n") + return rc; +} +#endif + +#ifndef NO_CreateIconIndirect +JNIEXPORT jint JNICALL OS_NATIVE(CreateIconIndirect) + (JNIEnv *env, jclass that, jobject arg0) +{ + ICONINFO _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateIconIndirect\n") + if (arg0) lparg0 = getICONINFOFields(env, arg0, &_arg0); + rc = (jint)CreateIconIndirect(lparg0); + if (arg0) setICONINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "CreateIconIndirect\n") + return rc; +} +#endif + +#ifndef NO_CreateMenu +JNIEXPORT jint JNICALL OS_NATIVE(CreateMenu) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "CreateMenu\n") + rc = (jint)CreateMenu(); + NATIVE_EXIT(env, that, "CreateMenu\n") + return rc; +} +#endif + +#ifndef NO_CreatePalette +JNIEXPORT jint JNICALL OS_NATIVE(CreatePalette) + (JNIEnv *env, jclass that, jbyteArray arg0) +{ + jbyte *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreatePalette\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + rc = (jint)CreatePalette((LOGPALETTE *)lparg0); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "CreatePalette\n") + return rc; +} +#endif + +#ifndef NO_CreatePatternBrush +JNIEXPORT jint JNICALL OS_NATIVE(CreatePatternBrush) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "CreatePatternBrush\n") + rc = (jint)CreatePatternBrush((HBITMAP)arg0); + NATIVE_EXIT(env, that, "CreatePatternBrush\n") + return rc; +} +#endif + +#ifndef NO_CreatePen +JNIEXPORT jint JNICALL OS_NATIVE(CreatePen) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "CreatePen\n") + rc = (jint)CreatePen(arg0, arg1, (COLORREF)arg2); + NATIVE_EXIT(env, that, "CreatePen\n") + return rc; +} +#endif + +#ifndef NO_CreatePopupMenu +JNIEXPORT jint JNICALL OS_NATIVE(CreatePopupMenu) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "CreatePopupMenu\n") + rc = (jint)CreatePopupMenu(); + NATIVE_EXIT(env, that, "CreatePopupMenu\n") + return rc; +} +#endif + +#ifndef NO_CreateRectRgn +JNIEXPORT jint JNICALL OS_NATIVE(CreateRectRgn) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "CreateRectRgn\n") + rc = (jint)CreateRectRgn(arg0, arg1, arg2, arg3); + NATIVE_EXIT(env, that, "CreateRectRgn\n") + return rc; +} +#endif + +#ifndef NO_CreateSolidBrush +JNIEXPORT jint JNICALL OS_NATIVE(CreateSolidBrush) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "CreateSolidBrush\n") + rc = (jint)CreateSolidBrush((COLORREF)arg0); + NATIVE_EXIT(env, that, "CreateSolidBrush\n") + return rc; +} +#endif + +#ifndef NO_CreateWindowExA +JNIEXPORT jint JNICALL OS_NATIVE(CreateWindowExA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jbyteArray arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9, jint arg10, jobject arg11) +{ + jbyte *lparg1=NULL; + jbyte *lparg2=NULL; + CREATESTRUCT _arg11, *lparg11=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateWindowExA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + if (arg11) lparg11 = getCREATESTRUCTFields(env, arg11, &_arg11); + rc = (jint)CreateWindowExA(arg0, (LPSTR)lparg1, lparg2, arg3, arg4, arg5, arg6, arg7, (HWND)arg8, (HMENU)arg9, (HINSTANCE)arg10, lparg11); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + if (arg11) setCREATESTRUCTFields(env, arg11, lparg11); + NATIVE_EXIT(env, that, "CreateWindowExA\n") + return rc; +} +#endif + +#ifndef NO_CreateWindowExW +JNIEXPORT jint JNICALL OS_NATIVE(CreateWindowExW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jcharArray arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9, jint arg10, jobject arg11) +{ + jchar *lparg1=NULL; + jchar *lparg2=NULL; + CREATESTRUCT _arg11, *lparg11=NULL; + jint rc; + NATIVE_ENTER(env, that, "CreateWindowExW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + if (arg11) lparg11 = getCREATESTRUCTFields(env, arg11, &_arg11); + rc = (jint)CreateWindowExW(arg0, (LPWSTR)lparg1, (LPWSTR)lparg2, arg3, arg4, arg5, arg6, arg7, (HWND)arg8, (HMENU)arg9, (HINSTANCE)arg10, lparg11); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + if (arg11) setCREATESTRUCTFields(env, arg11, lparg11); + NATIVE_EXIT(env, that, "CreateWindowExW\n") + return rc; +} +#endif + +#ifndef NO_DefFrameProcA +JNIEXPORT jint JNICALL OS_NATIVE(DefFrameProcA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jint rc; + NATIVE_ENTER(env, that, "DefFrameProcA\n") + rc = (jint)DefFrameProcA((HWND)arg0, (HWND)arg1, arg2, (WPARAM)arg3, (LPARAM)arg4); + NATIVE_EXIT(env, that, "DefFrameProcA\n") + return rc; +} +#endif + +#ifndef NO_DefFrameProcW +JNIEXPORT jint JNICALL OS_NATIVE(DefFrameProcW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jint rc; + NATIVE_ENTER(env, that, "DefFrameProcW\n") + rc = (jint)DefFrameProcW((HWND)arg0, (HWND)arg1, arg2, (WPARAM)arg3, (LPARAM)arg4); + NATIVE_EXIT(env, that, "DefFrameProcW\n") + return rc; +} +#endif + +#ifndef NO_DefMDIChildProcA +JNIEXPORT jint JNICALL OS_NATIVE(DefMDIChildProcA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "DefMDIChildProcA\n") + rc = (jint)DefMDIChildProcA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "DefMDIChildProcA\n") + return rc; +} +#endif + +#ifndef NO_DefMDIChildProcW +JNIEXPORT jint JNICALL OS_NATIVE(DefMDIChildProcW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "DefMDIChildProcW\n") + rc = (jint)DefMDIChildProcW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "DefMDIChildProcW\n") + return rc; +} +#endif + +#ifndef NO_DefWindowProcA +JNIEXPORT jint JNICALL OS_NATIVE(DefWindowProcA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "DefWindowProcA\n") + rc = (jint)DefWindowProcA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "DefWindowProcA\n") + return rc; +} +#endif + +#ifndef NO_DefWindowProcW +JNIEXPORT jint JNICALL OS_NATIVE(DefWindowProcW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "DefWindowProcW\n") + rc = (jint)DefWindowProcW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "DefWindowProcW\n") + return rc; +} +#endif + +#ifndef NO_DeferWindowPos +JNIEXPORT jint JNICALL OS_NATIVE(DeferWindowPos) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7) +{ + jint rc; + NATIVE_ENTER(env, that, "DeferWindowPos\n") + rc = (jint)DeferWindowPos((HDWP)arg0, (HWND)arg1, (HWND)arg2, arg3, arg4, arg5, arg6, arg7); + NATIVE_EXIT(env, that, "DeferWindowPos\n") + return rc; +} +#endif + +#ifndef NO_DeleteDC +JNIEXPORT jboolean JNICALL OS_NATIVE(DeleteDC) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DeleteDC\n") + rc = (jboolean)DeleteDC((HDC)arg0); + NATIVE_EXIT(env, that, "DeleteDC\n") + return rc; +} +#endif + +#ifndef NO_DeleteMenu +JNIEXPORT jboolean JNICALL OS_NATIVE(DeleteMenu) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DeleteMenu\n") + rc = (jboolean)DeleteMenu((HMENU)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "DeleteMenu\n") + return rc; +} +#endif + +#ifndef NO_DeleteObject +JNIEXPORT jboolean JNICALL OS_NATIVE(DeleteObject) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DeleteObject\n") + rc = (jboolean)DeleteObject((HGDIOBJ)arg0); + NATIVE_EXIT(env, that, "DeleteObject\n") + return rc; +} +#endif + +#ifndef NO_DestroyAcceleratorTable +JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyAcceleratorTable) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DestroyAcceleratorTable\n") + rc = (jboolean)DestroyAcceleratorTable((HACCEL)arg0); + NATIVE_EXIT(env, that, "DestroyAcceleratorTable\n") + return rc; +} +#endif + +#ifndef NO_DestroyCaret +JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyCaret) + (JNIEnv *env, jclass that) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DestroyCaret\n") + rc = (jboolean)DestroyCaret(); + NATIVE_EXIT(env, that, "DestroyCaret\n") + return rc; +} +#endif + +#ifndef NO_DestroyCursor +JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyCursor) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DestroyCursor\n") + rc = (jboolean)DestroyCursor((HCURSOR)arg0); + NATIVE_EXIT(env, that, "DestroyCursor\n") + return rc; +} +#endif + +#ifndef NO_DestroyIcon +JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyIcon) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DestroyIcon\n") + rc = (jboolean)DestroyIcon((HICON)arg0); + NATIVE_EXIT(env, that, "DestroyIcon\n") + return rc; +} +#endif + +#ifndef NO_DestroyMenu +JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyMenu) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DestroyMenu\n") + rc = (jboolean)DestroyMenu((HMENU)arg0); + NATIVE_EXIT(env, that, "DestroyMenu\n") + return rc; +} +#endif + +#ifndef NO_DestroyWindow +JNIEXPORT jboolean JNICALL OS_NATIVE(DestroyWindow) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DestroyWindow\n") + rc = (jboolean)DestroyWindow((HWND)arg0); + NATIVE_EXIT(env, that, "DestroyWindow\n") + return rc; +} +#endif + +#ifndef NO_DispatchMessageA +JNIEXPORT jint JNICALL OS_NATIVE(DispatchMessageA) + (JNIEnv *env, jclass that, jobject arg0) +{ + MSG _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "DispatchMessageA\n") + if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0); + rc = (jint)DispatchMessageA(lparg0); + if (arg0) setMSGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "DispatchMessageA\n") + return rc; +} +#endif + +#ifndef NO_DispatchMessageW +JNIEXPORT jint JNICALL OS_NATIVE(DispatchMessageW) + (JNIEnv *env, jclass that, jobject arg0) +{ + MSG _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "DispatchMessageW\n") + if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0); + rc = (jint)DispatchMessageW(lparg0); + if (arg0) setMSGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "DispatchMessageW\n") + return rc; +} +#endif + +#ifndef NO_DragDetect +JNIEXPORT jboolean JNICALL OS_NATIVE(DragDetect) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + POINT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "DragDetect\n") + if (arg1) lparg1 = getPOINTFields(env, arg1, &_arg1); + rc = (jboolean)DragDetect((HWND)arg0, *lparg1); + if (arg1) setPOINTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "DragDetect\n") + return rc; +} +#endif + +#ifndef NO_DragFinish +JNIEXPORT void JNICALL OS_NATIVE(DragFinish) + (JNIEnv *env, jclass that, jint arg0) +{ + NATIVE_ENTER(env, that, "DragFinish\n") + DragFinish((HDROP)arg0); + NATIVE_EXIT(env, that, "DragFinish\n") +} +#endif + +#ifndef NO_DragQueryFileA +JNIEXPORT jint JNICALL OS_NATIVE(DragQueryFileA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jint arg3) +{ + jbyte *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "DragQueryFileA\n") + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + rc = (jint)DragQueryFileA((HDROP)arg0, arg1, (LPTSTR)lparg2, arg3); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "DragQueryFileA\n") + return rc; +} +#endif + +#ifndef NO_DragQueryFileW +JNIEXPORT jint JNICALL OS_NATIVE(DragQueryFileW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3) +{ + jchar *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "DragQueryFileW\n") + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + rc = (jint)DragQueryFileW((HDROP)arg0, arg1, (LPWSTR)lparg2, arg3); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "DragQueryFileW\n") + return rc; +} +#endif + +#ifndef NO_DrawEdge +JNIEXPORT jboolean JNICALL OS_NATIVE(DrawEdge) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jint arg3) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "DrawEdge\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)DrawEdge((HDC)arg0, lparg1, arg2, arg3); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "DrawEdge\n") + return rc; +} +#endif + +#ifndef NO_DrawFocusRect +JNIEXPORT jboolean JNICALL OS_NATIVE(DrawFocusRect) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "DrawFocusRect\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)DrawFocusRect((HDC)arg0, lparg1); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "DrawFocusRect\n") + return rc; +} +#endif + +#ifndef NO_DrawFrameControl +JNIEXPORT jboolean JNICALL OS_NATIVE(DrawFrameControl) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jint arg3) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "DrawFrameControl\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)DrawFrameControl((HDC)arg0, lparg1, arg2, arg3); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "DrawFrameControl\n") + return rc; +} +#endif + +#ifndef NO_DrawIconEx +JNIEXPORT jboolean JNICALL OS_NATIVE(DrawIconEx) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DrawIconEx\n") + rc = (jboolean)DrawIconEx((HDC)arg0, arg1, arg2, (HICON)arg3, arg4, arg5, arg6, (HBRUSH)arg7, arg8); + NATIVE_EXIT(env, that, "DrawIconEx\n") + return rc; +} +#endif + +#ifndef NO_DrawMenuBar +JNIEXPORT jboolean JNICALL OS_NATIVE(DrawMenuBar) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DrawMenuBar\n") + rc = (jboolean)DrawMenuBar((HWND)arg0); + NATIVE_EXIT(env, that, "DrawMenuBar\n") + return rc; +} +#endif + +#ifndef NO_DrawStateA +JNIEXPORT jboolean JNICALL OS_NATIVE(DrawStateA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DrawStateA\n") + rc = (jboolean)DrawStateA((HDC)arg0, (HBRUSH)arg1, (DRAWSTATEPROC)arg2, (LPARAM)arg3, (WPARAM)arg4, arg5, arg6, arg7, arg8, arg9); + NATIVE_EXIT(env, that, "DrawStateA\n") + return rc; +} +#endif + +#ifndef NO_DrawStateW +JNIEXPORT jboolean JNICALL OS_NATIVE(DrawStateW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9) +{ + jboolean rc; + NATIVE_ENTER(env, that, "DrawStateW\n") + rc = (jboolean)DrawStateW((HDC)arg0, (HBRUSH)arg1, (DRAWSTATEPROC)arg2, (LPARAM)arg3, (WPARAM)arg4, arg5, arg6, arg7, arg8, arg9); + NATIVE_EXIT(env, that, "DrawStateW\n") + return rc; +} +#endif + +#ifndef NO_DrawTextA +JNIEXPORT jint JNICALL OS_NATIVE(DrawTextA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jobject arg3, jint arg4) +{ + jbyte *lparg1=NULL; + RECT _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "DrawTextA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3); + rc = (jint)DrawTextA((HDC)arg0, (LPSTR)lparg1, arg2, lparg3, arg4); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg3) setRECTFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "DrawTextA\n") + return rc; +} +#endif + +#ifndef NO_DrawTextW +JNIEXPORT jint JNICALL OS_NATIVE(DrawTextW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jobject arg3, jint arg4) +{ + jchar *lparg1=NULL; + RECT _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "DrawTextW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3); + rc = (jint)DrawTextW((HDC)arg0, (LPWSTR)lparg1, arg2, lparg3, arg4); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg3) setRECTFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "DrawTextW\n") + return rc; +} +#endif + +#ifndef NO_Ellipse +JNIEXPORT jboolean JNICALL OS_NATIVE(Ellipse) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jboolean rc; + NATIVE_ENTER(env, that, "Ellipse\n") + rc = (jboolean)Ellipse((HDC)arg0, arg1, arg2, arg3, arg4); + NATIVE_EXIT(env, that, "Ellipse\n") + return rc; +} +#endif + +#ifndef NO_EnableMenuItem +JNIEXPORT jboolean JNICALL OS_NATIVE(EnableMenuItem) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EnableMenuItem\n") + rc = (jboolean)EnableMenuItem((HMENU)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "EnableMenuItem\n") + return rc; +} +#endif + +#ifndef NO_EnableScrollBar +JNIEXPORT jboolean JNICALL OS_NATIVE(EnableScrollBar) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EnableScrollBar\n") + rc = (jboolean)EnableScrollBar((HWND)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "EnableScrollBar\n") + return rc; +} +#endif + +#ifndef NO_EnableWindow +JNIEXPORT jboolean JNICALL OS_NATIVE(EnableWindow) + (JNIEnv *env, jclass that, jint arg0, jboolean arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EnableWindow\n") + rc = (jboolean)EnableWindow((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "EnableWindow\n") + return rc; +} +#endif + +#ifndef NO_EndDeferWindowPos +JNIEXPORT jboolean JNICALL OS_NATIVE(EndDeferWindowPos) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EndDeferWindowPos\n") + rc = (jboolean)EndDeferWindowPos((HDWP)arg0); + NATIVE_EXIT(env, that, "EndDeferWindowPos\n") + return rc; +} +#endif + +#ifndef NO_EndDoc +JNIEXPORT jint JNICALL OS_NATIVE(EndDoc) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "EndDoc\n") + rc = (jint)EndDoc((HDC)arg0); + NATIVE_EXIT(env, that, "EndDoc\n") + return rc; +} +#endif + +#ifndef NO_EndPage +JNIEXPORT jint JNICALL OS_NATIVE(EndPage) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "EndPage\n") + rc = (jint)EndPage((HDC)arg0); + NATIVE_EXIT(env, that, "EndPage\n") + return rc; +} +#endif + +#ifndef NO_EndPaint +JNIEXPORT jint JNICALL OS_NATIVE(EndPaint) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + PAINTSTRUCT _arg1, *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "EndPaint\n") + if (arg1) lparg1 = getPAINTSTRUCTFields(env, arg1, &_arg1); + rc = (jint)EndPaint((HWND)arg0, lparg1); + if (arg1) setPAINTSTRUCTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "EndPaint\n") + return rc; +} +#endif + +#ifndef NO_EnumFontFamiliesA +JNIEXPORT jint JNICALL OS_NATIVE(EnumFontFamiliesA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jint arg3) +{ + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "EnumFontFamiliesA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)EnumFontFamiliesA((HDC)arg0, (LPSTR)lparg1, (FONTENUMPROC)arg2, (LPARAM)arg3); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "EnumFontFamiliesA\n") + return rc; +} +#endif + +#ifndef NO_EnumFontFamiliesW +JNIEXPORT jint JNICALL OS_NATIVE(EnumFontFamiliesW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jint arg3) +{ + jchar *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "EnumFontFamiliesW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jint)EnumFontFamiliesW((HDC)arg0, (LPCWSTR)lparg1, (FONTENUMPROCW)arg2, (LPARAM)arg3); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "EnumFontFamiliesW\n") + return rc; +} +#endif + +#ifndef NO_EnumSystemLocalesA +JNIEXPORT jboolean JNICALL OS_NATIVE(EnumSystemLocalesA) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EnumSystemLocalesA\n") + rc = (jboolean)EnumSystemLocalesA((LOCALE_ENUMPROCA)arg0, arg1); + NATIVE_EXIT(env, that, "EnumSystemLocalesA\n") + return rc; +} +#endif + +#ifndef NO_EnumSystemLocalesW +JNIEXPORT jboolean JNICALL OS_NATIVE(EnumSystemLocalesW) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EnumSystemLocalesW\n") + rc = (jboolean)EnumSystemLocalesW((LOCALE_ENUMPROCW)arg0, arg1); + NATIVE_EXIT(env, that, "EnumSystemLocalesW\n") + return rc; +} +#endif + +#ifndef NO_EqualRect +JNIEXPORT jboolean JNICALL OS_NATIVE(EqualRect) + (JNIEnv *env, jclass that, jobject arg0, jobject arg1) +{ + RECT _arg0, *lparg0=NULL; + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "EqualRect\n") + if (arg0) lparg0 = getRECTFields(env, arg0, &_arg0); + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)EqualRect((CONST RECT *)lparg0, (CONST RECT *)lparg1); + if (arg0) setRECTFields(env, arg0, lparg0); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "EqualRect\n") + return rc; +} +#endif + +#ifndef NO_EqualRgn +JNIEXPORT jboolean JNICALL OS_NATIVE(EqualRgn) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EqualRgn\n") + rc = (jboolean)EqualRgn((HRGN)arg0, (HRGN)arg1); + NATIVE_EXIT(env, that, "EqualRgn\n") + return rc; +} +#endif + +#ifndef NO_ExpandEnvironmentStringsA +JNIEXPORT jint JNICALL OS_NATIVE(ExpandEnvironmentStringsA) + (JNIEnv *env, jclass that, jbyteArray arg0, jbyteArray arg1, jint arg2) +{ + jbyte *lparg0=NULL; + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "ExpandEnvironmentStringsA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)ExpandEnvironmentStringsA(lparg0, lparg1, arg2); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "ExpandEnvironmentStringsA\n") + return rc; +} +#endif + +#ifndef NO_ExpandEnvironmentStringsW +JNIEXPORT jint JNICALL OS_NATIVE(ExpandEnvironmentStringsW) + (JNIEnv *env, jclass that, jcharArray arg0, jcharArray arg1, jint arg2) +{ + jchar *lparg0=NULL; + jchar *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "ExpandEnvironmentStringsW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jint)ExpandEnvironmentStringsW(lparg0, lparg1, arg2); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "ExpandEnvironmentStringsW\n") + return rc; +} +#endif + +#ifndef NO_ExtTextOutA +JNIEXPORT jboolean JNICALL OS_NATIVE(ExtTextOutA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jobject arg4, jbyteArray arg5, jint arg6, jintArray arg7) +{ + RECT _arg4, *lparg4=NULL; + jbyte *lparg5=NULL; + jint *lparg7=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ExtTextOutA\n") + if (arg4) lparg4 = getRECTFields(env, arg4, &_arg4); + if (arg5) lparg5 = (*env)->GetByteArrayElements(env, arg5, NULL); + if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL); + rc = (jboolean)ExtTextOutA((HDC)arg0, arg1, arg2, arg3, lparg4, (LPSTR)lparg5, arg6, (CONST INT *)lparg7); + if (arg4) setRECTFields(env, arg4, lparg4); + if (arg5) (*env)->ReleaseByteArrayElements(env, arg5, lparg5, 0); + if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0); + NATIVE_EXIT(env, that, "ExtTextOutA\n") + return rc; +} +#endif + +#ifndef NO_ExtTextOutW +JNIEXPORT jboolean JNICALL OS_NATIVE(ExtTextOutW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jobject arg4, jcharArray arg5, jint arg6, jintArray arg7) +{ + RECT _arg4, *lparg4=NULL; + jchar *lparg5=NULL; + jint *lparg7=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ExtTextOutW\n") + if (arg4) lparg4 = getRECTFields(env, arg4, &_arg4); + if (arg5) lparg5 = (*env)->GetCharArrayElements(env, arg5, NULL); + if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL); + rc = (jboolean)ExtTextOutW((HDC)arg0, arg1, arg2, arg3, lparg4, (LPWSTR)lparg5, arg6, (CONST INT *)lparg7); + if (arg4) setRECTFields(env, arg4, lparg4); + if (arg5) (*env)->ReleaseCharArrayElements(env, arg5, lparg5, 0); + if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0); + NATIVE_EXIT(env, that, "ExtTextOutW\n") + return rc; +} +#endif + +#ifndef NO_ExtractIconExA +JNIEXPORT jint JNICALL OS_NATIVE(ExtractIconExA) + (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1, jintArray arg2, jintArray arg3, jint arg4) +{ + jbyte *lparg0=NULL; + jint *lparg2=NULL; + jint *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "ExtractIconExA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jint)ExtractIconExA((LPSTR)lparg0, arg1, (HICON FAR *)lparg2, (HICON FAR *)lparg3, arg4); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "ExtractIconExA\n") + return rc; +} +#endif + +#ifndef NO_ExtractIconExW +JNIEXPORT jint JNICALL OS_NATIVE(ExtractIconExW) + (JNIEnv *env, jclass that, jcharArray arg0, jint arg1, jintArray arg2, jintArray arg3, jint arg4) +{ + jchar *lparg0=NULL; + jint *lparg2=NULL; + jint *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "ExtractIconExW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jint)ExtractIconExW((LPWSTR)lparg0, arg1, (HICON FAR *)lparg2, (HICON FAR *)lparg3, arg4); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "ExtractIconExW\n") + return rc; +} +#endif + +#ifndef NO_FillRect +JNIEXPORT jint JNICALL OS_NATIVE(FillRect) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + RECT _arg1, *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "FillRect\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jint)FillRect((HDC)arg0, lparg1, (HBRUSH)arg2); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "FillRect\n") + return rc; +} +#endif + +#ifndef NO_FindWindowA +JNIEXPORT jint JNICALL OS_NATIVE(FindWindowA) + (JNIEnv *env, jclass that, jbyteArray arg0, jbyteArray arg1) +{ + jbyte *lparg0=NULL; + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "FindWindowA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)FindWindowA((LPSTR)lparg0, (LPSTR)lparg1); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "FindWindowA\n") + return rc; +} +#endif + +#ifndef NO_FindWindowW +JNIEXPORT jint JNICALL OS_NATIVE(FindWindowW) + (JNIEnv *env, jclass that, jcharArray arg0, jcharArray arg1) +{ + jchar *lparg0=NULL; + jchar *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "FindWindowW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jint)FindWindowW((LPWSTR)lparg0, (LPWSTR)lparg1); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "FindWindowW\n") + return rc; +} +#endif + +#ifndef NO_FreeLibrary +JNIEXPORT jboolean JNICALL OS_NATIVE(FreeLibrary) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "FreeLibrary\n") + rc = (jboolean)FreeLibrary((HMODULE)arg0); + NATIVE_EXIT(env, that, "FreeLibrary\n") + return rc; +} +#endif + +#ifndef NO_GetACP +JNIEXPORT jint JNICALL OS_NATIVE(GetACP) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetACP\n") + rc = (jint)GetACP(); + NATIVE_EXIT(env, that, "GetACP\n") + return rc; +} +#endif + +#ifndef NO_GetActiveWindow +JNIEXPORT jint JNICALL OS_NATIVE(GetActiveWindow) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetActiveWindow\n") + rc = (jint)GetActiveWindow(); + NATIVE_EXIT(env, that, "GetActiveWindow\n") + return rc; +} +#endif + +#ifndef NO_GetBkColor +JNIEXPORT jint JNICALL OS_NATIVE(GetBkColor) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetBkColor\n") + rc = (jint)GetBkColor((HDC)arg0); + NATIVE_EXIT(env, that, "GetBkColor\n") + return rc; +} +#endif + +#ifndef NO_GetCapture +JNIEXPORT jint JNICALL OS_NATIVE(GetCapture) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetCapture\n") + rc = (jint)GetCapture(); + NATIVE_EXIT(env, that, "GetCapture\n") + return rc; +} +#endif + +#ifndef NO_GetCaretPos +JNIEXPORT jboolean JNICALL OS_NATIVE(GetCaretPos) + (JNIEnv *env, jclass that, jobject arg0) +{ + POINT _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetCaretPos\n") + if (arg0) lparg0 = getPOINTFields(env, arg0, &_arg0); + rc = (jboolean)GetCaretPos(lparg0); + if (arg0) setPOINTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetCaretPos\n") + return rc; +} +#endif + +#ifndef NO_GetCharABCWidthsA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetCharABCWidthsA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3) +{ + jint *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetCharABCWidthsA\n") + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jboolean)GetCharABCWidthsA((HDC)arg0, arg1, arg2, (LPABC)lparg3); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetCharABCWidthsA\n") + return rc; +} +#endif + +#ifndef NO_GetCharABCWidthsW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetCharABCWidthsW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3) +{ + jint *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetCharABCWidthsW\n") + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jboolean)GetCharABCWidthsW((HDC)arg0, arg1, arg2, (LPABC)lparg3); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetCharABCWidthsW\n") + return rc; +} +#endif + +#ifndef NO_GetCharWidthA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetCharWidthA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3) +{ + jint *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetCharWidthA\n") + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jboolean)GetCharWidthA((HDC)arg0, arg1, arg2, (LPINT)lparg3); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetCharWidthA\n") + return rc; +} +#endif + +#ifndef NO_GetCharWidthW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetCharWidthW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3) +{ + jint *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetCharWidthW\n") + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jboolean)GetCharWidthW((HDC)arg0, arg1, arg2, (LPINT)lparg3); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetCharWidthW\n") + return rc; +} +#endif + +#ifndef NO_GetCharacterPlacementA +JNIEXPORT jint JNICALL OS_NATIVE(GetCharacterPlacementA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jint arg3, jobject arg4, jint arg5) +{ + jbyte *lparg1=NULL; + GCP_RESULTS _arg4, *lparg4=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetCharacterPlacementA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg4) lparg4 = getGCP_RESULTSFields(env, arg4, &_arg4); + rc = (jint)GetCharacterPlacementA((HDC)arg0, (LPSTR)lparg1, arg2, arg3, lparg4, arg5); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg4) setGCP_RESULTSFields(env, arg4, lparg4); + NATIVE_EXIT(env, that, "GetCharacterPlacementA\n") + return rc; +} +#endif + +#ifndef NO_GetCharacterPlacementW +JNIEXPORT jint JNICALL OS_NATIVE(GetCharacterPlacementW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jint arg3, jobject arg4, jint arg5) +{ + jchar *lparg1=NULL; + GCP_RESULTS _arg4, *lparg4=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetCharacterPlacementW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg4) lparg4 = getGCP_RESULTSFields(env, arg4, &_arg4); + rc = (jint)GetCharacterPlacementW((HDC)arg0, (LPWSTR)lparg1, arg2, arg3, (LPGCP_RESULTSW)lparg4, arg5); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg4) setGCP_RESULTSFields(env, arg4, lparg4); + NATIVE_EXIT(env, that, "GetCharacterPlacementW\n") + return rc; +} +#endif + +#ifndef NO_GetClassInfoA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetClassInfoA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jobject arg2) +{ + jbyte *lparg1=NULL; + WNDCLASS _arg2, *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetClassInfoA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg2) lparg2 = getWNDCLASSFields(env, arg2, &_arg2); + rc = (jboolean)GetClassInfoA((HINSTANCE)arg0, (LPSTR)lparg1, lparg2); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg2) setWNDCLASSFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetClassInfoA\n") + return rc; +} +#endif + +#ifndef NO_GetClassInfoW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetClassInfoW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jobject arg2) +{ + jchar *lparg1=NULL; + WNDCLASS _arg2, *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetClassInfoW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg2) lparg2 = getWNDCLASSFields(env, arg2, &_arg2); + rc = (jboolean)GetClassInfoW((HINSTANCE)arg0, (LPWSTR)lparg1, (LPWNDCLASSW)lparg2); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg2) setWNDCLASSFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetClassInfoW\n") + return rc; +} +#endif + +#ifndef NO_GetClientRect +JNIEXPORT jboolean JNICALL OS_NATIVE(GetClientRect) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetClientRect\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)GetClientRect((HWND)arg0, lparg1); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetClientRect\n") + return rc; +} +#endif + +#ifndef NO_GetClipBox +JNIEXPORT jint JNICALL OS_NATIVE(GetClipBox) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + RECT _arg1, *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetClipBox\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jint)GetClipBox((HDC)arg0, lparg1); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetClipBox\n") + return rc; +} +#endif + +#ifndef NO_GetClipRgn +JNIEXPORT jint JNICALL OS_NATIVE(GetClipRgn) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetClipRgn\n") + rc = (jint)GetClipRgn((HDC)arg0, (HRGN)arg1); + NATIVE_EXIT(env, that, "GetClipRgn\n") + return rc; +} +#endif + +#ifndef NO_GetClipboardData +JNIEXPORT jint JNICALL OS_NATIVE(GetClipboardData) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetClipboardData\n") + rc = (jint)GetClipboardData(arg0); + NATIVE_EXIT(env, that, "GetClipboardData\n") + return rc; +} +#endif + +#ifndef NO_GetClipboardFormatNameA +JNIEXPORT jint JNICALL OS_NATIVE(GetClipboardFormatNameA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2) +{ + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetClipboardFormatNameA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)GetClipboardFormatNameA(arg0, lparg1, arg2); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetClipboardFormatNameA\n") + return rc; +} +#endif + +#ifndef NO_GetClipboardFormatNameW +JNIEXPORT jint JNICALL OS_NATIVE(GetClipboardFormatNameW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2) +{ + jchar *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetClipboardFormatNameW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jint)GetClipboardFormatNameW(arg0, (LPWSTR)lparg1, arg2); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetClipboardFormatNameW\n") + return rc; +} +#endif + +#ifndef NO_GetCurrentObject +JNIEXPORT jint JNICALL OS_NATIVE(GetCurrentObject) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetCurrentObject\n") + rc = (jint)GetCurrentObject((HDC)arg0, arg1); + NATIVE_EXIT(env, that, "GetCurrentObject\n") + return rc; +} +#endif + +#ifndef NO_GetCurrentProcessId +JNIEXPORT jint JNICALL OS_NATIVE(GetCurrentProcessId) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetCurrentProcessId\n") + rc = (jint)GetCurrentProcessId(); + NATIVE_EXIT(env, that, "GetCurrentProcessId\n") + return rc; +} +#endif + +#ifndef NO_GetCurrentThreadId +JNIEXPORT jint JNICALL OS_NATIVE(GetCurrentThreadId) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetCurrentThreadId\n") + rc = (jint)GetCurrentThreadId(); + NATIVE_EXIT(env, that, "GetCurrentThreadId\n") + return rc; +} +#endif + +#ifndef NO_GetCursor +JNIEXPORT jint JNICALL OS_NATIVE(GetCursor) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetCursor\n") + rc = (jint)GetCursor(); + NATIVE_EXIT(env, that, "GetCursor\n") + return rc; +} +#endif + +#ifndef NO_GetCursorPos +JNIEXPORT jboolean JNICALL OS_NATIVE(GetCursorPos) + (JNIEnv *env, jclass that, jobject arg0) +{ + POINT _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetCursorPos\n") + if (arg0) lparg0 = getPOINTFields(env, arg0, &_arg0); + rc = (jboolean)GetCursorPos(lparg0); + if (arg0) setPOINTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetCursorPos\n") + return rc; +} +#endif + +#ifndef NO_GetDC +JNIEXPORT jint JNICALL OS_NATIVE(GetDC) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetDC\n") + rc = (jint)GetDC((HWND)arg0); + NATIVE_EXIT(env, that, "GetDC\n") + return rc; +} +#endif + +#ifndef NO_GetDCEx +JNIEXPORT jint JNICALL OS_NATIVE(GetDCEx) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "GetDCEx\n") + rc = (jint)GetDCEx((HWND)arg0, (HRGN)arg1, arg2); + NATIVE_EXIT(env, that, "GetDCEx\n") + return rc; +} +#endif + +#ifndef NO_GetDIBColorTable +JNIEXPORT jint JNICALL OS_NATIVE(GetDIBColorTable) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3) +{ + jbyte *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetDIBColorTable\n") + if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL); + rc = (jint)GetDIBColorTable((HDC)arg0, arg1, arg2, (RGBQUAD *)lparg3); + if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetDIBColorTable\n") + return rc; +} +#endif + +#ifndef NO_GetDIBits +JNIEXPORT jint JNICALL OS_NATIVE(GetDIBits) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jbyteArray arg5, jint arg6) +{ + jbyte *lparg5=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetDIBits\n") + if (arg5) lparg5 = (*env)->GetByteArrayElements(env, arg5, NULL); + rc = (jint)GetDIBits((HDC)arg0, (HBITMAP)arg1, arg2, arg3, (LPVOID)arg4, (LPBITMAPINFO)lparg5, arg6); + if (arg5) (*env)->ReleaseByteArrayElements(env, arg5, lparg5, 0); + NATIVE_EXIT(env, that, "GetDIBits\n") + return rc; +} +#endif + +#ifndef NO_GetDesktopWindow +JNIEXPORT jint JNICALL OS_NATIVE(GetDesktopWindow) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetDesktopWindow\n") + rc = (jint)GetDesktopWindow(); + NATIVE_EXIT(env, that, "GetDesktopWindow\n") + return rc; +} +#endif + +#ifndef NO_GetDeviceCaps +JNIEXPORT jint JNICALL OS_NATIVE(GetDeviceCaps) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetDeviceCaps\n") + rc = (jint)GetDeviceCaps((HDC)arg0, arg1); + NATIVE_EXIT(env, that, "GetDeviceCaps\n") + return rc; +} +#endif + +#ifndef NO_GetDialogBaseUnits +JNIEXPORT jint JNICALL OS_NATIVE(GetDialogBaseUnits) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetDialogBaseUnits\n") + rc = (jint)GetDialogBaseUnits(); + NATIVE_EXIT(env, that, "GetDialogBaseUnits\n") + return rc; +} +#endif + +#ifndef NO_GetDlgItem +JNIEXPORT jint JNICALL OS_NATIVE(GetDlgItem) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetDlgItem\n") + rc = (jint)GetDlgItem((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "GetDlgItem\n") + return rc; +} +#endif + +#ifndef NO_GetDoubleClickTime +JNIEXPORT jint JNICALL OS_NATIVE(GetDoubleClickTime) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetDoubleClickTime\n") + rc = (jint)GetDoubleClickTime(); + NATIVE_EXIT(env, that, "GetDoubleClickTime\n") + return rc; +} +#endif + +#ifndef NO_GetFocus +JNIEXPORT jint JNICALL OS_NATIVE(GetFocus) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetFocus\n") + rc = (jint)GetFocus(); + NATIVE_EXIT(env, that, "GetFocus\n") + return rc; +} +#endif + +#ifndef NO_GetFontLanguageInfo +JNIEXPORT jint JNICALL OS_NATIVE(GetFontLanguageInfo) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetFontLanguageInfo\n") + rc = (jint)GetFontLanguageInfo((HDC)arg0); + NATIVE_EXIT(env, that, "GetFontLanguageInfo\n") + return rc; +} +#endif + +#ifndef NO_GetIconInfo +JNIEXPORT jboolean JNICALL OS_NATIVE(GetIconInfo) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + ICONINFO _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetIconInfo\n") + if (arg1) lparg1 = getICONINFOFields(env, arg1, &_arg1); + rc = (jboolean)GetIconInfo((HICON)arg0, lparg1); + if (arg1) setICONINFOFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetIconInfo\n") + return rc; +} +#endif + +#ifndef NO_GetKeyNameTextA +JNIEXPORT jint JNICALL OS_NATIVE(GetKeyNameTextA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2) +{ + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetKeyNameTextA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)GetKeyNameTextA(arg0, (LPSTR)lparg1, arg2); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetKeyNameTextA\n") + return rc; +} +#endif + +#ifndef NO_GetKeyNameTextW +JNIEXPORT jint JNICALL OS_NATIVE(GetKeyNameTextW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2) +{ + jchar *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetKeyNameTextW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jint)GetKeyNameTextW(arg0, (LPWSTR)lparg1, arg2); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetKeyNameTextW\n") + return rc; +} +#endif + +#ifndef NO_GetKeyState +JNIEXPORT jshort JNICALL OS_NATIVE(GetKeyState) + (JNIEnv *env, jclass that, jint arg0) +{ + jshort rc; + NATIVE_ENTER(env, that, "GetKeyState\n") + rc = (jshort)GetKeyState(arg0); + NATIVE_EXIT(env, that, "GetKeyState\n") + return rc; +} +#endif + +#ifndef NO_GetKeyboardLayout +JNIEXPORT jint JNICALL OS_NATIVE(GetKeyboardLayout) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetKeyboardLayout\n") + rc = (jint)GetKeyboardLayout(arg0); + NATIVE_EXIT(env, that, "GetKeyboardLayout\n") + return rc; +} +#endif + +#ifndef NO_GetKeyboardLayoutList +JNIEXPORT jint JNICALL OS_NATIVE(GetKeyboardLayoutList) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1) +{ + jint *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetKeyboardLayoutList\n") + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); + rc = (jint)GetKeyboardLayoutList(arg0, (HKL FAR *)lparg1); + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetKeyboardLayoutList\n") + return rc; +} +#endif + +#ifndef NO_GetKeyboardState +JNIEXPORT jboolean JNICALL OS_NATIVE(GetKeyboardState) + (JNIEnv *env, jclass that, jbyteArray arg0) +{ + jbyte *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetKeyboardState\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + rc = (jboolean)GetKeyboardState((PBYTE)lparg0); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "GetKeyboardState\n") + return rc; +} +#endif + +#ifndef NO_GetLastActivePopup +JNIEXPORT jint JNICALL OS_NATIVE(GetLastActivePopup) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetLastActivePopup\n") + rc = (jint)GetLastActivePopup((HWND)arg0); + NATIVE_EXIT(env, that, "GetLastActivePopup\n") + return rc; +} +#endif + +#ifndef NO_GetLastError +JNIEXPORT jint JNICALL OS_NATIVE(GetLastError) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetLastError\n") + rc = (jint)GetLastError(); + NATIVE_EXIT(env, that, "GetLastError\n") + return rc; +} +#endif + +#ifndef NO_GetLocaleInfoA +JNIEXPORT jint JNICALL OS_NATIVE(GetLocaleInfoA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jint arg3) +{ + jbyte *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetLocaleInfoA\n") + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + rc = (jint)GetLocaleInfoA(arg0, arg1, (LPSTR)lparg2, arg3); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "GetLocaleInfoA\n") + return rc; +} +#endif + +#ifndef NO_GetLocaleInfoW +JNIEXPORT jint JNICALL OS_NATIVE(GetLocaleInfoW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3) +{ + jchar *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetLocaleInfoW\n") + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + rc = (jint)GetLocaleInfoW(arg0, arg1, (LPWSTR)lparg2, arg3); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "GetLocaleInfoW\n") + return rc; +} +#endif + +#ifndef NO_GetMenu +JNIEXPORT jint JNICALL OS_NATIVE(GetMenu) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetMenu\n") + rc = (jint)GetMenu((HWND)arg0); + NATIVE_EXIT(env, that, "GetMenu\n") + return rc; +} +#endif + +#ifndef NO_GetMenuDefaultItem +JNIEXPORT jint JNICALL OS_NATIVE(GetMenuDefaultItem) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "GetMenuDefaultItem\n") + rc = (jint)GetMenuDefaultItem((HMENU)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "GetMenuDefaultItem\n") + return rc; +} +#endif + +#ifndef NO_GetMenuItemCount +JNIEXPORT jint JNICALL OS_NATIVE(GetMenuItemCount) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetMenuItemCount\n") + rc = (jint)GetMenuItemCount((HMENU)arg0); + NATIVE_EXIT(env, that, "GetMenuItemCount\n") + return rc; +} +#endif + +#ifndef NO_GetMenuItemInfoA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetMenuItemInfoA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3) +{ + MENUITEMINFO _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetMenuItemInfoA\n") + if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3); + rc = (jboolean)GetMenuItemInfoA((HMENU)arg0, arg1, arg2, lparg3); + if (arg3) setMENUITEMINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "GetMenuItemInfoA\n") + return rc; +} +#endif + +#ifndef NO_GetMenuItemInfoW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetMenuItemInfoW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3) +{ + MENUITEMINFO _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetMenuItemInfoW\n") + if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3); + rc = (jboolean)GetMenuItemInfoW((HMENU)arg0, arg1, arg2, (LPMENUITEMINFOW)lparg3); + if (arg3) setMENUITEMINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "GetMenuItemInfoW\n") + return rc; +} +#endif + +#ifndef NO_GetMessageA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetMessageA) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3) +{ + MSG _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetMessageA\n") + if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0); + rc = (jboolean)GetMessageA(lparg0, (HWND)arg1, arg2, arg3); + if (arg0) setMSGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetMessageA\n") + return rc; +} +#endif + +#ifndef NO_GetMessagePos +JNIEXPORT jint JNICALL OS_NATIVE(GetMessagePos) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetMessagePos\n") + rc = (jint)GetMessagePos(); + NATIVE_EXIT(env, that, "GetMessagePos\n") + return rc; +} +#endif + +#ifndef NO_GetMessageTime +JNIEXPORT jint JNICALL OS_NATIVE(GetMessageTime) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetMessageTime\n") + rc = (jint)GetMessageTime(); + NATIVE_EXIT(env, that, "GetMessageTime\n") + return rc; +} +#endif + +#ifndef NO_GetMessageW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetMessageW) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3) +{ + MSG _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetMessageW\n") + if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0); + rc = (jboolean)GetMessageW(lparg0, (HWND)arg1, arg2, arg3); + if (arg0) setMSGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetMessageW\n") + return rc; +} +#endif + +#ifndef NO_GetModuleHandleA +JNIEXPORT jint JNICALL OS_NATIVE(GetModuleHandleA) + (JNIEnv *env, jclass that, jbyteArray arg0) +{ + jbyte *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetModuleHandleA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + rc = (jint)GetModuleHandleA((LPSTR)lparg0); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "GetModuleHandleA\n") + return rc; +} +#endif + +#ifndef NO_GetModuleHandleW +JNIEXPORT jint JNICALL OS_NATIVE(GetModuleHandleW) + (JNIEnv *env, jclass that, jcharArray arg0) +{ + jchar *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetModuleHandleW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + rc = (jint)GetModuleHandleW((LPWSTR)lparg0); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "GetModuleHandleW\n") + return rc; +} +#endif + +#ifndef NO_GetNearestPaletteIndex +JNIEXPORT jint JNICALL OS_NATIVE(GetNearestPaletteIndex) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetNearestPaletteIndex\n") + rc = (jint)GetNearestPaletteIndex((HPALETTE)arg0, (COLORREF)arg1); + NATIVE_EXIT(env, that, "GetNearestPaletteIndex\n") + return rc; +} +#endif + +#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + BITMAP _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2\n") + if (arg2) lparg2 = getBITMAPFields(env, arg2, &_arg2); + rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setBITMAPFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + DIBSECTION _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2\n") + if (arg2) lparg2 = getDIBSECTIONFields(env, arg2, &_arg2); + rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setDIBSECTIONFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + LOGBRUSH _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2\n") + if (arg2) lparg2 = getLOGBRUSHFields(env, arg2, &_arg2); + rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setLOGBRUSHFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + LOGFONTA _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2\n") + if (arg2) lparg2 = getLOGFONTAFields(env, arg2, &_arg2); + rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setLOGFONTAFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + LOGPEN _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2\n") + if (arg2) lparg2 = getLOGPENFields(env, arg2, &_arg2); + rc = (jint)GetObjectA((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setLOGPENFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_BITMAP_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_BITMAP_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + BITMAP _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_BITMAP_2\n") + if (arg2) lparg2 = getBITMAPFields(env, arg2, &_arg2); + rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setBITMAPFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_BITMAP_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_DIBSECTION_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_DIBSECTION_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + DIBSECTION _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_DIBSECTION_2\n") + if (arg2) lparg2 = getDIBSECTIONFields(env, arg2, &_arg2); + rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setDIBSECTIONFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_DIBSECTION_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + LOGBRUSH _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2\n") + if (arg2) lparg2 = getLOGBRUSHFields(env, arg2, &_arg2); + rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setLOGBRUSHFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_LOGFONTW_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_LOGFONTW_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + LOGFONTW _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGFONTW_2\n") + if (arg2) lparg2 = getLOGFONTWFields(env, arg2, &_arg2); + rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setLOGFONTWFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGFONTW_2\n") + return rc; +} +#endif + +#ifndef NO_GetObjectW__IILorg_eclipse_swt_internal_win32_LOGPEN_2 +JNIEXPORT jint JNICALL OS_NATIVE(GetObjectW__IILorg_eclipse_swt_internal_win32_LOGPEN_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + LOGPEN _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGPEN_2\n") + if (arg2) lparg2 = getLOGPENFields(env, arg2, &_arg2); + rc = (jint)GetObjectW((HGDIOBJ)arg0, arg1, lparg2); + if (arg2) setLOGPENFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetObjectW__IILorg_eclipse_swt_internal_win32_LOGPEN_2\n") + return rc; +} +#endif + +#ifndef NO_GetOpenFileNameA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetOpenFileNameA) + (JNIEnv *env, jclass that, jobject arg0) +{ + OPENFILENAME _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetOpenFileNameA\n") + if (arg0) lparg0 = getOPENFILENAMEFields(env, arg0, &_arg0); + rc = (jboolean)GetOpenFileNameA(lparg0); + if (arg0) setOPENFILENAMEFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetOpenFileNameA\n") + return rc; +} +#endif + +#ifndef NO_GetOpenFileNameW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetOpenFileNameW) + (JNIEnv *env, jclass that, jobject arg0) +{ + OPENFILENAME _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetOpenFileNameW\n") + if (arg0) lparg0 = getOPENFILENAMEFields(env, arg0, &_arg0); + rc = (jboolean)GetOpenFileNameW((LPOPENFILENAMEW)lparg0); + if (arg0) setOPENFILENAMEFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetOpenFileNameW\n") + return rc; +} +#endif + +#ifndef NO_GetPaletteEntries +JNIEXPORT jint JNICALL OS_NATIVE(GetPaletteEntries) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3) +{ + jbyte *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetPaletteEntries\n") + if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL); + rc = (jint)GetPaletteEntries((HPALETTE)arg0, arg1, arg2, (LPPALETTEENTRY)lparg3); + if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetPaletteEntries\n") + return rc; +} +#endif + +#ifndef NO_GetParent +JNIEXPORT jint JNICALL OS_NATIVE(GetParent) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetParent\n") + rc = (jint)GetParent((HWND)arg0); + NATIVE_EXIT(env, that, "GetParent\n") + return rc; +} +#endif + +#ifndef NO_GetPixel +JNIEXPORT jint JNICALL OS_NATIVE(GetPixel) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "GetPixel\n") + rc = (jint)GetPixel((HDC)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "GetPixel\n") + return rc; +} +#endif + +#ifndef NO_GetProcAddress +JNIEXPORT jint JNICALL OS_NATIVE(GetProcAddress) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1) +{ + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetProcAddress\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)GetProcAddress((HMODULE)arg0, (LPCTSTR)lparg1); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetProcAddress\n") + return rc; +} +#endif + +#ifndef NO_GetProcessHeap +JNIEXPORT jint JNICALL OS_NATIVE(GetProcessHeap) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetProcessHeap\n") + rc = (jint)GetProcessHeap(); + NATIVE_EXIT(env, that, "GetProcessHeap\n") + return rc; +} +#endif + +#ifndef NO_GetProfileStringA +JNIEXPORT jint JNICALL OS_NATIVE(GetProfileStringA) + (JNIEnv *env, jclass that, jbyteArray arg0, jbyteArray arg1, jbyteArray arg2, jbyteArray arg3, jint arg4) +{ + jbyte *lparg0=NULL; + jbyte *lparg1=NULL; + jbyte *lparg2=NULL; + jbyte *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetProfileStringA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL); + rc = (jint)GetProfileStringA((LPSTR)lparg0, (LPSTR)lparg1, (LPSTR)lparg2, (LPSTR)lparg3, arg4); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetProfileStringA\n") + return rc; +} +#endif + +#ifndef NO_GetProfileStringW +JNIEXPORT jint JNICALL OS_NATIVE(GetProfileStringW) + (JNIEnv *env, jclass that, jcharArray arg0, jcharArray arg1, jcharArray arg2, jcharArray arg3, jint arg4) +{ + jchar *lparg0=NULL; + jchar *lparg1=NULL; + jchar *lparg2=NULL; + jchar *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetProfileStringW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetCharArrayElements(env, arg3, NULL); + rc = (jint)GetProfileStringW((LPWSTR)lparg0, (LPWSTR)lparg1, (LPWSTR)lparg2, (LPWSTR)lparg3, arg4); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseCharArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetProfileStringW\n") + return rc; +} +#endif + +#ifndef NO_GetROP2 +JNIEXPORT jint JNICALL OS_NATIVE(GetROP2) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetROP2\n") + rc = (jint)GetROP2((HDC)arg0); + NATIVE_EXIT(env, that, "GetROP2\n") + return rc; +} +#endif + +#ifndef NO_GetRegionData +JNIEXPORT jint JNICALL OS_NATIVE(GetRegionData) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2) +{ + jint *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetRegionData\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + rc = (jint)GetRegionData((HRGN)arg0, arg1, (RGNDATA *)lparg2); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "GetRegionData\n") + return rc; +} +#endif + +#ifndef NO_GetRgnBox +JNIEXPORT jint JNICALL OS_NATIVE(GetRgnBox) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + RECT _arg1, *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetRgnBox\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jint)GetRgnBox((HRGN)arg0, lparg1); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetRgnBox\n") + return rc; +} +#endif + +#ifndef NO_GetSaveFileNameA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetSaveFileNameA) + (JNIEnv *env, jclass that, jobject arg0) +{ + OPENFILENAME _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetSaveFileNameA\n") + if (arg0) lparg0 = getOPENFILENAMEFields(env, arg0, &_arg0); + rc = (jboolean)GetSaveFileNameA(lparg0); + if (arg0) setOPENFILENAMEFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetSaveFileNameA\n") + return rc; +} +#endif + +#ifndef NO_GetSaveFileNameW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetSaveFileNameW) + (JNIEnv *env, jclass that, jobject arg0) +{ + OPENFILENAME _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetSaveFileNameW\n") + if (arg0) lparg0 = getOPENFILENAMEFields(env, arg0, &_arg0); + rc = (jboolean)GetSaveFileNameW((LPOPENFILENAMEW)lparg0); + if (arg0) setOPENFILENAMEFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetSaveFileNameW\n") + return rc; +} +#endif + +#ifndef NO_GetScrollInfo +JNIEXPORT jboolean JNICALL OS_NATIVE(GetScrollInfo) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + SCROLLINFO _arg2, *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetScrollInfo\n") + if (arg2) lparg2 = getSCROLLINFOFields(env, arg2, &_arg2); + rc = (jboolean)GetScrollInfo((HWND)arg0, arg1, lparg2); + if (arg2) setSCROLLINFOFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "GetScrollInfo\n") + return rc; +} +#endif + +#ifndef NO_GetStockObject +JNIEXPORT jint JNICALL OS_NATIVE(GetStockObject) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetStockObject\n") + rc = (jint)GetStockObject(arg0); + NATIVE_EXIT(env, that, "GetStockObject\n") + return rc; +} +#endif + +#ifndef NO_GetSysColor +JNIEXPORT jint JNICALL OS_NATIVE(GetSysColor) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetSysColor\n") + rc = (jint)GetSysColor(arg0); + NATIVE_EXIT(env, that, "GetSysColor\n") + return rc; +} +#endif + +#ifndef NO_GetSysColorBrush +JNIEXPORT jint JNICALL OS_NATIVE(GetSysColorBrush) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetSysColorBrush\n") + rc = (jint)GetSysColorBrush(arg0); + NATIVE_EXIT(env, that, "GetSysColorBrush\n") + return rc; +} +#endif + +#ifndef NO_GetSystemMenu +JNIEXPORT jint JNICALL OS_NATIVE(GetSystemMenu) + (JNIEnv *env, jclass that, jint arg0, jboolean arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetSystemMenu\n") + rc = (jint)GetSystemMenu((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "GetSystemMenu\n") + return rc; +} +#endif + +#ifndef NO_GetSystemMetrics +JNIEXPORT jint JNICALL OS_NATIVE(GetSystemMetrics) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetSystemMetrics\n") + rc = (jint)GetSystemMetrics(arg0); + NATIVE_EXIT(env, that, "GetSystemMetrics\n") + return rc; +} +#endif + +#ifndef NO_GetSystemPaletteEntries +JNIEXPORT jint JNICALL OS_NATIVE(GetSystemPaletteEntries) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3) +{ + jbyte *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetSystemPaletteEntries\n") + if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL); + rc = (jint)GetSystemPaletteEntries((HDC)arg0, (UINT)arg1, (UINT)arg2, (LPPALETTEENTRY)lparg3); + if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "GetSystemPaletteEntries\n") + return rc; +} +#endif + +#ifndef NO_GetTextCharset +JNIEXPORT jint JNICALL OS_NATIVE(GetTextCharset) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetTextCharset\n") + rc = (jint)GetTextCharset((HDC)arg0); + NATIVE_EXIT(env, that, "GetTextCharset\n") + return rc; +} +#endif + +#ifndef NO_GetTextColor +JNIEXPORT jint JNICALL OS_NATIVE(GetTextColor) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetTextColor\n") + rc = (jint)GetTextColor((HDC)arg0); + NATIVE_EXIT(env, that, "GetTextColor\n") + return rc; +} +#endif + +#ifndef NO_GetTextExtentPoint32A +JNIEXPORT jboolean JNICALL OS_NATIVE(GetTextExtentPoint32A) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jobject arg3) +{ + jbyte *lparg1=NULL; + SIZE _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetTextExtentPoint32A\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg3) lparg3 = getSIZEFields(env, arg3, &_arg3); + rc = (jboolean)GetTextExtentPoint32A((HDC)arg0, (LPSTR)lparg1, arg2, lparg3); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg3) setSIZEFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "GetTextExtentPoint32A\n") + return rc; +} +#endif + +#ifndef NO_GetTextExtentPoint32W +JNIEXPORT jboolean JNICALL OS_NATIVE(GetTextExtentPoint32W) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jobject arg3) +{ + jchar *lparg1=NULL; + SIZE _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetTextExtentPoint32W\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg3) lparg3 = getSIZEFields(env, arg3, &_arg3); + rc = (jboolean)GetTextExtentPoint32W((HDC)arg0, (LPWSTR)lparg1, arg2, lparg3); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg3) setSIZEFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "GetTextExtentPoint32W\n") + return rc; +} +#endif + +#ifndef NO_GetTextMetricsA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetTextMetricsA) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + TEXTMETRICA _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetTextMetricsA\n") + if (arg1) lparg1 = getTEXTMETRICAFields(env, arg1, &_arg1); + rc = (jboolean)GetTextMetricsA((HDC)arg0, lparg1); + if (arg1) setTEXTMETRICAFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetTextMetricsA\n") + return rc; +} +#endif + +#ifndef NO_GetTextMetricsW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetTextMetricsW) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + TEXTMETRICW _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetTextMetricsW\n") + if (arg1) lparg1 = getTEXTMETRICWFields(env, arg1, &_arg1); + rc = (jboolean)GetTextMetricsW((HDC)arg0, lparg1); + if (arg1) setTEXTMETRICWFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetTextMetricsW\n") + return rc; +} +#endif + +#ifndef NO_GetTickCount +JNIEXPORT jint JNICALL OS_NATIVE(GetTickCount) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetTickCount\n") + rc = (jint)GetTickCount(); + NATIVE_EXIT(env, that, "GetTickCount\n") + return rc; +} +#endif + +#ifndef NO_GetUpdateRect +JNIEXPORT jboolean JNICALL OS_NATIVE(GetUpdateRect) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jboolean arg2) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetUpdateRect\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)GetUpdateRect((HWND)arg0, (LPRECT)lparg1, (BOOL)arg2); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetUpdateRect\n") + return rc; +} +#endif + +#ifndef NO_GetUpdateRgn +JNIEXPORT jint JNICALL OS_NATIVE(GetUpdateRgn) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "GetUpdateRgn\n") + rc = (jint)GetUpdateRgn((HWND)arg0, (HRGN)arg1, arg2); + NATIVE_EXIT(env, that, "GetUpdateRgn\n") + return rc; +} +#endif + +#ifndef NO_GetVersionExA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetVersionExA) + (JNIEnv *env, jclass that, jobject arg0) +{ + OSVERSIONINFOA _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetVersionExA\n") + if (arg0) lparg0 = getOSVERSIONINFOAFields(env, arg0, &_arg0); + rc = (jboolean)GetVersionExA(lparg0); + if (arg0) setOSVERSIONINFOAFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetVersionExA\n") + return rc; +} +#endif + +#ifndef NO_GetVersionExW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetVersionExW) + (JNIEnv *env, jclass that, jobject arg0) +{ + OSVERSIONINFOW _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetVersionExW\n") + if (arg0) lparg0 = getOSVERSIONINFOWFields(env, arg0, &_arg0); + rc = (jboolean)GetVersionExW(lparg0); + if (arg0) setOSVERSIONINFOWFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "GetVersionExW\n") + return rc; +} +#endif + +#ifndef NO_GetWindow +JNIEXPORT jint JNICALL OS_NATIVE(GetWindow) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetWindow\n") + rc = (jint)GetWindow((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "GetWindow\n") + return rc; +} +#endif + +#ifndef NO_GetWindowLongA +JNIEXPORT jint JNICALL OS_NATIVE(GetWindowLongA) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetWindowLongA\n") + rc = (jint)GetWindowLongA((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "GetWindowLongA\n") + return rc; +} +#endif + +#ifndef NO_GetWindowLongW +JNIEXPORT jint JNICALL OS_NATIVE(GetWindowLongW) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GetWindowLongW\n") + rc = (jint)GetWindowLongW((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "GetWindowLongW\n") + return rc; +} +#endif + +#ifndef NO_GetWindowPlacement +JNIEXPORT jboolean JNICALL OS_NATIVE(GetWindowPlacement) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + WINDOWPLACEMENT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetWindowPlacement\n") + if (arg1) lparg1 = getWINDOWPLACEMENTFields(env, arg1, &_arg1); + rc = (jboolean)GetWindowPlacement((HWND)arg0, lparg1); + if (arg1) setWINDOWPLACEMENTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetWindowPlacement\n") + return rc; +} +#endif + +#ifndef NO_GetWindowRect +JNIEXPORT jboolean JNICALL OS_NATIVE(GetWindowRect) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetWindowRect\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)GetWindowRect((HWND)arg0, lparg1); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetWindowRect\n") + return rc; +} +#endif + +#ifndef NO_GetWindowTextA +JNIEXPORT jint JNICALL OS_NATIVE(GetWindowTextA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2) +{ + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetWindowTextA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)GetWindowTextA((HWND)arg0, (LPSTR)lparg1, arg2); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetWindowTextA\n") + return rc; +} +#endif + +#ifndef NO_GetWindowTextLengthA +JNIEXPORT jint JNICALL OS_NATIVE(GetWindowTextLengthA) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetWindowTextLengthA\n") + rc = (jint)GetWindowTextLengthA((HWND)arg0); + NATIVE_EXIT(env, that, "GetWindowTextLengthA\n") + return rc; +} +#endif + +#ifndef NO_GetWindowTextLengthW +JNIEXPORT jint JNICALL OS_NATIVE(GetWindowTextLengthW) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetWindowTextLengthW\n") + rc = (jint)GetWindowTextLengthW((HWND)arg0); + NATIVE_EXIT(env, that, "GetWindowTextLengthW\n") + return rc; +} +#endif + +#ifndef NO_GetWindowTextW +JNIEXPORT jint JNICALL OS_NATIVE(GetWindowTextW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2) +{ + jchar *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetWindowTextW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jint)GetWindowTextW((HWND)arg0, (LPWSTR)lparg1, arg2); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetWindowTextW\n") + return rc; +} +#endif + +#ifndef NO_GetWindowThreadProcessId +JNIEXPORT jint JNICALL OS_NATIVE(GetWindowThreadProcessId) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1) +{ + jint *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "GetWindowThreadProcessId\n") + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); + rc = (jint)GetWindowThreadProcessId((HWND)arg0, (LPDWORD)lparg1); + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "GetWindowThreadProcessId\n") + return rc; +} +#endif + +#ifndef NO_GlobalAlloc +JNIEXPORT jint JNICALL OS_NATIVE(GlobalAlloc) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "GlobalAlloc\n") + rc = (jint)GlobalAlloc(arg0, arg1); + NATIVE_EXIT(env, that, "GlobalAlloc\n") + return rc; +} +#endif + +#ifndef NO_GlobalFree +JNIEXPORT jint JNICALL OS_NATIVE(GlobalFree) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GlobalFree\n") + rc = (jint)GlobalFree((HANDLE)arg0); + NATIVE_EXIT(env, that, "GlobalFree\n") + return rc; +} +#endif + +#ifndef NO_GlobalLock +JNIEXPORT jint JNICALL OS_NATIVE(GlobalLock) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GlobalLock\n") + rc = (jint)GlobalLock((HANDLE)arg0); + NATIVE_EXIT(env, that, "GlobalLock\n") + return rc; +} +#endif + +#ifndef NO_GlobalSize +JNIEXPORT jint JNICALL OS_NATIVE(GlobalSize) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GlobalSize\n") + rc = (jint)GlobalSize((HANDLE)arg0); + NATIVE_EXIT(env, that, "GlobalSize\n") + return rc; +} +#endif + +#ifndef NO_GlobalUnlock +JNIEXPORT jboolean JNICALL OS_NATIVE(GlobalUnlock) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "GlobalUnlock\n") + rc = (jboolean)GlobalUnlock((HANDLE)arg0); + NATIVE_EXIT(env, that, "GlobalUnlock\n") + return rc; +} +#endif + +#ifndef NO_HeapAlloc +JNIEXPORT jint JNICALL OS_NATIVE(HeapAlloc) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "HeapAlloc\n") + rc = (jint)HeapAlloc((HANDLE)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "HeapAlloc\n") + return rc; +} +#endif + +#ifndef NO_HeapFree +JNIEXPORT jboolean JNICALL OS_NATIVE(HeapFree) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "HeapFree\n") + rc = (jboolean)HeapFree((HANDLE)arg0, arg1, (LPVOID)arg2); + NATIVE_EXIT(env, that, "HeapFree\n") + return rc; +} +#endif + +#ifndef NO_HideCaret +JNIEXPORT jboolean JNICALL OS_NATIVE(HideCaret) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "HideCaret\n") + rc = (jboolean)HideCaret((HWND)arg0); + NATIVE_EXIT(env, that, "HideCaret\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1Add +JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1Add) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "ImageList_1Add\n") + rc = (jint)ImageList_Add((HIMAGELIST)arg0, (HBITMAP)arg1, (HBITMAP)arg2); + NATIVE_EXIT(env, that, "ImageList_1Add\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1AddMasked +JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1AddMasked) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "ImageList_1AddMasked\n") + rc = (jint)ImageList_AddMasked((HIMAGELIST)arg0, (HBITMAP)arg1, (COLORREF)arg2); + NATIVE_EXIT(env, that, "ImageList_1AddMasked\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1Create +JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1Create) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jint rc; + NATIVE_ENTER(env, that, "ImageList_1Create\n") + rc = (jint)ImageList_Create(arg0, arg1, arg2, arg3, arg4); + NATIVE_EXIT(env, that, "ImageList_1Create\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1Destroy +JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1Destroy) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImageList_1Destroy\n") + rc = (jboolean)ImageList_Destroy((HIMAGELIST)arg0); + NATIVE_EXIT(env, that, "ImageList_1Destroy\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1GetIcon +JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1GetIcon) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "ImageList_1GetIcon\n") + rc = (jint)ImageList_GetIcon((HIMAGELIST)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "ImageList_1GetIcon\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1GetIconSize +JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1GetIconSize) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jintArray arg2) +{ + jint *lparg1=NULL; + jint *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ImageList_1GetIconSize\n") + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + rc = (jboolean)ImageList_GetIconSize((HIMAGELIST)arg0, lparg1, lparg2); + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "ImageList_1GetIconSize\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1GetImageCount +JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1GetImageCount) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "ImageList_1GetImageCount\n") + rc = (jint)ImageList_GetImageCount((HIMAGELIST)arg0); + NATIVE_EXIT(env, that, "ImageList_1GetImageCount\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1Remove +JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1Remove) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImageList_1Remove\n") + rc = (jboolean)ImageList_Remove((HIMAGELIST)arg0, arg1); + NATIVE_EXIT(env, that, "ImageList_1Remove\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1Replace +JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1Replace) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImageList_1Replace\n") + rc = (jboolean)ImageList_Replace((HIMAGELIST)arg0, arg1, (HBITMAP)arg2, (HBITMAP)arg3); + NATIVE_EXIT(env, that, "ImageList_1Replace\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1ReplaceIcon +JNIEXPORT jint JNICALL OS_NATIVE(ImageList_1ReplaceIcon) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "ImageList_1ReplaceIcon\n") + rc = (jint)ImageList_ReplaceIcon((HIMAGELIST)arg0, arg1, (HICON)arg2); + NATIVE_EXIT(env, that, "ImageList_1ReplaceIcon\n") + return rc; +} +#endif + +#ifndef NO_ImageList_1SetIconSize +JNIEXPORT jboolean JNICALL OS_NATIVE(ImageList_1SetIconSize) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImageList_1SetIconSize\n") + rc = (jboolean)ImageList_SetIconSize((HIMAGELIST)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "ImageList_1SetIconSize\n") + return rc; +} +#endif + +#ifndef NO_ImmAssociateContext +JNIEXPORT jint JNICALL OS_NATIVE(ImmAssociateContext) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "ImmAssociateContext\n") + rc = (jint)ImmAssociateContext((HWND)arg0, (HIMC)arg1); + NATIVE_EXIT(env, that, "ImmAssociateContext\n") + return rc; +} +#endif + +#ifndef NO_ImmCreateContext +JNIEXPORT jint JNICALL OS_NATIVE(ImmCreateContext) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "ImmCreateContext\n") + rc = (jint)ImmCreateContext(); + NATIVE_EXIT(env, that, "ImmCreateContext\n") + return rc; +} +#endif + +#ifndef NO_ImmDestroyContext +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmDestroyContext) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImmDestroyContext\n") + rc = (jboolean)ImmDestroyContext((HIMC)arg0); + NATIVE_EXIT(env, that, "ImmDestroyContext\n") + return rc; +} +#endif + +#ifndef NO_ImmGetCompositionFontA +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmGetCompositionFontA) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + LOGFONTA _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ImmGetCompositionFontA\n") + if (arg1) lparg1 = getLOGFONTAFields(env, arg1, &_arg1); + rc = (jboolean)ImmGetCompositionFontA((HIMC)arg0, lparg1); + if (arg1) setLOGFONTAFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "ImmGetCompositionFontA\n") + return rc; +} +#endif + +#ifndef NO_ImmGetCompositionFontW +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmGetCompositionFontW) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + LOGFONTW _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ImmGetCompositionFontW\n") + if (arg1) lparg1 = getLOGFONTWFields(env, arg1, &_arg1); + rc = (jboolean)ImmGetCompositionFontW((HIMC)arg0, lparg1); + if (arg1) setLOGFONTWFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "ImmGetCompositionFontW\n") + return rc; +} +#endif + +#ifndef NO_ImmGetCompositionStringA +JNIEXPORT jint JNICALL OS_NATIVE(ImmGetCompositionStringA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jint arg3) +{ + jbyte *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "ImmGetCompositionStringA\n") + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + rc = (jint)ImmGetCompositionStringA((HIMC)arg0, arg1, (LPSTR)lparg2, arg3); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "ImmGetCompositionStringA\n") + return rc; +} +#endif + +#ifndef NO_ImmGetCompositionStringW +JNIEXPORT jint JNICALL OS_NATIVE(ImmGetCompositionStringW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3) +{ + jchar *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "ImmGetCompositionStringW\n") + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + rc = (jint)ImmGetCompositionStringW((HIMC)arg0, arg1, (LPWSTR)lparg2, arg3); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "ImmGetCompositionStringW\n") + return rc; +} +#endif + +#ifndef NO_ImmGetContext +JNIEXPORT jint JNICALL OS_NATIVE(ImmGetContext) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "ImmGetContext\n") + rc = (jint)ImmGetContext((HWND)arg0); + NATIVE_EXIT(env, that, "ImmGetContext\n") + return rc; +} +#endif + +#ifndef NO_ImmGetConversionStatus +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmGetConversionStatus) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jintArray arg2) +{ + jint *lparg1=NULL; + jint *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ImmGetConversionStatus\n") + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + rc = (jboolean)ImmGetConversionStatus((HIMC)arg0, lparg1, lparg2); + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "ImmGetConversionStatus\n") + return rc; +} +#endif + +#ifndef NO_ImmGetDefaultIMEWnd +JNIEXPORT jint JNICALL OS_NATIVE(ImmGetDefaultIMEWnd) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "ImmGetDefaultIMEWnd\n") + rc = (jint)ImmGetDefaultIMEWnd((HWND)arg0); + NATIVE_EXIT(env, that, "ImmGetDefaultIMEWnd\n") + return rc; +} +#endif + +#ifndef NO_ImmGetOpenStatus +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmGetOpenStatus) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImmGetOpenStatus\n") + rc = (jboolean)ImmGetOpenStatus((HIMC)arg0); + NATIVE_EXIT(env, that, "ImmGetOpenStatus\n") + return rc; +} +#endif + +#ifndef NO_ImmReleaseContext +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmReleaseContext) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImmReleaseContext\n") + rc = (jboolean)ImmReleaseContext((HWND)arg0, (HIMC)arg1); + NATIVE_EXIT(env, that, "ImmReleaseContext\n") + return rc; +} +#endif + +#ifndef NO_ImmSetCompositionFontA +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetCompositionFontA) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + LOGFONTA _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ImmSetCompositionFontA\n") + if (arg1) lparg1 = getLOGFONTAFields(env, arg1, &_arg1); + rc = (jboolean)ImmSetCompositionFontA((HIMC)arg0, lparg1); + if (arg1) setLOGFONTAFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "ImmSetCompositionFontA\n") + return rc; +} +#endif + +#ifndef NO_ImmSetCompositionFontW +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetCompositionFontW) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + LOGFONTW _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ImmSetCompositionFontW\n") + if (arg1) lparg1 = getLOGFONTWFields(env, arg1, &_arg1); + rc = (jboolean)ImmSetCompositionFontW((HIMC)arg0, lparg1); + if (arg1) setLOGFONTWFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "ImmSetCompositionFontW\n") + return rc; +} +#endif + +#ifndef NO_ImmSetCompositionWindow +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetCompositionWindow) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + COMPOSITIONFORM _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ImmSetCompositionWindow\n") + if (arg1) lparg1 = getCOMPOSITIONFORMFields(env, arg1, &_arg1); + rc = (jboolean)ImmSetCompositionWindow((HIMC)arg0, lparg1); + if (arg1) setCOMPOSITIONFORMFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "ImmSetCompositionWindow\n") + return rc; +} +#endif + +#ifndef NO_ImmSetConversionStatus +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetConversionStatus) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImmSetConversionStatus\n") + rc = (jboolean)ImmSetConversionStatus((HIMC)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "ImmSetConversionStatus\n") + return rc; +} +#endif + +#ifndef NO_ImmSetOpenStatus +JNIEXPORT jboolean JNICALL OS_NATIVE(ImmSetOpenStatus) + (JNIEnv *env, jclass that, jint arg0, jboolean arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ImmSetOpenStatus\n") + rc = (jboolean)ImmSetOpenStatus((HIMC)arg0, arg1); + NATIVE_EXIT(env, that, "ImmSetOpenStatus\n") + return rc; +} +#endif + +#ifndef NO_InitCommonControls +JNIEXPORT void JNICALL OS_NATIVE(InitCommonControls) + (JNIEnv *env, jclass that) +{ + NATIVE_ENTER(env, that, "InitCommonControls\n") + InitCommonControls(); + NATIVE_EXIT(env, that, "InitCommonControls\n") +} +#endif + +#ifndef NO_InitCommonControlsEx +JNIEXPORT jboolean JNICALL OS_NATIVE(InitCommonControlsEx) + (JNIEnv *env, jclass that, jobject arg0) +{ + INITCOMMONCONTROLSEX _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "InitCommonControlsEx\n") + if (arg0) lparg0 = getINITCOMMONCONTROLSEXFields(env, arg0, &_arg0); + rc = (jboolean)InitCommonControlsEx(lparg0); + if (arg0) setINITCOMMONCONTROLSEXFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "InitCommonControlsEx\n") + return rc; +} +#endif + +#ifndef NO_InsertMenuA +JNIEXPORT jboolean JNICALL OS_NATIVE(InsertMenuA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jbyteArray arg4) +{ + jbyte *lparg4=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "InsertMenuA\n") + if (arg4) lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL); + rc = (jboolean)InsertMenuA((HMENU)arg0, arg1, arg2, arg3, lparg4); + if (arg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0); + NATIVE_EXIT(env, that, "InsertMenuA\n") + return rc; +} +#endif + +#ifndef NO_InsertMenuItemA +JNIEXPORT jboolean JNICALL OS_NATIVE(InsertMenuItemA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3) +{ + MENUITEMINFO _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "InsertMenuItemA\n") + if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3); + rc = (jboolean)InsertMenuItemA((HMENU)arg0, arg1, arg2, lparg3); + if (arg3) setMENUITEMINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "InsertMenuItemA\n") + return rc; +} +#endif + +#ifndef NO_InsertMenuItemW +JNIEXPORT jboolean JNICALL OS_NATIVE(InsertMenuItemW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3) +{ + MENUITEMINFO _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "InsertMenuItemW\n") + if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3); + rc = (jboolean)InsertMenuItemW((HMENU)arg0, arg1, arg2, (LPMENUITEMINFOW)lparg3); + if (arg3) setMENUITEMINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "InsertMenuItemW\n") + return rc; +} +#endif + +#ifndef NO_InsertMenuW +JNIEXPORT jboolean JNICALL OS_NATIVE(InsertMenuW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jcharArray arg4) +{ + jchar *lparg4=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "InsertMenuW\n") + if (arg4) lparg4 = (*env)->GetCharArrayElements(env, arg4, NULL); + rc = (jboolean)InsertMenuW((HMENU)arg0, arg1, arg2, arg3, lparg4); + if (arg4) (*env)->ReleaseCharArrayElements(env, arg4, lparg4, 0); + NATIVE_EXIT(env, that, "InsertMenuW\n") + return rc; +} +#endif + +#ifndef NO_InvalidateRect +JNIEXPORT jboolean JNICALL OS_NATIVE(InvalidateRect) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jboolean arg2) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "InvalidateRect\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)InvalidateRect((HWND)arg0, lparg1, arg2); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "InvalidateRect\n") + return rc; +} +#endif + +#ifndef NO_InvalidateRgn +JNIEXPORT jboolean JNICALL OS_NATIVE(InvalidateRgn) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "InvalidateRgn\n") + rc = (jboolean)InvalidateRgn((HWND)arg0, (HRGN)arg1, arg2); + NATIVE_EXIT(env, that, "InvalidateRgn\n") + return rc; +} +#endif + +#ifndef NO_IsDBCSLeadByte +JNIEXPORT jboolean JNICALL OS_NATIVE(IsDBCSLeadByte) + (JNIEnv *env, jclass that, jbyte arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "IsDBCSLeadByte\n") + rc = (jboolean)IsDBCSLeadByte(arg0); + NATIVE_EXIT(env, that, "IsDBCSLeadByte\n") + return rc; +} +#endif + +#ifndef NO_IsIconic +JNIEXPORT jboolean JNICALL OS_NATIVE(IsIconic) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "IsIconic\n") + rc = (jboolean)IsIconic((HWND)arg0); + NATIVE_EXIT(env, that, "IsIconic\n") + return rc; +} +#endif + +#ifndef NO_IsWindowEnabled +JNIEXPORT jboolean JNICALL OS_NATIVE(IsWindowEnabled) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "IsWindowEnabled\n") + rc = (jboolean)IsWindowEnabled((HWND)arg0); + NATIVE_EXIT(env, that, "IsWindowEnabled\n") + return rc; +} +#endif + +#ifndef NO_IsWindowVisible +JNIEXPORT jboolean JNICALL OS_NATIVE(IsWindowVisible) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "IsWindowVisible\n") + rc = (jboolean)IsWindowVisible((HWND)arg0); + NATIVE_EXIT(env, that, "IsWindowVisible\n") + return rc; +} +#endif + +#ifndef NO_IsZoomed +JNIEXPORT jboolean JNICALL OS_NATIVE(IsZoomed) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "IsZoomed\n") + rc = (jboolean)IsZoomed((HWND)arg0); + NATIVE_EXIT(env, that, "IsZoomed\n") + return rc; +} +#endif + +#ifndef NO_KillTimer +JNIEXPORT jboolean JNICALL OS_NATIVE(KillTimer) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "KillTimer\n") + rc = (jboolean)KillTimer((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "KillTimer\n") + return rc; +} +#endif + +#ifndef NO_LineTo +JNIEXPORT jboolean JNICALL OS_NATIVE(LineTo) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "LineTo\n") + rc = (jboolean)LineTo((HDC)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "LineTo\n") + return rc; +} +#endif + +#ifndef NO_LoadBitmapA +JNIEXPORT jint JNICALL OS_NATIVE(LoadBitmapA) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "LoadBitmapA\n") + rc = (jint)LoadBitmapA((HINSTANCE)arg0, (LPSTR)arg1); + NATIVE_EXIT(env, that, "LoadBitmapA\n") + return rc; +} +#endif + +#ifndef NO_LoadBitmapW +JNIEXPORT jint JNICALL OS_NATIVE(LoadBitmapW) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "LoadBitmapW\n") + rc = (jint)LoadBitmapW((HINSTANCE)arg0, (LPWSTR)arg1); + NATIVE_EXIT(env, that, "LoadBitmapW\n") + return rc; +} +#endif + +#ifndef NO_LoadCursorA +JNIEXPORT jint JNICALL OS_NATIVE(LoadCursorA) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "LoadCursorA\n") + rc = (jint)LoadCursorA((HINSTANCE)arg0, (LPSTR)arg1); + NATIVE_EXIT(env, that, "LoadCursorA\n") + return rc; +} +#endif + +#ifndef NO_LoadCursorW +JNIEXPORT jint JNICALL OS_NATIVE(LoadCursorW) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "LoadCursorW\n") + rc = (jint)LoadCursorW((HINSTANCE)arg0, (LPWSTR)arg1); + NATIVE_EXIT(env, that, "LoadCursorW\n") + return rc; +} +#endif + +#ifndef NO_LoadIconA +JNIEXPORT jint JNICALL OS_NATIVE(LoadIconA) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "LoadIconA\n") + rc = (jint)LoadIconA((HINSTANCE)arg0, (LPSTR)arg1); + NATIVE_EXIT(env, that, "LoadIconA\n") + return rc; +} +#endif + +#ifndef NO_LoadIconW +JNIEXPORT jint JNICALL OS_NATIVE(LoadIconW) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "LoadIconW\n") + rc = (jint)LoadIconW((HINSTANCE)arg0, (LPWSTR)arg1); + NATIVE_EXIT(env, that, "LoadIconW\n") + return rc; +} +#endif + +#ifndef NO_LoadImageA +JNIEXPORT jint JNICALL OS_NATIVE(LoadImageA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jint arg3, jint arg4, jint arg5) +{ + jbyte *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "LoadImageA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jint)LoadImageA((HINSTANCE)arg0, (LPSTR)lparg1, arg2, arg3, arg4, arg5); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "LoadImageA\n") + return rc; +} +#endif + +#ifndef NO_LoadImageW +JNIEXPORT jint JNICALL OS_NATIVE(LoadImageW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jint arg3, jint arg4, jint arg5) +{ + jchar *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "LoadImageW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jint)LoadImageW((HINSTANCE)arg0, (LPWSTR)lparg1, arg2, arg3, arg4, arg5); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "LoadImageW\n") + return rc; +} +#endif + +#ifndef NO_LoadLibraryA +JNIEXPORT jint JNICALL OS_NATIVE(LoadLibraryA) + (JNIEnv *env, jclass that, jbyteArray arg0) +{ + jbyte *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "LoadLibraryA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + rc = (jint)LoadLibraryA((LPSTR)lparg0); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "LoadLibraryA\n") + return rc; +} +#endif + +#ifndef NO_LoadLibraryW +JNIEXPORT jint JNICALL OS_NATIVE(LoadLibraryW) + (JNIEnv *env, jclass that, jcharArray arg0) +{ + jchar *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "LoadLibraryW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + rc = (jint)LoadLibraryW((LPWSTR)lparg0); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "LoadLibraryW\n") + return rc; +} +#endif + +#ifndef NO_MapVirtualKeyA +JNIEXPORT jint JNICALL OS_NATIVE(MapVirtualKeyA) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "MapVirtualKeyA\n") + rc = (jint)MapVirtualKeyA(arg0, arg1); + NATIVE_EXIT(env, that, "MapVirtualKeyA\n") + return rc; +} +#endif + +#ifndef NO_MapVirtualKeyW +JNIEXPORT jint JNICALL OS_NATIVE(MapVirtualKeyW) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "MapVirtualKeyW\n") + rc = (jint)MapVirtualKeyW(arg0, arg1); + NATIVE_EXIT(env, that, "MapVirtualKeyW\n") + return rc; +} +#endif + +#ifndef NO_MapWindowPoints__IILorg_eclipse_swt_internal_win32_POINT_2I +JNIEXPORT jint JNICALL OS_NATIVE(MapWindowPoints__IILorg_eclipse_swt_internal_win32_POINT_2I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3) +{ + POINT _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "MapWindowPoints__IILorg_eclipse_swt_internal_win32_POINT_2I\n") + if (arg2) lparg2 = getPOINTFields(env, arg2, &_arg2); + rc = (jint)MapWindowPoints((HWND)arg0, (HWND)arg1, (LPPOINT)lparg2, arg3); + if (arg2) setPOINTFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "MapWindowPoints__IILorg_eclipse_swt_internal_win32_POINT_2I\n") + return rc; +} +#endif + +#ifndef NO_MapWindowPoints__IILorg_eclipse_swt_internal_win32_RECT_2I +JNIEXPORT jint JNICALL OS_NATIVE(MapWindowPoints__IILorg_eclipse_swt_internal_win32_RECT_2I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3) +{ + RECT _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "MapWindowPoints__IILorg_eclipse_swt_internal_win32_RECT_2I\n") + if (arg2) lparg2 = getRECTFields(env, arg2, &_arg2); + rc = (jint)MapWindowPoints((HWND)arg0, (HWND)arg1, (LPPOINT)lparg2, arg3); + if (arg2) setRECTFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "MapWindowPoints__IILorg_eclipse_swt_internal_win32_RECT_2I\n") + return rc; +} +#endif + +#ifndef NO_MessageBeep +JNIEXPORT jboolean JNICALL OS_NATIVE(MessageBeep) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "MessageBeep\n") + rc = (jboolean)MessageBeep(arg0); + NATIVE_EXIT(env, that, "MessageBeep\n") + return rc; +} +#endif + +#ifndef NO_MessageBoxA +JNIEXPORT jint JNICALL OS_NATIVE(MessageBoxA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jbyteArray arg2, jint arg3) +{ + jbyte *lparg1=NULL; + jbyte *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "MessageBoxA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + rc = (jint)MessageBoxA((HWND)arg0, (LPSTR)lparg1, (LPSTR)lparg2, arg3); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "MessageBoxA\n") + return rc; +} +#endif + +#ifndef NO_MessageBoxW +JNIEXPORT jint JNICALL OS_NATIVE(MessageBoxW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jcharArray arg2, jint arg3) +{ + jchar *lparg1=NULL; + jchar *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "MessageBoxW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + rc = (jint)MessageBoxW((HWND)arg0, (LPWSTR)lparg1, (LPWSTR)lparg2, arg3); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "MessageBoxW\n") + return rc; +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + DROPFILES _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I\n") + if (arg1) lparg1 = getDROPFILESFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + GRADIENT_RECT _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I\n") + if (arg1) lparg1 = getGRADIENT_RECTFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + LOGFONTA _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I\n") + if (arg1) lparg1 = getLOGFONTAFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTW_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTW_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + LOGFONTW _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTW_2I\n") + if (arg1) lparg1 = getLOGFONTWFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTW_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + MEASUREITEMSTRUCT _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2I\n") + if (arg1) lparg1 = getMEASUREITEMSTRUCTFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + NMLVCUSTOMDRAW _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2I\n") + if (arg1) lparg1 = getNMLVCUSTOMDRAWFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + NMTTDISPINFOA _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I\n") + if (arg1) lparg1 = getNMTTDISPINFOAFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + NMTTDISPINFOW _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I\n") + if (arg1) lparg1 = getNMTTDISPINFOWFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + NMTVCUSTOMDRAW _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2I\n") + if (arg1) lparg1 = getNMTVCUSTOMDRAWFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_RECT_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_RECT_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + RECT _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_RECT_2I\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_RECT_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + TRIVERTEX _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I\n") + if (arg1) lparg1 = getTRIVERTEXFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I\n") +} +#endif + +#ifndef NO_MoveMemory__ILorg_eclipse_swt_internal_win32_WINDOWPOS_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__ILorg_eclipse_swt_internal_win32_WINDOWPOS_2I) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2) +{ + WINDOWPOS _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_WINDOWPOS_2I\n") + if (arg1) lparg1 = getWINDOWPOSFields(env, arg1, &_arg1); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + if (arg1) setWINDOWPOSFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "MoveMemory__ILorg_eclipse_swt_internal_win32_WINDOWPOS_2I\n") +} +#endif + +#ifndef NO_MoveMemory__I_3BI +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3BI) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2) +{ + jbyte *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__I_3BI\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, JNI_ABORT); + NATIVE_EXIT(env, that, "MoveMemory__I_3BI\n") +} +#endif + +#ifndef NO_MoveMemory__I_3CI +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3CI) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2) +{ + jchar *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__I_3CI\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, JNI_ABORT); + NATIVE_EXIT(env, that, "MoveMemory__I_3CI\n") +} +#endif + +#ifndef NO_MoveMemory__I_3DI +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3DI) + (JNIEnv *env, jclass that, jint arg0, jdoubleArray arg1, jint arg2) +{ + jdouble *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__I_3DI\n") + if (arg1) lparg1 = (*env)->GetDoubleArrayElements(env, arg1, NULL); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + if (arg1) (*env)->ReleaseDoubleArrayElements(env, arg1, lparg1, JNI_ABORT); + NATIVE_EXIT(env, that, "MoveMemory__I_3DI\n") +} +#endif + +#ifndef NO_MoveMemory__I_3FI +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3FI) + (JNIEnv *env, jclass that, jint arg0, jfloatArray arg1, jint arg2) +{ + jfloat *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__I_3FI\n") + if (arg1) lparg1 = (*env)->GetFloatArrayElements(env, arg1, NULL); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + if (arg1) (*env)->ReleaseFloatArrayElements(env, arg1, lparg1, JNI_ABORT); + NATIVE_EXIT(env, that, "MoveMemory__I_3FI\n") +} +#endif + +#ifndef NO_MoveMemory__I_3II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3II) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jint arg2) +{ + jint *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__I_3II\n") + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, JNI_ABORT); + NATIVE_EXIT(env, that, "MoveMemory__I_3II\n") +} +#endif + +#ifndef NO_MoveMemory__I_3SI +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__I_3SI) + (JNIEnv *env, jclass that, jint arg0, jshortArray arg1, jint arg2) +{ + jshort *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__I_3SI\n") + if (arg1) lparg1 = (*env)->GetShortArrayElements(env, arg1, NULL); + MoveMemory((PVOID)arg0, (CONST VOID *)lparg1, arg2); + if (arg1) (*env)->ReleaseShortArrayElements(env, arg1, lparg1, JNI_ABORT); + NATIVE_EXIT(env, that, "MoveMemory__I_3SI\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2_3BI +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2_3BI) + (JNIEnv *env, jclass that, jobject arg0, jbyteArray arg1, jint arg2) +{ + BITMAPINFOHEADER _arg0, *lparg0=NULL; + jbyte *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2_3BI\n") + if (arg0) lparg0 = &_arg0; + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + MoveMemory((PVOID)lparg0, (CONST VOID *)lparg1, arg2); + if (arg0) setBITMAPINFOHEADERFields(env, arg0, lparg0); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2_3BI\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_DRAWITEMSTRUCT_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_DRAWITEMSTRUCT_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + DRAWITEMSTRUCT _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_DRAWITEMSTRUCT_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setDRAWITEMSTRUCTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_DRAWITEMSTRUCT_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_HDITEM_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_HDITEM_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + HDITEM _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_HDITEM_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setHDITEMFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_HDITEM_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + HELPINFO _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setHELPINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + LOGFONTA _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setLOGFONTAFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTW_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTW_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + LOGFONTW _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTW_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setLOGFONTWFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTW_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + MEASUREITEMSTRUCT _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setMEASUREITEMSTRUCTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_MEASUREITEMSTRUCT_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_MSG_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_MSG_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + MSG _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_MSG_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setMSGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_MSG_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMHDR_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMHDR_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMHDR _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHDR_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMHDRFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHDR_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMHEADER _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMHEADERFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMHEADER_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMLISTVIEW_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMLISTVIEW_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMLISTVIEW _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMLISTVIEW_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMLISTVIEWFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMLISTVIEW_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMLVCUSTOMDRAW _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMLVCUSTOMDRAWFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMLVCUSTOMDRAW_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMREBARCHEVRON _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMREBARCHEVRONFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTOOLBAR_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMTOOLBAR_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMTOOLBAR _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTOOLBAR_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMTOOLBARFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTOOLBAR_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMTTDISPINFOA _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMTTDISPINFOAFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMTTDISPINFOW _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMTTDISPINFOWFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + NMTVCUSTOMDRAW _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setNMTVCUSTOMDRAWFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_NMTVCUSTOMDRAW_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_TVITEM_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_TVITEM_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + TVITEM _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_TVITEM_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setTVITEMFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_TVITEM_2II\n") +} +#endif + +#ifndef NO_MoveMemory__Lorg_eclipse_swt_internal_win32_WINDOWPOS_2II +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory__Lorg_eclipse_swt_internal_win32_WINDOWPOS_2II) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2) +{ + WINDOWPOS _arg0, *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_WINDOWPOS_2II\n") + if (arg0) lparg0 = &_arg0; + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) setWINDOWPOSFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "MoveMemory__Lorg_eclipse_swt_internal_win32_WINDOWPOS_2II\n") +} +#endif + +#ifndef NO_MoveMemory___3BII +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3BII) + (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1, jint arg2) +{ + jbyte *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory___3BII\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "MoveMemory___3BII\n") +} +#endif + +#ifndef NO_MoveMemory___3BLorg_eclipse_swt_internal_win32_ACCEL_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3BLorg_eclipse_swt_internal_win32_ACCEL_2I) + (JNIEnv *env, jclass that, jbyteArray arg0, jobject arg1, jint arg2) +{ + jbyte *lparg0=NULL; + ACCEL _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory___3BLorg_eclipse_swt_internal_win32_ACCEL_2I\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + if (arg1) lparg1 = getACCELFields(env, arg1, &_arg1); + MoveMemory((PVOID)lparg0, (CONST VOID *)lparg1, arg2); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "MoveMemory___3BLorg_eclipse_swt_internal_win32_ACCEL_2I\n") +} +#endif + +#ifndef NO_MoveMemory___3BLorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2I +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3BLorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2I) + (JNIEnv *env, jclass that, jbyteArray arg0, jobject arg1, jint arg2) +{ + jbyte *lparg0=NULL; + BITMAPINFOHEADER _arg1, *lparg1=NULL; + NATIVE_ENTER(env, that, "MoveMemory___3BLorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2I\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + if (arg1) lparg1 = getBITMAPINFOHEADERFields(env, arg1, &_arg1); + MoveMemory((PVOID)lparg0, (CONST VOID *)lparg1, arg2); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "MoveMemory___3BLorg_eclipse_swt_internal_win32_BITMAPINFOHEADER_2I\n") +} +#endif + +#ifndef NO_MoveMemory___3CII +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3CII) + (JNIEnv *env, jclass that, jcharArray arg0, jint arg1, jint arg2) +{ + jchar *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory___3CII\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "MoveMemory___3CII\n") +} +#endif + +#ifndef NO_MoveMemory___3DII +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3DII) + (JNIEnv *env, jclass that, jdoubleArray arg0, jint arg1, jint arg2) +{ + jdouble *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory___3DII\n") + if (arg0) lparg0 = (*env)->GetDoubleArrayElements(env, arg0, NULL); + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) (*env)->ReleaseDoubleArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "MoveMemory___3DII\n") +} +#endif + +#ifndef NO_MoveMemory___3FII +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3FII) + (JNIEnv *env, jclass that, jfloatArray arg0, jint arg1, jint arg2) +{ + jfloat *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory___3FII\n") + if (arg0) lparg0 = (*env)->GetFloatArrayElements(env, arg0, NULL); + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) (*env)->ReleaseFloatArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "MoveMemory___3FII\n") +} +#endif + +#ifndef NO_MoveMemory___3III +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3III) + (JNIEnv *env, jclass that, jintArray arg0, jint arg1, jint arg2) +{ + jint *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory___3III\n") + if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL); + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "MoveMemory___3III\n") +} +#endif + +#ifndef NO_MoveMemory___3SII +JNIEXPORT void JNICALL OS_NATIVE(MoveMemory___3SII) + (JNIEnv *env, jclass that, jshortArray arg0, jint arg1, jint arg2) +{ + jshort *lparg0=NULL; + NATIVE_ENTER(env, that, "MoveMemory___3SII\n") + if (arg0) lparg0 = (*env)->GetShortArrayElements(env, arg0, NULL); + MoveMemory((PVOID)lparg0, (CONST VOID *)arg1, arg2); + if (arg0) (*env)->ReleaseShortArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "MoveMemory___3SII\n") +} +#endif + +#ifndef NO_MoveToEx +JNIEXPORT jboolean JNICALL OS_NATIVE(MoveToEx) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jboolean rc; + NATIVE_ENTER(env, that, "MoveToEx\n") + rc = (jboolean)MoveToEx((HDC)arg0, arg1, arg2, (LPPOINT)arg3); + NATIVE_EXIT(env, that, "MoveToEx\n") + return rc; +} +#endif + +#ifndef NO_MsgWaitForMultipleObjectsEx +JNIEXPORT jint JNICALL OS_NATIVE(MsgWaitForMultipleObjectsEx) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jint rc; + NATIVE_ENTER(env, that, "MsgWaitForMultipleObjectsEx\n") + rc = (jint)MsgWaitForMultipleObjectsEx((DWORD)arg0, (LPHANDLE)arg1, (DWORD)arg2, (DWORD)arg3, (DWORD)arg4); + NATIVE_EXIT(env, that, "MsgWaitForMultipleObjectsEx\n") + return rc; +} +#endif + +#ifndef NO_MultiByteToWideChar__IIII_3CI +JNIEXPORT jint JNICALL OS_NATIVE(MultiByteToWideChar__IIII_3CI) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jcharArray arg4, jint arg5) +{ + jchar *lparg4=NULL; + jint rc; + NATIVE_ENTER(env, that, "MultiByteToWideChar__IIII_3CI\n") + if (arg4) lparg4 = (*env)->GetCharArrayElements(env, arg4, NULL); + rc = (jint)MultiByteToWideChar(arg0, arg1, (LPCSTR)arg2, arg3, (LPWSTR)lparg4, arg5); + if (arg4) (*env)->ReleaseCharArrayElements(env, arg4, lparg4, 0); + NATIVE_EXIT(env, that, "MultiByteToWideChar__IIII_3CI\n") + return rc; +} +#endif + +#ifndef NO_MultiByteToWideChar__II_3BI_3CI +JNIEXPORT jint JNICALL OS_NATIVE(MultiByteToWideChar__II_3BI_3CI) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jint arg3, jcharArray arg4, jint arg5) +{ + jbyte *lparg2=NULL; + jchar *lparg4=NULL; + jint rc; + NATIVE_ENTER(env, that, "MultiByteToWideChar__II_3BI_3CI\n") + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + if (arg4) lparg4 = (*env)->GetCharArrayElements(env, arg4, NULL); + rc = (jint)MultiByteToWideChar(arg0, arg1, (LPCSTR)lparg2, arg3, (LPWSTR)lparg4, arg5); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + if (arg4) (*env)->ReleaseCharArrayElements(env, arg4, lparg4, 0); + NATIVE_EXIT(env, that, "MultiByteToWideChar__II_3BI_3CI\n") + return rc; +} +#endif + +#ifndef NO_OleInitialize +JNIEXPORT jint JNICALL OS_NATIVE(OleInitialize) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "OleInitialize\n") + rc = (jint)OleInitialize((LPVOID)arg0); + NATIVE_EXIT(env, that, "OleInitialize\n") + return rc; +} +#endif + +#ifndef NO_OleUninitialize +JNIEXPORT void JNICALL OS_NATIVE(OleUninitialize) + (JNIEnv *env, jclass that) +{ + NATIVE_ENTER(env, that, "OleUninitialize\n") + OleUninitialize(); + NATIVE_EXIT(env, that, "OleUninitialize\n") +} +#endif + +#ifndef NO_OpenClipboard +JNIEXPORT jboolean JNICALL OS_NATIVE(OpenClipboard) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "OpenClipboard\n") + rc = (jboolean)OpenClipboard((HWND)arg0); + NATIVE_EXIT(env, that, "OpenClipboard\n") + return rc; +} +#endif + +#ifndef NO_PatBlt +JNIEXPORT jboolean JNICALL OS_NATIVE(PatBlt) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5) +{ + jboolean rc; + NATIVE_ENTER(env, that, "PatBlt\n") + rc = (jboolean)PatBlt((HDC)arg0, arg1, arg2, arg3, arg4, arg5); + NATIVE_EXIT(env, that, "PatBlt\n") + return rc; +} +#endif + +#ifndef NO_PeekMessageA +JNIEXPORT jboolean JNICALL OS_NATIVE(PeekMessageA) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + MSG _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "PeekMessageA\n") + if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0); + rc = (jboolean)PeekMessageA(lparg0, (HWND)arg1, arg2, arg3, arg4); + if (arg0) setMSGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "PeekMessageA\n") + return rc; +} +#endif + +#ifndef NO_PeekMessageW +JNIEXPORT jboolean JNICALL OS_NATIVE(PeekMessageW) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + MSG _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "PeekMessageW\n") + if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0); + rc = (jboolean)PeekMessageW(lparg0, (HWND)arg1, arg2, arg3, arg4); + if (arg0) setMSGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "PeekMessageW\n") + return rc; +} +#endif + +#ifndef NO_Pie +JNIEXPORT jboolean JNICALL OS_NATIVE(Pie) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8) +{ + jboolean rc; + NATIVE_ENTER(env, that, "Pie\n") + rc = (jboolean)Pie((HDC)arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8); + NATIVE_EXIT(env, that, "Pie\n") + return rc; +} +#endif + +#ifndef NO_Polygon +JNIEXPORT jboolean JNICALL OS_NATIVE(Polygon) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jint arg2) +{ + jint *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "Polygon\n") + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); + rc = (jboolean)Polygon((HDC)arg0, (CONST POINT *)lparg1, arg2); + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "Polygon\n") + return rc; +} +#endif + +#ifndef NO_Polyline +JNIEXPORT jboolean JNICALL OS_NATIVE(Polyline) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jint arg2) +{ + jint *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "Polyline\n") + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); + rc = (jboolean)Polyline((HDC)arg0, (CONST POINT *)lparg1, arg2); + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "Polyline\n") + return rc; +} +#endif + +#ifndef NO_PostMessageA +JNIEXPORT jboolean JNICALL OS_NATIVE(PostMessageA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jboolean rc; + NATIVE_ENTER(env, that, "PostMessageA\n") + rc = (jboolean)PostMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "PostMessageA\n") + return rc; +} +#endif + +#ifndef NO_PostMessageW +JNIEXPORT jboolean JNICALL OS_NATIVE(PostMessageW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jboolean rc; + NATIVE_ENTER(env, that, "PostMessageW\n") + rc = (jboolean)PostMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "PostMessageW\n") + return rc; +} +#endif + +#ifndef NO_PostThreadMessageA +JNIEXPORT jboolean JNICALL OS_NATIVE(PostThreadMessageA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jboolean rc; + NATIVE_ENTER(env, that, "PostThreadMessageA\n") + rc = (jboolean)PostThreadMessageA(arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "PostThreadMessageA\n") + return rc; +} +#endif + +#ifndef NO_PostThreadMessageW +JNIEXPORT jboolean JNICALL OS_NATIVE(PostThreadMessageW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jboolean rc; + NATIVE_ENTER(env, that, "PostThreadMessageW\n") + rc = (jboolean)PostThreadMessageW(arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "PostThreadMessageW\n") + return rc; +} +#endif + +#ifndef NO_PrintDlgA +JNIEXPORT jboolean JNICALL OS_NATIVE(PrintDlgA) + (JNIEnv *env, jclass that, jobject arg0) +{ + PRINTDLG _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "PrintDlgA\n") + if (arg0) lparg0 = getPRINTDLGFields(env, arg0, &_arg0); + rc = (jboolean)PrintDlgA(lparg0); + if (arg0) setPRINTDLGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "PrintDlgA\n") + return rc; +} +#endif + +#ifndef NO_PrintDlgW +JNIEXPORT jboolean JNICALL OS_NATIVE(PrintDlgW) + (JNIEnv *env, jclass that, jobject arg0) +{ + PRINTDLG _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "PrintDlgW\n") + if (arg0) lparg0 = getPRINTDLGFields(env, arg0, &_arg0); + rc = (jboolean)PrintDlgW((LPPRINTDLGW)lparg0); + if (arg0) setPRINTDLGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "PrintDlgW\n") + return rc; +} +#endif + +#ifndef NO_PtInRect +JNIEXPORT jboolean JNICALL OS_NATIVE(PtInRect) + (JNIEnv *env, jclass that, jobject arg0, jobject arg1) +{ + RECT _arg0, *lparg0=NULL; + POINT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "PtInRect\n") + if (arg0) lparg0 = getRECTFields(env, arg0, &_arg0); + if (arg1) lparg1 = getPOINTFields(env, arg1, &_arg1); + rc = (jboolean)PtInRect(lparg0, *lparg1); + if (arg0) setRECTFields(env, arg0, lparg0); + if (arg1) setPOINTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "PtInRect\n") + return rc; +} +#endif + +#ifndef NO_PtInRegion +JNIEXPORT jboolean JNICALL OS_NATIVE(PtInRegion) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "PtInRegion\n") + rc = (jboolean)PtInRegion((HRGN)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "PtInRegion\n") + return rc; +} +#endif + +#ifndef NO_RealizePalette +JNIEXPORT jint JNICALL OS_NATIVE(RealizePalette) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "RealizePalette\n") + rc = (jint)RealizePalette((HDC)arg0); + NATIVE_EXIT(env, that, "RealizePalette\n") + return rc; +} +#endif + +#ifndef NO_RectInRegion +JNIEXPORT jboolean JNICALL OS_NATIVE(RectInRegion) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "RectInRegion\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)RectInRegion((HRGN)arg0, lparg1); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "RectInRegion\n") + return rc; +} +#endif + +#ifndef NO_Rectangle +JNIEXPORT jboolean JNICALL OS_NATIVE(Rectangle) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jboolean rc; + NATIVE_ENTER(env, that, "Rectangle\n") + rc = (jboolean)Rectangle((HDC)arg0, arg1, arg2, arg3, arg4); + NATIVE_EXIT(env, that, "Rectangle\n") + return rc; +} +#endif + +#ifndef NO_RedrawWindow +JNIEXPORT jboolean JNICALL OS_NATIVE(RedrawWindow) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jint arg3) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "RedrawWindow\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)RedrawWindow((HWND)arg0, lparg1, (HRGN)arg2, arg3); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "RedrawWindow\n") + return rc; +} +#endif + +#ifndef NO_RegCloseKey +JNIEXPORT jint JNICALL OS_NATIVE(RegCloseKey) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "RegCloseKey\n") + rc = (jint)RegCloseKey((HKEY)arg0); + NATIVE_EXIT(env, that, "RegCloseKey\n") + return rc; +} +#endif + +#ifndef NO_RegEnumKeyExA +JNIEXPORT jint JNICALL OS_NATIVE(RegEnumKeyExA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jintArray arg3, jintArray arg4, jbyteArray arg5, jintArray arg6, jobject arg7) +{ + jbyte *lparg2=NULL; + jint *lparg3=NULL; + jint *lparg4=NULL; + jbyte *lparg5=NULL; + jint *lparg6=NULL; + FILETIME _arg7, *lparg7=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegEnumKeyExA\n") + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL); + if (arg5) lparg5 = (*env)->GetByteArrayElements(env, arg5, NULL); + if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL); + if (arg7) lparg7 = getFILETIMEFields(env, arg7, &_arg7); + rc = (jint)RegEnumKeyExA((HKEY)arg0, arg1, (LPSTR)lparg2, lparg3, lparg4, (LPSTR)lparg5, lparg6, lparg7); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0); + if (arg5) (*env)->ReleaseByteArrayElements(env, arg5, lparg5, 0); + if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0); + if (arg7) setFILETIMEFields(env, arg7, lparg7); + NATIVE_EXIT(env, that, "RegEnumKeyExA\n") + return rc; +} +#endif + +#ifndef NO_RegEnumKeyExW +JNIEXPORT jint JNICALL OS_NATIVE(RegEnumKeyExW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jintArray arg3, jintArray arg4, jcharArray arg5, jintArray arg6, jobject arg7) +{ + jchar *lparg2=NULL; + jint *lparg3=NULL; + jint *lparg4=NULL; + jchar *lparg5=NULL; + jint *lparg6=NULL; + FILETIME _arg7, *lparg7=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegEnumKeyExW\n") + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL); + if (arg5) lparg5 = (*env)->GetCharArrayElements(env, arg5, NULL); + if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL); + if (arg7) lparg7 = getFILETIMEFields(env, arg7, &_arg7); + rc = (jint)RegEnumKeyExW((HKEY)arg0, arg1, (LPWSTR)lparg2, lparg3, lparg4, (LPWSTR)lparg5, lparg6, lparg7); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0); + if (arg5) (*env)->ReleaseCharArrayElements(env, arg5, lparg5, 0); + if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0); + if (arg7) setFILETIMEFields(env, arg7, lparg7); + NATIVE_EXIT(env, that, "RegEnumKeyExW\n") + return rc; +} +#endif + +#ifndef NO_RegOpenKeyExA +JNIEXPORT jint JNICALL OS_NATIVE(RegOpenKeyExA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jint arg3, jintArray arg4) +{ + jbyte *lparg1=NULL; + jint *lparg4=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegOpenKeyExA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL); + rc = (jint)RegOpenKeyExA((HKEY)arg0, (LPSTR)lparg1, arg2, arg3, (PHKEY)lparg4); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0); + NATIVE_EXIT(env, that, "RegOpenKeyExA\n") + return rc; +} +#endif + +#ifndef NO_RegOpenKeyExW +JNIEXPORT jint JNICALL OS_NATIVE(RegOpenKeyExW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jint arg3, jintArray arg4) +{ + jchar *lparg1=NULL; + jint *lparg4=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegOpenKeyExW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL); + rc = (jint)RegOpenKeyExW((HKEY)arg0, (LPWSTR)lparg1, arg2, arg3, (PHKEY)lparg4); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0); + NATIVE_EXIT(env, that, "RegOpenKeyExW\n") + return rc; +} +#endif + +#ifndef NO_RegQueryInfoKeyA +JNIEXPORT jint JNICALL OS_NATIVE(RegQueryInfoKeyA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3, jintArray arg4, jintArray arg5, jintArray arg6, jintArray arg7, jintArray arg8, jintArray arg9, jintArray arg10, jint arg11) +{ + jint *lparg2=NULL; + jint *lparg4=NULL; + jint *lparg5=NULL; + jint *lparg6=NULL; + jint *lparg7=NULL; + jint *lparg8=NULL; + jint *lparg9=NULL; + jint *lparg10=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegQueryInfoKeyA\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL); + if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL); + if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL); + if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL); + if (arg8) lparg8 = (*env)->GetIntArrayElements(env, arg8, NULL); + if (arg9) lparg9 = (*env)->GetIntArrayElements(env, arg9, NULL); + if (arg10) lparg10 = (*env)->GetIntArrayElements(env, arg10, NULL); + rc = (jint)RegQueryInfoKeyA((HKEY)arg0, (LPSTR)arg1, lparg2, (LPDWORD)arg3, lparg4, lparg5, lparg6, lparg7, lparg8, lparg9, lparg10, (PFILETIME)arg11); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0); + if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0); + if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0); + if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0); + if (arg8) (*env)->ReleaseIntArrayElements(env, arg8, lparg8, 0); + if (arg9) (*env)->ReleaseIntArrayElements(env, arg9, lparg9, 0); + if (arg10) (*env)->ReleaseIntArrayElements(env, arg10, lparg10, 0); + NATIVE_EXIT(env, that, "RegQueryInfoKeyA\n") + return rc; +} +#endif + +#ifndef NO_RegQueryInfoKeyW +JNIEXPORT jint JNICALL OS_NATIVE(RegQueryInfoKeyW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3, jintArray arg4, jintArray arg5, jintArray arg6, jintArray arg7, jintArray arg8, jintArray arg9, jintArray arg10, jint arg11) +{ + jint *lparg2=NULL; + jint *lparg4=NULL; + jint *lparg5=NULL; + jint *lparg6=NULL; + jint *lparg7=NULL; + jint *lparg8=NULL; + jint *lparg9=NULL; + jint *lparg10=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegQueryInfoKeyW\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + if (arg4) lparg4 = (*env)->GetIntArrayElements(env, arg4, NULL); + if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL); + if (arg6) lparg6 = (*env)->GetIntArrayElements(env, arg6, NULL); + if (arg7) lparg7 = (*env)->GetIntArrayElements(env, arg7, NULL); + if (arg8) lparg8 = (*env)->GetIntArrayElements(env, arg8, NULL); + if (arg9) lparg9 = (*env)->GetIntArrayElements(env, arg9, NULL); + if (arg10) lparg10 = (*env)->GetIntArrayElements(env, arg10, NULL); + rc = (jint)RegQueryInfoKeyW((HKEY)arg0, (LPWSTR)arg1, lparg2, (LPDWORD)arg3, lparg4, lparg5, lparg6, lparg7, lparg8, lparg9, lparg10, (PFILETIME)arg11); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + if (arg4) (*env)->ReleaseIntArrayElements(env, arg4, lparg4, 0); + if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0); + if (arg6) (*env)->ReleaseIntArrayElements(env, arg6, lparg6, 0); + if (arg7) (*env)->ReleaseIntArrayElements(env, arg7, lparg7, 0); + if (arg8) (*env)->ReleaseIntArrayElements(env, arg8, lparg8, 0); + if (arg9) (*env)->ReleaseIntArrayElements(env, arg9, lparg9, 0); + if (arg10) (*env)->ReleaseIntArrayElements(env, arg10, lparg10, 0); + NATIVE_EXIT(env, that, "RegQueryInfoKeyW\n") + return rc; +} +#endif + +#ifndef NO_RegQueryValueExA +JNIEXPORT jint JNICALL OS_NATIVE(RegQueryValueExA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1, jint arg2, jintArray arg3, jbyteArray arg4, jintArray arg5) +{ + jbyte *lparg1=NULL; + jint *lparg3=NULL; + jbyte *lparg4=NULL; + jint *lparg5=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegQueryValueExA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + if (arg4) lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL); + if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL); + rc = (jint)RegQueryValueExA((HKEY)arg0, (LPSTR)lparg1, (LPDWORD)arg2, lparg3, (LPBYTE)lparg4, lparg5); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + if (arg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0); + if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0); + NATIVE_EXIT(env, that, "RegQueryValueExA\n") + return rc; +} +#endif + +#ifndef NO_RegQueryValueExW +JNIEXPORT jint JNICALL OS_NATIVE(RegQueryValueExW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1, jint arg2, jintArray arg3, jcharArray arg4, jintArray arg5) +{ + jchar *lparg1=NULL; + jint *lparg3=NULL; + jchar *lparg4=NULL; + jint *lparg5=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegQueryValueExW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + if (arg4) lparg4 = (*env)->GetCharArrayElements(env, arg4, NULL); + if (arg5) lparg5 = (*env)->GetIntArrayElements(env, arg5, NULL); + rc = (jint)RegQueryValueExW((HKEY)arg0, (LPWSTR)lparg1, (LPDWORD)arg2, lparg3, (LPBYTE)lparg4, lparg5); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + if (arg4) (*env)->ReleaseCharArrayElements(env, arg4, lparg4, 0); + if (arg5) (*env)->ReleaseIntArrayElements(env, arg5, lparg5, 0); + NATIVE_EXIT(env, that, "RegQueryValueExW\n") + return rc; +} +#endif + +#ifndef NO_RegisterClassA +JNIEXPORT jint JNICALL OS_NATIVE(RegisterClassA) + (JNIEnv *env, jclass that, jobject arg0) +{ + WNDCLASS _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegisterClassA\n") + if (arg0) lparg0 = getWNDCLASSFields(env, arg0, &_arg0); + rc = (jint)RegisterClassA(lparg0); + if (arg0) setWNDCLASSFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "RegisterClassA\n") + return rc; +} +#endif + +#ifndef NO_RegisterClassW +JNIEXPORT jint JNICALL OS_NATIVE(RegisterClassW) + (JNIEnv *env, jclass that, jobject arg0) +{ + WNDCLASS _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegisterClassW\n") + if (arg0) lparg0 = getWNDCLASSFields(env, arg0, &_arg0); + rc = (jint)RegisterClassW((LPWNDCLASSW)lparg0); + if (arg0) setWNDCLASSFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "RegisterClassW\n") + return rc; +} +#endif + +#ifndef NO_RegisterClipboardFormatA +JNIEXPORT jint JNICALL OS_NATIVE(RegisterClipboardFormatA) + (JNIEnv *env, jclass that, jbyteArray arg0) +{ + jbyte *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegisterClipboardFormatA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + rc = (jint)RegisterClipboardFormatA((LPTSTR)lparg0); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "RegisterClipboardFormatA\n") + return rc; +} +#endif + +#ifndef NO_RegisterClipboardFormatW +JNIEXPORT jint JNICALL OS_NATIVE(RegisterClipboardFormatW) + (JNIEnv *env, jclass that, jcharArray arg0) +{ + jchar *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "RegisterClipboardFormatW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + rc = (jint)RegisterClipboardFormatW((LPWSTR)lparg0); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "RegisterClipboardFormatW\n") + return rc; +} +#endif + +#ifndef NO_ReleaseCapture +JNIEXPORT jboolean JNICALL OS_NATIVE(ReleaseCapture) + (JNIEnv *env, jclass that) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ReleaseCapture\n") + rc = (jboolean)ReleaseCapture(); + NATIVE_EXIT(env, that, "ReleaseCapture\n") + return rc; +} +#endif + +#ifndef NO_ReleaseDC +JNIEXPORT jint JNICALL OS_NATIVE(ReleaseDC) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "ReleaseDC\n") + rc = (jint)ReleaseDC((HWND)arg0, (HDC)arg1); + NATIVE_EXIT(env, that, "ReleaseDC\n") + return rc; +} +#endif + +#ifndef NO_RemoveMenu +JNIEXPORT jboolean JNICALL OS_NATIVE(RemoveMenu) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "RemoveMenu\n") + rc = (jboolean)RemoveMenu((HMENU)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "RemoveMenu\n") + return rc; +} +#endif + +#ifndef NO_RoundRect +JNIEXPORT jboolean JNICALL OS_NATIVE(RoundRect) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6) +{ + jboolean rc; + NATIVE_ENTER(env, that, "RoundRect\n") + rc = (jboolean)RoundRect((HDC)arg0, arg1, arg2, arg3, arg4, arg5, arg6); + NATIVE_EXIT(env, that, "RoundRect\n") + return rc; +} +#endif + +#ifndef NO_SHBrowseForFolderA +JNIEXPORT jint JNICALL OS_NATIVE(SHBrowseForFolderA) + (JNIEnv *env, jclass that, jobject arg0) +{ + BROWSEINFO _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "SHBrowseForFolderA\n") + if (arg0) lparg0 = getBROWSEINFOFields(env, arg0, &_arg0); + rc = (jint)SHBrowseForFolderA(lparg0); + if (arg0) setBROWSEINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "SHBrowseForFolderA\n") + return rc; +} +#endif + +#ifndef NO_SHBrowseForFolderW +JNIEXPORT jint JNICALL OS_NATIVE(SHBrowseForFolderW) + (JNIEnv *env, jclass that, jobject arg0) +{ + BROWSEINFO _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "SHBrowseForFolderW\n") + if (arg0) lparg0 = getBROWSEINFOFields(env, arg0, &_arg0); + rc = (jint)SHBrowseForFolderW((LPBROWSEINFOW)lparg0); + if (arg0) setBROWSEINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "SHBrowseForFolderW\n") + return rc; +} +#endif + +#ifndef NO_SHCreateMenuBar +JNIEXPORT jboolean JNICALL OS_NATIVE(SHCreateMenuBar) + (JNIEnv *env, jclass that, jobject arg0) +{ + SHMENUBARINFO _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SHCreateMenuBar\n") + if (arg0) lparg0 = getSHMENUBARINFOFields(env, arg0, &_arg0); + rc = (jboolean)SHCreateMenuBar((PSHMENUBARINFO)lparg0); + if (arg0) setSHMENUBARINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "SHCreateMenuBar\n") + return rc; +} +#endif + +#ifndef NO_SHGetMalloc +JNIEXPORT jint JNICALL OS_NATIVE(SHGetMalloc) + (JNIEnv *env, jclass that, jintArray arg0) +{ + jint *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "SHGetMalloc\n") + if (arg0) lparg0 = (*env)->GetIntArrayElements(env, arg0, NULL); + rc = (jint)SHGetMalloc((LPMALLOC *)lparg0); + if (arg0) (*env)->ReleaseIntArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "SHGetMalloc\n") + return rc; +} +#endif + +#ifndef NO_SHGetPathFromIDListA +JNIEXPORT jboolean JNICALL OS_NATIVE(SHGetPathFromIDListA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1) +{ + jbyte *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SHGetPathFromIDListA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jboolean)SHGetPathFromIDListA((LPCITEMIDLIST)arg0, (LPSTR)lparg1); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "SHGetPathFromIDListA\n") + return rc; +} +#endif + +#ifndef NO_SHGetPathFromIDListW +JNIEXPORT jboolean JNICALL OS_NATIVE(SHGetPathFromIDListW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1) +{ + jchar *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SHGetPathFromIDListW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jboolean)SHGetPathFromIDListW((LPCITEMIDLIST)arg0, (LPWSTR)lparg1); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "SHGetPathFromIDListW\n") + return rc; +} +#endif + +#ifndef NO_SHHandleWMSettingChange +JNIEXPORT jboolean JNICALL OS_NATIVE(SHHandleWMSettingChange) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + SHACTIVATEINFO _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SHHandleWMSettingChange\n") + if (arg3) lparg3 = getSHACTIVATEINFOFields(env, arg3, &_arg3); + rc = (jboolean)SHHandleWMSettingChange((HWND)arg0, arg1, arg2, lparg3); + if (arg3) setSHACTIVATEINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SHHandleWMSettingChange\n") + return rc; +} +#endif + +#ifndef NO_SHRecognizeGesture +JNIEXPORT jint JNICALL OS_NATIVE(SHRecognizeGesture) + (JNIEnv *env, jclass that, jobject arg0) +{ + SHRGINFO _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "SHRecognizeGesture\n") + if (arg0) lparg0 = getSHRGINFOFields(env, arg0, &_arg0); + rc = (jint)SHRecognizeGesture(lparg0); + if (arg0) setSHRGINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "SHRecognizeGesture\n") + return rc; +} +#endif + +#ifndef NO_SHSendBackToFocusWindow +JNIEXPORT void JNICALL OS_NATIVE(SHSendBackToFocusWindow) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + NATIVE_ENTER(env, that, "SHSendBackToFocusWindow\n") + SHSendBackToFocusWindow(arg0, arg1, arg2); + NATIVE_EXIT(env, that, "SHSendBackToFocusWindow\n") +} +#endif + +#ifndef NO_SHSetAppKeyWndAssoc +JNIEXPORT jboolean JNICALL OS_NATIVE(SHSetAppKeyWndAssoc) + (JNIEnv *env, jclass that, jbyte arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SHSetAppKeyWndAssoc\n") + rc = (jboolean)SHSetAppKeyWndAssoc((BYTE)arg0, (HWND)arg1); + NATIVE_EXIT(env, that, "SHSetAppKeyWndAssoc\n") + return rc; +} +#endif + +#ifndef NO_SHSipPreference +JNIEXPORT jboolean JNICALL OS_NATIVE(SHSipPreference) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SHSipPreference\n") + rc = (jboolean)SHSipPreference((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "SHSipPreference\n") + return rc; +} +#endif + +#ifndef NO_ScreenToClient +JNIEXPORT jboolean JNICALL OS_NATIVE(ScreenToClient) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + POINT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ScreenToClient\n") + if (arg1) lparg1 = getPOINTFields(env, arg1, &_arg1); + rc = (jboolean)ScreenToClient((HWND)arg0, lparg1); + if (arg1) setPOINTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "ScreenToClient\n") + return rc; +} +#endif + +#ifndef NO_ScrollWindowEx +JNIEXPORT jint JNICALL OS_NATIVE(ScrollWindowEx) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3, jobject arg4, jint arg5, jobject arg6, jint arg7) +{ + RECT _arg3, *lparg3=NULL; + RECT _arg4, *lparg4=NULL; + RECT _arg6, *lparg6=NULL; + jint rc; + NATIVE_ENTER(env, that, "ScrollWindowEx\n") + if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3); + if (arg4) lparg4 = getRECTFields(env, arg4, &_arg4); + if (arg6) lparg6 = getRECTFields(env, arg6, &_arg6); + rc = (jint)ScrollWindowEx((HWND)arg0, arg1, arg2, lparg3, lparg4, (HRGN)arg5, lparg6, arg7); + if (arg3) setRECTFields(env, arg3, lparg3); + if (arg4) setRECTFields(env, arg4, lparg4); + if (arg6) setRECTFields(env, arg6, lparg6); + NATIVE_EXIT(env, that, "ScrollWindowEx\n") + return rc; +} +#endif + +#ifndef NO_SelectClipRgn +JNIEXPORT jint JNICALL OS_NATIVE(SelectClipRgn) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SelectClipRgn\n") + rc = (jint)SelectClipRgn((HDC)arg0, (HRGN)arg1); + NATIVE_EXIT(env, that, "SelectClipRgn\n") + return rc; +} +#endif + +#ifndef NO_SelectObject +JNIEXPORT jint JNICALL OS_NATIVE(SelectObject) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SelectObject\n") + rc = (jint)SelectObject((HDC)arg0, (HGDIOBJ)arg1); + NATIVE_EXIT(env, that, "SelectObject\n") + return rc; +} +#endif + +#ifndef NO_SelectPalette +JNIEXPORT jint JNICALL OS_NATIVE(SelectPalette) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "SelectPalette\n") + rc = (jint)SelectPalette((HDC)arg0, (HPALETTE)arg1, arg2); + NATIVE_EXIT(env, that, "SelectPalette\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIII +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIII) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIII\n") + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "SendMessageA__IIII\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + LVCOLUMN _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2\n") + if (arg3) lparg3 = getLVCOLUMNFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setLVCOLUMNFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + LVHITTESTINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2\n") + if (arg3) lparg3 = getLVHITTESTINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setLVHITTESTINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + LVITEM _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2\n") + if (arg3) lparg3 = getLVITEMFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setLVITEMFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + REBARBANDINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2\n") + if (arg3) lparg3 = getREBARBANDINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setREBARBANDINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + RECT _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2\n") + if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setRECTFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TBBUTTONINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2\n") + if (arg3) lparg3 = getTBBUTTONINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTBBUTTONINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TBBUTTON _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2\n") + if (arg3) lparg3 = getTBBUTTONFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTBBUTTONFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TCITEM _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2\n") + if (arg3) lparg3 = getTCITEMFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTCITEMFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TOOLINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2\n") + if (arg3) lparg3 = getTOOLINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTOOLINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TVHITTESTINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2\n") + if (arg3) lparg3 = getTVHITTESTINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTVHITTESTINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TVINSERTSTRUCT _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2\n") + if (arg3) lparg3 = getTVINSERTSTRUCTFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTVINSERTSTRUCTFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TVITEM _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2\n") + if (arg3) lparg3 = getTVITEMFields(env, arg3, &_arg3); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTVITEMFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__III_3B +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__III_3B) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3) +{ + jbyte *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__III_3B\n") + if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SendMessageA__III_3B\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__III_3I +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__III_3I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3) +{ + jint *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__III_3I\n") + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SendMessageA__III_3I\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__III_3S +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__III_3S) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jshortArray arg3) +{ + jshort *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__III_3S\n") + if (arg3) lparg3 = (*env)->GetShortArrayElements(env, arg3, NULL); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) (*env)->ReleaseShortArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SendMessageA__III_3S\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__II_3II +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__II_3II) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3) +{ + jint *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__II_3II\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)arg3); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "SendMessageA__II_3II\n") + return rc; +} +#endif + +#ifndef NO_SendMessageA__II_3I_3I +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__II_3I_3I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jintArray arg3) +{ + jint *lparg2=NULL; + jint *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageA__II_3I_3I\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)lparg3); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SendMessageA__II_3I_3I\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIII +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIII) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIII\n") + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)arg3); + NATIVE_EXIT(env, that, "SendMessageW__IIII\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + LVCOLUMN _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2\n") + if (arg3) lparg3 = getLVCOLUMNFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setLVCOLUMNFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + LVHITTESTINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2\n") + if (arg3) lparg3 = getLVHITTESTINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setLVHITTESTINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_LVITEM_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_LVITEM_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + LVITEM _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVITEM_2\n") + if (arg3) lparg3 = getLVITEMFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setLVITEMFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_LVITEM_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + REBARBANDINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2\n") + if (arg3) lparg3 = getREBARBANDINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setREBARBANDINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + RECT _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2\n") + if (arg3) lparg3 = getRECTFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setRECTFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TBBUTTONINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2\n") + if (arg3) lparg3 = getTBBUTTONINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTBBUTTONINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TBBUTTON _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2\n") + if (arg3) lparg3 = getTBBUTTONFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTBBUTTONFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TCITEM _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2\n") + if (arg3) lparg3 = getTCITEMFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTCITEMFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TOOLINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2\n") + if (arg3) lparg3 = getTOOLINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTOOLINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TVHITTESTINFO _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2\n") + if (arg3) lparg3 = getTVHITTESTINFOFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTVHITTESTINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TVINSERTSTRUCT _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2\n") + if (arg3) lparg3 = getTVINSERTSTRUCTFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTVINSERTSTRUCTFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TVITEM_2 +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_TVITEM_2) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3) +{ + TVITEM _arg3, *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVITEM_2\n") + if (arg3) lparg3 = getTVITEMFields(env, arg3, &_arg3); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) setTVITEMFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SendMessageW__IIILorg_eclipse_swt_internal_win32_TVITEM_2\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__III_3C +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__III_3C) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jcharArray arg3) +{ + jchar *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__III_3C\n") + if (arg3) lparg3 = (*env)->GetCharArrayElements(env, arg3, NULL); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) (*env)->ReleaseCharArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SendMessageW__III_3C\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__III_3I +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__III_3I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jintArray arg3) +{ + jint *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__III_3I\n") + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SendMessageW__III_3I\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__III_3S +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__III_3S) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jshortArray arg3) +{ + jshort *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__III_3S\n") + if (arg3) lparg3 = (*env)->GetShortArrayElements(env, arg3, NULL); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3); + if (arg3) (*env)->ReleaseShortArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SendMessageW__III_3S\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__II_3II +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__II_3II) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3) +{ + jint *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__II_3II\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)arg3); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "SendMessageW__II_3II\n") + return rc; +} +#endif + +#ifndef NO_SetActiveWindow +JNIEXPORT jint JNICALL OS_NATIVE(SetActiveWindow) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "SetActiveWindow\n") + rc = (jint)SetActiveWindow((HWND)arg0); + NATIVE_EXIT(env, that, "SetActiveWindow\n") + return rc; +} +#endif + +#ifndef NO_SetBkColor +JNIEXPORT jint JNICALL OS_NATIVE(SetBkColor) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetBkColor\n") + rc = (jint)SetBkColor((HDC)arg0, (COLORREF)arg1); + NATIVE_EXIT(env, that, "SetBkColor\n") + return rc; +} +#endif + +#ifndef NO_SetBkMode +JNIEXPORT jint JNICALL OS_NATIVE(SetBkMode) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetBkMode\n") + rc = (jint)SetBkMode((HDC)arg0, arg1); + NATIVE_EXIT(env, that, "SetBkMode\n") + return rc; +} +#endif + +#ifndef NO_SetCapture +JNIEXPORT jint JNICALL OS_NATIVE(SetCapture) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "SetCapture\n") + rc = (jint)SetCapture((HWND)arg0); + NATIVE_EXIT(env, that, "SetCapture\n") + return rc; +} +#endif + +#ifndef NO_SetCaretPos +JNIEXPORT jboolean JNICALL OS_NATIVE(SetCaretPos) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SetCaretPos\n") + rc = (jboolean)SetCaretPos(arg0, arg1); + NATIVE_EXIT(env, that, "SetCaretPos\n") + return rc; +} +#endif + +#ifndef NO_SetClipboardData +JNIEXPORT jint JNICALL OS_NATIVE(SetClipboardData) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetClipboardData\n") + rc = (jint)SetClipboardData(arg0, (HANDLE)arg1); + NATIVE_EXIT(env, that, "SetClipboardData\n") + return rc; +} +#endif + +#ifndef NO_SetCursor +JNIEXPORT jint JNICALL OS_NATIVE(SetCursor) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "SetCursor\n") + rc = (jint)SetCursor((HCURSOR)arg0); + NATIVE_EXIT(env, that, "SetCursor\n") + return rc; +} +#endif + +#ifndef NO_SetCursorPos +JNIEXPORT jboolean JNICALL OS_NATIVE(SetCursorPos) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SetCursorPos\n") + rc = (jboolean)SetCursorPos(arg0, arg1); + NATIVE_EXIT(env, that, "SetCursorPos\n") + return rc; +} +#endif + +#ifndef NO_SetDIBColorTable +JNIEXPORT jint JNICALL OS_NATIVE(SetDIBColorTable) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3) +{ + jbyte *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SetDIBColorTable\n") + if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL); + rc = (jint)SetDIBColorTable((HDC)arg0, arg1, arg2, (RGBQUAD *)lparg3); + if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SetDIBColorTable\n") + return rc; +} +#endif + +#ifndef NO_SetErrorMode +JNIEXPORT jint JNICALL OS_NATIVE(SetErrorMode) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "SetErrorMode\n") + rc = (jint)SetErrorMode(arg0); + NATIVE_EXIT(env, that, "SetErrorMode\n") + return rc; +} +#endif + +#ifndef NO_SetFocus +JNIEXPORT jint JNICALL OS_NATIVE(SetFocus) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "SetFocus\n") + rc = (jint)SetFocus((HWND)arg0); + NATIVE_EXIT(env, that, "SetFocus\n") + return rc; +} +#endif + +#ifndef NO_SetForegroundWindow +JNIEXPORT jboolean JNICALL OS_NATIVE(SetForegroundWindow) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SetForegroundWindow\n") + rc = (jboolean)SetForegroundWindow((HWND)arg0); + NATIVE_EXIT(env, that, "SetForegroundWindow\n") + return rc; +} +#endif + +#ifndef NO_SetMenu +JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenu) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SetMenu\n") + rc = (jboolean)SetMenu((HWND)arg0, (HMENU)arg1); + NATIVE_EXIT(env, that, "SetMenu\n") + return rc; +} +#endif + +#ifndef NO_SetMenuDefaultItem +JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenuDefaultItem) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SetMenuDefaultItem\n") + rc = (jboolean)SetMenuDefaultItem((HMENU)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "SetMenuDefaultItem\n") + return rc; +} +#endif + +#ifndef NO_SetMenuItemInfoA +JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenuItemInfoA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3) +{ + MENUITEMINFO _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SetMenuItemInfoA\n") + if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3); + rc = (jboolean)SetMenuItemInfoA((HMENU)arg0, arg1, arg2, lparg3); + if (arg3) setMENUITEMINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SetMenuItemInfoA\n") + return rc; +} +#endif + +#ifndef NO_SetMenuItemInfoW +JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenuItemInfoW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2, jobject arg3) +{ + MENUITEMINFO _arg3, *lparg3=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SetMenuItemInfoW\n") + if (arg3) lparg3 = getMENUITEMINFOFields(env, arg3, &_arg3); + rc = (jboolean)SetMenuItemInfoW((HMENU)arg0, arg1, arg2, (LPMENUITEMINFOW)lparg3); + if (arg3) setMENUITEMINFOFields(env, arg3, lparg3); + NATIVE_EXIT(env, that, "SetMenuItemInfoW\n") + return rc; +} +#endif + +#ifndef NO_SetPaletteEntries +JNIEXPORT jint JNICALL OS_NATIVE(SetPaletteEntries) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jbyteArray arg3) +{ + jbyte *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SetPaletteEntries\n") + if (arg3) lparg3 = (*env)->GetByteArrayElements(env, arg3, NULL); + rc = (jint)SetPaletteEntries((HPALETTE)arg0, arg1, arg2, (PALETTEENTRY *)lparg3); + if (arg3) (*env)->ReleaseByteArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SetPaletteEntries\n") + return rc; +} +#endif + +#ifndef NO_SetParent +JNIEXPORT jint JNICALL OS_NATIVE(SetParent) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetParent\n") + rc = (jint)SetParent((HWND)arg0, (HWND)arg1); + NATIVE_EXIT(env, that, "SetParent\n") + return rc; +} +#endif + +#ifndef NO_SetPixel +JNIEXPORT jint JNICALL OS_NATIVE(SetPixel) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "SetPixel\n") + rc = (jint)SetPixel((HDC)arg0, arg1, arg2, arg3); + NATIVE_EXIT(env, that, "SetPixel\n") + return rc; +} +#endif + +#ifndef NO_SetROP2 +JNIEXPORT jint JNICALL OS_NATIVE(SetROP2) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetROP2\n") + rc = (jint)SetROP2((HDC)arg0, arg1); + NATIVE_EXIT(env, that, "SetROP2\n") + return rc; +} +#endif + +#ifndef NO_SetRect +JNIEXPORT jboolean JNICALL OS_NATIVE(SetRect) + (JNIEnv *env, jclass that, jobject arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + RECT _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SetRect\n") + if (arg0) lparg0 = getRECTFields(env, arg0, &_arg0); + rc = (jboolean)SetRect(lparg0, arg1, arg2, arg3, arg4); + if (arg0) setRECTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "SetRect\n") + return rc; +} +#endif + +#ifndef NO_SetRectRgn +JNIEXPORT jboolean JNICALL OS_NATIVE(SetRectRgn) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SetRectRgn\n") + rc = (jboolean)SetRectRgn((HRGN)arg0, arg1, arg2, arg3, arg4); + NATIVE_EXIT(env, that, "SetRectRgn\n") + return rc; +} +#endif + +#ifndef NO_SetScrollInfo +JNIEXPORT jboolean JNICALL OS_NATIVE(SetScrollInfo) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jboolean arg3) +{ + SCROLLINFO _arg2, *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SetScrollInfo\n") + if (arg2) lparg2 = getSCROLLINFOFields(env, arg2, &_arg2); + rc = (jboolean)SetScrollInfo((HWND)arg0, arg1, lparg2, arg3); + if (arg2) setSCROLLINFOFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "SetScrollInfo\n") + return rc; +} +#endif + +#ifndef NO_SetStretchBltMode +JNIEXPORT jint JNICALL OS_NATIVE(SetStretchBltMode) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetStretchBltMode\n") + rc = (jint)SetStretchBltMode((HDC)arg0, arg1); + NATIVE_EXIT(env, that, "SetStretchBltMode\n") + return rc; +} +#endif + +#ifndef NO_SetTextAlign +JNIEXPORT jint JNICALL OS_NATIVE(SetTextAlign) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetTextAlign\n") + rc = (jint)SetTextAlign((HDC)arg0, arg1); + NATIVE_EXIT(env, that, "SetTextAlign\n") + return rc; +} +#endif + +#ifndef NO_SetTextColor +JNIEXPORT jint JNICALL OS_NATIVE(SetTextColor) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetTextColor\n") + rc = (jint)SetTextColor((HDC)arg0, (COLORREF)arg1); + NATIVE_EXIT(env, that, "SetTextColor\n") + return rc; +} +#endif + +#ifndef NO_SetTimer +JNIEXPORT jint JNICALL OS_NATIVE(SetTimer) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "SetTimer\n") + rc = (jint)SetTimer((HWND)arg0, arg1, arg2, (TIMERPROC)arg3); + NATIVE_EXIT(env, that, "SetTimer\n") + return rc; +} +#endif + +#ifndef NO_SetWindowLongA +JNIEXPORT jint JNICALL OS_NATIVE(SetWindowLongA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "SetWindowLongA\n") + rc = (jint)SetWindowLongA((HWND)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "SetWindowLongA\n") + return rc; +} +#endif + +#ifndef NO_SetWindowLongW +JNIEXPORT jint JNICALL OS_NATIVE(SetWindowLongW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "SetWindowLongW\n") + rc = (jint)SetWindowLongW((HWND)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "SetWindowLongW\n") + return rc; +} +#endif + +#ifndef NO_SetWindowPlacement +JNIEXPORT jboolean JNICALL OS_NATIVE(SetWindowPlacement) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + WINDOWPLACEMENT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SetWindowPlacement\n") + if (arg1) lparg1 = getWINDOWPLACEMENTFields(env, arg1, &_arg1); + rc = (jboolean)SetWindowPlacement((HWND)arg0, lparg1); + if (arg1) setWINDOWPLACEMENTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "SetWindowPlacement\n") + return rc; +} +#endif + +#ifndef NO_SetWindowPos +JNIEXPORT jboolean JNICALL OS_NATIVE(SetWindowPos) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6) +{ + jboolean rc; + NATIVE_ENTER(env, that, "SetWindowPos\n") + rc = (jboolean)SetWindowPos((HWND)arg0, (HWND)arg1, arg2, arg3, arg4, arg5, arg6); + NATIVE_EXIT(env, that, "SetWindowPos\n") + return rc; +} +#endif + +#ifndef NO_SetWindowTextA +JNIEXPORT jboolean JNICALL OS_NATIVE(SetWindowTextA) + (JNIEnv *env, jclass that, jint arg0, jbyteArray arg1) +{ + jbyte *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SetWindowTextA\n") + if (arg1) lparg1 = (*env)->GetByteArrayElements(env, arg1, NULL); + rc = (jboolean)SetWindowTextA((HWND)arg0, (LPSTR)lparg1); + if (arg1) (*env)->ReleaseByteArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "SetWindowTextA\n") + return rc; +} +#endif + +#ifndef NO_SetWindowTextW +JNIEXPORT jboolean JNICALL OS_NATIVE(SetWindowTextW) + (JNIEnv *env, jclass that, jint arg0, jcharArray arg1) +{ + jchar *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SetWindowTextW\n") + if (arg1) lparg1 = (*env)->GetCharArrayElements(env, arg1, NULL); + rc = (jboolean)SetWindowTextW((HWND)arg0, (LPWSTR)lparg1); + if (arg1) (*env)->ReleaseCharArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "SetWindowTextW\n") + return rc; +} +#endif + +#ifndef NO_SetWindowsHookExA +JNIEXPORT jint JNICALL OS_NATIVE(SetWindowsHookExA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "SetWindowsHookExA\n") + rc = (jint)SetWindowsHookExA(arg0, (HOOKPROC)arg1, (HINSTANCE)arg2, arg3); + NATIVE_EXIT(env, that, "SetWindowsHookExA\n") + return rc; +} +#endif + +#ifndef NO_SetWindowsHookExW +JNIEXPORT jint JNICALL OS_NATIVE(SetWindowsHookExW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3) +{ + jint rc; + NATIVE_ENTER(env, that, "SetWindowsHookExW\n") + rc = (jint)SetWindowsHookExW(arg0, (HOOKPROC)arg1, (HINSTANCE)arg2, arg3); + NATIVE_EXIT(env, that, "SetWindowsHookExW\n") + return rc; +} +#endif + +#ifndef NO_ShellExecuteExA +JNIEXPORT jboolean JNICALL OS_NATIVE(ShellExecuteExA) + (JNIEnv *env, jclass that, jobject arg0) +{ + SHELLEXECUTEINFO _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ShellExecuteExA\n") + if (arg0) lparg0 = getSHELLEXECUTEINFOFields(env, arg0, &_arg0); + rc = (jboolean)ShellExecuteExA(lparg0); + if (arg0) setSHELLEXECUTEINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "ShellExecuteExA\n") + return rc; +} +#endif + +#ifndef NO_ShellExecuteExW +JNIEXPORT jboolean JNICALL OS_NATIVE(ShellExecuteExW) + (JNIEnv *env, jclass that, jobject arg0) +{ + SHELLEXECUTEINFO _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ShellExecuteExW\n") + if (arg0) lparg0 = getSHELLEXECUTEINFOFields(env, arg0, &_arg0); + rc = (jboolean)ShellExecuteExW((LPSHELLEXECUTEINFOW)lparg0); + if (arg0) setSHELLEXECUTEINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "ShellExecuteExW\n") + return rc; +} +#endif + +#ifndef NO_ShowCaret +JNIEXPORT jboolean JNICALL OS_NATIVE(ShowCaret) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ShowCaret\n") + rc = (jboolean)ShowCaret((HWND)arg0); + NATIVE_EXIT(env, that, "ShowCaret\n") + return rc; +} +#endif + +#ifndef NO_ShowOwnedPopups +JNIEXPORT jboolean JNICALL OS_NATIVE(ShowOwnedPopups) + (JNIEnv *env, jclass that, jint arg0, jboolean arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ShowOwnedPopups\n") + rc = (jboolean)ShowOwnedPopups((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "ShowOwnedPopups\n") + return rc; +} +#endif + +#ifndef NO_ShowScrollBar +JNIEXPORT jboolean JNICALL OS_NATIVE(ShowScrollBar) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jboolean arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ShowScrollBar\n") + rc = (jboolean)ShowScrollBar((HWND)arg0, arg1, arg2); + NATIVE_EXIT(env, that, "ShowScrollBar\n") + return rc; +} +#endif + +#ifndef NO_ShowWindow +JNIEXPORT jboolean JNICALL OS_NATIVE(ShowWindow) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jboolean rc; + NATIVE_ENTER(env, that, "ShowWindow\n") + rc = (jboolean)ShowWindow((HWND)arg0, arg1); + NATIVE_EXIT(env, that, "ShowWindow\n") + return rc; +} +#endif + +#ifndef NO_SipGetInfo +JNIEXPORT jboolean JNICALL OS_NATIVE(SipGetInfo) + (JNIEnv *env, jclass that, jobject arg0) +{ + SIPINFO _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SipGetInfo\n") + if (arg0) lparg0 = getSIPINFOFields(env, arg0, &_arg0); + rc = (jboolean)SipGetInfo(lparg0); + if (arg0) setSIPINFOFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "SipGetInfo\n") + return rc; +} +#endif + +#ifndef NO_StartDocA +JNIEXPORT jint JNICALL OS_NATIVE(StartDocA) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + DOCINFO _arg1, *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "StartDocA\n") + if (arg1) lparg1 = getDOCINFOFields(env, arg1, &_arg1); + rc = (jint)StartDocA((HDC)arg0, lparg1); + if (arg1) setDOCINFOFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "StartDocA\n") + return rc; +} +#endif + +#ifndef NO_StartDocW +JNIEXPORT jint JNICALL OS_NATIVE(StartDocW) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + DOCINFO _arg1, *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "StartDocW\n") + if (arg1) lparg1 = getDOCINFOFields(env, arg1, &_arg1); + rc = (jint)StartDocW((HDC)arg0, (LPDOCINFOW)lparg1); + if (arg1) setDOCINFOFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "StartDocW\n") + return rc; +} +#endif + +#ifndef NO_StartPage +JNIEXPORT jint JNICALL OS_NATIVE(StartPage) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "StartPage\n") + rc = (jint)StartPage((HDC)arg0); + NATIVE_EXIT(env, that, "StartPage\n") + return rc; +} +#endif + +#ifndef NO_StretchBlt +JNIEXPORT jboolean JNICALL OS_NATIVE(StretchBlt) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9, jint arg10) +{ + jboolean rc; + NATIVE_ENTER(env, that, "StretchBlt\n") + rc = (jboolean)StretchBlt((HDC)arg0, arg1, arg2, arg3, arg4, (HDC)arg5, arg6, arg7, arg8, arg9, arg10); + NATIVE_EXIT(env, that, "StretchBlt\n") + return rc; +} +#endif + +#ifndef NO_SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I +JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3) +{ + NONCLIENTMETRICSA _arg2, *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I\n") + if (arg2) lparg2 = getNONCLIENTMETRICSAFields(env, arg2, &_arg2); + rc = (jboolean)SystemParametersInfoA(arg0, arg1, lparg2, arg3); + if (arg2) setNONCLIENTMETRICSAFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I\n") + return rc; +} +#endif + +#ifndef NO_SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I +JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3) +{ + RECT _arg2, *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I\n") + if (arg2) lparg2 = getRECTFields(env, arg2, &_arg2); + rc = (jboolean)SystemParametersInfoA(arg0, arg1, lparg2, arg3); + if (arg2) setRECTFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I\n") + return rc; +} +#endif + +#ifndef NO_SystemParametersInfoA__II_3II +JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoA__II_3II) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3) +{ + jint *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SystemParametersInfoA__II_3II\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + rc = (jboolean)SystemParametersInfoA(arg0, arg1, lparg2, arg3); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "SystemParametersInfoA__II_3II\n") + return rc; +} +#endif + +#ifndef NO_SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I +JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3) +{ + NONCLIENTMETRICSW _arg2, *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I\n") + if (arg2) lparg2 = getNONCLIENTMETRICSWFields(env, arg2, &_arg2); + rc = (jboolean)SystemParametersInfoW(arg0, arg1, lparg2, arg3); + if (arg2) setNONCLIENTMETRICSWFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I\n") + return rc; +} +#endif + +#ifndef NO_SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_RECT_2I +JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_RECT_2I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2, jint arg3) +{ + RECT _arg2, *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_RECT_2I\n") + if (arg2) lparg2 = getRECTFields(env, arg2, &_arg2); + rc = (jboolean)SystemParametersInfoW(arg0, arg1, lparg2, arg3); + if (arg2) setRECTFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_RECT_2I\n") + return rc; +} +#endif + +#ifndef NO_SystemParametersInfoW__II_3II +JNIEXPORT jboolean JNICALL OS_NATIVE(SystemParametersInfoW__II_3II) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jint arg3) +{ + jint *lparg2=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SystemParametersInfoW__II_3II\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + rc = (jboolean)SystemParametersInfoW(arg0, arg1, lparg2, arg3); + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + NATIVE_EXIT(env, that, "SystemParametersInfoW__II_3II\n") + return rc; +} +#endif + +#ifndef NO_ToAscii +JNIEXPORT jint JNICALL OS_NATIVE(ToAscii) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jshortArray arg3, jint arg4) +{ + jbyte *lparg2=NULL; + jshort *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "ToAscii\n") + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetShortArrayElements(env, arg3, NULL); + rc = (jint)ToAscii(arg0, arg1, (PBYTE)lparg2, (LPWORD)lparg3, arg4); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseShortArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "ToAscii\n") + return rc; +} +#endif + +#ifndef NO_ToUnicode +JNIEXPORT jint JNICALL OS_NATIVE(ToUnicode) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jbyteArray arg2, jcharArray arg3, jint arg4, jint arg5) +{ + jbyte *lparg2=NULL; + jchar *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "ToUnicode\n") + if (arg2) lparg2 = (*env)->GetByteArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetCharArrayElements(env, arg3, NULL); + rc = (jint)ToUnicode(arg0, arg1, (PBYTE)lparg2, (LPWSTR)lparg3, arg4, arg5); + if (arg2) (*env)->ReleaseByteArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseCharArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "ToUnicode\n") + return rc; +} +#endif + +#ifndef NO_TrackMouseEvent +JNIEXPORT jboolean JNICALL OS_NATIVE(TrackMouseEvent) + (JNIEnv *env, jclass that, jobject arg0) +{ + TRACKMOUSEEVENT _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "TrackMouseEvent\n") + if (arg0) lparg0 = getTRACKMOUSEEVENTFields(env, arg0, &_arg0); + rc = (jboolean)TrackMouseEvent(lparg0); + if (arg0) setTRACKMOUSEEVENTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "TrackMouseEvent\n") + return rc; +} +#endif + +#ifndef NO_TrackPopupMenu +JNIEXPORT jboolean JNICALL OS_NATIVE(TrackPopupMenu) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jobject arg6) +{ + RECT _arg6, *lparg6=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "TrackPopupMenu\n") + if (arg6) lparg6 = getRECTFields(env, arg6, &_arg6); + rc = (jboolean)TrackPopupMenu((HMENU)arg0, arg1, arg2, arg3, arg4, (HWND)arg5, lparg6); + if (arg6) setRECTFields(env, arg6, lparg6); + NATIVE_EXIT(env, that, "TrackPopupMenu\n") + return rc; +} +#endif + +#ifndef NO_TranslateAcceleratorA +JNIEXPORT jint JNICALL OS_NATIVE(TranslateAcceleratorA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + MSG _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "TranslateAcceleratorA\n") + if (arg2) lparg2 = getMSGFields(env, arg2, &_arg2); + rc = (jint)TranslateAcceleratorA((HWND)arg0, (HACCEL)arg1, lparg2); + if (arg2) setMSGFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "TranslateAcceleratorA\n") + return rc; +} +#endif + +#ifndef NO_TranslateAcceleratorW +JNIEXPORT jint JNICALL OS_NATIVE(TranslateAcceleratorW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jobject arg2) +{ + MSG _arg2, *lparg2=NULL; + jint rc; + NATIVE_ENTER(env, that, "TranslateAcceleratorW\n") + if (arg2) lparg2 = getMSGFields(env, arg2, &_arg2); + rc = (jint)TranslateAcceleratorW((HWND)arg0, (HACCEL)arg1, lparg2); + if (arg2) setMSGFields(env, arg2, lparg2); + NATIVE_EXIT(env, that, "TranslateAcceleratorW\n") + return rc; +} +#endif + +#ifndef NO_TranslateCharsetInfo +JNIEXPORT jboolean JNICALL OS_NATIVE(TranslateCharsetInfo) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1, jint arg2) +{ + jint *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "TranslateCharsetInfo\n") + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); + rc = (jboolean)TranslateCharsetInfo((DWORD *)arg0, (LPCHARSETINFO)lparg1, arg2); + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0); + NATIVE_EXIT(env, that, "TranslateCharsetInfo\n") + return rc; +} +#endif + +#ifndef NO_TranslateMDISysAccel +JNIEXPORT jboolean JNICALL OS_NATIVE(TranslateMDISysAccel) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + MSG _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "TranslateMDISysAccel\n") + if (arg1) lparg1 = getMSGFields(env, arg1, &_arg1); + rc = (jboolean)TranslateMDISysAccel((HWND)arg0, (LPMSG)lparg1); + if (arg1) setMSGFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "TranslateMDISysAccel\n") + return rc; +} +#endif + +#ifndef NO_TranslateMessage +JNIEXPORT jboolean JNICALL OS_NATIVE(TranslateMessage) + (JNIEnv *env, jclass that, jobject arg0) +{ + MSG _arg0, *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "TranslateMessage\n") + if (arg0) lparg0 = getMSGFields(env, arg0, &_arg0); + rc = (jboolean)TranslateMessage(lparg0); + if (arg0) setMSGFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "TranslateMessage\n") + return rc; +} +#endif + +#ifndef NO_TransparentImage +JNIEXPORT jboolean JNICALL OS_NATIVE(TransparentImage) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9, jint arg10) +{ + jboolean rc; + NATIVE_ENTER(env, that, "TransparentImage\n") + rc = (jboolean)TransparentImage((HDC)arg0, arg1, arg2, arg3, arg4, (HANDLE)arg5, arg6, arg7, arg8, arg9, (COLORREF)arg10); + NATIVE_EXIT(env, that, "TransparentImage\n") + return rc; +} +#endif + +#ifndef NO_UnhookWindowsHookEx +JNIEXPORT jboolean JNICALL OS_NATIVE(UnhookWindowsHookEx) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "UnhookWindowsHookEx\n") + rc = (jboolean)UnhookWindowsHookEx((HHOOK)arg0); + NATIVE_EXIT(env, that, "UnhookWindowsHookEx\n") + return rc; +} +#endif + +#ifndef NO_UnregisterClassA +JNIEXPORT jboolean JNICALL OS_NATIVE(UnregisterClassA) + (JNIEnv *env, jclass that, jbyteArray arg0, jint arg1) +{ + jbyte *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "UnregisterClassA\n") + if (arg0) lparg0 = (*env)->GetByteArrayElements(env, arg0, NULL); + rc = (jboolean)UnregisterClassA((LPSTR)lparg0, (HINSTANCE)arg1); + if (arg0) (*env)->ReleaseByteArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "UnregisterClassA\n") + return rc; +} +#endif + +#ifndef NO_UnregisterClassW +JNIEXPORT jboolean JNICALL OS_NATIVE(UnregisterClassW) + (JNIEnv *env, jclass that, jcharArray arg0, jint arg1) +{ + jchar *lparg0=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "UnregisterClassW\n") + if (arg0) lparg0 = (*env)->GetCharArrayElements(env, arg0, NULL); + rc = (jboolean)UnregisterClassW((LPWSTR)lparg0, (HINSTANCE)arg1); + if (arg0) (*env)->ReleaseCharArrayElements(env, arg0, lparg0, 0); + NATIVE_EXIT(env, that, "UnregisterClassW\n") + return rc; +} +#endif + +#ifndef NO_UpdateWindow +JNIEXPORT jboolean JNICALL OS_NATIVE(UpdateWindow) + (JNIEnv *env, jclass that, jint arg0) +{ + jboolean rc; + NATIVE_ENTER(env, that, "UpdateWindow\n") + rc = (jboolean)UpdateWindow((HWND)arg0); + NATIVE_EXIT(env, that, "UpdateWindow\n") + return rc; +} +#endif + +#ifndef NO_ValidateRect +JNIEXPORT jboolean JNICALL OS_NATIVE(ValidateRect) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "ValidateRect\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + rc = (jboolean)ValidateRect((HWND)arg0, lparg1); + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "ValidateRect\n") + return rc; +} +#endif + +#ifndef NO_VkKeyScanA +JNIEXPORT jshort JNICALL OS_NATIVE(VkKeyScanA) + (JNIEnv *env, jclass that, jshort arg0) +{ + jshort rc; + NATIVE_ENTER(env, that, "VkKeyScanA\n") + rc = (jshort)VkKeyScanA((TCHAR)arg0); + NATIVE_EXIT(env, that, "VkKeyScanA\n") + return rc; +} +#endif + +#ifndef NO_VkKeyScanW +JNIEXPORT jshort JNICALL OS_NATIVE(VkKeyScanW) + (JNIEnv *env, jclass that, jshort arg0) +{ + jshort rc; + NATIVE_ENTER(env, that, "VkKeyScanW\n") + rc = (jshort)VkKeyScanW((WCHAR)arg0); + NATIVE_EXIT(env, that, "VkKeyScanW\n") + return rc; +} +#endif + +#ifndef NO_WaitMessage +JNIEXPORT jboolean JNICALL OS_NATIVE(WaitMessage) + (JNIEnv *env, jclass that) +{ + jboolean rc; + NATIVE_ENTER(env, that, "WaitMessage\n") + rc = (jboolean)WaitMessage(); + NATIVE_EXIT(env, that, "WaitMessage\n") + return rc; +} +#endif + +#ifndef NO_WideCharToMultiByte__II_3CIII_3B_3Z +JNIEXPORT jint JNICALL OS_NATIVE(WideCharToMultiByte__II_3CIII_3B_3Z) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3, jint arg4, jint arg5, jbyteArray arg6, jbooleanArray arg7) +{ + jchar *lparg2=NULL; + jbyte *lparg6=NULL; + jboolean *lparg7=NULL; + jint rc; + NATIVE_ENTER(env, that, "WideCharToMultiByte__II_3CIII_3B_3Z\n") + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + if (arg6) lparg6 = (*env)->GetByteArrayElements(env, arg6, NULL); + if (arg7) lparg7 = (*env)->GetBooleanArrayElements(env, arg7, NULL); + rc = (jint)WideCharToMultiByte(arg0, arg1, (LPCWSTR)lparg2, arg3, (LPSTR)arg4, arg5, (LPCSTR)lparg6, (LPBOOL)lparg7); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + if (arg6) (*env)->ReleaseByteArrayElements(env, arg6, lparg6, 0); + if (arg7) (*env)->ReleaseBooleanArrayElements(env, arg7, lparg7, 0); + NATIVE_EXIT(env, that, "WideCharToMultiByte__II_3CIII_3B_3Z\n") + return rc; +} +#endif + +#ifndef NO_WideCharToMultiByte__II_3CI_3BI_3B_3Z +JNIEXPORT jint JNICALL OS_NATIVE(WideCharToMultiByte__II_3CI_3BI_3B_3Z) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jcharArray arg2, jint arg3, jbyteArray arg4, jint arg5, jbyteArray arg6, jbooleanArray arg7) +{ + jchar *lparg2=NULL; + jbyte *lparg4=NULL; + jbyte *lparg6=NULL; + jboolean *lparg7=NULL; + jint rc; + NATIVE_ENTER(env, that, "WideCharToMultiByte__II_3CI_3BI_3B_3Z\n") + if (arg2) lparg2 = (*env)->GetCharArrayElements(env, arg2, NULL); + if (arg4) lparg4 = (*env)->GetByteArrayElements(env, arg4, NULL); + if (arg6) lparg6 = (*env)->GetByteArrayElements(env, arg6, NULL); + if (arg7) lparg7 = (*env)->GetBooleanArrayElements(env, arg7, NULL); + rc = (jint)WideCharToMultiByte(arg0, arg1, (LPCWSTR)lparg2, arg3, (LPSTR)lparg4, arg5, (LPCSTR)lparg6, (LPBOOL)lparg7); + if (arg2) (*env)->ReleaseCharArrayElements(env, arg2, lparg2, 0); + if (arg4) (*env)->ReleaseByteArrayElements(env, arg4, lparg4, 0); + if (arg6) (*env)->ReleaseByteArrayElements(env, arg6, lparg6, 0); + if (arg7) (*env)->ReleaseBooleanArrayElements(env, arg7, lparg7, 0); + NATIVE_EXIT(env, that, "WideCharToMultiByte__II_3CI_3BI_3B_3Z\n") + return rc; +} +#endif + +#ifndef NO_WindowFromDC +JNIEXPORT jint JNICALL OS_NATIVE(WindowFromDC) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "WindowFromDC\n") + rc = (jint)WindowFromDC((HDC)arg0); + NATIVE_EXIT(env, that, "WindowFromDC\n") + return rc; +} +#endif + +#ifndef NO_WindowFromPoint +JNIEXPORT jint JNICALL OS_NATIVE(WindowFromPoint) + (JNIEnv *env, jclass that, jobject arg0) +{ + POINT _arg0, *lparg0=NULL; + jint rc; + NATIVE_ENTER(env, that, "WindowFromPoint\n") + if (arg0) lparg0 = getPOINTFields(env, arg0, &_arg0); + rc = (jint)WindowFromPoint(*lparg0); + if (arg0) setPOINTFields(env, arg0, lparg0); + NATIVE_EXIT(env, that, "WindowFromPoint\n") + return rc; +} +#endif + diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.h b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.h index ceb02637cd..76538ae4a0 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.h +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.h @@ -1,354 +1,354 @@ -/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-#ifndef INC_os_H
-#define INC_os_H
-
-#define WINVER 0x0500
-#define _WIN32_IE 0x0500
-
-#if _MSC_VER > 1000
-#pragma once
-#endif // _MSC_VER > 1000
-
-#define VC_EXTRALEAN
-
-#include <windows.h>
-#include <winuser.h>
-#include <commctrl.h>
-#include <commdlg.h>
-#include <oaidl.h>
-#include <shlobj.h>
-#include <ole2.h>
-#include <olectl.h>
-#include <objbase.h>
-#include <shlwapi.h>
-#include <shellapi.h>
-
-#ifndef _WIN32_WCE
-#include <initguid.h>
-#include <oleacc.h>
-#endif // _WIN32_WCE
-
-#if defined(WIN32_PLATFORM_PSPC) || defined(WIN32_PLATFORM_WFSP)
-#include <aygshell.h>
-#endif // WIN32_PLATFORM_PSPC, WIN32_PLATFORM_WFSP
-
-#ifdef WIN32_PLATFORM_WFSP
-#include <tpcshell.h>
-#endif /* WIN32_PLATFORM_WFSP */
-
-/* Optional custom definitions to exclude some types */
-#include "defines.h"
-
-/* Structs excludes */
-#ifdef _WIN32_WCE
-#define NO_BROWSEINFO
-#define NO_CHOOSEFONT
-#define NO_DOCINFO
-#define NO_GCP_RESULTS
-#define NO_GRADIENT_RECT
-#define NO_HELPINFO
-#define NO_MENUINFO
-#define NO_NMREBARCHEVRON
-#define NO_NMTTDISPINFO
-#define NO_NMTTDISPINFOA
-#define NO_NMTTDISPINFOW
-#define NO_NONCLIENTMETRICS
-#define NO_NONCLIENTMETRICSA
-#define NO_NONCLIENTMETRICSW
-#define NO_PRINTDLG
-#define NO_TOOLINFO
-#define NO_TRACKMOUSEEVENT
-#define NO_TRIVERTEX
-#define NO_WINDOWPLACEMENT
-#define NO_DROPFILES
-#define NO_MONITORINFO
-#define NO_OLECMD
-#define NO_OLECMDTEXT
-
-/* OLE */
-#define NO_CAUUID
-#define NO_CONTROLINFO
-#define NO_COSERVERINFO
-#define NO_DISPPARAMS
-#define NO_DVTARGETDEVICE
-#define NO_EXCEPINFO
-#define NO_FORMATETC
-#define NO_FUNCDESC1
-#define NO_FUNCDESC2
-#define NO_GUID
-#define NO_LICINFO
-#define NO_OLEINPLACEFRAMEINFO
-#define NO_STATSTG
-#define NO_STGMEDIUM
-#define NO_TYPEATTR
-#define NO_VARDESC1
-#define NO_VARDESC2
-#endif /* _WIN32_WCE */
-
-#if !defined(WIN32_PLATFORM_PSPC) && !defined(WIN32_PLATFORM_WFSP)
-#define NO_SHMENUBARINFO
-#endif /* WIN32_PLATFORM_PSPC, WIN32_PLATFORM_WFSP */
-
-#ifndef WIN32_PLATFORM_PSPC
-#define NO_SHACTIVATEINFO
-#define NO_SHRGINFO
-#define NO_SIPINFO
-#endif /* WIN32_PLATFORM_PSPC */
-
-/* Functions excludes */
-#ifdef _WIN32_WCE
-#define NO_AbortDoc
-#define NO_ActivateKeyboardLayout
-#define NO_Arc
-#define NO_CallNextHookEx
-#define NO_CallWindowProcA
-#define NO_CharLowerA
-#define NO_CharUpperA
-#define NO_ChooseColorA
-#define NO_ChooseFontA
-#define NO_ChooseFontW
-#define NO_CopyImage
-#define NO_CreateAcceleratorTableA
-#define NO_CreateCursor
-#define NO_CreateDCA
-#define NO_CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2
-#define NO_CreateFontIndirectA__I
-#define NO_CreateWindowExA
-#define NO_DefFrameProcA
-#define NO_DefFrameProcW
-#define NO_DefMDIChildProcA
-#define NO_DefMDIChildProcW
-#define NO_DefWindowProcA
-#define NO_DestroyCursor
-#define NO_DispatchMessageA
-#define NO_DragDetect
-#define NO_DragFinish
-#define NO_DragQueryFileA
-#define NO_DragQueryFileW
-#define NO_DrawStateA
-#define NO_DrawStateW
-#define NO_DrawTextA
-#define NO_EnableScrollBar
-#define NO_EndDoc
-#define NO_EndPage
-#define NO_EnumDisplayMonitors
-#define NO_EnumFontFamiliesA
-#define NO_EnumSystemLanguageGroupsA
-#define NO_EnumSystemLanguageGroupsW
-#define NO_EnumSystemLocalesA
-#define NO_ExpandEnvironmentStringsW
-#define NO_ExpandEnvironmentStringsA
-#define NO_ExtTextOutA
-#define NO_ExtractIconExA
-#define NO_FindWindowA
-#define NO_GetCharABCWidthsA
-#define NO_GetCharABCWidthsW
-#define NO_GetCharWidthA
-#define NO_GetCharWidthW
-#define NO_GetCharacterPlacementA
-#define NO_GetCharacterPlacementW
-#define NO_GetClassInfoA
-#define NO_GetClipboardFormatNameA
-#define NO_GetDIBColorTable
-#define NO_GetDIBits
-#define NO_GetFontLanguageInfo
-#define NO_GetIconInfo
-#define NO_GetKeyboardLayout
-#define NO_GetKeyboardLayoutList
-#define NO_GetKeyboardState
-#define NO_GetKeyNameTextA
-#define NO_GetKeyNameTextW
-#define NO_GetLastActivePopup
-#define NO_GetLayout
-#define NO_GetLocaleInfoA
-#define NO_GetMenu
-#define NO_GetMenuDefaultItem
-#define NO_GetMenuInfo
-#define NO_GetMenuItemCount
-#define NO_GetMenuItemInfoA
-#define NO_GetMessageA
-#define NO_GetMessageTime
-#define NO_GetModuleHandleA
-#define NO_GetMonitorInfoA
-#define NO_GetMonitorInfoW
-#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2
-#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2
-#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2
-#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2
-#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2
-#define NO_GetOpenFileNameA
-#define NO_GetProfileStringA
-#define NO_GetProfileStringW
-#define NO_GetROP2
-#define NO_GetSaveFileNameA
-#define NO_GetTextCharset
-#define NO_GetTextExtentPoint32A
-#define NO_GetTextMetricsA
-#define NO_GetVersionExA
-#define NO_GetWindowLongA
-#define NO_GetWindowPlacement
-#define NO_GetWindowTextA
-#define NO_GetWindowTextLengthA
-#define NO_GradientFill
-#define NO_ImmGetCompositionFontA
-#define NO_ImmGetCompositionStringA
-#define NO_ImmSetCompositionFontA
-#define NO_InsertMenuA
-#define NO_InsertMenuItemA
-#define NO_InsertMenuItemW
-#define NO_InvalidateRgn
-#define NO_IsIconic
-#define NO_IsZoomed
-#define NO_LineTo
-#define NO_LoadBitmapA
-#define NO_LoadCursorA
-#define NO_LoadIconA
-#define NO_LoadImageA
-#define NO_LoadLibraryA
-#define NO_MapVirtualKeyA
-#define NO_MessageBoxA
-#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I
-#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II
-#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II
-#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I
-#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I
-#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II
-#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II
-#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I
-#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I
-#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II
-#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I
-#define NO_MoveToEx
-#define NO_OleInitialize
-#define NO_OleUninitialize
-#define NO_PeekMessageA
-#define NO_Pie
-#define NO_PostMessageA
-#define NO_PostThreadMessageA
-#define NO_PrintDlgA
-#define NO_PrintDlgW
-#define NO_RedrawWindow
-#define NO_RegEnumKeyExA
-#define NO_RegOpenKeyExA
-#define NO_RegQueryInfoKeyA
-#define NO_RegQueryValueExA
-#define NO_RegisterClassA
-#define NO_RegisterClipboardFormatA
-#define NO_SetLayout
-#define NO_SHBrowseForFolderA
-#define NO_SHBrowseForFolderW
-#define NO_SHGetPathFromIDListA
-#define NO_SHGetPathFromIDListW
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2
-#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2
-#define NO_SendMessageA__IIII
-#define NO_SendMessageA__III_3S
-#define NO_SendMessageA__III_3I
-#define NO_SendMessageA__III_3B
-#define NO_SendMessageA__II_3II
-#define NO_SendMessageA__II_3I_3I
-#define NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2
-#define NO_SetDIBColorTable
-#define NO_SetErrorMode
-#define NO_SetMenu
-#define NO_SetMenuDefaultItem
-#define NO_SetMenuInfo
-#define NO_SetMenuItemInfoA
-#define NO_SetStretchBltMode
-#define NO_SetTextAlign
-#define NO_SetWindowLongA
-#define NO_SetWindowPlacement
-#define NO_SetWindowTextA
-#define NO_SetWindowsHookExA
-#define NO_SetWindowsHookExW
-#define NO_ShellExecuteExA
-#define NO_ShowOwnedPopups
-#define NO_ShowScrollBar
-#define NO_StartDocA
-#define NO_StartDocW
-#define NO_StartPage
-#define NO_SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I
-#define NO_SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I
-#define NO_SystemParametersInfoA__II_3II
-#define NO_SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I
-#define NO_ToAscii
-#define NO_ToUnicode
-#define NO_TrackMouseEvent
-#define NO_TranslateAcceleratorA
-#define NO_TranslateMDISysAccel
-#define NO_UnhookWindowsHookEx
-#define NO_UnregisterClassA
-#define NO_VkKeyScanA
-#define NO_VkKeyScanW
-#define NO_WaitMessage
-#define NO_WindowFromDC
-
-#define ChooseColorW ChooseColor
-#define CHOOSECOLORW CHOOSECOLOR
-#define LPCHOOSECOLORW LPCHOOSECOLOR
-#define FONTENUMPROCW FONTENUMPROC
-#define ShellExecuteExW ShellExecuteEx
-#define LPSHELLEXECUTEINFOW LPSHELLEXECUTEINFO
-#endif /* _WIN32_WCE */
-
-#ifndef WIN32_PLATFORM_HPC2000
-#define NO_CommandBar_1AddAdornments
-#define NO_CommandBar_1Create
-#define NO_CommandBar_1DrawMenuBar
-#define NO_CommandBar_1Height
-#define NO_CommandBar_1InsertMenubarEx
-#define NO_CommandBar_1Show
-#endif /* WIN32_PLATFORM_HPC2000 */
-
-#if !defined(WIN32_PLATFORM_PSPC) && !defined(WIN32_PLATFORM_WFSP)
-#define NO_SHCreateMenuBar
-#define NO_SHSetAppKeyWndAssoc
-#endif /* WIN32_PLATFORM_PSPC, WIN32_PLATFORM_WFSP */
-
-#ifdef WIN32_PLATFORM_WFSP
-#define NO_CommDlgExtendedError
-#define NO_ChooseColorW
-#endif /* WIN32_PLATFORM_WFSP */
-
-#ifndef WIN32_PLATFORM_PSPC
-#define NO_SHHandleWMSettingChange
-#define NO_SHRecognizeGesture
-#define NO_SHSipPreference
-#define NO_SipGetInfo
-#endif /* WIN32_PLATFORM_PSPC */
-
-#ifndef WIN32_PLATFORM_WFSP
-#define NO_SHSendBackToFocusWindow
-#endif /* WIN32_PLATFORM_WFSP */
-
-#ifndef _WIN32_WCE
-#define NO_CommandBar_1Destroy
-#define NO_TransparentImage
-#endif /* _WIN32_WCE */
-
-#define TrackMouseEvent _TrackMouseEvent
-
-#define NATIVE_ENTER(env,clazz,func)
-#define NATIVE_EXIT(env,clazz,func)
-
-#endif /* INC_os_H */
+/******************************************************************************* + * Copyright (c) 2000, 2003 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Common Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/cpl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ + +#ifndef INC_os_H +#define INC_os_H + +#define WINVER 0x0500 +#define _WIN32_IE 0x0500 + +#if _MSC_VER > 1000 +#pragma once +#endif // _MSC_VER > 1000 + +#define VC_EXTRALEAN + +#include <windows.h> +#include <winuser.h> +#include <commctrl.h> +#include <commdlg.h> +#include <oaidl.h> +#include <shlobj.h> +#include <ole2.h> +#include <olectl.h> +#include <objbase.h> +#include <shlwapi.h> +#include <shellapi.h> + +#ifndef _WIN32_WCE +#include <initguid.h> +#include <oleacc.h> +#endif // _WIN32_WCE + +#if defined(WIN32_PLATFORM_PSPC) || defined(WIN32_PLATFORM_WFSP) +#include <aygshell.h> +#endif // WIN32_PLATFORM_PSPC, WIN32_PLATFORM_WFSP + +#ifdef WIN32_PLATFORM_WFSP +#include <tpcshell.h> +#endif /* WIN32_PLATFORM_WFSP */ + +/* Optional custom definitions to exclude some types */ +#include "defines.h" + +/* Structs excludes */ +#ifdef _WIN32_WCE +#define NO_BROWSEINFO +#define NO_CHOOSEFONT +#define NO_DOCINFO +#define NO_GCP_RESULTS +#define NO_GRADIENT_RECT +#define NO_HELPINFO +#define NO_MENUINFO +#define NO_NMREBARCHEVRON +#define NO_NMTTDISPINFO +#define NO_NMTTDISPINFOA +#define NO_NMTTDISPINFOW +#define NO_NONCLIENTMETRICS +#define NO_NONCLIENTMETRICSA +#define NO_NONCLIENTMETRICSW +#define NO_PRINTDLG +#define NO_TOOLINFO +#define NO_TRACKMOUSEEVENT +#define NO_TRIVERTEX +#define NO_WINDOWPLACEMENT +#define NO_DROPFILES +#define NO_MONITORINFO +#define NO_OLECMD +#define NO_OLECMDTEXT + +/* OLE */ +#define NO_CAUUID +#define NO_CONTROLINFO +#define NO_COSERVERINFO +#define NO_DISPPARAMS +#define NO_DVTARGETDEVICE +#define NO_EXCEPINFO +#define NO_FORMATETC +#define NO_FUNCDESC1 +#define NO_FUNCDESC2 +#define NO_GUID +#define NO_LICINFO +#define NO_OLEINPLACEFRAMEINFO +#define NO_STATSTG +#define NO_STGMEDIUM +#define NO_TYPEATTR +#define NO_VARDESC1 +#define NO_VARDESC2 +#endif /* _WIN32_WCE */ + +#if !defined(WIN32_PLATFORM_PSPC) && !defined(WIN32_PLATFORM_WFSP) +#define NO_SHMENUBARINFO +#endif /* WIN32_PLATFORM_PSPC, WIN32_PLATFORM_WFSP */ + +#ifndef WIN32_PLATFORM_PSPC +#define NO_SHACTIVATEINFO +#define NO_SHRGINFO +#define NO_SIPINFO +#endif /* WIN32_PLATFORM_PSPC */ + +/* Functions excludes */ +#ifdef _WIN32_WCE +#define NO_AbortDoc +#define NO_ActivateKeyboardLayout +#define NO_Arc +#define NO_CallNextHookEx +#define NO_CallWindowProcA +#define NO_CharLowerA +#define NO_CharUpperA +#define NO_ChooseColorA +#define NO_ChooseFontA +#define NO_ChooseFontW +#define NO_CopyImage +#define NO_CreateAcceleratorTableA +#define NO_CreateCursor +#define NO_CreateDCA +#define NO_CreateFontIndirectA__Lorg_eclipse_swt_internal_win32_LOGFONTA_2 +#define NO_CreateFontIndirectA__I +#define NO_CreateWindowExA +#define NO_DefFrameProcA +#define NO_DefFrameProcW +#define NO_DefMDIChildProcA +#define NO_DefMDIChildProcW +#define NO_DefWindowProcA +#define NO_DestroyCursor +#define NO_DispatchMessageA +#define NO_DragDetect +#define NO_DragFinish +#define NO_DragQueryFileA +#define NO_DragQueryFileW +#define NO_DrawStateA +#define NO_DrawStateW +#define NO_DrawTextA +#define NO_EnableScrollBar +#define NO_EndDoc +#define NO_EndPage +#define NO_EnumDisplayMonitors +#define NO_EnumFontFamiliesA +#define NO_EnumSystemLanguageGroupsA +#define NO_EnumSystemLanguageGroupsW +#define NO_EnumSystemLocalesA +#define NO_ExpandEnvironmentStringsW +#define NO_ExpandEnvironmentStringsA +#define NO_ExtTextOutA +#define NO_ExtractIconExA +#define NO_FindWindowA +#define NO_GetCharABCWidthsA +#define NO_GetCharABCWidthsW +#define NO_GetCharWidthA +#define NO_GetCharWidthW +#define NO_GetCharacterPlacementA +#define NO_GetCharacterPlacementW +#define NO_GetClassInfoA +#define NO_GetClipboardFormatNameA +#define NO_GetDIBColorTable +#define NO_GetDIBits +#define NO_GetFontLanguageInfo +#define NO_GetIconInfo +#define NO_GetKeyboardLayout +#define NO_GetKeyboardLayoutList +#define NO_GetKeyboardState +#define NO_GetKeyNameTextA +#define NO_GetKeyNameTextW +#define NO_GetLastActivePopup +#define NO_GetLayout +#define NO_GetLocaleInfoA +#define NO_GetMenu +#define NO_GetMenuDefaultItem +#define NO_GetMenuInfo +#define NO_GetMenuItemCount +#define NO_GetMenuItemInfoA +#define NO_GetMessageA +#define NO_GetMessageTime +#define NO_GetModuleHandleA +#define NO_GetMonitorInfoA +#define NO_GetMonitorInfoW +#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGPEN_2 +#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGFONTA_2 +#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_LOGBRUSH_2 +#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_DIBSECTION_2 +#define NO_GetObjectA__IILorg_eclipse_swt_internal_win32_BITMAP_2 +#define NO_GetOpenFileNameA +#define NO_GetProfileStringA +#define NO_GetProfileStringW +#define NO_GetROP2 +#define NO_GetSaveFileNameA +#define NO_GetTextCharset +#define NO_GetTextExtentPoint32A +#define NO_GetTextMetricsA +#define NO_GetVersionExA +#define NO_GetWindowLongA +#define NO_GetWindowPlacement +#define NO_GetWindowTextA +#define NO_GetWindowTextLengthA +#define NO_GradientFill +#define NO_ImmGetCompositionFontA +#define NO_ImmGetCompositionStringA +#define NO_ImmSetCompositionFontA +#define NO_InsertMenuA +#define NO_InsertMenuItemA +#define NO_InsertMenuItemW +#define NO_InvalidateRgn +#define NO_IsIconic +#define NO_IsZoomed +#define NO_LineTo +#define NO_LoadBitmapA +#define NO_LoadCursorA +#define NO_LoadIconA +#define NO_LoadImageA +#define NO_LoadLibraryA +#define NO_MapVirtualKeyA +#define NO_MessageBoxA +#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_DROPFILES_2I +#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMREBARCHEVRON_2II +#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_HELPINFO_2II +#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_TRIVERTEX_2I +#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_GRADIENT_1RECT_2I +#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2II +#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2II +#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOA_2I +#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_NMTTDISPINFOW_2I +#define NO_MoveMemory__Lorg_eclipse_swt_internal_win32_LOGFONTA_2II +#define NO_MoveMemory__ILorg_eclipse_swt_internal_win32_LOGFONTA_2I +#define NO_MoveToEx +#define NO_OleInitialize +#define NO_OleUninitialize +#define NO_PeekMessageA +#define NO_Pie +#define NO_PostMessageA +#define NO_PostThreadMessageA +#define NO_PrintDlgA +#define NO_PrintDlgW +#define NO_RedrawWindow +#define NO_RegEnumKeyExA +#define NO_RegOpenKeyExA +#define NO_RegQueryInfoKeyA +#define NO_RegQueryValueExA +#define NO_RegisterClassA +#define NO_RegisterClipboardFormatA +#define NO_SetLayout +#define NO_SHBrowseForFolderA +#define NO_SHBrowseForFolderW +#define NO_SHGetPathFromIDListA +#define NO_SHGetPathFromIDListW +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVITEM_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVINSERTSTRUCT_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TVHITTESTINFO_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVITEM_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVHITTESTINFO_2 +#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2 +#define NO_SendMessageA__IIII +#define NO_SendMessageA__III_3S +#define NO_SendMessageA__III_3I +#define NO_SendMessageA__III_3B +#define NO_SendMessageA__II_3II +#define NO_SendMessageA__II_3I_3I +#define NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2 +#define NO_SetDIBColorTable +#define NO_SetErrorMode +#define NO_SetMenu +#define NO_SetMenuDefaultItem +#define NO_SetMenuInfo +#define NO_SetMenuItemInfoA +#define NO_SetStretchBltMode +#define NO_SetTextAlign +#define NO_SetWindowLongA +#define NO_SetWindowPlacement +#define NO_SetWindowTextA +#define NO_SetWindowsHookExA +#define NO_SetWindowsHookExW +#define NO_ShellExecuteExA +#define NO_ShowOwnedPopups +#define NO_ShowScrollBar +#define NO_StartDocA +#define NO_StartDocW +#define NO_StartPage +#define NO_SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_RECT_2I +#define NO_SystemParametersInfoA__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSA_2I +#define NO_SystemParametersInfoA__II_3II +#define NO_SystemParametersInfoW__IILorg_eclipse_swt_internal_win32_NONCLIENTMETRICSW_2I +#define NO_ToAscii +#define NO_ToUnicode +#define NO_TrackMouseEvent +#define NO_TranslateAcceleratorA +#define NO_TranslateMDISysAccel +#define NO_UnhookWindowsHookEx +#define NO_UnregisterClassA +#define NO_VkKeyScanA +#define NO_VkKeyScanW +#define NO_WaitMessage +#define NO_WindowFromDC + +#define ChooseColorW ChooseColor +#define CHOOSECOLORW CHOOSECOLOR +#define LPCHOOSECOLORW LPCHOOSECOLOR +#define FONTENUMPROCW FONTENUMPROC +#define ShellExecuteExW ShellExecuteEx +#define LPSHELLEXECUTEINFOW LPSHELLEXECUTEINFO +#endif /* _WIN32_WCE */ + +#ifndef WIN32_PLATFORM_HPC2000 +#define NO_CommandBar_1AddAdornments +#define NO_CommandBar_1Create +#define NO_CommandBar_1DrawMenuBar +#define NO_CommandBar_1Height +#define NO_CommandBar_1InsertMenubarEx +#define NO_CommandBar_1Show +#endif /* WIN32_PLATFORM_HPC2000 */ + +#if !defined(WIN32_PLATFORM_PSPC) && !defined(WIN32_PLATFORM_WFSP) +#define NO_SHCreateMenuBar +#define NO_SHSetAppKeyWndAssoc +#endif /* WIN32_PLATFORM_PSPC, WIN32_PLATFORM_WFSP */ + +#ifdef WIN32_PLATFORM_WFSP +#define NO_CommDlgExtendedError +#define NO_ChooseColorW +#endif /* WIN32_PLATFORM_WFSP */ + +#ifndef WIN32_PLATFORM_PSPC +#define NO_SHHandleWMSettingChange +#define NO_SHRecognizeGesture +#define NO_SHSipPreference +#define NO_SipGetInfo +#endif /* WIN32_PLATFORM_PSPC */ + +#ifndef WIN32_PLATFORM_WFSP +#define NO_SHSendBackToFocusWindow +#endif /* WIN32_PLATFORM_WFSP */ + +#ifndef _WIN32_WCE +#define NO_CommandBar_1Destroy +#define NO_TransparentImage +#endif /* _WIN32_WCE */ + +#define TrackMouseEvent _TrackMouseEvent + +#define NATIVE_ENTER(env,clazz,func) +#define NATIVE_EXIT(env,clazz,func) + +#endif /* INC_os_H */ diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_custom.c b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_custom.c index 219ead7733..7377dc3870 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_custom.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_custom.c @@ -1,417 +1,417 @@ -/*******************************************************************************
-* Copyright (c) 2000, 2003 IBM Corporation and others.
-* All rights reserved. This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-*
-* Contributors:
-* IBM Corporation - initial API and implementation
-*******************************************************************************/
-
-#include "swt.h"
-#include "os_structs.h"
-
-#define OS_NATIVE(func) Java_org_eclipse_swt_internal_win32_OS_##func
-
-__declspec(dllexport) HRESULT DllGetVersion(DLLVERSIONINFO *dvi);
-HRESULT DllGetVersion(DLLVERSIONINFO *dvi)
-{
- dvi->dwMajorVersion = SWT_VERSION / 1000;
- dvi->dwMinorVersion = SWT_VERSION % 1000;
- dvi->dwBuildNumber = SWT_BUILD_NUM;
- dvi->dwPlatformID = DLLVER_PLATFORM_WINDOWS;
- return 1;
-}
-
-HINSTANCE g_hInstance = NULL;
-BOOL WINAPI DllMain(HANDLE hInstDLL, DWORD dwReason, LPVOID lpvReserved)
-{
- if (dwReason == DLL_PROCESS_ATTACH) {
- if (g_hInstance == NULL) g_hInstance = hInstDLL;
- }
- return TRUE;
-}
-
-#ifndef NO_GetLibraryHandle
-JNIEXPORT jint JNICALL OS_NATIVE(GetLibraryHandle)
- (JNIEnv *env, jclass that)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetLibraryHandle\n")
- rc = (jint)g_hInstance;
- NATIVE_EXIT(env, that, "GetLibraryHandle\n")
- return rc;
-}
-#endif
-
-#ifndef NO_Call
-JNIEXPORT jint JNICALL OS_NATIVE(Call)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- DLLVERSIONINFO _arg1, *lparg1=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "Call\n")
- if (arg1) lparg1 = getDLLVERSIONINFOFields(env, arg1, &_arg1);
- rc = (jint)((DLLGETVERSIONPROC)arg0)(lparg1);
- if (arg1) setDLLVERSIONINFOFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "Call\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnumDisplayMonitors
-JNIEXPORT jboolean JNICALL OS_NATIVE(EnumDisplayMonitors)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jint arg3)
-{
- RECT _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "EnumDisplayMonitors\n")
- if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1);
- //rc = (jboolean)EnumDisplayMonitors((HDC)arg0, (LPCRECT)lparg1, (MONITORENUMPROC)arg2, (LPARAM)arg3);
- {
- /*
- * EnumDisplayMonitors is a Win2000 and Win98 specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "EnumDisplayMonitors"))) {
- rc = (jboolean)(fp)((HDC)arg0, (LPCRECT)lparg1, (MONITORENUMPROC)arg2, (LPARAM)arg3);
- }
- }
- if (arg1) setRECTFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "EnumDisplayMonitors\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnumSystemLanguageGroupsA
-JNIEXPORT jboolean JNICALL OS_NATIVE(EnumSystemLanguageGroupsA)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EnumSystemLanguageGroupsA\n")
- //rc = (jboolean)EnumSystemLanguageGroupsA((LANGUAGEGROUP_ENUMPROCA)arg0, arg1, (LONG_PTR)arg2);
- {
- /*
- * EnumSystemLanguageGroupsA is a Win2000 or later specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("kernel32.dll")) && (fp=GetProcAddress(hm, "EnumSystemLanguageGroupsA"))) {
- rc = (jboolean)(fp)((LANGUAGEGROUP_ENUMPROCA)arg0, arg1, (LONG_PTR)arg2);
- }
- }
- NATIVE_EXIT(env, that, "EnumSystemLanguageGroupsA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_EnumSystemLanguageGroupsW
-JNIEXPORT jboolean JNICALL OS_NATIVE(EnumSystemLanguageGroupsW)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "EnumSystemLanguageGroupsW\n")
- //rc = (jboolean)EnumSystemLanguageGroupsW((LANGUAGEGROUP_ENUMPROCW)arg0, arg1, (LONG_PTR)arg2);
- {
- /*
- * EnumSystemLanguageGroupsW is a Win2000 or later specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("kernel32.dll")) && (fp=GetProcAddress(hm, "EnumSystemLanguageGroupsW"))) {
- rc = (jboolean)(fp)((LANGUAGEGROUP_ENUMPROCW)arg0, arg1, (LONG_PTR)arg2);
- }
- }
- NATIVE_EXIT(env, that, "EnumSystemLanguageGroupsW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetLayout
-JNIEXPORT jint JNICALL OS_NATIVE(GetLayout)
- (JNIEnv *env, jclass that, jint arg0)
-{
- jint rc;
- NATIVE_ENTER(env, that, "GetLayout\n")
- //rc = (jint)GetLayout((HDC)arg0);
- {
- /*
- * GetLayout is a Win2000 and Win98 specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("gdi32.dll")) && (fp=GetProcAddress(hm, "GetLayout"))) {
- rc = (jint)(fp)((HDC)arg0);
- }
- }
- NATIVE_EXIT(env, that, "GetLayout\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMenuInfo
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetMenuInfo)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- MENUINFO _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetMenuInfo\n")
- if (arg1) lparg1 = getMENUINFOFields(env, arg1, &_arg1);
- //rc = (jboolean)GetMenuInfo((HMENU)arg0, lparg1);
- {
- /*
- * GetMenuInfo is a Win2000 and Win98 specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "GetMenuInfo"))) {
- rc = (jboolean)(fp)((HMENU)arg0, lparg1);
- }
- }
- if (arg1) setMENUINFOFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetMenuInfo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMonitorInfoA
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetMonitorInfoA)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- MONITORINFO _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetMonitorInfoA\n")
- if (arg1) lparg1 = getMONITORINFOFields(env, arg1, &_arg1);
- //rc = (jboolean)GetMonitorInfoA((HMONITOR)arg0, (LPMONITORINFO)lparg1);
- {
- /*
- * GetMonitorInfoA is a Win2000 and Win98 specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "GetMonitorInfoA"))) {
- rc = (jboolean)(fp)((HMONITOR)arg0, (LPMONITORINFO)lparg1);
- }
- }
- if (arg1) setMONITORINFOFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetMonitorInfoA\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GetMonitorInfoW
-JNIEXPORT jboolean JNICALL OS_NATIVE(GetMonitorInfoW)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- MONITORINFO _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "GetMonitorInfoW\n")
- if (arg1) lparg1 = getMONITORINFOFields(env, arg1, &_arg1);
- //rc = (jboolean)GetMonitorInfoW((HMONITOR)arg0, (LPMONITORINFO)lparg1);
- {
- /*
- * GetMonitorInfoW is a Win2000 and Win98 specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "GetMonitorInfoW"))) {
- rc = (jboolean)(fp)((HMONITOR)arg0, (LPMONITORINFO)lparg1);
- }
- }
- if (arg1) setMONITORINFOFields(env, arg1, lparg1);
- NATIVE_EXIT(env, that, "GetMonitorInfoW\n")
- return rc;
-}
-#endif
-
-#ifndef NO_GradientFill
-JNIEXPORT jboolean JNICALL OS_NATIVE(GradientFill)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "GradientFill\n")
- //rc = (jboolean)GradientFill((HDC)arg0, (PTRIVERTEX)arg1, (ULONG)arg2, (PVOID)arg3, (ULONG)arg4, (ULONG)arg5);
- {
- /*
- * GradientFill is a Win2000 and Win98 specific call
- * If you link it into swt.dll, a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if (!(hm = GetModuleHandle("msimg32.dll"))) hm = LoadLibrary("msimg32.dll");
- if (hm && (fp = GetProcAddress(hm, "GradientFill"))) {
- rc = (jboolean)fp((HDC)arg0, (PTRIVERTEX)arg1, (ULONG)arg2, (PVOID)arg3, (ULONG)arg4, (ULONG)arg5);
- }
- }
- NATIVE_EXIT(env, that, "GradientFill\n")
- return rc;
-}
-#endif
-
-#ifndef NO_IsPPC
-JNIEXPORT jboolean JNICALL OS_NATIVE(IsPPC)
- (JNIEnv *env, jclass that)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "IsPPC\n")
-#ifdef WIN32_PLATFORM_PSPC
- rc = (jboolean)TRUE;
-#else
- rc = (jboolean)FALSE;
-#endif
- NATIVE_EXIT(env, that, "IsPPC\n")
- return rc;
-}
-#endif
-
-#ifndef NO_IsSP
-JNIEXPORT jboolean JNICALL OS_NATIVE(IsSP)
- (JNIEnv *env, jclass that)
-{
- jboolean rc;
- NATIVE_ENTER(env, that, "IsSP\n")
-#ifdef WIN32_PLATFORM_WFSP
- rc = (jboolean)TRUE;
-#else
- rc = (jboolean)FALSE;
-#endif
- NATIVE_EXIT(env, that, "IsSP\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SendMessageW__II_3I_3I
-JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__II_3I_3I)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jintArray arg3)
-{
- jint *lparg2=NULL;
- jint *lparg3=NULL;
- jint rc;
- NATIVE_ENTER(env, that, "SendMessageW__II_3I_3I\n")
- if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL);
- if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL);
-#ifdef _WIN32_WCE
- /*
- * Bug on WinCE. SendMessage can fail (return 0) when being passed references
- * to parameters allocated from the heap. The workaround is to allocate
- * the parameters on the stack and to copy them back to the java array.
- * Observed on Pocket PC WinCE 3.0 with EM_GETSEL and CB_GETEDITSEL messages.
- */
- switch (arg1) {
- case EM_GETSEL:
- case CB_GETEDITSEL: {
- jint wParam = 0, lParam = 0;
- jint *lpwParam = NULL, *lplParam = NULL;
- if (lparg2 != NULL) lpwParam = &wParam;
- if (lparg3 != NULL) lplParam = &lParam;
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)lpwParam, (LPARAM)lplParam);
- if (lparg2 != NULL) lparg2[0] = wParam;
- if (lparg3 != NULL) lparg3[0] = lParam;
- break;
- }
- default:
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)lparg3);
- }
-#else
- rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)lparg3);
-#endif
- if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0);
- if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0);
- NATIVE_EXIT(env, that, "SendMessageW__II_3I_3I\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetLayout
-JNIEXPORT jint JNICALL OS_NATIVE(SetLayout)
- (JNIEnv *env, jclass that, jint arg0, jint arg1)
-{
- jint rc;
- NATIVE_ENTER(env, that, "SetLayout\n")
- //rc = (jint)SetLayout((HDC)arg0, (DWORD)arg1);
- {
- /*
- * SetLayout is a Win2000 and Win98 specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("gdi32.dll")) && (fp=GetProcAddress(hm, "SetLayout"))) {
- rc = (jint)(fp)((HDC)arg0, (DWORD)arg1);
- }
- }
- NATIVE_EXIT(env, that, "SetLayout\n")
- return rc;
-}
-#endif
-
-#ifndef NO_SetMenuInfo
-JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenuInfo)
- (JNIEnv *env, jclass that, jint arg0, jobject arg1)
-{
- MENUINFO _arg1, *lparg1=NULL;
- jboolean rc;
- NATIVE_ENTER(env, that, "SetMenuInfo\n")
- if (arg1) lparg1 = getMENUINFOFields(env, arg1, &_arg1);
- //rc = (jboolean)SetMenuInfo((HMENU)arg0, lparg1);
- {
- /*
- * SetMenuInfo is a Win2000 and Win98 specific call
- * If you link it into swt.dll a system modal entry point not found dialog will
- * appear as soon as swt.dll is loaded. Here we check for the entry point and
- * only do the call if it exists.
- */
- HMODULE hm;
- FARPROC fp;
- if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "SetMenuInfo"))) {
- rc = (jboolean)(fp)((HMENU)arg0, lparg1);
- }
- }
- NATIVE_EXIT(env, that, "SetMenuInfo\n")
- return rc;
-}
-#endif
-
-#ifndef NO_VtblCall
-JNIEXPORT jint JNICALL OS_NATIVE(VtblCall)
- (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2)
-{
- jint rc;
- NATIVE_ENTER(env, that, "VtblCall\n")
- typedef jint (STDMETHODCALLTYPE *P_OLE_FN_2)(jint, jint);
- {
- P_OLE_FN_2 fn;
- fn = (P_OLE_FN_2)(*(int **)arg1)[arg0];
- rc = fn(arg1, arg2);
- }
- NATIVE_EXIT(env, that, "VtblCall\n")
- return rc;
-}
-#endif
+/******************************************************************************* +* Copyright (c) 2000, 2003 IBM Corporation and others. +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Common Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/cpl-v10.html +* +* Contributors: +* IBM Corporation - initial API and implementation +*******************************************************************************/ + +#include "swt.h" +#include "os_structs.h" + +#define OS_NATIVE(func) Java_org_eclipse_swt_internal_win32_OS_##func + +__declspec(dllexport) HRESULT DllGetVersion(DLLVERSIONINFO *dvi); +HRESULT DllGetVersion(DLLVERSIONINFO *dvi) +{ + dvi->dwMajorVersion = SWT_VERSION / 1000; + dvi->dwMinorVersion = SWT_VERSION % 1000; + dvi->dwBuildNumber = SWT_BUILD_NUM; + dvi->dwPlatformID = DLLVER_PLATFORM_WINDOWS; + return 1; +} + +HINSTANCE g_hInstance = NULL; +BOOL WINAPI DllMain(HANDLE hInstDLL, DWORD dwReason, LPVOID lpvReserved) +{ + if (dwReason == DLL_PROCESS_ATTACH) { + if (g_hInstance == NULL) g_hInstance = hInstDLL; + } + return TRUE; +} + +#ifndef NO_GetLibraryHandle +JNIEXPORT jint JNICALL OS_NATIVE(GetLibraryHandle) + (JNIEnv *env, jclass that) +{ + jint rc; + NATIVE_ENTER(env, that, "GetLibraryHandle\n") + rc = (jint)g_hInstance; + NATIVE_EXIT(env, that, "GetLibraryHandle\n") + return rc; +} +#endif + +#ifndef NO_Call +JNIEXPORT jint JNICALL OS_NATIVE(Call) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + DLLVERSIONINFO _arg1, *lparg1=NULL; + jint rc; + NATIVE_ENTER(env, that, "Call\n") + if (arg1) lparg1 = getDLLVERSIONINFOFields(env, arg1, &_arg1); + rc = (jint)((DLLGETVERSIONPROC)arg0)(lparg1); + if (arg1) setDLLVERSIONINFOFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "Call\n") + return rc; +} +#endif + +#ifndef NO_EnumDisplayMonitors +JNIEXPORT jboolean JNICALL OS_NATIVE(EnumDisplayMonitors) + (JNIEnv *env, jclass that, jint arg0, jobject arg1, jint arg2, jint arg3) +{ + RECT _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "EnumDisplayMonitors\n") + if (arg1) lparg1 = getRECTFields(env, arg1, &_arg1); + //rc = (jboolean)EnumDisplayMonitors((HDC)arg0, (LPCRECT)lparg1, (MONITORENUMPROC)arg2, (LPARAM)arg3); + { + /* + * EnumDisplayMonitors is a Win2000 and Win98 specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "EnumDisplayMonitors"))) { + rc = (jboolean)(fp)((HDC)arg0, (LPCRECT)lparg1, (MONITORENUMPROC)arg2, (LPARAM)arg3); + } + } + if (arg1) setRECTFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "EnumDisplayMonitors\n") + return rc; +} +#endif + +#ifndef NO_EnumSystemLanguageGroupsA +JNIEXPORT jboolean JNICALL OS_NATIVE(EnumSystemLanguageGroupsA) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EnumSystemLanguageGroupsA\n") + //rc = (jboolean)EnumSystemLanguageGroupsA((LANGUAGEGROUP_ENUMPROCA)arg0, arg1, (LONG_PTR)arg2); + { + /* + * EnumSystemLanguageGroupsA is a Win2000 or later specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("kernel32.dll")) && (fp=GetProcAddress(hm, "EnumSystemLanguageGroupsA"))) { + rc = (jboolean)(fp)((LANGUAGEGROUP_ENUMPROCA)arg0, arg1, (LONG_PTR)arg2); + } + } + NATIVE_EXIT(env, that, "EnumSystemLanguageGroupsA\n") + return rc; +} +#endif + +#ifndef NO_EnumSystemLanguageGroupsW +JNIEXPORT jboolean JNICALL OS_NATIVE(EnumSystemLanguageGroupsW) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jboolean rc; + NATIVE_ENTER(env, that, "EnumSystemLanguageGroupsW\n") + //rc = (jboolean)EnumSystemLanguageGroupsW((LANGUAGEGROUP_ENUMPROCW)arg0, arg1, (LONG_PTR)arg2); + { + /* + * EnumSystemLanguageGroupsW is a Win2000 or later specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("kernel32.dll")) && (fp=GetProcAddress(hm, "EnumSystemLanguageGroupsW"))) { + rc = (jboolean)(fp)((LANGUAGEGROUP_ENUMPROCW)arg0, arg1, (LONG_PTR)arg2); + } + } + NATIVE_EXIT(env, that, "EnumSystemLanguageGroupsW\n") + return rc; +} +#endif + +#ifndef NO_GetLayout +JNIEXPORT jint JNICALL OS_NATIVE(GetLayout) + (JNIEnv *env, jclass that, jint arg0) +{ + jint rc; + NATIVE_ENTER(env, that, "GetLayout\n") + //rc = (jint)GetLayout((HDC)arg0); + { + /* + * GetLayout is a Win2000 and Win98 specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("gdi32.dll")) && (fp=GetProcAddress(hm, "GetLayout"))) { + rc = (jint)(fp)((HDC)arg0); + } + } + NATIVE_EXIT(env, that, "GetLayout\n") + return rc; +} +#endif + +#ifndef NO_GetMenuInfo +JNIEXPORT jboolean JNICALL OS_NATIVE(GetMenuInfo) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + MENUINFO _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetMenuInfo\n") + if (arg1) lparg1 = getMENUINFOFields(env, arg1, &_arg1); + //rc = (jboolean)GetMenuInfo((HMENU)arg0, lparg1); + { + /* + * GetMenuInfo is a Win2000 and Win98 specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "GetMenuInfo"))) { + rc = (jboolean)(fp)((HMENU)arg0, lparg1); + } + } + if (arg1) setMENUINFOFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetMenuInfo\n") + return rc; +} +#endif + +#ifndef NO_GetMonitorInfoA +JNIEXPORT jboolean JNICALL OS_NATIVE(GetMonitorInfoA) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + MONITORINFO _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetMonitorInfoA\n") + if (arg1) lparg1 = getMONITORINFOFields(env, arg1, &_arg1); + //rc = (jboolean)GetMonitorInfoA((HMONITOR)arg0, (LPMONITORINFO)lparg1); + { + /* + * GetMonitorInfoA is a Win2000 and Win98 specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "GetMonitorInfoA"))) { + rc = (jboolean)(fp)((HMONITOR)arg0, (LPMONITORINFO)lparg1); + } + } + if (arg1) setMONITORINFOFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetMonitorInfoA\n") + return rc; +} +#endif + +#ifndef NO_GetMonitorInfoW +JNIEXPORT jboolean JNICALL OS_NATIVE(GetMonitorInfoW) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + MONITORINFO _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "GetMonitorInfoW\n") + if (arg1) lparg1 = getMONITORINFOFields(env, arg1, &_arg1); + //rc = (jboolean)GetMonitorInfoW((HMONITOR)arg0, (LPMONITORINFO)lparg1); + { + /* + * GetMonitorInfoW is a Win2000 and Win98 specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "GetMonitorInfoW"))) { + rc = (jboolean)(fp)((HMONITOR)arg0, (LPMONITORINFO)lparg1); + } + } + if (arg1) setMONITORINFOFields(env, arg1, lparg1); + NATIVE_EXIT(env, that, "GetMonitorInfoW\n") + return rc; +} +#endif + +#ifndef NO_GradientFill +JNIEXPORT jboolean JNICALL OS_NATIVE(GradientFill) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5) +{ + jboolean rc; + NATIVE_ENTER(env, that, "GradientFill\n") + //rc = (jboolean)GradientFill((HDC)arg0, (PTRIVERTEX)arg1, (ULONG)arg2, (PVOID)arg3, (ULONG)arg4, (ULONG)arg5); + { + /* + * GradientFill is a Win2000 and Win98 specific call + * If you link it into swt.dll, a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if (!(hm = GetModuleHandle("msimg32.dll"))) hm = LoadLibrary("msimg32.dll"); + if (hm && (fp = GetProcAddress(hm, "GradientFill"))) { + rc = (jboolean)fp((HDC)arg0, (PTRIVERTEX)arg1, (ULONG)arg2, (PVOID)arg3, (ULONG)arg4, (ULONG)arg5); + } + } + NATIVE_EXIT(env, that, "GradientFill\n") + return rc; +} +#endif + +#ifndef NO_IsPPC +JNIEXPORT jboolean JNICALL OS_NATIVE(IsPPC) + (JNIEnv *env, jclass that) +{ + jboolean rc; + NATIVE_ENTER(env, that, "IsPPC\n") +#ifdef WIN32_PLATFORM_PSPC + rc = (jboolean)TRUE; +#else + rc = (jboolean)FALSE; +#endif + NATIVE_EXIT(env, that, "IsPPC\n") + return rc; +} +#endif + +#ifndef NO_IsSP +JNIEXPORT jboolean JNICALL OS_NATIVE(IsSP) + (JNIEnv *env, jclass that) +{ + jboolean rc; + NATIVE_ENTER(env, that, "IsSP\n") +#ifdef WIN32_PLATFORM_WFSP + rc = (jboolean)TRUE; +#else + rc = (jboolean)FALSE; +#endif + NATIVE_EXIT(env, that, "IsSP\n") + return rc; +} +#endif + +#ifndef NO_SendMessageW__II_3I_3I +JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__II_3I_3I) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jintArray arg2, jintArray arg3) +{ + jint *lparg2=NULL; + jint *lparg3=NULL; + jint rc; + NATIVE_ENTER(env, that, "SendMessageW__II_3I_3I\n") + if (arg2) lparg2 = (*env)->GetIntArrayElements(env, arg2, NULL); + if (arg3) lparg3 = (*env)->GetIntArrayElements(env, arg3, NULL); +#ifdef _WIN32_WCE + /* + * Bug on WinCE. SendMessage can fail (return 0) when being passed references + * to parameters allocated from the heap. The workaround is to allocate + * the parameters on the stack and to copy them back to the java array. + * Observed on Pocket PC WinCE 3.0 with EM_GETSEL and CB_GETEDITSEL messages. + */ + switch (arg1) { + case EM_GETSEL: + case CB_GETEDITSEL: { + jint wParam = 0, lParam = 0; + jint *lpwParam = NULL, *lplParam = NULL; + if (lparg2 != NULL) lpwParam = &wParam; + if (lparg3 != NULL) lplParam = &lParam; + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)lpwParam, (LPARAM)lplParam); + if (lparg2 != NULL) lparg2[0] = wParam; + if (lparg3 != NULL) lparg3[0] = lParam; + break; + } + default: + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)lparg3); + } +#else + rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)lparg2, (LPARAM)lparg3); +#endif + if (arg2) (*env)->ReleaseIntArrayElements(env, arg2, lparg2, 0); + if (arg3) (*env)->ReleaseIntArrayElements(env, arg3, lparg3, 0); + NATIVE_EXIT(env, that, "SendMessageW__II_3I_3I\n") + return rc; +} +#endif + +#ifndef NO_SetLayout +JNIEXPORT jint JNICALL OS_NATIVE(SetLayout) + (JNIEnv *env, jclass that, jint arg0, jint arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "SetLayout\n") + //rc = (jint)SetLayout((HDC)arg0, (DWORD)arg1); + { + /* + * SetLayout is a Win2000 and Win98 specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("gdi32.dll")) && (fp=GetProcAddress(hm, "SetLayout"))) { + rc = (jint)(fp)((HDC)arg0, (DWORD)arg1); + } + } + NATIVE_EXIT(env, that, "SetLayout\n") + return rc; +} +#endif + +#ifndef NO_SetMenuInfo +JNIEXPORT jboolean JNICALL OS_NATIVE(SetMenuInfo) + (JNIEnv *env, jclass that, jint arg0, jobject arg1) +{ + MENUINFO _arg1, *lparg1=NULL; + jboolean rc; + NATIVE_ENTER(env, that, "SetMenuInfo\n") + if (arg1) lparg1 = getMENUINFOFields(env, arg1, &_arg1); + //rc = (jboolean)SetMenuInfo((HMENU)arg0, lparg1); + { + /* + * SetMenuInfo is a Win2000 and Win98 specific call + * If you link it into swt.dll a system modal entry point not found dialog will + * appear as soon as swt.dll is loaded. Here we check for the entry point and + * only do the call if it exists. + */ + HMODULE hm; + FARPROC fp; + if ((hm=GetModuleHandle("user32.dll")) && (fp=GetProcAddress(hm, "SetMenuInfo"))) { + rc = (jboolean)(fp)((HMENU)arg0, lparg1); + } + } + NATIVE_EXIT(env, that, "SetMenuInfo\n") + return rc; +} +#endif + +#ifndef NO_VtblCall +JNIEXPORT jint JNICALL OS_NATIVE(VtblCall) + (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) +{ + jint rc; + NATIVE_ENTER(env, that, "VtblCall\n") + typedef jint (STDMETHODCALLTYPE *P_OLE_FN_2)(jint, jint); + { + P_OLE_FN_2 fn; + fn = (P_OLE_FN_2)(*(int **)arg1)[arg0]; + rc = fn(arg1, arg2); + } + NATIVE_EXIT(env, that, "VtblCall\n") + return rc; +} +#endif diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.c b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.c index 0161dddcca..89c97a3174 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.c @@ -1,4277 +1,4277 @@ -/*******************************************************************************
-* Copyright (c) 2000, 2003 IBM Corporation and others.
-* All rights reserved. This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-*
-* Contributors:
-* IBM Corporation - initial API and implementation
-*******************************************************************************/
-
-#include "swt.h"
-#include "os_structs.h"
-
-#ifndef NO_ACCEL
-typedef struct ACCEL_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID fVirt, key, cmd;
-} ACCEL_FID_CACHE;
-
-ACCEL_FID_CACHE ACCELFc;
-
-void cacheACCELFields(JNIEnv *env, jobject lpObject)
-{
- if (ACCELFc.cached) return;
- ACCELFc.clazz = (*env)->GetObjectClass(env, lpObject);
- ACCELFc.fVirt = (*env)->GetFieldID(env, ACCELFc.clazz, "fVirt", "B");
- ACCELFc.key = (*env)->GetFieldID(env, ACCELFc.clazz, "key", "S");
- ACCELFc.cmd = (*env)->GetFieldID(env, ACCELFc.clazz, "cmd", "S");
- ACCELFc.cached = 1;
-}
-
-ACCEL *getACCELFields(JNIEnv *env, jobject lpObject, ACCEL *lpStruct)
-{
- if (!ACCELFc.cached) cacheACCELFields(env, lpObject);
- lpStruct->fVirt = (*env)->GetByteField(env, lpObject, ACCELFc.fVirt);
- lpStruct->key = (*env)->GetShortField(env, lpObject, ACCELFc.key);
- lpStruct->cmd = (*env)->GetShortField(env, lpObject, ACCELFc.cmd);
- return lpStruct;
-}
-
-void setACCELFields(JNIEnv *env, jobject lpObject, ACCEL *lpStruct)
-{
- if (!ACCELFc.cached) cacheACCELFields(env, lpObject);
- (*env)->SetByteField(env, lpObject, ACCELFc.fVirt, (jbyte)lpStruct->fVirt);
- (*env)->SetShortField(env, lpObject, ACCELFc.key, (jshort)lpStruct->key);
- (*env)->SetShortField(env, lpObject, ACCELFc.cmd, (jshort)lpStruct->cmd);
-}
-#endif
-
-#ifndef NO_BITMAP
-typedef struct BITMAP_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID bmType, bmWidth, bmHeight, bmWidthBytes, bmPlanes, bmBitsPixel, bmBits;
-} BITMAP_FID_CACHE;
-
-BITMAP_FID_CACHE BITMAPFc;
-
-void cacheBITMAPFields(JNIEnv *env, jobject lpObject)
-{
- if (BITMAPFc.cached) return;
- BITMAPFc.clazz = (*env)->GetObjectClass(env, lpObject);
- BITMAPFc.bmType = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmType", "I");
- BITMAPFc.bmWidth = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmWidth", "I");
- BITMAPFc.bmHeight = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmHeight", "I");
- BITMAPFc.bmWidthBytes = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmWidthBytes", "I");
- BITMAPFc.bmPlanes = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmPlanes", "S");
- BITMAPFc.bmBitsPixel = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmBitsPixel", "S");
- BITMAPFc.bmBits = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmBits", "I");
- BITMAPFc.cached = 1;
-}
-
-BITMAP *getBITMAPFields(JNIEnv *env, jobject lpObject, BITMAP *lpStruct)
-{
- if (!BITMAPFc.cached) cacheBITMAPFields(env, lpObject);
- lpStruct->bmType = (*env)->GetIntField(env, lpObject, BITMAPFc.bmType);
- lpStruct->bmWidth = (*env)->GetIntField(env, lpObject, BITMAPFc.bmWidth);
- lpStruct->bmHeight = (*env)->GetIntField(env, lpObject, BITMAPFc.bmHeight);
- lpStruct->bmWidthBytes = (*env)->GetIntField(env, lpObject, BITMAPFc.bmWidthBytes);
- lpStruct->bmPlanes = (*env)->GetShortField(env, lpObject, BITMAPFc.bmPlanes);
- lpStruct->bmBitsPixel = (*env)->GetShortField(env, lpObject, BITMAPFc.bmBitsPixel);
- lpStruct->bmBits = (LPVOID)(*env)->GetIntField(env, lpObject, BITMAPFc.bmBits);
- return lpStruct;
-}
-
-void setBITMAPFields(JNIEnv *env, jobject lpObject, BITMAP *lpStruct)
-{
- if (!BITMAPFc.cached) cacheBITMAPFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, BITMAPFc.bmType, (jint)lpStruct->bmType);
- (*env)->SetIntField(env, lpObject, BITMAPFc.bmWidth, (jint)lpStruct->bmWidth);
- (*env)->SetIntField(env, lpObject, BITMAPFc.bmHeight, (jint)lpStruct->bmHeight);
- (*env)->SetIntField(env, lpObject, BITMAPFc.bmWidthBytes, (jint)lpStruct->bmWidthBytes);
- (*env)->SetShortField(env, lpObject, BITMAPFc.bmPlanes, (jshort)lpStruct->bmPlanes);
- (*env)->SetShortField(env, lpObject, BITMAPFc.bmBitsPixel, (jshort)lpStruct->bmBitsPixel);
- (*env)->SetIntField(env, lpObject, BITMAPFc.bmBits, (jint)lpStruct->bmBits);
-}
-#endif
-
-#ifndef NO_BITMAPINFOHEADER
-typedef struct BITMAPINFOHEADER_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID biSize, biWidth, biHeight, biPlanes, biBitCount, biCompression, biSizeImage, biXPelsPerMeter, biYPelsPerMeter, biClrUsed, biClrImportant;
-} BITMAPINFOHEADER_FID_CACHE;
-
-BITMAPINFOHEADER_FID_CACHE BITMAPINFOHEADERFc;
-
-void cacheBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject)
-{
- if (BITMAPINFOHEADERFc.cached) return;
- BITMAPINFOHEADERFc.clazz = (*env)->GetObjectClass(env, lpObject);
- BITMAPINFOHEADERFc.biSize = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biSize", "I");
- BITMAPINFOHEADERFc.biWidth = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biWidth", "I");
- BITMAPINFOHEADERFc.biHeight = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biHeight", "I");
- BITMAPINFOHEADERFc.biPlanes = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biPlanes", "S");
- BITMAPINFOHEADERFc.biBitCount = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biBitCount", "S");
- BITMAPINFOHEADERFc.biCompression = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biCompression", "I");
- BITMAPINFOHEADERFc.biSizeImage = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biSizeImage", "I");
- BITMAPINFOHEADERFc.biXPelsPerMeter = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biXPelsPerMeter", "I");
- BITMAPINFOHEADERFc.biYPelsPerMeter = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biYPelsPerMeter", "I");
- BITMAPINFOHEADERFc.biClrUsed = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biClrUsed", "I");
- BITMAPINFOHEADERFc.biClrImportant = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biClrImportant", "I");
- BITMAPINFOHEADERFc.cached = 1;
-}
-
-BITMAPINFOHEADER *getBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject, BITMAPINFOHEADER *lpStruct)
-{
- if (!BITMAPINFOHEADERFc.cached) cacheBITMAPINFOHEADERFields(env, lpObject);
- lpStruct->biSize = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biSize);
- lpStruct->biWidth = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biWidth);
- lpStruct->biHeight = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biHeight);
- lpStruct->biPlanes = (*env)->GetShortField(env, lpObject, BITMAPINFOHEADERFc.biPlanes);
- lpStruct->biBitCount = (*env)->GetShortField(env, lpObject, BITMAPINFOHEADERFc.biBitCount);
- lpStruct->biCompression = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biCompression);
- lpStruct->biSizeImage = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biSizeImage);
- lpStruct->biXPelsPerMeter = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biXPelsPerMeter);
- lpStruct->biYPelsPerMeter = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biYPelsPerMeter);
- lpStruct->biClrUsed = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biClrUsed);
- lpStruct->biClrImportant = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biClrImportant);
- return lpStruct;
-}
-
-void setBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject, BITMAPINFOHEADER *lpStruct)
-{
- if (!BITMAPINFOHEADERFc.cached) cacheBITMAPINFOHEADERFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biSize, (jint)lpStruct->biSize);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biWidth, (jint)lpStruct->biWidth);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biHeight, (jint)lpStruct->biHeight);
- (*env)->SetShortField(env, lpObject, BITMAPINFOHEADERFc.biPlanes, (jshort)lpStruct->biPlanes);
- (*env)->SetShortField(env, lpObject, BITMAPINFOHEADERFc.biBitCount, (jshort)lpStruct->biBitCount);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biCompression, (jint)lpStruct->biCompression);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biSizeImage, (jint)lpStruct->biSizeImage);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biXPelsPerMeter, (jint)lpStruct->biXPelsPerMeter);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biYPelsPerMeter, (jint)lpStruct->biYPelsPerMeter);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biClrUsed, (jint)lpStruct->biClrUsed);
- (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biClrImportant, (jint)lpStruct->biClrImportant);
-}
-#endif
-
-#ifndef NO_BROWSEINFO
-typedef struct BROWSEINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID hwndOwner, pidlRoot, pszDisplayName, lpszTitle, ulFlags, lpfn, lParam, iImage;
-} BROWSEINFO_FID_CACHE;
-
-BROWSEINFO_FID_CACHE BROWSEINFOFc;
-
-void cacheBROWSEINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (BROWSEINFOFc.cached) return;
- BROWSEINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- BROWSEINFOFc.hwndOwner = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "hwndOwner", "I");
- BROWSEINFOFc.pidlRoot = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "pidlRoot", "I");
- BROWSEINFOFc.pszDisplayName = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "pszDisplayName", "I");
- BROWSEINFOFc.lpszTitle = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "lpszTitle", "I");
- BROWSEINFOFc.ulFlags = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "ulFlags", "I");
- BROWSEINFOFc.lpfn = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "lpfn", "I");
- BROWSEINFOFc.lParam = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "lParam", "I");
- BROWSEINFOFc.iImage = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "iImage", "I");
- BROWSEINFOFc.cached = 1;
-}
-
-BROWSEINFO *getBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct)
-{
- if (!BROWSEINFOFc.cached) cacheBROWSEINFOFields(env, lpObject);
- lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.hwndOwner);
- lpStruct->pidlRoot = (LPCITEMIDLIST)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.pidlRoot);
- lpStruct->pszDisplayName = (LPTSTR)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.pszDisplayName);
- lpStruct->lpszTitle = (LPCTSTR)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.lpszTitle);
- lpStruct->ulFlags = (*env)->GetIntField(env, lpObject, BROWSEINFOFc.ulFlags);
- lpStruct->lpfn = (BFFCALLBACK)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.lpfn);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, BROWSEINFOFc.lParam);
- lpStruct->iImage = (*env)->GetIntField(env, lpObject, BROWSEINFOFc.iImage);
- return lpStruct;
-}
-
-void setBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct)
-{
- if (!BROWSEINFOFc.cached) cacheBROWSEINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, BROWSEINFOFc.hwndOwner, (jint)lpStruct->hwndOwner);
- (*env)->SetIntField(env, lpObject, BROWSEINFOFc.pidlRoot, (jint)lpStruct->pidlRoot);
- (*env)->SetIntField(env, lpObject, BROWSEINFOFc.pszDisplayName, (jint)lpStruct->pszDisplayName);
- (*env)->SetIntField(env, lpObject, BROWSEINFOFc.lpszTitle, (jint)lpStruct->lpszTitle);
- (*env)->SetIntField(env, lpObject, BROWSEINFOFc.ulFlags, (jint)lpStruct->ulFlags);
- (*env)->SetIntField(env, lpObject, BROWSEINFOFc.lpfn, (jint)lpStruct->lpfn);
- (*env)->SetIntField(env, lpObject, BROWSEINFOFc.lParam, (jint)lpStruct->lParam);
- (*env)->SetIntField(env, lpObject, BROWSEINFOFc.iImage, (jint)lpStruct->iImage);
-}
-#endif
-
-#ifndef NO_CHOOSECOLOR
-typedef struct CHOOSECOLOR_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lStructSize, hwndOwner, hInstance, rgbResult, lpCustColors, Flags, lCustData, lpfnHook, lpTemplateName;
-} CHOOSECOLOR_FID_CACHE;
-
-CHOOSECOLOR_FID_CACHE CHOOSECOLORFc;
-
-void cacheCHOOSECOLORFields(JNIEnv *env, jobject lpObject)
-{
- if (CHOOSECOLORFc.cached) return;
- CHOOSECOLORFc.clazz = (*env)->GetObjectClass(env, lpObject);
- CHOOSECOLORFc.lStructSize = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lStructSize", "I");
- CHOOSECOLORFc.hwndOwner = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "hwndOwner", "I");
- CHOOSECOLORFc.hInstance = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "hInstance", "I");
- CHOOSECOLORFc.rgbResult = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "rgbResult", "I");
- CHOOSECOLORFc.lpCustColors = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lpCustColors", "I");
- CHOOSECOLORFc.Flags = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "Flags", "I");
- CHOOSECOLORFc.lCustData = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lCustData", "I");
- CHOOSECOLORFc.lpfnHook = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lpfnHook", "I");
- CHOOSECOLORFc.lpTemplateName = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lpTemplateName", "I");
- CHOOSECOLORFc.cached = 1;
-}
-
-CHOOSECOLOR *getCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct)
-{
- if (!CHOOSECOLORFc.cached) cacheCHOOSECOLORFields(env, lpObject);
- lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lStructSize);
- lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.hwndOwner);
- lpStruct->hInstance = (HANDLE)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.hInstance);
- lpStruct->rgbResult = (*env)->GetIntField(env, lpObject, CHOOSECOLORFc.rgbResult);
- lpStruct->lpCustColors = (COLORREF *)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lpCustColors);
- lpStruct->Flags = (*env)->GetIntField(env, lpObject, CHOOSECOLORFc.Flags);
- lpStruct->lCustData = (*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lCustData);
- lpStruct->lpfnHook = (LPCCHOOKPROC)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lpfnHook);
- lpStruct->lpTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lpTemplateName);
- return lpStruct;
-}
-
-void setCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct)
-{
- if (!CHOOSECOLORFc.cached) cacheCHOOSECOLORFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lStructSize, (jint)lpStruct->lStructSize);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.hwndOwner, (jint)lpStruct->hwndOwner);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.hInstance, (jint)lpStruct->hInstance);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.rgbResult, (jint)lpStruct->rgbResult);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lpCustColors, (jint)lpStruct->lpCustColors);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.Flags, (jint)lpStruct->Flags);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lCustData, (jint)lpStruct->lCustData);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lpfnHook, (jint)lpStruct->lpfnHook);
- (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lpTemplateName, (jint)lpStruct->lpTemplateName);
-}
-#endif
-
-#ifndef NO_CHOOSEFONT
-typedef struct CHOOSEFONT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lStructSize, hwndOwner, hDC, lpLogFont, iPointSize, Flags, rgbColors, lCustData, lpfnHook, lpTemplateName, hInstance, lpszStyle, nFontType, nSizeMin, nSizeMax;
-} CHOOSEFONT_FID_CACHE;
-
-CHOOSEFONT_FID_CACHE CHOOSEFONTFc;
-
-void cacheCHOOSEFONTFields(JNIEnv *env, jobject lpObject)
-{
- if (CHOOSEFONTFc.cached) return;
- CHOOSEFONTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- CHOOSEFONTFc.lStructSize = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lStructSize", "I");
- CHOOSEFONTFc.hwndOwner = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "hwndOwner", "I");
- CHOOSEFONTFc.hDC = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "hDC", "I");
- CHOOSEFONTFc.lpLogFont = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lpLogFont", "I");
- CHOOSEFONTFc.iPointSize = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "iPointSize", "I");
- CHOOSEFONTFc.Flags = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "Flags", "I");
- CHOOSEFONTFc.rgbColors = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "rgbColors", "I");
- CHOOSEFONTFc.lCustData = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lCustData", "I");
- CHOOSEFONTFc.lpfnHook = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lpfnHook", "I");
- CHOOSEFONTFc.lpTemplateName = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lpTemplateName", "I");
- CHOOSEFONTFc.hInstance = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "hInstance", "I");
- CHOOSEFONTFc.lpszStyle = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lpszStyle", "I");
- CHOOSEFONTFc.nFontType = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "nFontType", "S");
- CHOOSEFONTFc.nSizeMin = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "nSizeMin", "I");
- CHOOSEFONTFc.nSizeMax = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "nSizeMax", "I");
- CHOOSEFONTFc.cached = 1;
-}
-
-CHOOSEFONT *getCHOOSEFONTFields(JNIEnv *env, jobject lpObject, CHOOSEFONT *lpStruct)
-{
- if (!CHOOSEFONTFc.cached) cacheCHOOSEFONTFields(env, lpObject);
- lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lStructSize);
- lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.hwndOwner);
- lpStruct->hDC = (HDC)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.hDC);
- lpStruct->lpLogFont = (LPLOGFONT)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lpLogFont);
- lpStruct->iPointSize = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.iPointSize);
- lpStruct->Flags = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.Flags);
- lpStruct->rgbColors = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.rgbColors);
- lpStruct->lCustData = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lCustData);
- lpStruct->lpfnHook = (LPCFHOOKPROC)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lpfnHook);
- lpStruct->lpTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lpTemplateName);
- lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.hInstance);
- lpStruct->lpszStyle = (LPTSTR)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lpszStyle);
- lpStruct->nFontType = (*env)->GetShortField(env, lpObject, CHOOSEFONTFc.nFontType);
- lpStruct->nSizeMin = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.nSizeMin);
- lpStruct->nSizeMax = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.nSizeMax);
- return lpStruct;
-}
-
-void setCHOOSEFONTFields(JNIEnv *env, jobject lpObject, CHOOSEFONT *lpStruct)
-{
- if (!CHOOSEFONTFc.cached) cacheCHOOSEFONTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lStructSize, (jint)lpStruct->lStructSize);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.hwndOwner, (jint)lpStruct->hwndOwner);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.hDC, (jint)lpStruct->hDC);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lpLogFont, (jint)lpStruct->lpLogFont);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.iPointSize, (jint)lpStruct->iPointSize);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.Flags, (jint)lpStruct->Flags);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.rgbColors, (jint)lpStruct->rgbColors);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lCustData, (jint)lpStruct->lCustData);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lpfnHook, (jint)lpStruct->lpfnHook);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lpTemplateName, (jint)lpStruct->lpTemplateName);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.hInstance, (jint)lpStruct->hInstance);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lpszStyle, (jint)lpStruct->lpszStyle);
- (*env)->SetShortField(env, lpObject, CHOOSEFONTFc.nFontType, (jshort)lpStruct->nFontType);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.nSizeMin, (jint)lpStruct->nSizeMin);
- (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.nSizeMax, (jint)lpStruct->nSizeMax);
-}
-#endif
-
-#ifndef NO_COMPOSITIONFORM
-typedef struct COMPOSITIONFORM_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID dwStyle, x, y, left, top, right, bottom;
-} COMPOSITIONFORM_FID_CACHE;
-
-COMPOSITIONFORM_FID_CACHE COMPOSITIONFORMFc;
-
-void cacheCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject)
-{
- if (COMPOSITIONFORMFc.cached) return;
- COMPOSITIONFORMFc.clazz = (*env)->GetObjectClass(env, lpObject);
- COMPOSITIONFORMFc.dwStyle = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "dwStyle", "I");
- COMPOSITIONFORMFc.x = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "x", "I");
- COMPOSITIONFORMFc.y = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "y", "I");
- COMPOSITIONFORMFc.left = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "left", "I");
- COMPOSITIONFORMFc.top = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "top", "I");
- COMPOSITIONFORMFc.right = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "right", "I");
- COMPOSITIONFORMFc.bottom = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "bottom", "I");
- COMPOSITIONFORMFc.cached = 1;
-}
-
-COMPOSITIONFORM *getCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject, COMPOSITIONFORM *lpStruct)
-{
- if (!COMPOSITIONFORMFc.cached) cacheCOMPOSITIONFORMFields(env, lpObject);
- lpStruct->dwStyle = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.dwStyle);
- lpStruct->ptCurrentPos.y = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.x);
- lpStruct->ptCurrentPos.x = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.y);
- lpStruct->rcArea.left = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.left);
- lpStruct->rcArea.top = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.top);
- lpStruct->rcArea.right = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.right);
- lpStruct->rcArea.bottom = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.bottom);
- return lpStruct;
-}
-
-void setCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject, COMPOSITIONFORM *lpStruct)
-{
- if (!COMPOSITIONFORMFc.cached) cacheCOMPOSITIONFORMFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.dwStyle, (jint)lpStruct->dwStyle);
- (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.x, (jint)lpStruct->ptCurrentPos.y);
- (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.y, (jint)lpStruct->ptCurrentPos.x);
- (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.left, (jint)lpStruct->rcArea.left);
- (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.top, (jint)lpStruct->rcArea.top);
- (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.right, (jint)lpStruct->rcArea.right);
- (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.bottom, (jint)lpStruct->rcArea.bottom);
-}
-#endif
-
-#ifndef NO_CREATESTRUCT
-typedef struct CREATESTRUCT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lpCreateParams, hInstance, hMenu, hwndParent, cy, cx, y, x, style, lpszName, lpszClass, dwExStyle;
-} CREATESTRUCT_FID_CACHE;
-
-CREATESTRUCT_FID_CACHE CREATESTRUCTFc;
-
-void cacheCREATESTRUCTFields(JNIEnv *env, jobject lpObject)
-{
- if (CREATESTRUCTFc.cached) return;
- CREATESTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- CREATESTRUCTFc.lpCreateParams = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "lpCreateParams", "I");
- CREATESTRUCTFc.hInstance = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "hInstance", "I");
- CREATESTRUCTFc.hMenu = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "hMenu", "I");
- CREATESTRUCTFc.hwndParent = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "hwndParent", "I");
- CREATESTRUCTFc.cy = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "cy", "I");
- CREATESTRUCTFc.cx = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "cx", "I");
- CREATESTRUCTFc.y = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "y", "I");
- CREATESTRUCTFc.x = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "x", "I");
- CREATESTRUCTFc.style = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "style", "I");
- CREATESTRUCTFc.lpszName = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "lpszName", "I");
- CREATESTRUCTFc.lpszClass = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "lpszClass", "I");
- CREATESTRUCTFc.dwExStyle = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "dwExStyle", "I");
- CREATESTRUCTFc.cached = 1;
-}
-
-CREATESTRUCT *getCREATESTRUCTFields(JNIEnv *env, jobject lpObject, CREATESTRUCT *lpStruct)
-{
- if (!CREATESTRUCTFc.cached) cacheCREATESTRUCTFields(env, lpObject);
- lpStruct->lpCreateParams = (LPVOID)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.lpCreateParams);
- lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.hInstance);
- lpStruct->hMenu = (HMENU)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.hMenu);
- lpStruct->hwndParent = (HWND)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.hwndParent);
- lpStruct->cy = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.cy);
- lpStruct->cx = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.cx);
- lpStruct->y = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.y);
- lpStruct->x = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.x);
- lpStruct->style = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.style);
- lpStruct->lpszName = (LPCTSTR)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.lpszName);
- lpStruct->lpszClass = (LPCTSTR)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.lpszClass);
- lpStruct->dwExStyle = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.dwExStyle);
- return lpStruct;
-}
-
-void setCREATESTRUCTFields(JNIEnv *env, jobject lpObject, CREATESTRUCT *lpStruct)
-{
- if (!CREATESTRUCTFc.cached) cacheCREATESTRUCTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.lpCreateParams, (jint)lpStruct->lpCreateParams);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.hInstance, (jint)lpStruct->hInstance);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.hMenu, (jint)lpStruct->hMenu);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.hwndParent, (jint)lpStruct->hwndParent);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.cy, (jint)lpStruct->cy);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.cx, (jint)lpStruct->cx);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.y, (jint)lpStruct->y);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.x, (jint)lpStruct->x);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.style, (jint)lpStruct->style);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.lpszName, (jint)lpStruct->lpszName);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.lpszClass, (jint)lpStruct->lpszClass);
- (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.dwExStyle, (jint)lpStruct->dwExStyle);
-}
-#endif
-
-#ifndef NO_DIBSECTION
-typedef struct DIBSECTION_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID biSize, biWidth, biHeight, biPlanes, biBitCount, biCompression, biSizeImage, biXPelsPerMeter, biYPelsPerMeter, biClrUsed, biClrImportant, dsBitfields0, dsBitfields1, dsBitfields2, dshSection, dsOffset;
-} DIBSECTION_FID_CACHE;
-
-DIBSECTION_FID_CACHE DIBSECTIONFc;
-
-void cacheDIBSECTIONFields(JNIEnv *env, jobject lpObject)
-{
- if (DIBSECTIONFc.cached) return;
- cacheBITMAPFields(env, lpObject);
- DIBSECTIONFc.clazz = (*env)->GetObjectClass(env, lpObject);
- DIBSECTIONFc.biSize = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biSize", "I");
- DIBSECTIONFc.biWidth = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biWidth", "I");
- DIBSECTIONFc.biHeight = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biHeight", "I");
- DIBSECTIONFc.biPlanes = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biPlanes", "S");
- DIBSECTIONFc.biBitCount = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biBitCount", "S");
- DIBSECTIONFc.biCompression = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biCompression", "I");
- DIBSECTIONFc.biSizeImage = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biSizeImage", "I");
- DIBSECTIONFc.biXPelsPerMeter = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biXPelsPerMeter", "I");
- DIBSECTIONFc.biYPelsPerMeter = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biYPelsPerMeter", "I");
- DIBSECTIONFc.biClrUsed = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biClrUsed", "I");
- DIBSECTIONFc.biClrImportant = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biClrImportant", "I");
- DIBSECTIONFc.dsBitfields0 = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dsBitfields0", "I");
- DIBSECTIONFc.dsBitfields1 = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dsBitfields1", "I");
- DIBSECTIONFc.dsBitfields2 = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dsBitfields2", "I");
- DIBSECTIONFc.dshSection = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dshSection", "I");
- DIBSECTIONFc.dsOffset = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dsOffset", "I");
- DIBSECTIONFc.cached = 1;
-}
-
-DIBSECTION *getDIBSECTIONFields(JNIEnv *env, jobject lpObject, DIBSECTION *lpStruct)
-{
- if (!DIBSECTIONFc.cached) cacheDIBSECTIONFields(env, lpObject);
- getBITMAPFields(env, lpObject, (BITMAP *)lpStruct);
- lpStruct->dsBmih.biSize = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biSize);
- lpStruct->dsBmih.biWidth = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biWidth);
- lpStruct->dsBmih.biHeight = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biHeight);
- lpStruct->dsBmih.biPlanes = (*env)->GetShortField(env, lpObject, DIBSECTIONFc.biPlanes);
- lpStruct->dsBmih.biBitCount = (*env)->GetShortField(env, lpObject, DIBSECTIONFc.biBitCount);
- lpStruct->dsBmih.biCompression = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biCompression);
- lpStruct->dsBmih.biSizeImage = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biSizeImage);
- lpStruct->dsBmih.biXPelsPerMeter = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biXPelsPerMeter);
- lpStruct->dsBmih.biYPelsPerMeter = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biYPelsPerMeter);
- lpStruct->dsBmih.biClrUsed = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biClrUsed);
- lpStruct->dsBmih.biClrImportant = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biClrImportant);
- lpStruct->dsBitfields[0] = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.dsBitfields0);
- lpStruct->dsBitfields[1] = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.dsBitfields1);
- lpStruct->dsBitfields[2] = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.dsBitfields2);
- lpStruct->dshSection = (HANDLE)(*env)->GetIntField(env, lpObject, DIBSECTIONFc.dshSection);
- lpStruct->dsOffset = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.dsOffset);
- return lpStruct;
-}
-
-void setDIBSECTIONFields(JNIEnv *env, jobject lpObject, DIBSECTION *lpStruct)
-{
- if (!DIBSECTIONFc.cached) cacheDIBSECTIONFields(env, lpObject);
- setBITMAPFields(env, lpObject, (BITMAP *)lpStruct);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biSize, (jint)lpStruct->dsBmih.biSize);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biWidth, (jint)lpStruct->dsBmih.biWidth);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biHeight, (jint)lpStruct->dsBmih.biHeight);
- (*env)->SetShortField(env, lpObject, DIBSECTIONFc.biPlanes, (jshort)lpStruct->dsBmih.biPlanes);
- (*env)->SetShortField(env, lpObject, DIBSECTIONFc.biBitCount, (jshort)lpStruct->dsBmih.biBitCount);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biCompression, (jint)lpStruct->dsBmih.biCompression);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biSizeImage, (jint)lpStruct->dsBmih.biSizeImage);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biXPelsPerMeter, (jint)lpStruct->dsBmih.biXPelsPerMeter);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biYPelsPerMeter, (jint)lpStruct->dsBmih.biYPelsPerMeter);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biClrUsed, (jint)lpStruct->dsBmih.biClrUsed);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biClrImportant, (jint)lpStruct->dsBmih.biClrImportant);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dsBitfields0, (jint)lpStruct->dsBitfields[0]);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dsBitfields1, (jint)lpStruct->dsBitfields[1]);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dsBitfields2, (jint)lpStruct->dsBitfields[2]);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dshSection, (jint)lpStruct->dshSection);
- (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dsOffset, (jint)lpStruct->dsOffset);
-}
-#endif
-
-#ifndef NO_DLLVERSIONINFO
-typedef struct DLLVERSIONINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, dwMajorVersion, dwMinorVersion, dwBuildNumber, dwPlatformID;
-} DLLVERSIONINFO_FID_CACHE;
-
-DLLVERSIONINFO_FID_CACHE DLLVERSIONINFOFc;
-
-void cacheDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (DLLVERSIONINFOFc.cached) return;
- DLLVERSIONINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- DLLVERSIONINFOFc.cbSize = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "cbSize", "I");
- DLLVERSIONINFOFc.dwMajorVersion = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "dwMajorVersion", "I");
- DLLVERSIONINFOFc.dwMinorVersion = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "dwMinorVersion", "I");
- DLLVERSIONINFOFc.dwBuildNumber = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "dwBuildNumber", "I");
- DLLVERSIONINFOFc.dwPlatformID = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "dwPlatformID", "I");
- DLLVERSIONINFOFc.cached = 1;
-}
-
-DLLVERSIONINFO *getDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject, DLLVERSIONINFO *lpStruct)
-{
- if (!DLLVERSIONINFOFc.cached) cacheDLLVERSIONINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.cbSize);
- lpStruct->dwMajorVersion = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.dwMajorVersion);
- lpStruct->dwMinorVersion = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.dwMinorVersion);
- lpStruct->dwBuildNumber = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.dwBuildNumber);
- lpStruct->dwPlatformID = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.dwPlatformID);
- return lpStruct;
-}
-
-void setDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject, DLLVERSIONINFO *lpStruct)
-{
- if (!DLLVERSIONINFOFc.cached) cacheDLLVERSIONINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.dwMajorVersion, (jint)lpStruct->dwMajorVersion);
- (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.dwMinorVersion, (jint)lpStruct->dwMinorVersion);
- (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.dwBuildNumber, (jint)lpStruct->dwBuildNumber);
- (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.dwPlatformID, (jint)lpStruct->dwPlatformID);
-}
-#endif
-
-#ifndef NO_DOCINFO
-typedef struct DOCINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, lpszDocName, lpszOutput, lpszDatatype, fwType;
-} DOCINFO_FID_CACHE;
-
-DOCINFO_FID_CACHE DOCINFOFc;
-
-void cacheDOCINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (DOCINFOFc.cached) return;
- DOCINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- DOCINFOFc.cbSize = (*env)->GetFieldID(env, DOCINFOFc.clazz, "cbSize", "I");
- DOCINFOFc.lpszDocName = (*env)->GetFieldID(env, DOCINFOFc.clazz, "lpszDocName", "I");
- DOCINFOFc.lpszOutput = (*env)->GetFieldID(env, DOCINFOFc.clazz, "lpszOutput", "I");
- DOCINFOFc.lpszDatatype = (*env)->GetFieldID(env, DOCINFOFc.clazz, "lpszDatatype", "I");
- DOCINFOFc.fwType = (*env)->GetFieldID(env, DOCINFOFc.clazz, "fwType", "I");
- DOCINFOFc.cached = 1;
-}
-
-DOCINFO *getDOCINFOFields(JNIEnv *env, jobject lpObject, DOCINFO *lpStruct)
-{
- if (!DOCINFOFc.cached) cacheDOCINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, DOCINFOFc.cbSize);
- lpStruct->lpszDocName = (LPCTSTR)(*env)->GetIntField(env, lpObject, DOCINFOFc.lpszDocName);
- lpStruct->lpszOutput = (LPCTSTR)(*env)->GetIntField(env, lpObject, DOCINFOFc.lpszOutput);
- lpStruct->lpszDatatype = (LPCTSTR)(*env)->GetIntField(env, lpObject, DOCINFOFc.lpszDatatype);
- lpStruct->fwType = (*env)->GetIntField(env, lpObject, DOCINFOFc.fwType);
- return lpStruct;
-}
-
-void setDOCINFOFields(JNIEnv *env, jobject lpObject, DOCINFO *lpStruct)
-{
- if (!DOCINFOFc.cached) cacheDOCINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, DOCINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, DOCINFOFc.lpszDocName, (jint)lpStruct->lpszDocName);
- (*env)->SetIntField(env, lpObject, DOCINFOFc.lpszOutput, (jint)lpStruct->lpszOutput);
- (*env)->SetIntField(env, lpObject, DOCINFOFc.lpszDatatype, (jint)lpStruct->lpszDatatype);
- (*env)->SetIntField(env, lpObject, DOCINFOFc.fwType, (jint)lpStruct->fwType);
-}
-#endif
-
-#ifndef NO_DRAWITEMSTRUCT
-typedef struct DRAWITEMSTRUCT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID CtlType, CtlID, itemID, itemAction, itemState, hwndItem, hDC, left, top, bottom, right, itemData;
-} DRAWITEMSTRUCT_FID_CACHE;
-
-DRAWITEMSTRUCT_FID_CACHE DRAWITEMSTRUCTFc;
-
-void cacheDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject)
-{
- if (DRAWITEMSTRUCTFc.cached) return;
- DRAWITEMSTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- DRAWITEMSTRUCTFc.CtlType = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "CtlType", "I");
- DRAWITEMSTRUCTFc.CtlID = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "CtlID", "I");
- DRAWITEMSTRUCTFc.itemID = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "itemID", "I");
- DRAWITEMSTRUCTFc.itemAction = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "itemAction", "I");
- DRAWITEMSTRUCTFc.itemState = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "itemState", "I");
- DRAWITEMSTRUCTFc.hwndItem = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "hwndItem", "I");
- DRAWITEMSTRUCTFc.hDC = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "hDC", "I");
- DRAWITEMSTRUCTFc.left = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "left", "I");
- DRAWITEMSTRUCTFc.top = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "top", "I");
- DRAWITEMSTRUCTFc.bottom = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "bottom", "I");
- DRAWITEMSTRUCTFc.right = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "right", "I");
- DRAWITEMSTRUCTFc.itemData = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "itemData", "I");
- DRAWITEMSTRUCTFc.cached = 1;
-}
-
-DRAWITEMSTRUCT *getDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject, DRAWITEMSTRUCT *lpStruct)
-{
- if (!DRAWITEMSTRUCTFc.cached) cacheDRAWITEMSTRUCTFields(env, lpObject);
- lpStruct->CtlType = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.CtlType);
- lpStruct->CtlID = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.CtlID);
- lpStruct->itemID = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemID);
- lpStruct->itemAction = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemAction);
- lpStruct->itemState = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemState);
- lpStruct->hwndItem = (HWND)(*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.hwndItem);
- lpStruct->hDC = (HDC)(*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.hDC);
- lpStruct->rcItem.left = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.left);
- lpStruct->rcItem.top = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.top);
- lpStruct->rcItem.bottom = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.bottom);
- lpStruct->rcItem.right = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.right);
- lpStruct->itemData = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemData);
- return lpStruct;
-}
-
-void setDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject, DRAWITEMSTRUCT *lpStruct)
-{
- if (!DRAWITEMSTRUCTFc.cached) cacheDRAWITEMSTRUCTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.CtlType, (jint)lpStruct->CtlType);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.CtlID, (jint)lpStruct->CtlID);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemID, (jint)lpStruct->itemID);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemAction, (jint)lpStruct->itemAction);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemState, (jint)lpStruct->itemState);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.hwndItem, (jint)lpStruct->hwndItem);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.hDC, (jint)lpStruct->hDC);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.left, (jint)lpStruct->rcItem.left);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.top, (jint)lpStruct->rcItem.top);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.bottom, (jint)lpStruct->rcItem.bottom);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.right, (jint)lpStruct->rcItem.right);
- (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemData, (jint)lpStruct->itemData);
-}
-#endif
-
-#ifndef NO_DROPFILES
-typedef struct DROPFILES_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID pFiles, pt_x, pt_y, fNC, fWide;
-} DROPFILES_FID_CACHE;
-
-DROPFILES_FID_CACHE DROPFILESFc;
-
-void cacheDROPFILESFields(JNIEnv *env, jobject lpObject)
-{
- if (DROPFILESFc.cached) return;
- DROPFILESFc.clazz = (*env)->GetObjectClass(env, lpObject);
- DROPFILESFc.pFiles = (*env)->GetFieldID(env, DROPFILESFc.clazz, "pFiles", "I");
- DROPFILESFc.pt_x = (*env)->GetFieldID(env, DROPFILESFc.clazz, "pt_x", "I");
- DROPFILESFc.pt_y = (*env)->GetFieldID(env, DROPFILESFc.clazz, "pt_y", "I");
- DROPFILESFc.fNC = (*env)->GetFieldID(env, DROPFILESFc.clazz, "fNC", "I");
- DROPFILESFc.fWide = (*env)->GetFieldID(env, DROPFILESFc.clazz, "fWide", "I");
- DROPFILESFc.cached = 1;
-}
-
-DROPFILES *getDROPFILESFields(JNIEnv *env, jobject lpObject, DROPFILES *lpStruct)
-{
- if (!DROPFILESFc.cached) cacheDROPFILESFields(env, lpObject);
- lpStruct->pFiles = (*env)->GetIntField(env, lpObject, DROPFILESFc.pFiles);
- lpStruct->pt.x = (*env)->GetIntField(env, lpObject, DROPFILESFc.pt_x);
- lpStruct->pt.y = (*env)->GetIntField(env, lpObject, DROPFILESFc.pt_y);
- lpStruct->fNC = (*env)->GetIntField(env, lpObject, DROPFILESFc.fNC);
- lpStruct->fWide = (*env)->GetIntField(env, lpObject, DROPFILESFc.fWide);
- return lpStruct;
-}
-
-void setDROPFILESFields(JNIEnv *env, jobject lpObject, DROPFILES *lpStruct)
-{
- if (!DROPFILESFc.cached) cacheDROPFILESFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, DROPFILESFc.pFiles, (jint)lpStruct->pFiles);
- (*env)->SetIntField(env, lpObject, DROPFILESFc.pt_x, (jint)lpStruct->pt.x);
- (*env)->SetIntField(env, lpObject, DROPFILESFc.pt_y, (jint)lpStruct->pt.y);
- (*env)->SetIntField(env, lpObject, DROPFILESFc.fNC, (jint)lpStruct->fNC);
- (*env)->SetIntField(env, lpObject, DROPFILESFc.fWide, (jint)lpStruct->fWide);
-}
-#endif
-
-#ifndef NO_FILETIME
-typedef struct FILETIME_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID dwLowDateTime, dwHighDateTime;
-} FILETIME_FID_CACHE;
-
-FILETIME_FID_CACHE FILETIMEFc;
-
-void cacheFILETIMEFields(JNIEnv *env, jobject lpObject)
-{
- if (FILETIMEFc.cached) return;
- FILETIMEFc.clazz = (*env)->GetObjectClass(env, lpObject);
- FILETIMEFc.dwLowDateTime = (*env)->GetFieldID(env, FILETIMEFc.clazz, "dwLowDateTime", "I");
- FILETIMEFc.dwHighDateTime = (*env)->GetFieldID(env, FILETIMEFc.clazz, "dwHighDateTime", "I");
- FILETIMEFc.cached = 1;
-}
-
-FILETIME *getFILETIMEFields(JNIEnv *env, jobject lpObject, FILETIME *lpStruct)
-{
- if (!FILETIMEFc.cached) cacheFILETIMEFields(env, lpObject);
- lpStruct->dwLowDateTime = (*env)->GetIntField(env, lpObject, FILETIMEFc.dwLowDateTime);
- lpStruct->dwHighDateTime = (*env)->GetIntField(env, lpObject, FILETIMEFc.dwHighDateTime);
- return lpStruct;
-}
-
-void setFILETIMEFields(JNIEnv *env, jobject lpObject, FILETIME *lpStruct)
-{
- if (!FILETIMEFc.cached) cacheFILETIMEFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, FILETIMEFc.dwLowDateTime, (jint)lpStruct->dwLowDateTime);
- (*env)->SetIntField(env, lpObject, FILETIMEFc.dwHighDateTime, (jint)lpStruct->dwHighDateTime);
-}
-#endif
-
-#ifndef NO_GCP_RESULTS
-typedef struct GCP_RESULTS_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lStructSize, lpOutString, lpOrder, lpDx, lpCaretPos, lpClass, lpGlyphs, nGlyphs, nMaxFit;
-} GCP_RESULTS_FID_CACHE;
-
-GCP_RESULTS_FID_CACHE GCP_RESULTSFc;
-
-void cacheGCP_RESULTSFields(JNIEnv *env, jobject lpObject)
-{
- if (GCP_RESULTSFc.cached) return;
- GCP_RESULTSFc.clazz = (*env)->GetObjectClass(env, lpObject);
- GCP_RESULTSFc.lStructSize = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lStructSize", "I");
- GCP_RESULTSFc.lpOutString = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpOutString", "I");
- GCP_RESULTSFc.lpOrder = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpOrder", "I");
- GCP_RESULTSFc.lpDx = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpDx", "I");
- GCP_RESULTSFc.lpCaretPos = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpCaretPos", "I");
- GCP_RESULTSFc.lpClass = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpClass", "I");
- GCP_RESULTSFc.lpGlyphs = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpGlyphs", "I");
- GCP_RESULTSFc.nGlyphs = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "nGlyphs", "I");
- GCP_RESULTSFc.nMaxFit = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "nMaxFit", "I");
- GCP_RESULTSFc.cached = 1;
-}
-
-GCP_RESULTS *getGCP_RESULTSFields(JNIEnv *env, jobject lpObject, GCP_RESULTS *lpStruct)
-{
- if (!GCP_RESULTSFc.cached) cacheGCP_RESULTSFields(env, lpObject);
- lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lStructSize);
- lpStruct->lpOutString = (LPTSTR)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpOutString);
- lpStruct->lpOrder = (UINT *)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpOrder);
- lpStruct->lpDx = (int *)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpDx);
- lpStruct->lpCaretPos = (int *)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpCaretPos);
- lpStruct->lpClass = (LPSTR)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpClass);
- lpStruct->lpGlyphs = (LPWSTR)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpGlyphs);
- lpStruct->nGlyphs = (*env)->GetIntField(env, lpObject, GCP_RESULTSFc.nGlyphs);
- lpStruct->nMaxFit = (*env)->GetIntField(env, lpObject, GCP_RESULTSFc.nMaxFit);
- return lpStruct;
-}
-
-void setGCP_RESULTSFields(JNIEnv *env, jobject lpObject, GCP_RESULTS *lpStruct)
-{
- if (!GCP_RESULTSFc.cached) cacheGCP_RESULTSFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lStructSize, (jint)lpStruct->lStructSize);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpOutString, (jint)lpStruct->lpOutString);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpOrder, (jint)lpStruct->lpOrder);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpDx, (jint)lpStruct->lpDx);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpCaretPos, (jint)lpStruct->lpCaretPos);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpClass, (jint)lpStruct->lpClass);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpGlyphs, (jint)lpStruct->lpGlyphs);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.nGlyphs, (jint)lpStruct->nGlyphs);
- (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.nMaxFit, (jint)lpStruct->nMaxFit);
-}
-#endif
-
-#ifndef NO_GRADIENT_RECT
-typedef struct GRADIENT_RECT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID UpperLeft, LowerRight;
-} GRADIENT_RECT_FID_CACHE;
-
-GRADIENT_RECT_FID_CACHE GRADIENT_RECTFc;
-
-void cacheGRADIENT_RECTFields(JNIEnv *env, jobject lpObject)
-{
- if (GRADIENT_RECTFc.cached) return;
- GRADIENT_RECTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- GRADIENT_RECTFc.UpperLeft = (*env)->GetFieldID(env, GRADIENT_RECTFc.clazz, "UpperLeft", "I");
- GRADIENT_RECTFc.LowerRight = (*env)->GetFieldID(env, GRADIENT_RECTFc.clazz, "LowerRight", "I");
- GRADIENT_RECTFc.cached = 1;
-}
-
-GRADIENT_RECT *getGRADIENT_RECTFields(JNIEnv *env, jobject lpObject, GRADIENT_RECT *lpStruct)
-{
- if (!GRADIENT_RECTFc.cached) cacheGRADIENT_RECTFields(env, lpObject);
- lpStruct->UpperLeft = (*env)->GetIntField(env, lpObject, GRADIENT_RECTFc.UpperLeft);
- lpStruct->LowerRight = (*env)->GetIntField(env, lpObject, GRADIENT_RECTFc.LowerRight);
- return lpStruct;
-}
-
-void setGRADIENT_RECTFields(JNIEnv *env, jobject lpObject, GRADIENT_RECT *lpStruct)
-{
- if (!GRADIENT_RECTFc.cached) cacheGRADIENT_RECTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, GRADIENT_RECTFc.UpperLeft, (jint)lpStruct->UpperLeft);
- (*env)->SetIntField(env, lpObject, GRADIENT_RECTFc.LowerRight, (jint)lpStruct->LowerRight);
-}
-#endif
-
-#ifndef NO_HDITEM
-typedef struct HDITEM_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID mask, cxy, pszText, hbm, cchTextMax, fmt, lParam, iImage, iOrder;
-} HDITEM_FID_CACHE;
-
-HDITEM_FID_CACHE HDITEMFc;
-
-void cacheHDITEMFields(JNIEnv *env, jobject lpObject)
-{
- if (HDITEMFc.cached) return;
- HDITEMFc.clazz = (*env)->GetObjectClass(env, lpObject);
- HDITEMFc.mask = (*env)->GetFieldID(env, HDITEMFc.clazz, "mask", "I");
- HDITEMFc.cxy = (*env)->GetFieldID(env, HDITEMFc.clazz, "cxy", "I");
- HDITEMFc.pszText = (*env)->GetFieldID(env, HDITEMFc.clazz, "pszText", "I");
- HDITEMFc.hbm = (*env)->GetFieldID(env, HDITEMFc.clazz, "hbm", "I");
- HDITEMFc.cchTextMax = (*env)->GetFieldID(env, HDITEMFc.clazz, "cchTextMax", "I");
- HDITEMFc.fmt = (*env)->GetFieldID(env, HDITEMFc.clazz, "fmt", "I");
- HDITEMFc.lParam = (*env)->GetFieldID(env, HDITEMFc.clazz, "lParam", "I");
- HDITEMFc.iImage = (*env)->GetFieldID(env, HDITEMFc.clazz, "iImage", "I");
- HDITEMFc.iOrder = (*env)->GetFieldID(env, HDITEMFc.clazz, "iOrder", "I");
- HDITEMFc.cached = 1;
-}
-
-HDITEM *getHDITEMFields(JNIEnv *env, jobject lpObject, HDITEM *lpStruct)
-{
- if (!HDITEMFc.cached) cacheHDITEMFields(env, lpObject);
- lpStruct->mask = (*env)->GetIntField(env, lpObject, HDITEMFc.mask);
- lpStruct->cxy = (*env)->GetIntField(env, lpObject, HDITEMFc.cxy);
- lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, HDITEMFc.pszText);
- lpStruct->hbm = (HBITMAP)(*env)->GetIntField(env, lpObject, HDITEMFc.hbm);
- lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, HDITEMFc.cchTextMax);
- lpStruct->fmt = (*env)->GetIntField(env, lpObject, HDITEMFc.fmt);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, HDITEMFc.lParam);
- lpStruct->iImage = (*env)->GetIntField(env, lpObject, HDITEMFc.iImage);
- lpStruct->iOrder = (*env)->GetIntField(env, lpObject, HDITEMFc.iOrder);
- return lpStruct;
-}
-
-void setHDITEMFields(JNIEnv *env, jobject lpObject, HDITEM *lpStruct)
-{
- if (!HDITEMFc.cached) cacheHDITEMFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, HDITEMFc.mask, (jint)lpStruct->mask);
- (*env)->SetIntField(env, lpObject, HDITEMFc.cxy, (jint)lpStruct->cxy);
- (*env)->SetIntField(env, lpObject, HDITEMFc.pszText, (jint)lpStruct->pszText);
- (*env)->SetIntField(env, lpObject, HDITEMFc.hbm, (jint)lpStruct->hbm);
- (*env)->SetIntField(env, lpObject, HDITEMFc.cchTextMax, (jint)lpStruct->cchTextMax);
- (*env)->SetIntField(env, lpObject, HDITEMFc.fmt, (jint)lpStruct->fmt);
- (*env)->SetIntField(env, lpObject, HDITEMFc.lParam, (jint)lpStruct->lParam);
- (*env)->SetIntField(env, lpObject, HDITEMFc.iImage, (jint)lpStruct->iImage);
- (*env)->SetIntField(env, lpObject, HDITEMFc.iOrder, (jint)lpStruct->iOrder);
-}
-#endif
-
-#ifndef NO_HELPINFO
-typedef struct HELPINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, iContextType, iCtrlId, hItemHandle, dwContextId, x, y;
-} HELPINFO_FID_CACHE;
-
-HELPINFO_FID_CACHE HELPINFOFc;
-
-void cacheHELPINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (HELPINFOFc.cached) return;
- HELPINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- HELPINFOFc.cbSize = (*env)->GetFieldID(env, HELPINFOFc.clazz, "cbSize", "I");
- HELPINFOFc.iContextType = (*env)->GetFieldID(env, HELPINFOFc.clazz, "iContextType", "I");
- HELPINFOFc.iCtrlId = (*env)->GetFieldID(env, HELPINFOFc.clazz, "iCtrlId", "I");
- HELPINFOFc.hItemHandle = (*env)->GetFieldID(env, HELPINFOFc.clazz, "hItemHandle", "I");
- HELPINFOFc.dwContextId = (*env)->GetFieldID(env, HELPINFOFc.clazz, "dwContextId", "I");
- HELPINFOFc.x = (*env)->GetFieldID(env, HELPINFOFc.clazz, "x", "I");
- HELPINFOFc.y = (*env)->GetFieldID(env, HELPINFOFc.clazz, "y", "I");
- HELPINFOFc.cached = 1;
-}
-
-HELPINFO *getHELPINFOFields(JNIEnv *env, jobject lpObject, HELPINFO *lpStruct)
-{
- if (!HELPINFOFc.cached) cacheHELPINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, HELPINFOFc.cbSize);
- lpStruct->iContextType = (*env)->GetIntField(env, lpObject, HELPINFOFc.iContextType);
- lpStruct->iCtrlId = (*env)->GetIntField(env, lpObject, HELPINFOFc.iCtrlId);
- lpStruct->hItemHandle = (HANDLE)(*env)->GetIntField(env, lpObject, HELPINFOFc.hItemHandle);
- lpStruct->dwContextId = (*env)->GetIntField(env, lpObject, HELPINFOFc.dwContextId);
- lpStruct->MousePos.x = (*env)->GetIntField(env, lpObject, HELPINFOFc.x);
- lpStruct->MousePos.y = (*env)->GetIntField(env, lpObject, HELPINFOFc.y);
- return lpStruct;
-}
-
-void setHELPINFOFields(JNIEnv *env, jobject lpObject, HELPINFO *lpStruct)
-{
- if (!HELPINFOFc.cached) cacheHELPINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, HELPINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, HELPINFOFc.iContextType, (jint)lpStruct->iContextType);
- (*env)->SetIntField(env, lpObject, HELPINFOFc.iCtrlId, (jint)lpStruct->iCtrlId);
- (*env)->SetIntField(env, lpObject, HELPINFOFc.hItemHandle, (jint)lpStruct->hItemHandle);
- (*env)->SetIntField(env, lpObject, HELPINFOFc.dwContextId, (jint)lpStruct->dwContextId);
- (*env)->SetIntField(env, lpObject, HELPINFOFc.x, (jint)lpStruct->MousePos.x);
- (*env)->SetIntField(env, lpObject, HELPINFOFc.y, (jint)lpStruct->MousePos.y);
-}
-#endif
-
-#ifndef NO_ICONINFO
-typedef struct ICONINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID fIcon, xHotspot, yHotspot, hbmMask, hbmColor;
-} ICONINFO_FID_CACHE;
-
-ICONINFO_FID_CACHE ICONINFOFc;
-
-void cacheICONINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (ICONINFOFc.cached) return;
- ICONINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- ICONINFOFc.fIcon = (*env)->GetFieldID(env, ICONINFOFc.clazz, "fIcon", "Z");
- ICONINFOFc.xHotspot = (*env)->GetFieldID(env, ICONINFOFc.clazz, "xHotspot", "I");
- ICONINFOFc.yHotspot = (*env)->GetFieldID(env, ICONINFOFc.clazz, "yHotspot", "I");
- ICONINFOFc.hbmMask = (*env)->GetFieldID(env, ICONINFOFc.clazz, "hbmMask", "I");
- ICONINFOFc.hbmColor = (*env)->GetFieldID(env, ICONINFOFc.clazz, "hbmColor", "I");
- ICONINFOFc.cached = 1;
-}
-
-ICONINFO *getICONINFOFields(JNIEnv *env, jobject lpObject, ICONINFO *lpStruct)
-{
- if (!ICONINFOFc.cached) cacheICONINFOFields(env, lpObject);
- lpStruct->fIcon = (*env)->GetBooleanField(env, lpObject, ICONINFOFc.fIcon);
- lpStruct->xHotspot = (*env)->GetIntField(env, lpObject, ICONINFOFc.xHotspot);
- lpStruct->yHotspot = (*env)->GetIntField(env, lpObject, ICONINFOFc.yHotspot);
- lpStruct->hbmMask = (HBITMAP)(*env)->GetIntField(env, lpObject, ICONINFOFc.hbmMask);
- lpStruct->hbmColor = (HBITMAP)(*env)->GetIntField(env, lpObject, ICONINFOFc.hbmColor);
- return lpStruct;
-}
-
-void setICONINFOFields(JNIEnv *env, jobject lpObject, ICONINFO *lpStruct)
-{
- if (!ICONINFOFc.cached) cacheICONINFOFields(env, lpObject);
- (*env)->SetBooleanField(env, lpObject, ICONINFOFc.fIcon, (jboolean)lpStruct->fIcon);
- (*env)->SetIntField(env, lpObject, ICONINFOFc.xHotspot, (jint)lpStruct->xHotspot);
- (*env)->SetIntField(env, lpObject, ICONINFOFc.yHotspot, (jint)lpStruct->yHotspot);
- (*env)->SetIntField(env, lpObject, ICONINFOFc.hbmMask, (jint)lpStruct->hbmMask);
- (*env)->SetIntField(env, lpObject, ICONINFOFc.hbmColor, (jint)lpStruct->hbmColor);
-}
-#endif
-
-#ifndef NO_INITCOMMONCONTROLSEX
-typedef struct INITCOMMONCONTROLSEX_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID dwSize, dwICC;
-} INITCOMMONCONTROLSEX_FID_CACHE;
-
-INITCOMMONCONTROLSEX_FID_CACHE INITCOMMONCONTROLSEXFc;
-
-void cacheINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject)
-{
- if (INITCOMMONCONTROLSEXFc.cached) return;
- INITCOMMONCONTROLSEXFc.clazz = (*env)->GetObjectClass(env, lpObject);
- INITCOMMONCONTROLSEXFc.dwSize = (*env)->GetFieldID(env, INITCOMMONCONTROLSEXFc.clazz, "dwSize", "I");
- INITCOMMONCONTROLSEXFc.dwICC = (*env)->GetFieldID(env, INITCOMMONCONTROLSEXFc.clazz, "dwICC", "I");
- INITCOMMONCONTROLSEXFc.cached = 1;
-}
-
-INITCOMMONCONTROLSEX *getINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject, INITCOMMONCONTROLSEX *lpStruct)
-{
- if (!INITCOMMONCONTROLSEXFc.cached) cacheINITCOMMONCONTROLSEXFields(env, lpObject);
- lpStruct->dwSize = (*env)->GetIntField(env, lpObject, INITCOMMONCONTROLSEXFc.dwSize);
- lpStruct->dwICC = (*env)->GetIntField(env, lpObject, INITCOMMONCONTROLSEXFc.dwICC);
- return lpStruct;
-}
-
-void setINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject, INITCOMMONCONTROLSEX *lpStruct)
-{
- if (!INITCOMMONCONTROLSEXFc.cached) cacheINITCOMMONCONTROLSEXFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, INITCOMMONCONTROLSEXFc.dwSize, (jint)lpStruct->dwSize);
- (*env)->SetIntField(env, lpObject, INITCOMMONCONTROLSEXFc.dwICC, (jint)lpStruct->dwICC);
-}
-#endif
-
-#ifndef NO_LOGBRUSH
-typedef struct LOGBRUSH_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lbStyle, lbColor, lbHatch;
-} LOGBRUSH_FID_CACHE;
-
-LOGBRUSH_FID_CACHE LOGBRUSHFc;
-
-void cacheLOGBRUSHFields(JNIEnv *env, jobject lpObject)
-{
- if (LOGBRUSHFc.cached) return;
- LOGBRUSHFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LOGBRUSHFc.lbStyle = (*env)->GetFieldID(env, LOGBRUSHFc.clazz, "lbStyle", "I");
- LOGBRUSHFc.lbColor = (*env)->GetFieldID(env, LOGBRUSHFc.clazz, "lbColor", "I");
- LOGBRUSHFc.lbHatch = (*env)->GetFieldID(env, LOGBRUSHFc.clazz, "lbHatch", "I");
- LOGBRUSHFc.cached = 1;
-}
-
-LOGBRUSH *getLOGBRUSHFields(JNIEnv *env, jobject lpObject, LOGBRUSH *lpStruct)
-{
- if (!LOGBRUSHFc.cached) cacheLOGBRUSHFields(env, lpObject);
- lpStruct->lbStyle = (*env)->GetIntField(env, lpObject, LOGBRUSHFc.lbStyle);
- lpStruct->lbColor = (*env)->GetIntField(env, lpObject, LOGBRUSHFc.lbColor);
- lpStruct->lbHatch = (*env)->GetIntField(env, lpObject, LOGBRUSHFc.lbHatch);
- return lpStruct;
-}
-
-void setLOGBRUSHFields(JNIEnv *env, jobject lpObject, LOGBRUSH *lpStruct)
-{
- if (!LOGBRUSHFc.cached) cacheLOGBRUSHFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, LOGBRUSHFc.lbStyle, (jint)lpStruct->lbStyle);
- (*env)->SetIntField(env, lpObject, LOGBRUSHFc.lbColor, (jint)lpStruct->lbColor);
- (*env)->SetIntField(env, lpObject, LOGBRUSHFc.lbHatch, (jint)lpStruct->lbHatch);
-}
-#endif
-
-#ifndef NO_LOGFONT
-typedef struct LOGFONT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lfHeight, lfWidth, lfEscapement, lfOrientation, lfWeight, lfItalic, lfUnderline, lfStrikeOut, lfCharSet, lfOutPrecision, lfClipPrecision, lfQuality, lfPitchAndFamily;
-} LOGFONT_FID_CACHE;
-
-LOGFONT_FID_CACHE LOGFONTFc;
-
-void cacheLOGFONTFields(JNIEnv *env, jobject lpObject)
-{
- if (LOGFONTFc.cached) return;
- LOGFONTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LOGFONTFc.lfHeight = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfHeight", "I");
- LOGFONTFc.lfWidth = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfWidth", "I");
- LOGFONTFc.lfEscapement = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfEscapement", "I");
- LOGFONTFc.lfOrientation = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfOrientation", "I");
- LOGFONTFc.lfWeight = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfWeight", "I");
- LOGFONTFc.lfItalic = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfItalic", "B");
- LOGFONTFc.lfUnderline = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfUnderline", "B");
- LOGFONTFc.lfStrikeOut = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfStrikeOut", "B");
- LOGFONTFc.lfCharSet = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfCharSet", "B");
- LOGFONTFc.lfOutPrecision = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfOutPrecision", "B");
- LOGFONTFc.lfClipPrecision = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfClipPrecision", "B");
- LOGFONTFc.lfQuality = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfQuality", "B");
- LOGFONTFc.lfPitchAndFamily = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfPitchAndFamily", "B");
- LOGFONTFc.cached = 1;
-}
-
-LOGFONT *getLOGFONTFields(JNIEnv *env, jobject lpObject, LOGFONT *lpStruct)
-{
- if (!LOGFONTFc.cached) cacheLOGFONTFields(env, lpObject);
- lpStruct->lfHeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfHeight);
- lpStruct->lfWidth = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWidth);
- lpStruct->lfEscapement = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfEscapement);
- lpStruct->lfOrientation = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfOrientation);
- lpStruct->lfWeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWeight);
- lpStruct->lfItalic = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfItalic);
- lpStruct->lfUnderline = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfUnderline);
- lpStruct->lfStrikeOut = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfStrikeOut);
- lpStruct->lfCharSet = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfCharSet);
- lpStruct->lfOutPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfOutPrecision);
- lpStruct->lfClipPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfClipPrecision);
- lpStruct->lfQuality = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfQuality);
- lpStruct->lfPitchAndFamily = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily);
- return lpStruct;
-}
-
-void setLOGFONTFields(JNIEnv *env, jobject lpObject, LOGFONT *lpStruct)
-{
- if (!LOGFONTFc.cached) cacheLOGFONTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfHeight, (jint)lpStruct->lfHeight);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWidth, (jint)lpStruct->lfWidth);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfEscapement, (jint)lpStruct->lfEscapement);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfOrientation, (jint)lpStruct->lfOrientation);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWeight, (jint)lpStruct->lfWeight);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfItalic, (jbyte)lpStruct->lfItalic);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfUnderline, (jbyte)lpStruct->lfUnderline);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfStrikeOut, (jbyte)lpStruct->lfStrikeOut);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfCharSet, (jbyte)lpStruct->lfCharSet);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfOutPrecision, (jbyte)lpStruct->lfOutPrecision);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfClipPrecision, (jbyte)lpStruct->lfClipPrecision);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfQuality, (jbyte)lpStruct->lfQuality);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily, (jbyte)lpStruct->lfPitchAndFamily);
-}
-#endif
-
-#ifndef NO_LOGFONTA
-typedef struct LOGFONTA_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lfFaceName;
-} LOGFONTA_FID_CACHE;
-
-LOGFONTA_FID_CACHE LOGFONTAFc;
-
-void cacheLOGFONTAFields(JNIEnv *env, jobject lpObject)
-{
- if (LOGFONTAFc.cached) return;
- cacheLOGFONTFields(env, lpObject);
- LOGFONTAFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LOGFONTAFc.lfFaceName = (*env)->GetFieldID(env, LOGFONTAFc.clazz, "lfFaceName", "[B");
- LOGFONTAFc.cached = 1;
-}
-
-LOGFONTA *getLOGFONTAFields(JNIEnv *env, jobject lpObject, LOGFONTA *lpStruct)
-{
- if (!LOGFONTAFc.cached) cacheLOGFONTAFields(env, lpObject);
- lpStruct->lfHeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfHeight);
- lpStruct->lfWidth = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWidth);
- lpStruct->lfEscapement = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfEscapement);
- lpStruct->lfOrientation = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfOrientation);
- lpStruct->lfWeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWeight);
- lpStruct->lfItalic = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfItalic);
- lpStruct->lfUnderline = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfUnderline);
- lpStruct->lfStrikeOut = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfStrikeOut);
- lpStruct->lfCharSet = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfCharSet);
- lpStruct->lfOutPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfOutPrecision);
- lpStruct->lfClipPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfClipPrecision);
- lpStruct->lfQuality = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfQuality);
- lpStruct->lfPitchAndFamily = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily);
- {
- jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, LOGFONTAFc.lfFaceName);
- (*env)->GetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->lfFaceName), (void *)lpStruct->lfFaceName);
- }
- return lpStruct;
-}
-
-void setLOGFONTAFields(JNIEnv *env, jobject lpObject, LOGFONTA *lpStruct)
-{
- if (!LOGFONTAFc.cached) cacheLOGFONTAFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfHeight, (jint)lpStruct->lfHeight);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWidth, (jint)lpStruct->lfWidth);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfEscapement, (jint)lpStruct->lfEscapement);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfOrientation, (jint)lpStruct->lfOrientation);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWeight, (jint)lpStruct->lfWeight);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfItalic, (jbyte)lpStruct->lfItalic);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfUnderline, (jbyte)lpStruct->lfUnderline);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfStrikeOut, (jbyte)lpStruct->lfStrikeOut);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfCharSet, (jbyte)lpStruct->lfCharSet);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfOutPrecision, (jbyte)lpStruct->lfOutPrecision);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfClipPrecision, (jbyte)lpStruct->lfClipPrecision);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfQuality, (jbyte)lpStruct->lfQuality);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily, (jbyte)lpStruct->lfPitchAndFamily);
- {
- jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, LOGFONTAFc.lfFaceName);
- (*env)->SetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->lfFaceName), (void *)lpStruct->lfFaceName);
- }
-}
-#endif
-
-#ifndef NO_LOGFONTW
-typedef struct LOGFONTW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lfFaceName;
-} LOGFONTW_FID_CACHE;
-
-LOGFONTW_FID_CACHE LOGFONTWFc;
-
-void cacheLOGFONTWFields(JNIEnv *env, jobject lpObject)
-{
- if (LOGFONTWFc.cached) return;
- cacheLOGFONTFields(env, lpObject);
- LOGFONTWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LOGFONTWFc.lfFaceName = (*env)->GetFieldID(env, LOGFONTWFc.clazz, "lfFaceName", "[C");
- LOGFONTWFc.cached = 1;
-}
-
-LOGFONTW *getLOGFONTWFields(JNIEnv *env, jobject lpObject, LOGFONTW *lpStruct)
-{
- if (!LOGFONTWFc.cached) cacheLOGFONTWFields(env, lpObject);
- lpStruct->lfHeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfHeight);
- lpStruct->lfWidth = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWidth);
- lpStruct->lfEscapement = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfEscapement);
- lpStruct->lfOrientation = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfOrientation);
- lpStruct->lfWeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWeight);
- lpStruct->lfItalic = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfItalic);
- lpStruct->lfUnderline = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfUnderline);
- lpStruct->lfStrikeOut = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfStrikeOut);
- lpStruct->lfCharSet = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfCharSet);
- lpStruct->lfOutPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfOutPrecision);
- lpStruct->lfClipPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfClipPrecision);
- lpStruct->lfQuality = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfQuality);
- lpStruct->lfPitchAndFamily = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily);
- {
- jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, LOGFONTWFc.lfFaceName);
- (*env)->GetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->lfFaceName) / 2, (void *)lpStruct->lfFaceName);
- }
- return lpStruct;
-}
-
-void setLOGFONTWFields(JNIEnv *env, jobject lpObject, LOGFONTW *lpStruct)
-{
- if (!LOGFONTWFc.cached) cacheLOGFONTWFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfHeight, (jint)lpStruct->lfHeight);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWidth, (jint)lpStruct->lfWidth);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfEscapement, (jint)lpStruct->lfEscapement);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfOrientation, (jint)lpStruct->lfOrientation);
- (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWeight, (jint)lpStruct->lfWeight);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfItalic, (jbyte)lpStruct->lfItalic);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfUnderline, (jbyte)lpStruct->lfUnderline);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfStrikeOut, (jbyte)lpStruct->lfStrikeOut);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfCharSet, (jbyte)lpStruct->lfCharSet);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfOutPrecision, (jbyte)lpStruct->lfOutPrecision);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfClipPrecision, (jbyte)lpStruct->lfClipPrecision);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfQuality, (jbyte)lpStruct->lfQuality);
- (*env)->SetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily, (jbyte)lpStruct->lfPitchAndFamily);
- {
- jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, LOGFONTWFc.lfFaceName);
- (*env)->SetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->lfFaceName) / 2, (void *)lpStruct->lfFaceName);
- }
-}
-#endif
-
-#ifndef NO_LOGPEN
-typedef struct LOGPEN_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lopnStyle, x, y, lopnColor;
-} LOGPEN_FID_CACHE;
-
-LOGPEN_FID_CACHE LOGPENFc;
-
-void cacheLOGPENFields(JNIEnv *env, jobject lpObject)
-{
- if (LOGPENFc.cached) return;
- LOGPENFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LOGPENFc.lopnStyle = (*env)->GetFieldID(env, LOGPENFc.clazz, "lopnStyle", "I");
- LOGPENFc.x = (*env)->GetFieldID(env, LOGPENFc.clazz, "x", "I");
- LOGPENFc.y = (*env)->GetFieldID(env, LOGPENFc.clazz, "y", "I");
- LOGPENFc.lopnColor = (*env)->GetFieldID(env, LOGPENFc.clazz, "lopnColor", "I");
- LOGPENFc.cached = 1;
-}
-
-LOGPEN *getLOGPENFields(JNIEnv *env, jobject lpObject, LOGPEN *lpStruct)
-{
- if (!LOGPENFc.cached) cacheLOGPENFields(env, lpObject);
- lpStruct->lopnStyle = (*env)->GetIntField(env, lpObject, LOGPENFc.lopnStyle);
- lpStruct->lopnWidth.x = (*env)->GetIntField(env, lpObject, LOGPENFc.x);
- lpStruct->lopnWidth.y = (*env)->GetIntField(env, lpObject, LOGPENFc.y);
- lpStruct->lopnColor = (*env)->GetIntField(env, lpObject, LOGPENFc.lopnColor);
- return lpStruct;
-}
-
-void setLOGPENFields(JNIEnv *env, jobject lpObject, LOGPEN *lpStruct)
-{
- if (!LOGPENFc.cached) cacheLOGPENFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, LOGPENFc.lopnStyle, (jint)lpStruct->lopnStyle);
- (*env)->SetIntField(env, lpObject, LOGPENFc.x, (jint)lpStruct->lopnWidth.x);
- (*env)->SetIntField(env, lpObject, LOGPENFc.y, (jint)lpStruct->lopnWidth.y);
- (*env)->SetIntField(env, lpObject, LOGPENFc.lopnColor, (jint)lpStruct->lopnColor);
-}
-#endif
-
-#ifndef NO_LVCOLUMN
-typedef struct LVCOLUMN_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID mask, fmt, cx, pszText, cchTextMax, iSubItem, iImage, iOrder;
-} LVCOLUMN_FID_CACHE;
-
-LVCOLUMN_FID_CACHE LVCOLUMNFc;
-
-void cacheLVCOLUMNFields(JNIEnv *env, jobject lpObject)
-{
- if (LVCOLUMNFc.cached) return;
- LVCOLUMNFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LVCOLUMNFc.mask = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "mask", "I");
- LVCOLUMNFc.fmt = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "fmt", "I");
- LVCOLUMNFc.cx = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "cx", "I");
- LVCOLUMNFc.pszText = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "pszText", "I");
- LVCOLUMNFc.cchTextMax = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "cchTextMax", "I");
- LVCOLUMNFc.iSubItem = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "iSubItem", "I");
- LVCOLUMNFc.iImage = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "iImage", "I");
- LVCOLUMNFc.iOrder = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "iOrder", "I");
- LVCOLUMNFc.cached = 1;
-}
-
-LVCOLUMN *getLVCOLUMNFields(JNIEnv *env, jobject lpObject, LVCOLUMN *lpStruct)
-{
- if (!LVCOLUMNFc.cached) cacheLVCOLUMNFields(env, lpObject);
- lpStruct->mask = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.mask);
- lpStruct->fmt = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.fmt);
- lpStruct->cx = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.cx);
- lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, LVCOLUMNFc.pszText);
- lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.cchTextMax);
- lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.iSubItem);
- lpStruct->iImage = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.iImage);
- lpStruct->iOrder = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.iOrder);
- return lpStruct;
-}
-
-void setLVCOLUMNFields(JNIEnv *env, jobject lpObject, LVCOLUMN *lpStruct)
-{
- if (!LVCOLUMNFc.cached) cacheLVCOLUMNFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, LVCOLUMNFc.mask, (jint)lpStruct->mask);
- (*env)->SetIntField(env, lpObject, LVCOLUMNFc.fmt, (jint)lpStruct->fmt);
- (*env)->SetIntField(env, lpObject, LVCOLUMNFc.cx, (jint)lpStruct->cx);
- (*env)->SetIntField(env, lpObject, LVCOLUMNFc.pszText, (jint)lpStruct->pszText);
- (*env)->SetIntField(env, lpObject, LVCOLUMNFc.cchTextMax, (jint)lpStruct->cchTextMax);
- (*env)->SetIntField(env, lpObject, LVCOLUMNFc.iSubItem, (jint)lpStruct->iSubItem);
- (*env)->SetIntField(env, lpObject, LVCOLUMNFc.iImage, (jint)lpStruct->iImage);
- (*env)->SetIntField(env, lpObject, LVCOLUMNFc.iOrder, (jint)lpStruct->iOrder);
-}
-#endif
-
-#ifndef NO_LVHITTESTINFO
-typedef struct LVHITTESTINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID x, y, flags, iItem, iSubItem;
-} LVHITTESTINFO_FID_CACHE;
-
-LVHITTESTINFO_FID_CACHE LVHITTESTINFOFc;
-
-void cacheLVHITTESTINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (LVHITTESTINFOFc.cached) return;
- LVHITTESTINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LVHITTESTINFOFc.x = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "x", "I");
- LVHITTESTINFOFc.y = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "y", "I");
- LVHITTESTINFOFc.flags = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "flags", "I");
- LVHITTESTINFOFc.iItem = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "iItem", "I");
- LVHITTESTINFOFc.iSubItem = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "iSubItem", "I");
- LVHITTESTINFOFc.cached = 1;
-}
-
-LVHITTESTINFO *getLVHITTESTINFOFields(JNIEnv *env, jobject lpObject, LVHITTESTINFO *lpStruct)
-{
- if (!LVHITTESTINFOFc.cached) cacheLVHITTESTINFOFields(env, lpObject);
- lpStruct->pt.x = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.x);
- lpStruct->pt.y = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.y);
- lpStruct->flags = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.flags);
- lpStruct->iItem = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.iItem);
- lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.iSubItem);
- return lpStruct;
-}
-
-void setLVHITTESTINFOFields(JNIEnv *env, jobject lpObject, LVHITTESTINFO *lpStruct)
-{
- if (!LVHITTESTINFOFc.cached) cacheLVHITTESTINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.x, (jint)lpStruct->pt.x);
- (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.y, (jint)lpStruct->pt.y);
- (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.flags, (jint)lpStruct->flags);
- (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.iItem, (jint)lpStruct->iItem);
- (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.iSubItem, (jint)lpStruct->iSubItem);
-}
-#endif
-
-#ifndef NO_LVITEM
-typedef struct LVITEM_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID mask, iItem, iSubItem, state, stateMask, pszText, cchTextMax, iImage, lParam, iIndent;
-} LVITEM_FID_CACHE;
-
-LVITEM_FID_CACHE LVITEMFc;
-
-void cacheLVITEMFields(JNIEnv *env, jobject lpObject)
-{
- if (LVITEMFc.cached) return;
- LVITEMFc.clazz = (*env)->GetObjectClass(env, lpObject);
- LVITEMFc.mask = (*env)->GetFieldID(env, LVITEMFc.clazz, "mask", "I");
- LVITEMFc.iItem = (*env)->GetFieldID(env, LVITEMFc.clazz, "iItem", "I");
- LVITEMFc.iSubItem = (*env)->GetFieldID(env, LVITEMFc.clazz, "iSubItem", "I");
- LVITEMFc.state = (*env)->GetFieldID(env, LVITEMFc.clazz, "state", "I");
- LVITEMFc.stateMask = (*env)->GetFieldID(env, LVITEMFc.clazz, "stateMask", "I");
- LVITEMFc.pszText = (*env)->GetFieldID(env, LVITEMFc.clazz, "pszText", "I");
- LVITEMFc.cchTextMax = (*env)->GetFieldID(env, LVITEMFc.clazz, "cchTextMax", "I");
- LVITEMFc.iImage = (*env)->GetFieldID(env, LVITEMFc.clazz, "iImage", "I");
- LVITEMFc.lParam = (*env)->GetFieldID(env, LVITEMFc.clazz, "lParam", "I");
- LVITEMFc.iIndent = (*env)->GetFieldID(env, LVITEMFc.clazz, "iIndent", "I");
- LVITEMFc.cached = 1;
-}
-
-LVITEM *getLVITEMFields(JNIEnv *env, jobject lpObject, LVITEM *lpStruct)
-{
- if (!LVITEMFc.cached) cacheLVITEMFields(env, lpObject);
- lpStruct->mask = (*env)->GetIntField(env, lpObject, LVITEMFc.mask);
- lpStruct->iItem = (*env)->GetIntField(env, lpObject, LVITEMFc.iItem);
- lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, LVITEMFc.iSubItem);
- lpStruct->state = (*env)->GetIntField(env, lpObject, LVITEMFc.state);
- lpStruct->stateMask = (*env)->GetIntField(env, lpObject, LVITEMFc.stateMask);
- lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, LVITEMFc.pszText);
- lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, LVITEMFc.cchTextMax);
- lpStruct->iImage = (*env)->GetIntField(env, lpObject, LVITEMFc.iImage);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, LVITEMFc.lParam);
- lpStruct->iIndent = (*env)->GetIntField(env, lpObject, LVITEMFc.iIndent);
- return lpStruct;
-}
-
-void setLVITEMFields(JNIEnv *env, jobject lpObject, LVITEM *lpStruct)
-{
- if (!LVITEMFc.cached) cacheLVITEMFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, LVITEMFc.mask, (jint)lpStruct->mask);
- (*env)->SetIntField(env, lpObject, LVITEMFc.iItem, (jint)lpStruct->iItem);
- (*env)->SetIntField(env, lpObject, LVITEMFc.iSubItem, (jint)lpStruct->iSubItem);
- (*env)->SetIntField(env, lpObject, LVITEMFc.state, (jint)lpStruct->state);
- (*env)->SetIntField(env, lpObject, LVITEMFc.stateMask, (jint)lpStruct->stateMask);
- (*env)->SetIntField(env, lpObject, LVITEMFc.pszText, (jint)lpStruct->pszText);
- (*env)->SetIntField(env, lpObject, LVITEMFc.cchTextMax, (jint)lpStruct->cchTextMax);
- (*env)->SetIntField(env, lpObject, LVITEMFc.iImage, (jint)lpStruct->iImage);
- (*env)->SetIntField(env, lpObject, LVITEMFc.lParam, (jint)lpStruct->lParam);
- (*env)->SetIntField(env, lpObject, LVITEMFc.iIndent, (jint)lpStruct->iIndent);
-}
-#endif
-
-#ifndef NO_MEASUREITEMSTRUCT
-typedef struct MEASUREITEMSTRUCT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID CtlType, CtlID, itemID, itemWidth, itemHeight, itemData;
-} MEASUREITEMSTRUCT_FID_CACHE;
-
-MEASUREITEMSTRUCT_FID_CACHE MEASUREITEMSTRUCTFc;
-
-void cacheMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject)
-{
- if (MEASUREITEMSTRUCTFc.cached) return;
- MEASUREITEMSTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- MEASUREITEMSTRUCTFc.CtlType = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "CtlType", "I");
- MEASUREITEMSTRUCTFc.CtlID = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "CtlID", "I");
- MEASUREITEMSTRUCTFc.itemID = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "itemID", "I");
- MEASUREITEMSTRUCTFc.itemWidth = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "itemWidth", "I");
- MEASUREITEMSTRUCTFc.itemHeight = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "itemHeight", "I");
- MEASUREITEMSTRUCTFc.itemData = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "itemData", "I");
- MEASUREITEMSTRUCTFc.cached = 1;
-}
-
-MEASUREITEMSTRUCT *getMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject, MEASUREITEMSTRUCT *lpStruct)
-{
- if (!MEASUREITEMSTRUCTFc.cached) cacheMEASUREITEMSTRUCTFields(env, lpObject);
- lpStruct->CtlType = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.CtlType);
- lpStruct->CtlID = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.CtlID);
- lpStruct->itemID = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemID);
- lpStruct->itemWidth = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemWidth);
- lpStruct->itemHeight = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemHeight);
- lpStruct->itemData = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemData);
- return lpStruct;
-}
-
-void setMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject, MEASUREITEMSTRUCT *lpStruct)
-{
- if (!MEASUREITEMSTRUCTFc.cached) cacheMEASUREITEMSTRUCTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.CtlType, (jint)lpStruct->CtlType);
- (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.CtlID, (jint)lpStruct->CtlID);
- (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemID, (jint)lpStruct->itemID);
- (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemWidth, (jint)lpStruct->itemWidth);
- (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemHeight, (jint)lpStruct->itemHeight);
- (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemData, (jint)lpStruct->itemData);
-}
-#endif
-
-#ifndef NO_MENUINFO
-typedef struct MENUINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, fMask, dwStyle, cyMax, hbrBack, dwContextHelpID, dwMenuData;
-} MENUINFO_FID_CACHE;
-
-MENUINFO_FID_CACHE MENUINFOFc;
-
-void cacheMENUINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (MENUINFOFc.cached) return;
- MENUINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- MENUINFOFc.cbSize = (*env)->GetFieldID(env, MENUINFOFc.clazz, "cbSize", "I");
- MENUINFOFc.fMask = (*env)->GetFieldID(env, MENUINFOFc.clazz, "fMask", "I");
- MENUINFOFc.dwStyle = (*env)->GetFieldID(env, MENUINFOFc.clazz, "dwStyle", "I");
- MENUINFOFc.cyMax = (*env)->GetFieldID(env, MENUINFOFc.clazz, "cyMax", "I");
- MENUINFOFc.hbrBack = (*env)->GetFieldID(env, MENUINFOFc.clazz, "hbrBack", "I");
- MENUINFOFc.dwContextHelpID = (*env)->GetFieldID(env, MENUINFOFc.clazz, "dwContextHelpID", "I");
- MENUINFOFc.dwMenuData = (*env)->GetFieldID(env, MENUINFOFc.clazz, "dwMenuData", "I");
- MENUINFOFc.cached = 1;
-}
-
-MENUINFO *getMENUINFOFields(JNIEnv *env, jobject lpObject, MENUINFO *lpStruct)
-{
- if (!MENUINFOFc.cached) cacheMENUINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, MENUINFOFc.cbSize);
- lpStruct->fMask = (*env)->GetIntField(env, lpObject, MENUINFOFc.fMask);
- lpStruct->dwStyle = (*env)->GetIntField(env, lpObject, MENUINFOFc.dwStyle);
- lpStruct->cyMax = (*env)->GetIntField(env, lpObject, MENUINFOFc.cyMax);
- lpStruct->hbrBack = (HBRUSH)(*env)->GetIntField(env, lpObject, MENUINFOFc.hbrBack);
- lpStruct->dwContextHelpID = (*env)->GetIntField(env, lpObject, MENUINFOFc.dwContextHelpID);
- lpStruct->dwMenuData = (*env)->GetIntField(env, lpObject, MENUINFOFc.dwMenuData);
- return lpStruct;
-}
-
-void setMENUINFOFields(JNIEnv *env, jobject lpObject, MENUINFO *lpStruct)
-{
- if (!MENUINFOFc.cached) cacheMENUINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, MENUINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, MENUINFOFc.fMask, (jint)lpStruct->fMask);
- (*env)->SetIntField(env, lpObject, MENUINFOFc.dwStyle, (jint)lpStruct->dwStyle);
- (*env)->SetIntField(env, lpObject, MENUINFOFc.cyMax, (jint)lpStruct->cyMax);
- (*env)->SetIntField(env, lpObject, MENUINFOFc.hbrBack, (jint)lpStruct->hbrBack);
- (*env)->SetIntField(env, lpObject, MENUINFOFc.dwContextHelpID, (jint)lpStruct->dwContextHelpID);
- (*env)->SetIntField(env, lpObject, MENUINFOFc.dwMenuData, (jint)lpStruct->dwMenuData);
-}
-#endif
-
-#ifndef NO_MENUITEMINFO
-typedef struct MENUITEMINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, fMask, fType, fState, wID, hSubMenu, hbmpChecked, hbmpUnchecked, dwItemData, dwTypeData, cch, hbmpItem;
-} MENUITEMINFO_FID_CACHE;
-
-MENUITEMINFO_FID_CACHE MENUITEMINFOFc;
-
-void cacheMENUITEMINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (MENUITEMINFOFc.cached) return;
- MENUITEMINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- MENUITEMINFOFc.cbSize = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "cbSize", "I");
- MENUITEMINFOFc.fMask = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "fMask", "I");
- MENUITEMINFOFc.fType = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "fType", "I");
- MENUITEMINFOFc.fState = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "fState", "I");
- MENUITEMINFOFc.wID = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "wID", "I");
- MENUITEMINFOFc.hSubMenu = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "hSubMenu", "I");
- MENUITEMINFOFc.hbmpChecked = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "hbmpChecked", "I");
- MENUITEMINFOFc.hbmpUnchecked = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "hbmpUnchecked", "I");
- MENUITEMINFOFc.dwItemData = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "dwItemData", "I");
- MENUITEMINFOFc.dwTypeData = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "dwTypeData", "I");
- MENUITEMINFOFc.cch = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "cch", "I");
- MENUITEMINFOFc.hbmpItem = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "hbmpItem", "I");
- MENUITEMINFOFc.cached = 1;
-}
-
-MENUITEMINFO *getMENUITEMINFOFields(JNIEnv *env, jobject lpObject, MENUITEMINFO *lpStruct)
-{
- if (!MENUITEMINFOFc.cached) cacheMENUITEMINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.cbSize);
- lpStruct->fMask = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.fMask);
- lpStruct->fType = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.fType);
- lpStruct->fState = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.fState);
- lpStruct->wID = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.wID);
- lpStruct->hSubMenu = (HMENU)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.hSubMenu);
- lpStruct->hbmpChecked = (HBITMAP)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.hbmpChecked);
- lpStruct->hbmpUnchecked = (HBITMAP)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.hbmpUnchecked);
- lpStruct->dwItemData = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.dwItemData);
- lpStruct->dwTypeData = (LPTSTR)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.dwTypeData);
- lpStruct->cch = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.cch);
-#ifndef _WIN32_WCE
- lpStruct->hbmpItem = (HBITMAP)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.hbmpItem);
-#endif
- return lpStruct;
-}
-
-void setMENUITEMINFOFields(JNIEnv *env, jobject lpObject, MENUITEMINFO *lpStruct)
-{
- if (!MENUITEMINFOFc.cached) cacheMENUITEMINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.fMask, (jint)lpStruct->fMask);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.fType, (jint)lpStruct->fType);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.fState, (jint)lpStruct->fState);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.wID, (jint)lpStruct->wID);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.hSubMenu, (jint)lpStruct->hSubMenu);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.hbmpChecked, (jint)lpStruct->hbmpChecked);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.hbmpUnchecked, (jint)lpStruct->hbmpUnchecked);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.dwItemData, (jint)lpStruct->dwItemData);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.dwTypeData, (jint)lpStruct->dwTypeData);
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.cch, (jint)lpStruct->cch);
-#ifndef _WIN32_WCE
- (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.hbmpItem, (jint)lpStruct->hbmpItem);
-#endif
-}
-#endif
-
-#ifndef NO_MONITORINFO
-typedef struct MONITORINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, rcMonitor_left, rcMonitor_top, rcMonitor_right, rcMonitor_bottom, rcWork_left, rcWork_top, rcWork_right, rcWork_bottom, dwFlags;
-} MONITORINFO_FID_CACHE;
-
-MONITORINFO_FID_CACHE MONITORINFOFc;
-
-void cacheMONITORINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (MONITORINFOFc.cached) return;
- MONITORINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- MONITORINFOFc.cbSize = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "cbSize", "I");
- MONITORINFOFc.rcMonitor_left = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcMonitor_left", "I");
- MONITORINFOFc.rcMonitor_top = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcMonitor_top", "I");
- MONITORINFOFc.rcMonitor_right = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcMonitor_right", "I");
- MONITORINFOFc.rcMonitor_bottom = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcMonitor_bottom", "I");
- MONITORINFOFc.rcWork_left = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcWork_left", "I");
- MONITORINFOFc.rcWork_top = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcWork_top", "I");
- MONITORINFOFc.rcWork_right = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcWork_right", "I");
- MONITORINFOFc.rcWork_bottom = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcWork_bottom", "I");
- MONITORINFOFc.dwFlags = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "dwFlags", "I");
- MONITORINFOFc.cached = 1;
-}
-
-MONITORINFO *getMONITORINFOFields(JNIEnv *env, jobject lpObject, MONITORINFO *lpStruct)
-{
- if (!MONITORINFOFc.cached) cacheMONITORINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, MONITORINFOFc.cbSize);
- lpStruct->rcMonitor.left = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcMonitor_left);
- lpStruct->rcMonitor.top = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcMonitor_top);
- lpStruct->rcMonitor.right = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcMonitor_right);
- lpStruct->rcMonitor.bottom = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcMonitor_bottom);
- lpStruct->rcWork.left = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcWork_left);
- lpStruct->rcWork.top = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcWork_top);
- lpStruct->rcWork.right = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcWork_right);
- lpStruct->rcWork.bottom = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcWork_bottom);
- lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, MONITORINFOFc.dwFlags);
- return lpStruct;
-}
-
-void setMONITORINFOFields(JNIEnv *env, jobject lpObject, MONITORINFO *lpStruct)
-{
- if (!MONITORINFOFc.cached) cacheMONITORINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcMonitor_left, (jint)lpStruct->rcMonitor.left);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcMonitor_top, (jint)lpStruct->rcMonitor.top);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcMonitor_right, (jint)lpStruct->rcMonitor.right);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcMonitor_bottom, (jint)lpStruct->rcMonitor.bottom);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcWork_left, (jint)lpStruct->rcWork.left);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcWork_top, (jint)lpStruct->rcWork.top);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcWork_right, (jint)lpStruct->rcWork.right);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcWork_bottom, (jint)lpStruct->rcWork.bottom);
- (*env)->SetIntField(env, lpObject, MONITORINFOFc.dwFlags, (jint)lpStruct->dwFlags);
-}
-#endif
-
-#ifndef NO_MSG
-typedef struct MSG_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID hwnd, message, wParam, lParam, time, x, y;
-} MSG_FID_CACHE;
-
-MSG_FID_CACHE MSGFc;
-
-void cacheMSGFields(JNIEnv *env, jobject lpObject)
-{
- if (MSGFc.cached) return;
- MSGFc.clazz = (*env)->GetObjectClass(env, lpObject);
- MSGFc.hwnd = (*env)->GetFieldID(env, MSGFc.clazz, "hwnd", "I");
- MSGFc.message = (*env)->GetFieldID(env, MSGFc.clazz, "message", "I");
- MSGFc.wParam = (*env)->GetFieldID(env, MSGFc.clazz, "wParam", "I");
- MSGFc.lParam = (*env)->GetFieldID(env, MSGFc.clazz, "lParam", "I");
- MSGFc.time = (*env)->GetFieldID(env, MSGFc.clazz, "time", "I");
- MSGFc.x = (*env)->GetFieldID(env, MSGFc.clazz, "x", "I");
- MSGFc.y = (*env)->GetFieldID(env, MSGFc.clazz, "y", "I");
- MSGFc.cached = 1;
-}
-
-MSG *getMSGFields(JNIEnv *env, jobject lpObject, MSG *lpStruct)
-{
- if (!MSGFc.cached) cacheMSGFields(env, lpObject);
- lpStruct->hwnd = (HWND)(*env)->GetIntField(env, lpObject, MSGFc.hwnd);
- lpStruct->message = (*env)->GetIntField(env, lpObject, MSGFc.message);
- lpStruct->wParam = (*env)->GetIntField(env, lpObject, MSGFc.wParam);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, MSGFc.lParam);
- lpStruct->time = (*env)->GetIntField(env, lpObject, MSGFc.time);
- lpStruct->pt.x = (*env)->GetIntField(env, lpObject, MSGFc.x);
- lpStruct->pt.y = (*env)->GetIntField(env, lpObject, MSGFc.y);
- return lpStruct;
-}
-
-void setMSGFields(JNIEnv *env, jobject lpObject, MSG *lpStruct)
-{
- if (!MSGFc.cached) cacheMSGFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, MSGFc.hwnd, (jint)lpStruct->hwnd);
- (*env)->SetIntField(env, lpObject, MSGFc.message, (jint)lpStruct->message);
- (*env)->SetIntField(env, lpObject, MSGFc.wParam, (jint)lpStruct->wParam);
- (*env)->SetIntField(env, lpObject, MSGFc.lParam, (jint)lpStruct->lParam);
- (*env)->SetIntField(env, lpObject, MSGFc.time, (jint)lpStruct->time);
- (*env)->SetIntField(env, lpObject, MSGFc.x, (jint)lpStruct->pt.x);
- (*env)->SetIntField(env, lpObject, MSGFc.y, (jint)lpStruct->pt.y);
-}
-#endif
-
-#ifndef NO_NMHDR
-typedef struct NMHDR_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID hwndFrom, idFrom, code;
-} NMHDR_FID_CACHE;
-
-NMHDR_FID_CACHE NMHDRFc;
-
-void cacheNMHDRFields(JNIEnv *env, jobject lpObject)
-{
- if (NMHDRFc.cached) return;
- NMHDRFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMHDRFc.hwndFrom = (*env)->GetFieldID(env, NMHDRFc.clazz, "hwndFrom", "I");
- NMHDRFc.idFrom = (*env)->GetFieldID(env, NMHDRFc.clazz, "idFrom", "I");
- NMHDRFc.code = (*env)->GetFieldID(env, NMHDRFc.clazz, "code", "I");
- NMHDRFc.cached = 1;
-}
-
-NMHDR *getNMHDRFields(JNIEnv *env, jobject lpObject, NMHDR *lpStruct)
-{
- if (!NMHDRFc.cached) cacheNMHDRFields(env, lpObject);
- lpStruct->hwndFrom = (HWND)(*env)->GetIntField(env, lpObject, NMHDRFc.hwndFrom);
- lpStruct->idFrom = (*env)->GetIntField(env, lpObject, NMHDRFc.idFrom);
- lpStruct->code = (*env)->GetIntField(env, lpObject, NMHDRFc.code);
- return lpStruct;
-}
-
-void setNMHDRFields(JNIEnv *env, jobject lpObject, NMHDR *lpStruct)
-{
- if (!NMHDRFc.cached) cacheNMHDRFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, NMHDRFc.hwndFrom, (jint)lpStruct->hwndFrom);
- (*env)->SetIntField(env, lpObject, NMHDRFc.idFrom, (jint)lpStruct->idFrom);
- (*env)->SetIntField(env, lpObject, NMHDRFc.code, (jint)lpStruct->code);
-}
-#endif
-
-#ifndef NO_NMCUSTOMDRAW
-typedef struct NMCUSTOMDRAW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID dwDrawStage, hdc, left, top, right, bottom, dwItemSpec, uItemState, lItemlParam;
-} NMCUSTOMDRAW_FID_CACHE;
-
-NMCUSTOMDRAW_FID_CACHE NMCUSTOMDRAWFc;
-
-void cacheNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject)
-{
- if (NMCUSTOMDRAWFc.cached) return;
- cacheNMHDRFields(env, lpObject);
- NMCUSTOMDRAWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMCUSTOMDRAWFc.dwDrawStage = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "dwDrawStage", "I");
- NMCUSTOMDRAWFc.hdc = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "hdc", "I");
- NMCUSTOMDRAWFc.left = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "left", "I");
- NMCUSTOMDRAWFc.top = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "top", "I");
- NMCUSTOMDRAWFc.right = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "right", "I");
- NMCUSTOMDRAWFc.bottom = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "bottom", "I");
- NMCUSTOMDRAWFc.dwItemSpec = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "dwItemSpec", "I");
- NMCUSTOMDRAWFc.uItemState = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "uItemState", "I");
- NMCUSTOMDRAWFc.lItemlParam = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "lItemlParam", "I");
- NMCUSTOMDRAWFc.cached = 1;
-}
-
-NMCUSTOMDRAW *getNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMCUSTOMDRAW *lpStruct)
-{
- if (!NMCUSTOMDRAWFc.cached) cacheNMCUSTOMDRAWFields(env, lpObject);
- getNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- lpStruct->dwDrawStage = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.dwDrawStage);
- lpStruct->hdc = (HDC)(*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.hdc);
- lpStruct->rc.left = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.left);
- lpStruct->rc.top = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.top);
- lpStruct->rc.right = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.right);
- lpStruct->rc.bottom = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.bottom);
- lpStruct->dwItemSpec = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.dwItemSpec);
- lpStruct->uItemState = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.uItemState);
- lpStruct->lItemlParam = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.lItemlParam);
- return lpStruct;
-}
-
-void setNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMCUSTOMDRAW *lpStruct)
-{
- if (!NMCUSTOMDRAWFc.cached) cacheNMCUSTOMDRAWFields(env, lpObject);
- setNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.dwDrawStage, (jint)lpStruct->dwDrawStage);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.hdc, (jint)lpStruct->hdc);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.left, (jint)lpStruct->rc.left);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.top, (jint)lpStruct->rc.top);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.right, (jint)lpStruct->rc.right);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.bottom, (jint)lpStruct->rc.bottom);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.dwItemSpec, (jint)lpStruct->dwItemSpec);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.uItemState, (jint)lpStruct->uItemState);
- (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.lItemlParam, (jint)lpStruct->lItemlParam);
-}
-#endif
-
-#ifndef NO_NMHEADER
-typedef struct NMHEADER_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID iItem, iButton, pitem;
-} NMHEADER_FID_CACHE;
-
-NMHEADER_FID_CACHE NMHEADERFc;
-
-void cacheNMHEADERFields(JNIEnv *env, jobject lpObject)
-{
- if (NMHEADERFc.cached) return;
- cacheNMHDRFields(env, lpObject);
- NMHEADERFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMHEADERFc.iItem = (*env)->GetFieldID(env, NMHEADERFc.clazz, "iItem", "I");
- NMHEADERFc.iButton = (*env)->GetFieldID(env, NMHEADERFc.clazz, "iButton", "I");
- NMHEADERFc.pitem = (*env)->GetFieldID(env, NMHEADERFc.clazz, "pitem", "I");
- NMHEADERFc.cached = 1;
-}
-
-NMHEADER *getNMHEADERFields(JNIEnv *env, jobject lpObject, NMHEADER *lpStruct)
-{
- if (!NMHEADERFc.cached) cacheNMHEADERFields(env, lpObject);
- getNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- lpStruct->iItem = (*env)->GetIntField(env, lpObject, NMHEADERFc.iItem);
- lpStruct->iButton = (*env)->GetIntField(env, lpObject, NMHEADERFc.iButton);
- lpStruct->pitem = (HDITEM FAR *)(*env)->GetIntField(env, lpObject, NMHEADERFc.pitem);
- return lpStruct;
-}
-
-void setNMHEADERFields(JNIEnv *env, jobject lpObject, NMHEADER *lpStruct)
-{
- if (!NMHEADERFc.cached) cacheNMHEADERFields(env, lpObject);
- setNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMHEADERFc.iItem, (jint)lpStruct->iItem);
- (*env)->SetIntField(env, lpObject, NMHEADERFc.iButton, (jint)lpStruct->iButton);
- (*env)->SetIntField(env, lpObject, NMHEADERFc.pitem, (jint)lpStruct->pitem);
-}
-#endif
-
-#ifndef NO_NMLISTVIEW
-typedef struct NMLISTVIEW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID iItem, iSubItem, uNewState, uOldState, uChanged, x, y, lParam;
-} NMLISTVIEW_FID_CACHE;
-
-NMLISTVIEW_FID_CACHE NMLISTVIEWFc;
-
-void cacheNMLISTVIEWFields(JNIEnv *env, jobject lpObject)
-{
- if (NMLISTVIEWFc.cached) return;
- cacheNMHDRFields(env, lpObject);
- NMLISTVIEWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMLISTVIEWFc.iItem = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "iItem", "I");
- NMLISTVIEWFc.iSubItem = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "iSubItem", "I");
- NMLISTVIEWFc.uNewState = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "uNewState", "I");
- NMLISTVIEWFc.uOldState = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "uOldState", "I");
- NMLISTVIEWFc.uChanged = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "uChanged", "I");
- NMLISTVIEWFc.x = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "x", "I");
- NMLISTVIEWFc.y = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "y", "I");
- NMLISTVIEWFc.lParam = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "lParam", "I");
- NMLISTVIEWFc.cached = 1;
-}
-
-NMLISTVIEW *getNMLISTVIEWFields(JNIEnv *env, jobject lpObject, NMLISTVIEW *lpStruct)
-{
- if (!NMLISTVIEWFc.cached) cacheNMLISTVIEWFields(env, lpObject);
- getNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- lpStruct->iItem = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.iItem);
- lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.iSubItem);
- lpStruct->uNewState = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.uNewState);
- lpStruct->uOldState = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.uOldState);
- lpStruct->uChanged = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.uChanged);
- lpStruct->ptAction.x = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.x);
- lpStruct->ptAction.y = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.y);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.lParam);
- return lpStruct;
-}
-
-void setNMLISTVIEWFields(JNIEnv *env, jobject lpObject, NMLISTVIEW *lpStruct)
-{
- if (!NMLISTVIEWFc.cached) cacheNMLISTVIEWFields(env, lpObject);
- setNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.iItem, (jint)lpStruct->iItem);
- (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.iSubItem, (jint)lpStruct->iSubItem);
- (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.uNewState, (jint)lpStruct->uNewState);
- (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.uOldState, (jint)lpStruct->uOldState);
- (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.uChanged, (jint)lpStruct->uChanged);
- (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.x, (jint)lpStruct->ptAction.x);
- (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.y, (jint)lpStruct->ptAction.y);
- (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.lParam, (jint)lpStruct->lParam);
-}
-#endif
-
-#ifndef NO_NMLVCUSTOMDRAW
-typedef struct NMLVCUSTOMDRAW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID clrText, clrTextBk, iSubItem;
-} NMLVCUSTOMDRAW_FID_CACHE;
-
-NMLVCUSTOMDRAW_FID_CACHE NMLVCUSTOMDRAWFc;
-
-void cacheNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject)
-{
- if (NMLVCUSTOMDRAWFc.cached) return;
- cacheNMCUSTOMDRAWFields(env, lpObject);
- NMLVCUSTOMDRAWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMLVCUSTOMDRAWFc.clrText = (*env)->GetFieldID(env, NMLVCUSTOMDRAWFc.clazz, "clrText", "I");
- NMLVCUSTOMDRAWFc.clrTextBk = (*env)->GetFieldID(env, NMLVCUSTOMDRAWFc.clazz, "clrTextBk", "I");
- NMLVCUSTOMDRAWFc.iSubItem = (*env)->GetFieldID(env, NMLVCUSTOMDRAWFc.clazz, "iSubItem", "I");
- NMLVCUSTOMDRAWFc.cached = 1;
-}
-
-NMLVCUSTOMDRAW *getNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMLVCUSTOMDRAW *lpStruct)
-{
- if (!NMLVCUSTOMDRAWFc.cached) cacheNMLVCUSTOMDRAWFields(env, lpObject);
- getNMCUSTOMDRAWFields(env, lpObject, (NMCUSTOMDRAW *)lpStruct);
- lpStruct->clrText = (*env)->GetIntField(env, lpObject, NMLVCUSTOMDRAWFc.clrText);
- lpStruct->clrTextBk = (*env)->GetIntField(env, lpObject, NMLVCUSTOMDRAWFc.clrTextBk);
- lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, NMLVCUSTOMDRAWFc.iSubItem);
- return lpStruct;
-}
-
-void setNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMLVCUSTOMDRAW *lpStruct)
-{
- if (!NMLVCUSTOMDRAWFc.cached) cacheNMLVCUSTOMDRAWFields(env, lpObject);
- setNMCUSTOMDRAWFields(env, lpObject, (NMCUSTOMDRAW *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMLVCUSTOMDRAWFc.clrText, (jint)lpStruct->clrText);
- (*env)->SetIntField(env, lpObject, NMLVCUSTOMDRAWFc.clrTextBk, (jint)lpStruct->clrTextBk);
- (*env)->SetIntField(env, lpObject, NMLVCUSTOMDRAWFc.iSubItem, (jint)lpStruct->iSubItem);
-}
-#endif
-
-#ifndef NO_NMREBARCHEVRON
-typedef struct NMREBARCHEVRON_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID uBand, wID, lParam, left, top, right, bottom, lParamNM;
-} NMREBARCHEVRON_FID_CACHE;
-
-NMREBARCHEVRON_FID_CACHE NMREBARCHEVRONFc;
-
-void cacheNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject)
-{
- if (NMREBARCHEVRONFc.cached) return;
- cacheNMHDRFields(env, lpObject);
- NMREBARCHEVRONFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMREBARCHEVRONFc.uBand = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "uBand", "I");
- NMREBARCHEVRONFc.wID = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "wID", "I");
- NMREBARCHEVRONFc.lParam = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "lParam", "I");
- NMREBARCHEVRONFc.left = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "left", "I");
- NMREBARCHEVRONFc.top = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "top", "I");
- NMREBARCHEVRONFc.right = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "right", "I");
- NMREBARCHEVRONFc.bottom = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "bottom", "I");
- NMREBARCHEVRONFc.lParamNM = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "lParamNM", "I");
- NMREBARCHEVRONFc.cached = 1;
-}
-
-NMREBARCHEVRON *getNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject, NMREBARCHEVRON *lpStruct)
-{
- if (!NMREBARCHEVRONFc.cached) cacheNMREBARCHEVRONFields(env, lpObject);
- getNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- lpStruct->uBand = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.uBand);
- lpStruct->wID = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.wID);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.lParam);
- lpStruct->rc.left = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.left);
- lpStruct->rc.top = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.top);
- lpStruct->rc.right = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.right);
- lpStruct->rc.bottom = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.bottom);
- lpStruct->lParamNM = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.lParamNM);
- return lpStruct;
-}
-
-void setNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject, NMREBARCHEVRON *lpStruct)
-{
- if (!NMREBARCHEVRONFc.cached) cacheNMREBARCHEVRONFields(env, lpObject);
- setNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.uBand, (jint)lpStruct->uBand);
- (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.wID, (jint)lpStruct->wID);
- (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.lParam, (jint)lpStruct->lParam);
- (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.left, (jint)lpStruct->rc.left);
- (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.top, (jint)lpStruct->rc.top);
- (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.right, (jint)lpStruct->rc.right);
- (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.bottom, (jint)lpStruct->rc.bottom);
- (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.lParamNM, (jint)lpStruct->lParamNM);
-}
-#endif
-
-#ifndef NO_NMTOOLBAR
-typedef struct NMTOOLBAR_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID iItem, iBitmap, idCommand, fsState, fsStyle, dwData, iString, cchText, pszText, left, top, right, bottom;
-} NMTOOLBAR_FID_CACHE;
-
-NMTOOLBAR_FID_CACHE NMTOOLBARFc;
-
-void cacheNMTOOLBARFields(JNIEnv *env, jobject lpObject)
-{
- if (NMTOOLBARFc.cached) return;
- cacheNMHDRFields(env, lpObject);
- NMTOOLBARFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMTOOLBARFc.iItem = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "iItem", "I");
- NMTOOLBARFc.iBitmap = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "iBitmap", "I");
- NMTOOLBARFc.idCommand = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "idCommand", "I");
- NMTOOLBARFc.fsState = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "fsState", "B");
- NMTOOLBARFc.fsStyle = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "fsStyle", "B");
- NMTOOLBARFc.dwData = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "dwData", "I");
- NMTOOLBARFc.iString = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "iString", "I");
- NMTOOLBARFc.cchText = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "cchText", "I");
- NMTOOLBARFc.pszText = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "pszText", "I");
- NMTOOLBARFc.left = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "left", "I");
- NMTOOLBARFc.top = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "top", "I");
- NMTOOLBARFc.right = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "right", "I");
- NMTOOLBARFc.bottom = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "bottom", "I");
- NMTOOLBARFc.cached = 1;
-}
-
-NMTOOLBAR *getNMTOOLBARFields(JNIEnv *env, jobject lpObject, NMTOOLBAR *lpStruct)
-{
- if (!NMTOOLBARFc.cached) cacheNMTOOLBARFields(env, lpObject);
- getNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- lpStruct->iItem = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.iItem);
- lpStruct->tbButton.iBitmap = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.iBitmap);
- lpStruct->tbButton.idCommand = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.idCommand);
- lpStruct->tbButton.fsState = (*env)->GetByteField(env, lpObject, NMTOOLBARFc.fsState);
- lpStruct->tbButton.fsStyle = (*env)->GetByteField(env, lpObject, NMTOOLBARFc.fsStyle);
- lpStruct->tbButton.dwData = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.dwData);
- lpStruct->tbButton.iString = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.iString);
- lpStruct->cchText = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.cchText);
- lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, NMTOOLBARFc.pszText);
-#ifndef _WIN32_WCE
- lpStruct->rcButton.left = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.left);
-#endif
-#ifndef _WIN32_WCE
- lpStruct->rcButton.top = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.top);
-#endif
-#ifndef _WIN32_WCE
- lpStruct->rcButton.right = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.right);
-#endif
-#ifndef _WIN32_WCE
- lpStruct->rcButton.bottom = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.bottom);
-#endif
- return lpStruct;
-}
-
-void setNMTOOLBARFields(JNIEnv *env, jobject lpObject, NMTOOLBAR *lpStruct)
-{
- if (!NMTOOLBARFc.cached) cacheNMTOOLBARFields(env, lpObject);
- setNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.iItem, (jint)lpStruct->iItem);
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.iBitmap, (jint)lpStruct->tbButton.iBitmap);
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.idCommand, (jint)lpStruct->tbButton.idCommand);
- (*env)->SetByteField(env, lpObject, NMTOOLBARFc.fsState, (jbyte)lpStruct->tbButton.fsState);
- (*env)->SetByteField(env, lpObject, NMTOOLBARFc.fsStyle, (jbyte)lpStruct->tbButton.fsStyle);
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.dwData, (jint)lpStruct->tbButton.dwData);
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.iString, (jint)lpStruct->tbButton.iString);
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.cchText, (jint)lpStruct->cchText);
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.pszText, (jint)lpStruct->pszText);
-#ifndef _WIN32_WCE
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.left, (jint)lpStruct->rcButton.left);
-#endif
-#ifndef _WIN32_WCE
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.top, (jint)lpStruct->rcButton.top);
-#endif
-#ifndef _WIN32_WCE
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.right, (jint)lpStruct->rcButton.right);
-#endif
-#ifndef _WIN32_WCE
- (*env)->SetIntField(env, lpObject, NMTOOLBARFc.bottom, (jint)lpStruct->rcButton.bottom);
-#endif
-}
-#endif
-
-#ifndef NO_NMTTDISPINFO
-typedef struct NMTTDISPINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lpszText, hinst, uFlags, lParam;
-} NMTTDISPINFO_FID_CACHE;
-
-NMTTDISPINFO_FID_CACHE NMTTDISPINFOFc;
-
-void cacheNMTTDISPINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (NMTTDISPINFOFc.cached) return;
- cacheNMHDRFields(env, lpObject);
- NMTTDISPINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMTTDISPINFOFc.lpszText = (*env)->GetFieldID(env, NMTTDISPINFOFc.clazz, "lpszText", "I");
- NMTTDISPINFOFc.hinst = (*env)->GetFieldID(env, NMTTDISPINFOFc.clazz, "hinst", "I");
- NMTTDISPINFOFc.uFlags = (*env)->GetFieldID(env, NMTTDISPINFOFc.clazz, "uFlags", "I");
- NMTTDISPINFOFc.lParam = (*env)->GetFieldID(env, NMTTDISPINFOFc.clazz, "lParam", "I");
- NMTTDISPINFOFc.cached = 1;
-}
-
-NMTTDISPINFO *getNMTTDISPINFOFields(JNIEnv *env, jobject lpObject, NMTTDISPINFO *lpStruct)
-{
- if (!NMTTDISPINFOFc.cached) cacheNMTTDISPINFOFields(env, lpObject);
- getNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- lpStruct->lpszText = (void *)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lpszText);
- lpStruct->hinst = (HINSTANCE)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.hinst);
- lpStruct->uFlags = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.uFlags);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lParam);
- return lpStruct;
-}
-
-void setNMTTDISPINFOFields(JNIEnv *env, jobject lpObject, NMTTDISPINFO *lpStruct)
-{
- if (!NMTTDISPINFOFc.cached) cacheNMTTDISPINFOFields(env, lpObject);
- setNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lpszText, (jint)lpStruct->lpszText);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.hinst, (jint)lpStruct->hinst);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.uFlags, (jint)lpStruct->uFlags);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lParam, (jint)lpStruct->lParam);
-}
-#endif
-
-#ifndef NO_NMTTDISPINFOA
-typedef struct NMTTDISPINFOA_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID szText;
-} NMTTDISPINFOA_FID_CACHE;
-
-NMTTDISPINFOA_FID_CACHE NMTTDISPINFOAFc;
-
-void cacheNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject)
-{
- if (NMTTDISPINFOAFc.cached) return;
- cacheNMTTDISPINFOFields(env, lpObject);
- NMTTDISPINFOAFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMTTDISPINFOAFc.szText = (*env)->GetFieldID(env, NMTTDISPINFOAFc.clazz, "szText", "[B");
- NMTTDISPINFOAFc.cached = 1;
-}
-
-NMTTDISPINFOA *getNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOA *lpStruct)
-{
- if (!NMTTDISPINFOAFc.cached) cacheNMTTDISPINFOAFields(env, lpObject);
- getNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- lpStruct->lpszText = (void *)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lpszText);
- lpStruct->hinst = (HINSTANCE)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.hinst);
- lpStruct->uFlags = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.uFlags);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lParam);
- {
- jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, NMTTDISPINFOAFc.szText);
- (*env)->GetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szText), (void *)lpStruct->szText);
- }
- return lpStruct;
-}
-
-void setNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOA *lpStruct)
-{
- if (!NMTTDISPINFOAFc.cached) cacheNMTTDISPINFOAFields(env, lpObject);
- setNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lpszText, (jint)lpStruct->lpszText);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.hinst, (jint)lpStruct->hinst);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.uFlags, (jint)lpStruct->uFlags);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lParam, (jint)lpStruct->lParam);
- {
- jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, NMTTDISPINFOAFc.szText);
- (*env)->SetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szText), (void *)lpStruct->szText);
- }
-}
-#endif
-
-#ifndef NO_NMTTDISPINFOW
-typedef struct NMTTDISPINFOW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID szText;
-} NMTTDISPINFOW_FID_CACHE;
-
-NMTTDISPINFOW_FID_CACHE NMTTDISPINFOWFc;
-
-void cacheNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject)
-{
- if (NMTTDISPINFOWFc.cached) return;
- cacheNMTTDISPINFOFields(env, lpObject);
- NMTTDISPINFOWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMTTDISPINFOWFc.szText = (*env)->GetFieldID(env, NMTTDISPINFOWFc.clazz, "szText", "[C");
- NMTTDISPINFOWFc.cached = 1;
-}
-
-NMTTDISPINFOW *getNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOW *lpStruct)
-{
- if (!NMTTDISPINFOWFc.cached) cacheNMTTDISPINFOWFields(env, lpObject);
- getNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- lpStruct->lpszText = (void *)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lpszText);
- lpStruct->hinst = (HINSTANCE)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.hinst);
- lpStruct->uFlags = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.uFlags);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lParam);
- {
- jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, NMTTDISPINFOWFc.szText);
- (*env)->GetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szText) / 2, (void *)lpStruct->szText);
- }
- return lpStruct;
-}
-
-void setNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOW *lpStruct)
-{
- if (!NMTTDISPINFOWFc.cached) cacheNMTTDISPINFOWFields(env, lpObject);
- setNMHDRFields(env, lpObject, (NMHDR *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lpszText, (jint)lpStruct->lpszText);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.hinst, (jint)lpStruct->hinst);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.uFlags, (jint)lpStruct->uFlags);
- (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lParam, (jint)lpStruct->lParam);
- {
- jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, NMTTDISPINFOWFc.szText);
- (*env)->SetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szText) / 2, (void *)lpStruct->szText);
- }
-}
-#endif
-
-#ifndef NO_NMTVCUSTOMDRAW
-typedef struct NMTVCUSTOMDRAW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID clrText, clrTextBk, iLevel;
-} NMTVCUSTOMDRAW_FID_CACHE;
-
-NMTVCUSTOMDRAW_FID_CACHE NMTVCUSTOMDRAWFc;
-
-void cacheNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject)
-{
- if (NMTVCUSTOMDRAWFc.cached) return;
- cacheNMCUSTOMDRAWFields(env, lpObject);
- NMTVCUSTOMDRAWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NMTVCUSTOMDRAWFc.clrText = (*env)->GetFieldID(env, NMTVCUSTOMDRAWFc.clazz, "clrText", "I");
- NMTVCUSTOMDRAWFc.clrTextBk = (*env)->GetFieldID(env, NMTVCUSTOMDRAWFc.clazz, "clrTextBk", "I");
- NMTVCUSTOMDRAWFc.iLevel = (*env)->GetFieldID(env, NMTVCUSTOMDRAWFc.clazz, "iLevel", "I");
- NMTVCUSTOMDRAWFc.cached = 1;
-}
-
-NMTVCUSTOMDRAW *getNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMTVCUSTOMDRAW *lpStruct)
-{
- if (!NMTVCUSTOMDRAWFc.cached) cacheNMTVCUSTOMDRAWFields(env, lpObject);
- getNMCUSTOMDRAWFields(env, lpObject, (NMCUSTOMDRAW *)lpStruct);
- lpStruct->clrText = (*env)->GetIntField(env, lpObject, NMTVCUSTOMDRAWFc.clrText);
- lpStruct->clrTextBk = (*env)->GetIntField(env, lpObject, NMTVCUSTOMDRAWFc.clrTextBk);
-#ifndef _WIN32_WCE
- lpStruct->iLevel = (*env)->GetIntField(env, lpObject, NMTVCUSTOMDRAWFc.iLevel);
-#endif
- return lpStruct;
-}
-
-void setNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMTVCUSTOMDRAW *lpStruct)
-{
- if (!NMTVCUSTOMDRAWFc.cached) cacheNMTVCUSTOMDRAWFields(env, lpObject);
- setNMCUSTOMDRAWFields(env, lpObject, (NMCUSTOMDRAW *)lpStruct);
- (*env)->SetIntField(env, lpObject, NMTVCUSTOMDRAWFc.clrText, (jint)lpStruct->clrText);
- (*env)->SetIntField(env, lpObject, NMTVCUSTOMDRAWFc.clrTextBk, (jint)lpStruct->clrTextBk);
-#ifndef _WIN32_WCE
- (*env)->SetIntField(env, lpObject, NMTVCUSTOMDRAWFc.iLevel, (jint)lpStruct->iLevel);
-#endif
-}
-#endif
-
-#ifndef NO_NONCLIENTMETRICS
-typedef struct NONCLIENTMETRICS_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, iBorderWidth, iScrollWidth, iScrollHeight, iCaptionWidth, iCaptionHeight, iSmCaptionWidth, iSmCaptionHeight, iMenuWidth, iMenuHeight;
-} NONCLIENTMETRICS_FID_CACHE;
-
-NONCLIENTMETRICS_FID_CACHE NONCLIENTMETRICSFc;
-
-void cacheNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject)
-{
- if (NONCLIENTMETRICSFc.cached) return;
- NONCLIENTMETRICSFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NONCLIENTMETRICSFc.cbSize = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "cbSize", "I");
- NONCLIENTMETRICSFc.iBorderWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iBorderWidth", "I");
- NONCLIENTMETRICSFc.iScrollWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iScrollWidth", "I");
- NONCLIENTMETRICSFc.iScrollHeight = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iScrollHeight", "I");
- NONCLIENTMETRICSFc.iCaptionWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iCaptionWidth", "I");
- NONCLIENTMETRICSFc.iCaptionHeight = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iCaptionHeight", "I");
- NONCLIENTMETRICSFc.iSmCaptionWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iSmCaptionWidth", "I");
- NONCLIENTMETRICSFc.iSmCaptionHeight = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iSmCaptionHeight", "I");
- NONCLIENTMETRICSFc.iMenuWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iMenuWidth", "I");
- NONCLIENTMETRICSFc.iMenuHeight = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iMenuHeight", "I");
- NONCLIENTMETRICSFc.cached = 1;
-}
-
-NONCLIENTMETRICS *getNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICS *lpStruct)
-{
- if (!NONCLIENTMETRICSFc.cached) cacheNONCLIENTMETRICSFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize);
- lpStruct->iBorderWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth);
- lpStruct->iScrollWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth);
- lpStruct->iScrollHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight);
- lpStruct->iCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth);
- lpStruct->iCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight);
- lpStruct->iSmCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth);
- lpStruct->iSmCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight);
- lpStruct->iMenuWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth);
- lpStruct->iMenuHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight);
- return lpStruct;
-}
-
-void setNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICS *lpStruct)
-{
- if (!NONCLIENTMETRICSFc.cached) cacheNONCLIENTMETRICSFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth, (jint)lpStruct->iBorderWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth, (jint)lpStruct->iScrollWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight, (jint)lpStruct->iScrollHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth, (jint)lpStruct->iCaptionWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight, (jint)lpStruct->iCaptionHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth, (jint)lpStruct->iSmCaptionWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight, (jint)lpStruct->iSmCaptionHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth, (jint)lpStruct->iMenuWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight, (jint)lpStruct->iMenuHeight);
-}
-#endif
-
-#ifndef NO_NONCLIENTMETRICSA
-typedef struct NONCLIENTMETRICSA_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lfCaptionFont, lfSmCaptionFont, lfMenuFont, lfStatusFont, lfMessageFont;
-} NONCLIENTMETRICSA_FID_CACHE;
-
-NONCLIENTMETRICSA_FID_CACHE NONCLIENTMETRICSAFc;
-
-void cacheNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject)
-{
- if (NONCLIENTMETRICSAFc.cached) return;
- cacheNONCLIENTMETRICSFields(env, lpObject);
- NONCLIENTMETRICSAFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NONCLIENTMETRICSAFc.lfCaptionFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfCaptionFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;");
- NONCLIENTMETRICSAFc.lfSmCaptionFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfSmCaptionFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;");
- NONCLIENTMETRICSAFc.lfMenuFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfMenuFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;");
- NONCLIENTMETRICSAFc.lfStatusFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfStatusFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;");
- NONCLIENTMETRICSAFc.lfMessageFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfMessageFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;");
- NONCLIENTMETRICSAFc.cached = 1;
-}
-
-NONCLIENTMETRICSA *getNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSA *lpStruct)
-{
- if (!NONCLIENTMETRICSAFc.cached) cacheNONCLIENTMETRICSAFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize);
- lpStruct->iBorderWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth);
- lpStruct->iScrollWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth);
- lpStruct->iScrollHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight);
- lpStruct->iCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth);
- lpStruct->iCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight);
- lpStruct->iSmCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth);
- lpStruct->iSmCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight);
- lpStruct->iMenuWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth);
- lpStruct->iMenuHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight);
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfCaptionFont);
- getLOGFONTAFields(env, lpObject1, &lpStruct->lfCaptionFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfSmCaptionFont);
- getLOGFONTAFields(env, lpObject1, &lpStruct->lfSmCaptionFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfMenuFont);
- getLOGFONTAFields(env, lpObject1, &lpStruct->lfMenuFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfStatusFont);
- getLOGFONTAFields(env, lpObject1, &lpStruct->lfStatusFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfMessageFont);
- getLOGFONTAFields(env, lpObject1, &lpStruct->lfMessageFont);
- }
- return lpStruct;
-}
-
-void setNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSA *lpStruct)
-{
- if (!NONCLIENTMETRICSAFc.cached) cacheNONCLIENTMETRICSAFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth, (jint)lpStruct->iBorderWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth, (jint)lpStruct->iScrollWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight, (jint)lpStruct->iScrollHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth, (jint)lpStruct->iCaptionWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight, (jint)lpStruct->iCaptionHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth, (jint)lpStruct->iSmCaptionWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight, (jint)lpStruct->iSmCaptionHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth, (jint)lpStruct->iMenuWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight, (jint)lpStruct->iMenuHeight);
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfCaptionFont);
- setLOGFONTAFields(env, lpObject1, &lpStruct->lfCaptionFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfSmCaptionFont);
- setLOGFONTAFields(env, lpObject1, &lpStruct->lfSmCaptionFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfMenuFont);
- setLOGFONTAFields(env, lpObject1, &lpStruct->lfMenuFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfStatusFont);
- setLOGFONTAFields(env, lpObject1, &lpStruct->lfStatusFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfMessageFont);
- setLOGFONTAFields(env, lpObject1, &lpStruct->lfMessageFont);
- }
-}
-#endif
-
-#ifndef NO_NONCLIENTMETRICSW
-typedef struct NONCLIENTMETRICSW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lfCaptionFont, lfSmCaptionFont, lfMenuFont, lfStatusFont, lfMessageFont;
-} NONCLIENTMETRICSW_FID_CACHE;
-
-NONCLIENTMETRICSW_FID_CACHE NONCLIENTMETRICSWFc;
-
-void cacheNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject)
-{
- if (NONCLIENTMETRICSWFc.cached) return;
- cacheNONCLIENTMETRICSFields(env, lpObject);
- NONCLIENTMETRICSWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- NONCLIENTMETRICSWFc.lfCaptionFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfCaptionFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;");
- NONCLIENTMETRICSWFc.lfSmCaptionFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfSmCaptionFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;");
- NONCLIENTMETRICSWFc.lfMenuFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfMenuFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;");
- NONCLIENTMETRICSWFc.lfStatusFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfStatusFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;");
- NONCLIENTMETRICSWFc.lfMessageFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfMessageFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;");
- NONCLIENTMETRICSWFc.cached = 1;
-}
-
-NONCLIENTMETRICSW *getNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSW *lpStruct)
-{
- if (!NONCLIENTMETRICSWFc.cached) cacheNONCLIENTMETRICSWFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize);
- lpStruct->iBorderWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth);
- lpStruct->iScrollWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth);
- lpStruct->iScrollHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight);
- lpStruct->iCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth);
- lpStruct->iCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight);
- lpStruct->iSmCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth);
- lpStruct->iSmCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight);
- lpStruct->iMenuWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth);
- lpStruct->iMenuHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight);
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfCaptionFont);
- getLOGFONTWFields(env, lpObject1, &lpStruct->lfCaptionFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfSmCaptionFont);
- getLOGFONTWFields(env, lpObject1, &lpStruct->lfSmCaptionFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfMenuFont);
- getLOGFONTWFields(env, lpObject1, &lpStruct->lfMenuFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfStatusFont);
- getLOGFONTWFields(env, lpObject1, &lpStruct->lfStatusFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfMessageFont);
- getLOGFONTWFields(env, lpObject1, &lpStruct->lfMessageFont);
- }
- return lpStruct;
-}
-
-void setNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSW *lpStruct)
-{
- if (!NONCLIENTMETRICSWFc.cached) cacheNONCLIENTMETRICSWFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth, (jint)lpStruct->iBorderWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth, (jint)lpStruct->iScrollWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight, (jint)lpStruct->iScrollHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth, (jint)lpStruct->iCaptionWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight, (jint)lpStruct->iCaptionHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth, (jint)lpStruct->iSmCaptionWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight, (jint)lpStruct->iSmCaptionHeight);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth, (jint)lpStruct->iMenuWidth);
- (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight, (jint)lpStruct->iMenuHeight);
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfCaptionFont);
- setLOGFONTWFields(env, lpObject1, &lpStruct->lfCaptionFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfSmCaptionFont);
- setLOGFONTWFields(env, lpObject1, &lpStruct->lfSmCaptionFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfMenuFont);
- setLOGFONTWFields(env, lpObject1, &lpStruct->lfMenuFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfStatusFont);
- setLOGFONTWFields(env, lpObject1, &lpStruct->lfStatusFont);
- }
- {
- jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfMessageFont);
- setLOGFONTWFields(env, lpObject1, &lpStruct->lfMessageFont);
- }
-}
-#endif
-
-#ifndef NO_OPENFILENAME
-typedef struct OPENFILENAME_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lStructSize, hwndOwner, hInstance, lpstrFilter, lpstrCustomFilter, nMaxCustFilter, nFilterIndex, lpstrFile, nMaxFile, lpstrFileTitle, nMaxFileTitle, lpstrInitialDir, lpstrTitle, Flags, nFileOffset, nFileExtension, lpstrDefExt, lCustData, lpfnHook, lpTemplateName;
-} OPENFILENAME_FID_CACHE;
-
-OPENFILENAME_FID_CACHE OPENFILENAMEFc;
-
-void cacheOPENFILENAMEFields(JNIEnv *env, jobject lpObject)
-{
- if (OPENFILENAMEFc.cached) return;
- OPENFILENAMEFc.clazz = (*env)->GetObjectClass(env, lpObject);
- OPENFILENAMEFc.lStructSize = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lStructSize", "I");
- OPENFILENAMEFc.hwndOwner = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "hwndOwner", "I");
- OPENFILENAMEFc.hInstance = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "hInstance", "I");
- OPENFILENAMEFc.lpstrFilter = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrFilter", "I");
- OPENFILENAMEFc.lpstrCustomFilter = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrCustomFilter", "I");
- OPENFILENAMEFc.nMaxCustFilter = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nMaxCustFilter", "I");
- OPENFILENAMEFc.nFilterIndex = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nFilterIndex", "I");
- OPENFILENAMEFc.lpstrFile = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrFile", "I");
- OPENFILENAMEFc.nMaxFile = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nMaxFile", "I");
- OPENFILENAMEFc.lpstrFileTitle = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrFileTitle", "I");
- OPENFILENAMEFc.nMaxFileTitle = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nMaxFileTitle", "I");
- OPENFILENAMEFc.lpstrInitialDir = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrInitialDir", "I");
- OPENFILENAMEFc.lpstrTitle = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrTitle", "I");
- OPENFILENAMEFc.Flags = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "Flags", "I");
- OPENFILENAMEFc.nFileOffset = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nFileOffset", "S");
- OPENFILENAMEFc.nFileExtension = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nFileExtension", "S");
- OPENFILENAMEFc.lpstrDefExt = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrDefExt", "I");
- OPENFILENAMEFc.lCustData = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lCustData", "I");
- OPENFILENAMEFc.lpfnHook = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpfnHook", "I");
- OPENFILENAMEFc.lpTemplateName = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpTemplateName", "I");
- OPENFILENAMEFc.cached = 1;
-}
-
-OPENFILENAME *getOPENFILENAMEFields(JNIEnv *env, jobject lpObject, OPENFILENAME *lpStruct)
-{
- if (!OPENFILENAMEFc.cached) cacheOPENFILENAMEFields(env, lpObject);
- lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lStructSize);
- lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.hwndOwner);
- lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.hInstance);
- lpStruct->lpstrFilter = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrFilter);
- lpStruct->lpstrCustomFilter = (LPTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrCustomFilter);
- lpStruct->nMaxCustFilter = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.nMaxCustFilter);
- lpStruct->nFilterIndex = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.nFilterIndex);
- lpStruct->lpstrFile = (LPTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrFile);
- lpStruct->nMaxFile = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.nMaxFile);
- lpStruct->lpstrFileTitle = (LPTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrFileTitle);
- lpStruct->nMaxFileTitle = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.nMaxFileTitle);
- lpStruct->lpstrInitialDir = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrInitialDir);
- lpStruct->lpstrTitle = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrTitle);
- lpStruct->Flags = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.Flags);
- lpStruct->nFileOffset = (*env)->GetShortField(env, lpObject, OPENFILENAMEFc.nFileOffset);
- lpStruct->nFileExtension = (*env)->GetShortField(env, lpObject, OPENFILENAMEFc.nFileExtension);
- lpStruct->lpstrDefExt = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrDefExt);
- lpStruct->lCustData = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lCustData);
- lpStruct->lpfnHook = (LPOFNHOOKPROC)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpfnHook);
- lpStruct->lpTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpTemplateName);
- return lpStruct;
-}
-
-void setOPENFILENAMEFields(JNIEnv *env, jobject lpObject, OPENFILENAME *lpStruct)
-{
- if (!OPENFILENAMEFc.cached) cacheOPENFILENAMEFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lStructSize, (jint)lpStruct->lStructSize);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.hwndOwner, (jint)lpStruct->hwndOwner);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.hInstance, (jint)lpStruct->hInstance);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrFilter, (jint)lpStruct->lpstrFilter);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrCustomFilter, (jint)lpStruct->lpstrCustomFilter);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.nMaxCustFilter, (jint)lpStruct->nMaxCustFilter);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.nFilterIndex, (jint)lpStruct->nFilterIndex);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrFile, (jint)lpStruct->lpstrFile);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.nMaxFile, (jint)lpStruct->nMaxFile);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrFileTitle, (jint)lpStruct->lpstrFileTitle);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.nMaxFileTitle, (jint)lpStruct->nMaxFileTitle);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrInitialDir, (jint)lpStruct->lpstrInitialDir);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrTitle, (jint)lpStruct->lpstrTitle);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.Flags, (jint)lpStruct->Flags);
- (*env)->SetShortField(env, lpObject, OPENFILENAMEFc.nFileOffset, (jshort)lpStruct->nFileOffset);
- (*env)->SetShortField(env, lpObject, OPENFILENAMEFc.nFileExtension, (jshort)lpStruct->nFileExtension);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrDefExt, (jint)lpStruct->lpstrDefExt);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lCustData, (jint)lpStruct->lCustData);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpfnHook, (jint)lpStruct->lpfnHook);
- (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpTemplateName, (jint)lpStruct->lpTemplateName);
-}
-#endif
-
-#ifndef NO_OSVERSIONINFO
-typedef struct OSVERSIONINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID dwOSVersionInfoSize, dwMajorVersion, dwMinorVersion, dwBuildNumber, dwPlatformId;
-} OSVERSIONINFO_FID_CACHE;
-
-OSVERSIONINFO_FID_CACHE OSVERSIONINFOFc;
-
-void cacheOSVERSIONINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (OSVERSIONINFOFc.cached) return;
- OSVERSIONINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- OSVERSIONINFOFc.dwOSVersionInfoSize = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwOSVersionInfoSize", "I");
- OSVERSIONINFOFc.dwMajorVersion = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwMajorVersion", "I");
- OSVERSIONINFOFc.dwMinorVersion = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwMinorVersion", "I");
- OSVERSIONINFOFc.dwBuildNumber = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwBuildNumber", "I");
- OSVERSIONINFOFc.dwPlatformId = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwPlatformId", "I");
- OSVERSIONINFOFc.cached = 1;
-}
-
-OSVERSIONINFO *getOSVERSIONINFOFields(JNIEnv *env, jobject lpObject, OSVERSIONINFO *lpStruct)
-{
- if (!OSVERSIONINFOFc.cached) cacheOSVERSIONINFOFields(env, lpObject);
- lpStruct->dwOSVersionInfoSize = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize);
- lpStruct->dwMajorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion);
- lpStruct->dwMinorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion);
- lpStruct->dwBuildNumber = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber);
- lpStruct->dwPlatformId = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId);
- return lpStruct;
-}
-
-void setOSVERSIONINFOFields(JNIEnv *env, jobject lpObject, OSVERSIONINFO *lpStruct)
-{
- if (!OSVERSIONINFOFc.cached) cacheOSVERSIONINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize, (jint)lpStruct->dwOSVersionInfoSize);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion, (jint)lpStruct->dwMajorVersion);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion, (jint)lpStruct->dwMinorVersion);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber, (jint)lpStruct->dwBuildNumber);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId, (jint)lpStruct->dwPlatformId);
-}
-#endif
-
-#ifndef NO_OSVERSIONINFOA
-typedef struct OSVERSIONINFOA_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID szCSDVersion;
-} OSVERSIONINFOA_FID_CACHE;
-
-OSVERSIONINFOA_FID_CACHE OSVERSIONINFOAFc;
-
-void cacheOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject)
-{
- if (OSVERSIONINFOAFc.cached) return;
- cacheOSVERSIONINFOFields(env, lpObject);
- OSVERSIONINFOAFc.clazz = (*env)->GetObjectClass(env, lpObject);
- OSVERSIONINFOAFc.szCSDVersion = (*env)->GetFieldID(env, OSVERSIONINFOAFc.clazz, "szCSDVersion", "[B");
- OSVERSIONINFOAFc.cached = 1;
-}
-
-OSVERSIONINFOA *getOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOA *lpStruct)
-{
- if (!OSVERSIONINFOAFc.cached) cacheOSVERSIONINFOAFields(env, lpObject);
- lpStruct->dwOSVersionInfoSize = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize);
- lpStruct->dwMajorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion);
- lpStruct->dwMinorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion);
- lpStruct->dwBuildNumber = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber);
- lpStruct->dwPlatformId = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId);
- {
- jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, OSVERSIONINFOAFc.szCSDVersion);
- (*env)->GetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szCSDVersion), (void *)lpStruct->szCSDVersion);
- }
- return lpStruct;
-}
-
-void setOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOA *lpStruct)
-{
- if (!OSVERSIONINFOAFc.cached) cacheOSVERSIONINFOAFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize, (jint)lpStruct->dwOSVersionInfoSize);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion, (jint)lpStruct->dwMajorVersion);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion, (jint)lpStruct->dwMinorVersion);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber, (jint)lpStruct->dwBuildNumber);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId, (jint)lpStruct->dwPlatformId);
- {
- jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, OSVERSIONINFOAFc.szCSDVersion);
- (*env)->SetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szCSDVersion), (void *)lpStruct->szCSDVersion);
- }
-}
-#endif
-
-#ifndef NO_OSVERSIONINFOW
-typedef struct OSVERSIONINFOW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID szCSDVersion;
-} OSVERSIONINFOW_FID_CACHE;
-
-OSVERSIONINFOW_FID_CACHE OSVERSIONINFOWFc;
-
-void cacheOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject)
-{
- if (OSVERSIONINFOWFc.cached) return;
- cacheOSVERSIONINFOFields(env, lpObject);
- OSVERSIONINFOWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- OSVERSIONINFOWFc.szCSDVersion = (*env)->GetFieldID(env, OSVERSIONINFOWFc.clazz, "szCSDVersion", "[C");
- OSVERSIONINFOWFc.cached = 1;
-}
-
-OSVERSIONINFOW *getOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOW *lpStruct)
-{
- if (!OSVERSIONINFOWFc.cached) cacheOSVERSIONINFOWFields(env, lpObject);
- lpStruct->dwOSVersionInfoSize = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize);
- lpStruct->dwMajorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion);
- lpStruct->dwMinorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion);
- lpStruct->dwBuildNumber = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber);
- lpStruct->dwPlatformId = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId);
- {
- jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, OSVERSIONINFOWFc.szCSDVersion);
- (*env)->GetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szCSDVersion) / 2, (void *)lpStruct->szCSDVersion);
- }
- return lpStruct;
-}
-
-void setOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOW *lpStruct)
-{
- if (!OSVERSIONINFOWFc.cached) cacheOSVERSIONINFOWFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize, (jint)lpStruct->dwOSVersionInfoSize);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion, (jint)lpStruct->dwMajorVersion);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion, (jint)lpStruct->dwMinorVersion);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber, (jint)lpStruct->dwBuildNumber);
- (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId, (jint)lpStruct->dwPlatformId);
- {
- jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, OSVERSIONINFOWFc.szCSDVersion);
- (*env)->SetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szCSDVersion) / 2, (void *)lpStruct->szCSDVersion);
- }
-}
-#endif
-
-#ifndef NO_PAINTSTRUCT
-typedef struct PAINTSTRUCT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID hdc, fErase, left, top, right, bottom, fRestore, fIncUpdate, rgbReserved;
-} PAINTSTRUCT_FID_CACHE;
-
-PAINTSTRUCT_FID_CACHE PAINTSTRUCTFc;
-
-void cachePAINTSTRUCTFields(JNIEnv *env, jobject lpObject)
-{
- if (PAINTSTRUCTFc.cached) return;
- PAINTSTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- PAINTSTRUCTFc.hdc = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "hdc", "I");
- PAINTSTRUCTFc.fErase = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "fErase", "Z");
- PAINTSTRUCTFc.left = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "left", "I");
- PAINTSTRUCTFc.top = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "top", "I");
- PAINTSTRUCTFc.right = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "right", "I");
- PAINTSTRUCTFc.bottom = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "bottom", "I");
- PAINTSTRUCTFc.fRestore = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "fRestore", "Z");
- PAINTSTRUCTFc.fIncUpdate = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "fIncUpdate", "Z");
- PAINTSTRUCTFc.rgbReserved = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "rgbReserved", "[B");
- PAINTSTRUCTFc.cached = 1;
-}
-
-PAINTSTRUCT *getPAINTSTRUCTFields(JNIEnv *env, jobject lpObject, PAINTSTRUCT *lpStruct)
-{
- if (!PAINTSTRUCTFc.cached) cachePAINTSTRUCTFields(env, lpObject);
- lpStruct->hdc = (HDC)(*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.hdc);
- lpStruct->fErase = (*env)->GetBooleanField(env, lpObject, PAINTSTRUCTFc.fErase);
- lpStruct->rcPaint.left = (*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.left);
- lpStruct->rcPaint.top = (*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.top);
- lpStruct->rcPaint.right = (*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.right);
- lpStruct->rcPaint.bottom = (*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.bottom);
- lpStruct->fRestore = (*env)->GetBooleanField(env, lpObject, PAINTSTRUCTFc.fRestore);
- lpStruct->fIncUpdate = (*env)->GetBooleanField(env, lpObject, PAINTSTRUCTFc.fIncUpdate);
- {
- jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, PAINTSTRUCTFc.rgbReserved);
- (*env)->GetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->rgbReserved), (void *)lpStruct->rgbReserved);
- }
- return lpStruct;
-}
-
-void setPAINTSTRUCTFields(JNIEnv *env, jobject lpObject, PAINTSTRUCT *lpStruct)
-{
- if (!PAINTSTRUCTFc.cached) cachePAINTSTRUCTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.hdc, (jint)lpStruct->hdc);
- (*env)->SetBooleanField(env, lpObject, PAINTSTRUCTFc.fErase, (jboolean)lpStruct->fErase);
- (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.left, (jint)lpStruct->rcPaint.left);
- (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.top, (jint)lpStruct->rcPaint.top);
- (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.right, (jint)lpStruct->rcPaint.right);
- (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.bottom, (jint)lpStruct->rcPaint.bottom);
- (*env)->SetBooleanField(env, lpObject, PAINTSTRUCTFc.fRestore, (jboolean)lpStruct->fRestore);
- (*env)->SetBooleanField(env, lpObject, PAINTSTRUCTFc.fIncUpdate, (jboolean)lpStruct->fIncUpdate);
- {
- jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, PAINTSTRUCTFc.rgbReserved);
- (*env)->SetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->rgbReserved), (void *)lpStruct->rgbReserved);
- }
-}
-#endif
-
-#ifndef NO_POINT
-typedef struct POINT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID x, y;
-} POINT_FID_CACHE;
-
-POINT_FID_CACHE POINTFc;
-
-void cachePOINTFields(JNIEnv *env, jobject lpObject)
-{
- if (POINTFc.cached) return;
- POINTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- POINTFc.x = (*env)->GetFieldID(env, POINTFc.clazz, "x", "I");
- POINTFc.y = (*env)->GetFieldID(env, POINTFc.clazz, "y", "I");
- POINTFc.cached = 1;
-}
-
-POINT *getPOINTFields(JNIEnv *env, jobject lpObject, POINT *lpStruct)
-{
- if (!POINTFc.cached) cachePOINTFields(env, lpObject);
- lpStruct->x = (*env)->GetIntField(env, lpObject, POINTFc.x);
- lpStruct->y = (*env)->GetIntField(env, lpObject, POINTFc.y);
- return lpStruct;
-}
-
-void setPOINTFields(JNIEnv *env, jobject lpObject, POINT *lpStruct)
-{
- if (!POINTFc.cached) cachePOINTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, POINTFc.x, (jint)lpStruct->x);
- (*env)->SetIntField(env, lpObject, POINTFc.y, (jint)lpStruct->y);
-}
-#endif
-
-#ifndef NO_PRINTDLG
-typedef struct PRINTDLG_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID lStructSize, hwndOwner, hDevMode, hDevNames, hDC, Flags, nFromPage, nToPage, nMinPage, nMaxPage, nCopies, hInstance, lCustData, lpfnPrintHook, lpfnSetupHook, lpPrintTemplateName, lpSetupTemplateName, hPrintTemplate, hSetupTemplate;
-} PRINTDLG_FID_CACHE;
-
-PRINTDLG_FID_CACHE PRINTDLGFc;
-
-void cachePRINTDLGFields(JNIEnv *env, jobject lpObject)
-{
- if (PRINTDLGFc.cached) return;
- PRINTDLGFc.clazz = (*env)->GetObjectClass(env, lpObject);
- PRINTDLGFc.lStructSize = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lStructSize", "I");
- PRINTDLGFc.hwndOwner = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hwndOwner", "I");
- PRINTDLGFc.hDevMode = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hDevMode", "I");
- PRINTDLGFc.hDevNames = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hDevNames", "I");
- PRINTDLGFc.hDC = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hDC", "I");
- PRINTDLGFc.Flags = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "Flags", "I");
- PRINTDLGFc.nFromPage = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nFromPage", "S");
- PRINTDLGFc.nToPage = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nToPage", "S");
- PRINTDLGFc.nMinPage = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nMinPage", "S");
- PRINTDLGFc.nMaxPage = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nMaxPage", "S");
- PRINTDLGFc.nCopies = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nCopies", "S");
- PRINTDLGFc.hInstance = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hInstance", "I");
- PRINTDLGFc.lCustData = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lCustData", "I");
- PRINTDLGFc.lpfnPrintHook = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lpfnPrintHook", "I");
- PRINTDLGFc.lpfnSetupHook = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lpfnSetupHook", "I");
- PRINTDLGFc.lpPrintTemplateName = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lpPrintTemplateName", "I");
- PRINTDLGFc.lpSetupTemplateName = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lpSetupTemplateName", "I");
- PRINTDLGFc.hPrintTemplate = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hPrintTemplate", "I");
- PRINTDLGFc.hSetupTemplate = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hSetupTemplate", "I");
- PRINTDLGFc.cached = 1;
-}
-
-PRINTDLG *getPRINTDLGFields(JNIEnv *env, jobject lpObject, PRINTDLG *lpStruct)
-{
- if (!PRINTDLGFc.cached) cachePRINTDLGFields(env, lpObject);
- lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, PRINTDLGFc.lStructSize);
- lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hwndOwner);
- lpStruct->hDevMode = (HGLOBAL)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hDevMode);
- lpStruct->hDevNames = (HGLOBAL)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hDevNames);
- lpStruct->hDC = (HDC)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hDC);
- lpStruct->Flags = (*env)->GetIntField(env, lpObject, PRINTDLGFc.Flags);
- lpStruct->nFromPage = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nFromPage);
- lpStruct->nToPage = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nToPage);
- lpStruct->nMinPage = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nMinPage);
- lpStruct->nMaxPage = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nMaxPage);
- lpStruct->nCopies = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nCopies);
- lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hInstance);
- lpStruct->lCustData = (*env)->GetIntField(env, lpObject, PRINTDLGFc.lCustData);
- lpStruct->lpfnPrintHook = (LPPRINTHOOKPROC)(*env)->GetIntField(env, lpObject, PRINTDLGFc.lpfnPrintHook);
- lpStruct->lpfnSetupHook = (LPPRINTHOOKPROC)(*env)->GetIntField(env, lpObject, PRINTDLGFc.lpfnSetupHook);
- lpStruct->lpPrintTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, PRINTDLGFc.lpPrintTemplateName);
- lpStruct->lpSetupTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, PRINTDLGFc.lpSetupTemplateName);
- lpStruct->hPrintTemplate = (HGLOBAL)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hPrintTemplate);
- lpStruct->hSetupTemplate = (HGLOBAL)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hSetupTemplate);
- return lpStruct;
-}
-
-void setPRINTDLGFields(JNIEnv *env, jobject lpObject, PRINTDLG *lpStruct)
-{
- if (!PRINTDLGFc.cached) cachePRINTDLGFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.lStructSize, (jint)lpStruct->lStructSize);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.hwndOwner, (jint)lpStruct->hwndOwner);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.hDevMode, (jint)lpStruct->hDevMode);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.hDevNames, (jint)lpStruct->hDevNames);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.hDC, (jint)lpStruct->hDC);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.Flags, (jint)lpStruct->Flags);
- (*env)->SetShortField(env, lpObject, PRINTDLGFc.nFromPage, (jshort)lpStruct->nFromPage);
- (*env)->SetShortField(env, lpObject, PRINTDLGFc.nToPage, (jshort)lpStruct->nToPage);
- (*env)->SetShortField(env, lpObject, PRINTDLGFc.nMinPage, (jshort)lpStruct->nMinPage);
- (*env)->SetShortField(env, lpObject, PRINTDLGFc.nMaxPage, (jshort)lpStruct->nMaxPage);
- (*env)->SetShortField(env, lpObject, PRINTDLGFc.nCopies, (jshort)lpStruct->nCopies);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.hInstance, (jint)lpStruct->hInstance);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.lCustData, (jint)lpStruct->lCustData);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.lpfnPrintHook, (jint)lpStruct->lpfnPrintHook);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.lpfnSetupHook, (jint)lpStruct->lpfnSetupHook);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.lpPrintTemplateName, (jint)lpStruct->lpPrintTemplateName);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.lpSetupTemplateName, (jint)lpStruct->lpSetupTemplateName);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.hPrintTemplate, (jint)lpStruct->hPrintTemplate);
- (*env)->SetIntField(env, lpObject, PRINTDLGFc.hSetupTemplate, (jint)lpStruct->hSetupTemplate);
-}
-#endif
-
-#ifndef NO_REBARBANDINFO
-typedef struct REBARBANDINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, fMask, fStyle, clrFore, clrBack, lpText, cch, iImage, hwndChild, cxMinChild, cyMinChild, cx, hbmBack, wID, cyChild, cyMaxChild, cyIntegral, cxIdeal, lParam, cxHeader;
-} REBARBANDINFO_FID_CACHE;
-
-REBARBANDINFO_FID_CACHE REBARBANDINFOFc;
-
-void cacheREBARBANDINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (REBARBANDINFOFc.cached) return;
- REBARBANDINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- REBARBANDINFOFc.cbSize = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cbSize", "I");
- REBARBANDINFOFc.fMask = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "fMask", "I");
- REBARBANDINFOFc.fStyle = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "fStyle", "I");
- REBARBANDINFOFc.clrFore = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "clrFore", "I");
- REBARBANDINFOFc.clrBack = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "clrBack", "I");
- REBARBANDINFOFc.lpText = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "lpText", "I");
- REBARBANDINFOFc.cch = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cch", "I");
- REBARBANDINFOFc.iImage = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "iImage", "I");
- REBARBANDINFOFc.hwndChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "hwndChild", "I");
- REBARBANDINFOFc.cxMinChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cxMinChild", "I");
- REBARBANDINFOFc.cyMinChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cyMinChild", "I");
- REBARBANDINFOFc.cx = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cx", "I");
- REBARBANDINFOFc.hbmBack = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "hbmBack", "I");
- REBARBANDINFOFc.wID = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "wID", "I");
- REBARBANDINFOFc.cyChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cyChild", "I");
- REBARBANDINFOFc.cyMaxChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cyMaxChild", "I");
- REBARBANDINFOFc.cyIntegral = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cyIntegral", "I");
- REBARBANDINFOFc.cxIdeal = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cxIdeal", "I");
- REBARBANDINFOFc.lParam = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "lParam", "I");
- REBARBANDINFOFc.cxHeader = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cxHeader", "I");
- REBARBANDINFOFc.cached = 1;
-}
-
-REBARBANDINFO *getREBARBANDINFOFields(JNIEnv *env, jobject lpObject, REBARBANDINFO *lpStruct)
-{
- if (!REBARBANDINFOFc.cached) cacheREBARBANDINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cbSize);
- lpStruct->fMask = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.fMask);
- lpStruct->fStyle = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.fStyle);
- lpStruct->clrFore = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.clrFore);
- lpStruct->clrBack = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.clrBack);
- lpStruct->lpText = (LPTSTR)(*env)->GetIntField(env, lpObject, REBARBANDINFOFc.lpText);
- lpStruct->cch = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cch);
- lpStruct->iImage = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.iImage);
- lpStruct->hwndChild = (HWND)(*env)->GetIntField(env, lpObject, REBARBANDINFOFc.hwndChild);
- lpStruct->cxMinChild = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cxMinChild);
- lpStruct->cyMinChild = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cyMinChild);
- lpStruct->cx = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cx);
- lpStruct->hbmBack = (HBITMAP)(*env)->GetIntField(env, lpObject, REBARBANDINFOFc.hbmBack);
- lpStruct->wID = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.wID);
- lpStruct->cyChild = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cyChild);
- lpStruct->cyMaxChild = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cyMaxChild);
- lpStruct->cyIntegral = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cyIntegral);
- lpStruct->cxIdeal = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cxIdeal);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.lParam);
-#ifndef _WIN32_WCE
- lpStruct->cxHeader = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cxHeader);
-#endif
- return lpStruct;
-}
-
-void setREBARBANDINFOFields(JNIEnv *env, jobject lpObject, REBARBANDINFO *lpStruct)
-{
- if (!REBARBANDINFOFc.cached) cacheREBARBANDINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.fMask, (jint)lpStruct->fMask);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.fStyle, (jint)lpStruct->fStyle);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.clrFore, (jint)lpStruct->clrFore);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.clrBack, (jint)lpStruct->clrBack);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.lpText, (jint)lpStruct->lpText);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cch, (jint)lpStruct->cch);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.iImage, (jint)lpStruct->iImage);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.hwndChild, (jint)lpStruct->hwndChild);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cxMinChild, (jint)lpStruct->cxMinChild);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cyMinChild, (jint)lpStruct->cyMinChild);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cx, (jint)lpStruct->cx);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.hbmBack, (jint)lpStruct->hbmBack);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.wID, (jint)lpStruct->wID);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cyChild, (jint)lpStruct->cyChild);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cyMaxChild, (jint)lpStruct->cyMaxChild);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cyIntegral, (jint)lpStruct->cyIntegral);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cxIdeal, (jint)lpStruct->cxIdeal);
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.lParam, (jint)lpStruct->lParam);
-#ifndef _WIN32_WCE
- (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cxHeader, (jint)lpStruct->cxHeader);
-#endif
-}
-#endif
-
-#ifndef NO_RECT
-typedef struct RECT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID left, top, right, bottom;
-} RECT_FID_CACHE;
-
-RECT_FID_CACHE RECTFc;
-
-void cacheRECTFields(JNIEnv *env, jobject lpObject)
-{
- if (RECTFc.cached) return;
- RECTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- RECTFc.left = (*env)->GetFieldID(env, RECTFc.clazz, "left", "I");
- RECTFc.top = (*env)->GetFieldID(env, RECTFc.clazz, "top", "I");
- RECTFc.right = (*env)->GetFieldID(env, RECTFc.clazz, "right", "I");
- RECTFc.bottom = (*env)->GetFieldID(env, RECTFc.clazz, "bottom", "I");
- RECTFc.cached = 1;
-}
-
-RECT *getRECTFields(JNIEnv *env, jobject lpObject, RECT *lpStruct)
-{
- if (!RECTFc.cached) cacheRECTFields(env, lpObject);
- lpStruct->left = (*env)->GetIntField(env, lpObject, RECTFc.left);
- lpStruct->top = (*env)->GetIntField(env, lpObject, RECTFc.top);
- lpStruct->right = (*env)->GetIntField(env, lpObject, RECTFc.right);
- lpStruct->bottom = (*env)->GetIntField(env, lpObject, RECTFc.bottom);
- return lpStruct;
-}
-
-void setRECTFields(JNIEnv *env, jobject lpObject, RECT *lpStruct)
-{
- if (!RECTFc.cached) cacheRECTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, RECTFc.left, (jint)lpStruct->left);
- (*env)->SetIntField(env, lpObject, RECTFc.top, (jint)lpStruct->top);
- (*env)->SetIntField(env, lpObject, RECTFc.right, (jint)lpStruct->right);
- (*env)->SetIntField(env, lpObject, RECTFc.bottom, (jint)lpStruct->bottom);
-}
-#endif
-
-#ifndef NO_SCROLLINFO
-typedef struct SCROLLINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, fMask, nMin, nMax, nPage, nPos, nTrackPos;
-} SCROLLINFO_FID_CACHE;
-
-SCROLLINFO_FID_CACHE SCROLLINFOFc;
-
-void cacheSCROLLINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (SCROLLINFOFc.cached) return;
- SCROLLINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- SCROLLINFOFc.cbSize = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "cbSize", "I");
- SCROLLINFOFc.fMask = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "fMask", "I");
- SCROLLINFOFc.nMin = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nMin", "I");
- SCROLLINFOFc.nMax = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nMax", "I");
- SCROLLINFOFc.nPage = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nPage", "I");
- SCROLLINFOFc.nPos = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nPos", "I");
- SCROLLINFOFc.nTrackPos = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nTrackPos", "I");
- SCROLLINFOFc.cached = 1;
-}
-
-SCROLLINFO *getSCROLLINFOFields(JNIEnv *env, jobject lpObject, SCROLLINFO *lpStruct)
-{
- if (!SCROLLINFOFc.cached) cacheSCROLLINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.cbSize);
- lpStruct->fMask = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.fMask);
- lpStruct->nMin = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nMin);
- lpStruct->nMax = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nMax);
- lpStruct->nPage = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nPage);
- lpStruct->nPos = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nPos);
- lpStruct->nTrackPos = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nTrackPos);
- return lpStruct;
-}
-
-void setSCROLLINFOFields(JNIEnv *env, jobject lpObject, SCROLLINFO *lpStruct)
-{
- if (!SCROLLINFOFc.cached) cacheSCROLLINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, SCROLLINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, SCROLLINFOFc.fMask, (jint)lpStruct->fMask);
- (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nMin, (jint)lpStruct->nMin);
- (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nMax, (jint)lpStruct->nMax);
- (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nPage, (jint)lpStruct->nPage);
- (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nPos, (jint)lpStruct->nPos);
- (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nTrackPos, (jint)lpStruct->nTrackPos);
-}
-#endif
-
-#ifndef NO_SHACTIVATEINFO
-typedef struct SHACTIVATEINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, hwndLastFocus, fSipUp, fSipOnDeactivation, fActive, fReserved;
-} SHACTIVATEINFO_FID_CACHE;
-
-SHACTIVATEINFO_FID_CACHE SHACTIVATEINFOFc;
-
-void cacheSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (SHACTIVATEINFOFc.cached) return;
- SHACTIVATEINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- SHACTIVATEINFOFc.cbSize = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "cbSize", "I");
- SHACTIVATEINFOFc.hwndLastFocus = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "hwndLastFocus", "I");
- SHACTIVATEINFOFc.fSipUp = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "fSipUp", "I");
- SHACTIVATEINFOFc.fSipOnDeactivation = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "fSipOnDeactivation", "I");
- SHACTIVATEINFOFc.fActive = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "fActive", "I");
- SHACTIVATEINFOFc.fReserved = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "fReserved", "I");
- SHACTIVATEINFOFc.cached = 1;
-}
-
-SHACTIVATEINFO *getSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject, SHACTIVATEINFO *lpStruct)
-{
- if (!SHACTIVATEINFOFc.cached) cacheSHACTIVATEINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.cbSize);
- lpStruct->hwndLastFocus = (HWND)(*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.hwndLastFocus);
- lpStruct->fSipUp = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.fSipUp);
- lpStruct->fSipOnDeactivation = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.fSipOnDeactivation);
- lpStruct->fActive = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.fActive);
- lpStruct->fReserved = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.fReserved);
- return lpStruct;
-}
-
-void setSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject, SHACTIVATEINFO *lpStruct)
-{
- if (!SHACTIVATEINFOFc.cached) cacheSHACTIVATEINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.hwndLastFocus, (jint)lpStruct->hwndLastFocus);
- (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.fSipUp, (jint)lpStruct->fSipUp);
- (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.fSipOnDeactivation, (jint)lpStruct->fSipOnDeactivation);
- (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.fActive, (jint)lpStruct->fActive);
- (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.fReserved, (jint)lpStruct->fReserved);
-}
-#endif
-
-#ifndef NO_SHELLEXECUTEINFO
-typedef struct SHELLEXECUTEINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, fMask, hwnd, lpVerb, lpFile, lpParameters, lpDirectory, nShow, hInstApp, lpIDList, lpClass, hkeyClass, dwHotKey, hIcon, hProcess;
-} SHELLEXECUTEINFO_FID_CACHE;
-
-SHELLEXECUTEINFO_FID_CACHE SHELLEXECUTEINFOFc;
-
-void cacheSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (SHELLEXECUTEINFOFc.cached) return;
- SHELLEXECUTEINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- SHELLEXECUTEINFOFc.cbSize = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "cbSize", "I");
- SHELLEXECUTEINFOFc.fMask = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "fMask", "I");
- SHELLEXECUTEINFOFc.hwnd = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hwnd", "I");
- SHELLEXECUTEINFOFc.lpVerb = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpVerb", "I");
- SHELLEXECUTEINFOFc.lpFile = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpFile", "I");
- SHELLEXECUTEINFOFc.lpParameters = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpParameters", "I");
- SHELLEXECUTEINFOFc.lpDirectory = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpDirectory", "I");
- SHELLEXECUTEINFOFc.nShow = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "nShow", "I");
- SHELLEXECUTEINFOFc.hInstApp = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hInstApp", "I");
- SHELLEXECUTEINFOFc.lpIDList = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpIDList", "I");
- SHELLEXECUTEINFOFc.lpClass = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpClass", "I");
- SHELLEXECUTEINFOFc.hkeyClass = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hkeyClass", "I");
- SHELLEXECUTEINFOFc.dwHotKey = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "dwHotKey", "I");
- SHELLEXECUTEINFOFc.hIcon = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hIcon", "I");
- SHELLEXECUTEINFOFc.hProcess = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hProcess", "I");
- SHELLEXECUTEINFOFc.cached = 1;
-}
-
-SHELLEXECUTEINFO *getSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject, SHELLEXECUTEINFO *lpStruct)
-{
- if (!SHELLEXECUTEINFOFc.cached) cacheSHELLEXECUTEINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.cbSize);
- lpStruct->fMask = (*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.fMask);
- lpStruct->hwnd = (HWND)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hwnd);
- lpStruct->lpVerb = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpVerb);
- lpStruct->lpFile = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpFile);
- lpStruct->lpParameters = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpParameters);
- lpStruct->lpDirectory = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpDirectory);
- lpStruct->nShow = (*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.nShow);
- lpStruct->hInstApp = (HINSTANCE)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hInstApp);
- lpStruct->lpIDList = (LPVOID)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpIDList);
- lpStruct->lpClass = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpClass);
- lpStruct->hkeyClass = (HKEY)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hkeyClass);
- lpStruct->dwHotKey = (*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.dwHotKey);
- lpStruct->hIcon = (HANDLE)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hIcon);
- lpStruct->hProcess = (HANDLE)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hProcess);
- return lpStruct;
-}
-
-void setSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject, SHELLEXECUTEINFO *lpStruct)
-{
- if (!SHELLEXECUTEINFOFc.cached) cacheSHELLEXECUTEINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.fMask, (jint)lpStruct->fMask);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hwnd, (jint)lpStruct->hwnd);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpVerb, (jint)lpStruct->lpVerb);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpFile, (jint)lpStruct->lpFile);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpParameters, (jint)lpStruct->lpParameters);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpDirectory, (jint)lpStruct->lpDirectory);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.nShow, (jint)lpStruct->nShow);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hInstApp, (jint)lpStruct->hInstApp);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpIDList, (jint)lpStruct->lpIDList);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpClass, (jint)lpStruct->lpClass);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hkeyClass, (jint)lpStruct->hkeyClass);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.dwHotKey, (jint)lpStruct->dwHotKey);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hIcon, (jint)lpStruct->hIcon);
- (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hProcess, (jint)lpStruct->hProcess);
-}
-#endif
-
-#ifndef NO_SHMENUBARINFO
-typedef struct SHMENUBARINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, hwndParent, dwFlags, nToolBarId, hInstRes, nBmpId, cBmpImages, hwndMB;
-} SHMENUBARINFO_FID_CACHE;
-
-SHMENUBARINFO_FID_CACHE SHMENUBARINFOFc;
-
-void cacheSHMENUBARINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (SHMENUBARINFOFc.cached) return;
- SHMENUBARINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- SHMENUBARINFOFc.cbSize = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "cbSize", "I");
- SHMENUBARINFOFc.hwndParent = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "hwndParent", "I");
- SHMENUBARINFOFc.dwFlags = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "dwFlags", "I");
- SHMENUBARINFOFc.nToolBarId = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "nToolBarId", "I");
- SHMENUBARINFOFc.hInstRes = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "hInstRes", "I");
- SHMENUBARINFOFc.nBmpId = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "nBmpId", "I");
- SHMENUBARINFOFc.cBmpImages = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "cBmpImages", "I");
- SHMENUBARINFOFc.hwndMB = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "hwndMB", "I");
- SHMENUBARINFOFc.cached = 1;
-}
-
-SHMENUBARINFO *getSHMENUBARINFOFields(JNIEnv *env, jobject lpObject, SHMENUBARINFO *lpStruct)
-{
- if (!SHMENUBARINFOFc.cached) cacheSHMENUBARINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.cbSize);
- lpStruct->hwndParent = (HWND)(*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.hwndParent);
- lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.dwFlags);
- lpStruct->nToolBarId = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.nToolBarId);
- lpStruct->hInstRes = (HINSTANCE)(*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.hInstRes);
- lpStruct->nBmpId = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.nBmpId);
- lpStruct->cBmpImages = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.cBmpImages);
- lpStruct->hwndMB = (HWND)(*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.hwndMB);
- return lpStruct;
-}
-
-void setSHMENUBARINFOFields(JNIEnv *env, jobject lpObject, SHMENUBARINFO *lpStruct)
-{
- if (!SHMENUBARINFOFc.cached) cacheSHMENUBARINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.hwndParent, (jint)lpStruct->hwndParent);
- (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.dwFlags, (jint)lpStruct->dwFlags);
- (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.nToolBarId, (jint)lpStruct->nToolBarId);
- (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.hInstRes, (jint)lpStruct->hInstRes);
- (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.nBmpId, (jint)lpStruct->nBmpId);
- (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.cBmpImages, (jint)lpStruct->cBmpImages);
- (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.hwndMB, (jint)lpStruct->hwndMB);
-}
-#endif
-
-#ifndef NO_SHRGINFO
-typedef struct SHRGINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, hwndClient, ptDown_x, ptDown_y, dwFlags;
-} SHRGINFO_FID_CACHE;
-
-SHRGINFO_FID_CACHE SHRGINFOFc;
-
-void cacheSHRGINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (SHRGINFOFc.cached) return;
- SHRGINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- SHRGINFOFc.cbSize = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "cbSize", "I");
- SHRGINFOFc.hwndClient = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "hwndClient", "I");
- SHRGINFOFc.ptDown_x = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "ptDown_x", "I");
- SHRGINFOFc.ptDown_y = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "ptDown_y", "I");
- SHRGINFOFc.dwFlags = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "dwFlags", "I");
- SHRGINFOFc.cached = 1;
-}
-
-SHRGINFO *getSHRGINFOFields(JNIEnv *env, jobject lpObject, SHRGINFO *lpStruct)
-{
- if (!SHRGINFOFc.cached) cacheSHRGINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SHRGINFOFc.cbSize);
- lpStruct->hwndClient = (HWND)(*env)->GetIntField(env, lpObject, SHRGINFOFc.hwndClient);
- lpStruct->ptDown.x = (*env)->GetIntField(env, lpObject, SHRGINFOFc.ptDown_x);
- lpStruct->ptDown.y = (*env)->GetIntField(env, lpObject, SHRGINFOFc.ptDown_y);
- lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, SHRGINFOFc.dwFlags);
- return lpStruct;
-}
-
-void setSHRGINFOFields(JNIEnv *env, jobject lpObject, SHRGINFO *lpStruct)
-{
- if (!SHRGINFOFc.cached) cacheSHRGINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, SHRGINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, SHRGINFOFc.hwndClient, (jint)lpStruct->hwndClient);
- (*env)->SetIntField(env, lpObject, SHRGINFOFc.ptDown_x, (jint)lpStruct->ptDown.x);
- (*env)->SetIntField(env, lpObject, SHRGINFOFc.ptDown_y, (jint)lpStruct->ptDown.y);
- (*env)->SetIntField(env, lpObject, SHRGINFOFc.dwFlags, (jint)lpStruct->dwFlags);
-}
-#endif
-
-#ifndef NO_SIPINFO
-typedef struct SIPINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, fdwFlags, rcVisibleDesktop_left, rcVisibleDesktop_top, rcVisibleDesktop_right, rcVisibleDesktop_bottom, rcSipRect_left, rcSipRect_top, rcSipRect_right, rcSipRect_bottom, dwImDataSize, pvImData;
-} SIPINFO_FID_CACHE;
-
-SIPINFO_FID_CACHE SIPINFOFc;
-
-void cacheSIPINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (SIPINFOFc.cached) return;
- SIPINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- SIPINFOFc.cbSize = (*env)->GetFieldID(env, SIPINFOFc.clazz, "cbSize", "I");
- SIPINFOFc.fdwFlags = (*env)->GetFieldID(env, SIPINFOFc.clazz, "fdwFlags", "I");
- SIPINFOFc.rcVisibleDesktop_left = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcVisibleDesktop_left", "I");
- SIPINFOFc.rcVisibleDesktop_top = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcVisibleDesktop_top", "I");
- SIPINFOFc.rcVisibleDesktop_right = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcVisibleDesktop_right", "I");
- SIPINFOFc.rcVisibleDesktop_bottom = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcVisibleDesktop_bottom", "I");
- SIPINFOFc.rcSipRect_left = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcSipRect_left", "I");
- SIPINFOFc.rcSipRect_top = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcSipRect_top", "I");
- SIPINFOFc.rcSipRect_right = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcSipRect_right", "I");
- SIPINFOFc.rcSipRect_bottom = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcSipRect_bottom", "I");
- SIPINFOFc.dwImDataSize = (*env)->GetFieldID(env, SIPINFOFc.clazz, "dwImDataSize", "I");
- SIPINFOFc.pvImData = (*env)->GetFieldID(env, SIPINFOFc.clazz, "pvImData", "I");
- SIPINFOFc.cached = 1;
-}
-
-SIPINFO *getSIPINFOFields(JNIEnv *env, jobject lpObject, SIPINFO *lpStruct)
-{
- if (!SIPINFOFc.cached) cacheSIPINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SIPINFOFc.cbSize);
- lpStruct->fdwFlags = (*env)->GetIntField(env, lpObject, SIPINFOFc.fdwFlags);
- lpStruct->rcVisibleDesktop.left = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_left);
- lpStruct->rcVisibleDesktop.top = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_top);
- lpStruct->rcVisibleDesktop.right = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_right);
- lpStruct->rcVisibleDesktop.bottom = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_bottom);
- lpStruct->rcSipRect.left = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcSipRect_left);
- lpStruct->rcSipRect.top = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcSipRect_top);
- lpStruct->rcSipRect.right = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcSipRect_right);
- lpStruct->rcSipRect.bottom = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcSipRect_bottom);
- lpStruct->dwImDataSize = (*env)->GetIntField(env, lpObject, SIPINFOFc.dwImDataSize);
- lpStruct->pvImData = (void *)(*env)->GetIntField(env, lpObject, SIPINFOFc.pvImData);
- return lpStruct;
-}
-
-void setSIPINFOFields(JNIEnv *env, jobject lpObject, SIPINFO *lpStruct)
-{
- if (!SIPINFOFc.cached) cacheSIPINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.fdwFlags, (jint)lpStruct->fdwFlags);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_left, (jint)lpStruct->rcVisibleDesktop.left);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_top, (jint)lpStruct->rcVisibleDesktop.top);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_right, (jint)lpStruct->rcVisibleDesktop.right);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_bottom, (jint)lpStruct->rcVisibleDesktop.bottom);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.rcSipRect_left, (jint)lpStruct->rcSipRect.left);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.rcSipRect_top, (jint)lpStruct->rcSipRect.top);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.rcSipRect_right, (jint)lpStruct->rcSipRect.right);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.rcSipRect_bottom, (jint)lpStruct->rcSipRect.bottom);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.dwImDataSize, (jint)lpStruct->dwImDataSize);
- (*env)->SetIntField(env, lpObject, SIPINFOFc.pvImData, (jint)lpStruct->pvImData);
-}
-#endif
-
-#ifndef NO_SIZE
-typedef struct SIZE_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cx, cy;
-} SIZE_FID_CACHE;
-
-SIZE_FID_CACHE SIZEFc;
-
-void cacheSIZEFields(JNIEnv *env, jobject lpObject)
-{
- if (SIZEFc.cached) return;
- SIZEFc.clazz = (*env)->GetObjectClass(env, lpObject);
- SIZEFc.cx = (*env)->GetFieldID(env, SIZEFc.clazz, "cx", "I");
- SIZEFc.cy = (*env)->GetFieldID(env, SIZEFc.clazz, "cy", "I");
- SIZEFc.cached = 1;
-}
-
-SIZE *getSIZEFields(JNIEnv *env, jobject lpObject, SIZE *lpStruct)
-{
- if (!SIZEFc.cached) cacheSIZEFields(env, lpObject);
- lpStruct->cx = (*env)->GetIntField(env, lpObject, SIZEFc.cx);
- lpStruct->cy = (*env)->GetIntField(env, lpObject, SIZEFc.cy);
- return lpStruct;
-}
-
-void setSIZEFields(JNIEnv *env, jobject lpObject, SIZE *lpStruct)
-{
- if (!SIZEFc.cached) cacheSIZEFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, SIZEFc.cx, (jint)lpStruct->cx);
- (*env)->SetIntField(env, lpObject, SIZEFc.cy, (jint)lpStruct->cy);
-}
-#endif
-
-#ifndef NO_TBBUTTON
-typedef struct TBBUTTON_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID iBitmap, idCommand, fsState, fsStyle, dwData, iString;
-} TBBUTTON_FID_CACHE;
-
-TBBUTTON_FID_CACHE TBBUTTONFc;
-
-void cacheTBBUTTONFields(JNIEnv *env, jobject lpObject)
-{
- if (TBBUTTONFc.cached) return;
- TBBUTTONFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TBBUTTONFc.iBitmap = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "iBitmap", "I");
- TBBUTTONFc.idCommand = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "idCommand", "I");
- TBBUTTONFc.fsState = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "fsState", "B");
- TBBUTTONFc.fsStyle = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "fsStyle", "B");
- TBBUTTONFc.dwData = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "dwData", "I");
- TBBUTTONFc.iString = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "iString", "I");
- TBBUTTONFc.cached = 1;
-}
-
-TBBUTTON *getTBBUTTONFields(JNIEnv *env, jobject lpObject, TBBUTTON *lpStruct)
-{
- if (!TBBUTTONFc.cached) cacheTBBUTTONFields(env, lpObject);
- lpStruct->iBitmap = (*env)->GetIntField(env, lpObject, TBBUTTONFc.iBitmap);
- lpStruct->idCommand = (*env)->GetIntField(env, lpObject, TBBUTTONFc.idCommand);
- lpStruct->fsState = (*env)->GetByteField(env, lpObject, TBBUTTONFc.fsState);
- lpStruct->fsStyle = (*env)->GetByteField(env, lpObject, TBBUTTONFc.fsStyle);
- lpStruct->dwData = (*env)->GetIntField(env, lpObject, TBBUTTONFc.dwData);
- lpStruct->iString = (*env)->GetIntField(env, lpObject, TBBUTTONFc.iString);
- return lpStruct;
-}
-
-void setTBBUTTONFields(JNIEnv *env, jobject lpObject, TBBUTTON *lpStruct)
-{
- if (!TBBUTTONFc.cached) cacheTBBUTTONFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TBBUTTONFc.iBitmap, (jint)lpStruct->iBitmap);
- (*env)->SetIntField(env, lpObject, TBBUTTONFc.idCommand, (jint)lpStruct->idCommand);
- (*env)->SetByteField(env, lpObject, TBBUTTONFc.fsState, (jbyte)lpStruct->fsState);
- (*env)->SetByteField(env, lpObject, TBBUTTONFc.fsStyle, (jbyte)lpStruct->fsStyle);
- (*env)->SetIntField(env, lpObject, TBBUTTONFc.dwData, (jint)lpStruct->dwData);
- (*env)->SetIntField(env, lpObject, TBBUTTONFc.iString, (jint)lpStruct->iString);
-}
-#endif
-
-#ifndef NO_TBBUTTONINFO
-typedef struct TBBUTTONINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, dwMask, idCommand, iImage, fsState, fsStyle, cx, lParam, pszText, cchText;
-} TBBUTTONINFO_FID_CACHE;
-
-TBBUTTONINFO_FID_CACHE TBBUTTONINFOFc;
-
-void cacheTBBUTTONINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (TBBUTTONINFOFc.cached) return;
- TBBUTTONINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TBBUTTONINFOFc.cbSize = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "cbSize", "I");
- TBBUTTONINFOFc.dwMask = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "dwMask", "I");
- TBBUTTONINFOFc.idCommand = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "idCommand", "I");
- TBBUTTONINFOFc.iImage = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "iImage", "I");
- TBBUTTONINFOFc.fsState = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "fsState", "B");
- TBBUTTONINFOFc.fsStyle = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "fsStyle", "B");
- TBBUTTONINFOFc.cx = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "cx", "S");
- TBBUTTONINFOFc.lParam = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "lParam", "I");
- TBBUTTONINFOFc.pszText = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "pszText", "I");
- TBBUTTONINFOFc.cchText = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "cchText", "I");
- TBBUTTONINFOFc.cached = 1;
-}
-
-TBBUTTONINFO *getTBBUTTONINFOFields(JNIEnv *env, jobject lpObject, TBBUTTONINFO *lpStruct)
-{
- if (!TBBUTTONINFOFc.cached) cacheTBBUTTONINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.cbSize);
- lpStruct->dwMask = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.dwMask);
- lpStruct->idCommand = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.idCommand);
- lpStruct->iImage = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.iImage);
- lpStruct->fsState = (*env)->GetByteField(env, lpObject, TBBUTTONINFOFc.fsState);
- lpStruct->fsStyle = (*env)->GetByteField(env, lpObject, TBBUTTONINFOFc.fsStyle);
- lpStruct->cx = (*env)->GetShortField(env, lpObject, TBBUTTONINFOFc.cx);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.lParam);
- lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.pszText);
- lpStruct->cchText = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.cchText);
- return lpStruct;
-}
-
-void setTBBUTTONINFOFields(JNIEnv *env, jobject lpObject, TBBUTTONINFO *lpStruct)
-{
- if (!TBBUTTONINFOFc.cached) cacheTBBUTTONINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.dwMask, (jint)lpStruct->dwMask);
- (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.idCommand, (jint)lpStruct->idCommand);
- (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.iImage, (jint)lpStruct->iImage);
- (*env)->SetByteField(env, lpObject, TBBUTTONINFOFc.fsState, (jbyte)lpStruct->fsState);
- (*env)->SetByteField(env, lpObject, TBBUTTONINFOFc.fsStyle, (jbyte)lpStruct->fsStyle);
- (*env)->SetShortField(env, lpObject, TBBUTTONINFOFc.cx, (jshort)lpStruct->cx);
- (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.lParam, (jint)lpStruct->lParam);
- (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.pszText, (jint)lpStruct->pszText);
- (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.cchText, (jint)lpStruct->cchText);
-}
-#endif
-
-#ifndef NO_TCITEM
-typedef struct TCITEM_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID mask, dwState, dwStateMask, pszText, cchTextMax, iImage, lParam;
-} TCITEM_FID_CACHE;
-
-TCITEM_FID_CACHE TCITEMFc;
-
-void cacheTCITEMFields(JNIEnv *env, jobject lpObject)
-{
- if (TCITEMFc.cached) return;
- TCITEMFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TCITEMFc.mask = (*env)->GetFieldID(env, TCITEMFc.clazz, "mask", "I");
- TCITEMFc.dwState = (*env)->GetFieldID(env, TCITEMFc.clazz, "dwState", "I");
- TCITEMFc.dwStateMask = (*env)->GetFieldID(env, TCITEMFc.clazz, "dwStateMask", "I");
- TCITEMFc.pszText = (*env)->GetFieldID(env, TCITEMFc.clazz, "pszText", "I");
- TCITEMFc.cchTextMax = (*env)->GetFieldID(env, TCITEMFc.clazz, "cchTextMax", "I");
- TCITEMFc.iImage = (*env)->GetFieldID(env, TCITEMFc.clazz, "iImage", "I");
- TCITEMFc.lParam = (*env)->GetFieldID(env, TCITEMFc.clazz, "lParam", "I");
- TCITEMFc.cached = 1;
-}
-
-TCITEM *getTCITEMFields(JNIEnv *env, jobject lpObject, TCITEM *lpStruct)
-{
- if (!TCITEMFc.cached) cacheTCITEMFields(env, lpObject);
- lpStruct->mask = (*env)->GetIntField(env, lpObject, TCITEMFc.mask);
- lpStruct->dwState = (*env)->GetIntField(env, lpObject, TCITEMFc.dwState);
- lpStruct->dwStateMask = (*env)->GetIntField(env, lpObject, TCITEMFc.dwStateMask);
- lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TCITEMFc.pszText);
- lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, TCITEMFc.cchTextMax);
- lpStruct->iImage = (*env)->GetIntField(env, lpObject, TCITEMFc.iImage);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, TCITEMFc.lParam);
- return lpStruct;
-}
-
-void setTCITEMFields(JNIEnv *env, jobject lpObject, TCITEM *lpStruct)
-{
- if (!TCITEMFc.cached) cacheTCITEMFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TCITEMFc.mask, (jint)lpStruct->mask);
- (*env)->SetIntField(env, lpObject, TCITEMFc.dwState, (jint)lpStruct->dwState);
- (*env)->SetIntField(env, lpObject, TCITEMFc.dwStateMask, (jint)lpStruct->dwStateMask);
- (*env)->SetIntField(env, lpObject, TCITEMFc.pszText, (jint)lpStruct->pszText);
- (*env)->SetIntField(env, lpObject, TCITEMFc.cchTextMax, (jint)lpStruct->cchTextMax);
- (*env)->SetIntField(env, lpObject, TCITEMFc.iImage, (jint)lpStruct->iImage);
- (*env)->SetIntField(env, lpObject, TCITEMFc.lParam, (jint)lpStruct->lParam);
-}
-#endif
-
-#ifndef NO_TEXTMETRIC
-typedef struct TEXTMETRIC_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID tmHeight, tmAscent, tmDescent, tmInternalLeading, tmExternalLeading, tmAveCharWidth, tmMaxCharWidth, tmWeight, tmOverhang, tmDigitizedAspectX, tmDigitizedAspectY, tmItalic, tmUnderlined, tmStruckOut, tmPitchAndFamily, tmCharSet;
-} TEXTMETRIC_FID_CACHE;
-
-TEXTMETRIC_FID_CACHE TEXTMETRICFc;
-
-void cacheTEXTMETRICFields(JNIEnv *env, jobject lpObject)
-{
- if (TEXTMETRICFc.cached) return;
- TEXTMETRICFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TEXTMETRICFc.tmHeight = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmHeight", "I");
- TEXTMETRICFc.tmAscent = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmAscent", "I");
- TEXTMETRICFc.tmDescent = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmDescent", "I");
- TEXTMETRICFc.tmInternalLeading = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmInternalLeading", "I");
- TEXTMETRICFc.tmExternalLeading = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmExternalLeading", "I");
- TEXTMETRICFc.tmAveCharWidth = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmAveCharWidth", "I");
- TEXTMETRICFc.tmMaxCharWidth = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmMaxCharWidth", "I");
- TEXTMETRICFc.tmWeight = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmWeight", "I");
- TEXTMETRICFc.tmOverhang = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmOverhang", "I");
- TEXTMETRICFc.tmDigitizedAspectX = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmDigitizedAspectX", "I");
- TEXTMETRICFc.tmDigitizedAspectY = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmDigitizedAspectY", "I");
- TEXTMETRICFc.tmItalic = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmItalic", "B");
- TEXTMETRICFc.tmUnderlined = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmUnderlined", "B");
- TEXTMETRICFc.tmStruckOut = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmStruckOut", "B");
- TEXTMETRICFc.tmPitchAndFamily = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmPitchAndFamily", "B");
- TEXTMETRICFc.tmCharSet = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmCharSet", "B");
- TEXTMETRICFc.cached = 1;
-}
-
-TEXTMETRIC *getTEXTMETRICFields(JNIEnv *env, jobject lpObject, TEXTMETRIC *lpStruct)
-{
- if (!TEXTMETRICFc.cached) cacheTEXTMETRICFields(env, lpObject);
- lpStruct->tmHeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmHeight);
- lpStruct->tmAscent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAscent);
- lpStruct->tmDescent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDescent);
- lpStruct->tmInternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading);
- lpStruct->tmExternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading);
- lpStruct->tmAveCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth);
- lpStruct->tmMaxCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth);
- lpStruct->tmWeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmWeight);
- lpStruct->tmOverhang = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmOverhang);
- lpStruct->tmDigitizedAspectX = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX);
- lpStruct->tmDigitizedAspectY = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY);
- lpStruct->tmItalic = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmItalic);
- lpStruct->tmUnderlined = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined);
- lpStruct->tmStruckOut = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut);
- lpStruct->tmPitchAndFamily = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily);
- lpStruct->tmCharSet = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmCharSet);
- return lpStruct;
-}
-
-void setTEXTMETRICFields(JNIEnv *env, jobject lpObject, TEXTMETRIC *lpStruct)
-{
- if (!TEXTMETRICFc.cached) cacheTEXTMETRICFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmHeight, (jint)lpStruct->tmHeight);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAscent, (jint)lpStruct->tmAscent);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDescent, (jint)lpStruct->tmDescent);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading, (jint)lpStruct->tmInternalLeading);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading, (jint)lpStruct->tmExternalLeading);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth, (jint)lpStruct->tmAveCharWidth);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth, (jint)lpStruct->tmMaxCharWidth);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmWeight, (jint)lpStruct->tmWeight);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmOverhang, (jint)lpStruct->tmOverhang);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX, (jint)lpStruct->tmDigitizedAspectX);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY, (jint)lpStruct->tmDigitizedAspectY);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmItalic, (jbyte)lpStruct->tmItalic);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined, (jbyte)lpStruct->tmUnderlined);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut, (jbyte)lpStruct->tmStruckOut);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily, (jbyte)lpStruct->tmPitchAndFamily);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmCharSet, (jbyte)lpStruct->tmCharSet);
-}
-#endif
-
-#ifndef NO_TEXTMETRICA
-typedef struct TEXTMETRICA_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID tmFirstChar, tmLastChar, tmDefaultChar, tmBreakChar;
-} TEXTMETRICA_FID_CACHE;
-
-TEXTMETRICA_FID_CACHE TEXTMETRICAFc;
-
-void cacheTEXTMETRICAFields(JNIEnv *env, jobject lpObject)
-{
- if (TEXTMETRICAFc.cached) return;
- cacheTEXTMETRICFields(env, lpObject);
- TEXTMETRICAFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TEXTMETRICAFc.tmFirstChar = (*env)->GetFieldID(env, TEXTMETRICAFc.clazz, "tmFirstChar", "B");
- TEXTMETRICAFc.tmLastChar = (*env)->GetFieldID(env, TEXTMETRICAFc.clazz, "tmLastChar", "B");
- TEXTMETRICAFc.tmDefaultChar = (*env)->GetFieldID(env, TEXTMETRICAFc.clazz, "tmDefaultChar", "B");
- TEXTMETRICAFc.tmBreakChar = (*env)->GetFieldID(env, TEXTMETRICAFc.clazz, "tmBreakChar", "B");
- TEXTMETRICAFc.cached = 1;
-}
-
-TEXTMETRICA *getTEXTMETRICAFields(JNIEnv *env, jobject lpObject, TEXTMETRICA *lpStruct)
-{
- if (!TEXTMETRICAFc.cached) cacheTEXTMETRICAFields(env, lpObject);
- lpStruct->tmHeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmHeight);
- lpStruct->tmAscent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAscent);
- lpStruct->tmDescent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDescent);
- lpStruct->tmInternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading);
- lpStruct->tmExternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading);
- lpStruct->tmAveCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth);
- lpStruct->tmMaxCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth);
- lpStruct->tmWeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmWeight);
- lpStruct->tmOverhang = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmOverhang);
- lpStruct->tmDigitizedAspectX = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX);
- lpStruct->tmDigitizedAspectY = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY);
- lpStruct->tmItalic = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmItalic);
- lpStruct->tmUnderlined = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined);
- lpStruct->tmStruckOut = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut);
- lpStruct->tmPitchAndFamily = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily);
- lpStruct->tmCharSet = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmCharSet);
- lpStruct->tmFirstChar = (*env)->GetByteField(env, lpObject, TEXTMETRICAFc.tmFirstChar);
- lpStruct->tmLastChar = (*env)->GetByteField(env, lpObject, TEXTMETRICAFc.tmLastChar);
- lpStruct->tmDefaultChar = (*env)->GetByteField(env, lpObject, TEXTMETRICAFc.tmDefaultChar);
- lpStruct->tmBreakChar = (*env)->GetByteField(env, lpObject, TEXTMETRICAFc.tmBreakChar);
- return lpStruct;
-}
-
-void setTEXTMETRICAFields(JNIEnv *env, jobject lpObject, TEXTMETRICA *lpStruct)
-{
- if (!TEXTMETRICAFc.cached) cacheTEXTMETRICAFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmHeight, (jint)lpStruct->tmHeight);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAscent, (jint)lpStruct->tmAscent);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDescent, (jint)lpStruct->tmDescent);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading, (jint)lpStruct->tmInternalLeading);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading, (jint)lpStruct->tmExternalLeading);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth, (jint)lpStruct->tmAveCharWidth);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth, (jint)lpStruct->tmMaxCharWidth);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmWeight, (jint)lpStruct->tmWeight);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmOverhang, (jint)lpStruct->tmOverhang);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX, (jint)lpStruct->tmDigitizedAspectX);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY, (jint)lpStruct->tmDigitizedAspectY);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmItalic, (jbyte)lpStruct->tmItalic);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined, (jbyte)lpStruct->tmUnderlined);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut, (jbyte)lpStruct->tmStruckOut);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily, (jbyte)lpStruct->tmPitchAndFamily);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmCharSet, (jbyte)lpStruct->tmCharSet);
- (*env)->SetByteField(env, lpObject, TEXTMETRICAFc.tmFirstChar, (jbyte)lpStruct->tmFirstChar);
- (*env)->SetByteField(env, lpObject, TEXTMETRICAFc.tmLastChar, (jbyte)lpStruct->tmLastChar);
- (*env)->SetByteField(env, lpObject, TEXTMETRICAFc.tmDefaultChar, (jbyte)lpStruct->tmDefaultChar);
- (*env)->SetByteField(env, lpObject, TEXTMETRICAFc.tmBreakChar, (jbyte)lpStruct->tmBreakChar);
-}
-#endif
-
-#ifndef NO_TEXTMETRICW
-typedef struct TEXTMETRICW_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID tmFirstChar, tmLastChar, tmDefaultChar, tmBreakChar;
-} TEXTMETRICW_FID_CACHE;
-
-TEXTMETRICW_FID_CACHE TEXTMETRICWFc;
-
-void cacheTEXTMETRICWFields(JNIEnv *env, jobject lpObject)
-{
- if (TEXTMETRICWFc.cached) return;
- cacheTEXTMETRICFields(env, lpObject);
- TEXTMETRICWFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TEXTMETRICWFc.tmFirstChar = (*env)->GetFieldID(env, TEXTMETRICWFc.clazz, "tmFirstChar", "C");
- TEXTMETRICWFc.tmLastChar = (*env)->GetFieldID(env, TEXTMETRICWFc.clazz, "tmLastChar", "C");
- TEXTMETRICWFc.tmDefaultChar = (*env)->GetFieldID(env, TEXTMETRICWFc.clazz, "tmDefaultChar", "C");
- TEXTMETRICWFc.tmBreakChar = (*env)->GetFieldID(env, TEXTMETRICWFc.clazz, "tmBreakChar", "C");
- TEXTMETRICWFc.cached = 1;
-}
-
-TEXTMETRICW *getTEXTMETRICWFields(JNIEnv *env, jobject lpObject, TEXTMETRICW *lpStruct)
-{
- if (!TEXTMETRICWFc.cached) cacheTEXTMETRICWFields(env, lpObject);
- lpStruct->tmHeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmHeight);
- lpStruct->tmAscent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAscent);
- lpStruct->tmDescent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDescent);
- lpStruct->tmInternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading);
- lpStruct->tmExternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading);
- lpStruct->tmAveCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth);
- lpStruct->tmMaxCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth);
- lpStruct->tmWeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmWeight);
- lpStruct->tmOverhang = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmOverhang);
- lpStruct->tmDigitizedAspectX = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX);
- lpStruct->tmDigitizedAspectY = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY);
- lpStruct->tmItalic = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmItalic);
- lpStruct->tmUnderlined = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined);
- lpStruct->tmStruckOut = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut);
- lpStruct->tmPitchAndFamily = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily);
- lpStruct->tmCharSet = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmCharSet);
- lpStruct->tmFirstChar = (*env)->GetCharField(env, lpObject, TEXTMETRICWFc.tmFirstChar);
- lpStruct->tmLastChar = (*env)->GetCharField(env, lpObject, TEXTMETRICWFc.tmLastChar);
- lpStruct->tmDefaultChar = (*env)->GetCharField(env, lpObject, TEXTMETRICWFc.tmDefaultChar);
- lpStruct->tmBreakChar = (*env)->GetCharField(env, lpObject, TEXTMETRICWFc.tmBreakChar);
- return lpStruct;
-}
-
-void setTEXTMETRICWFields(JNIEnv *env, jobject lpObject, TEXTMETRICW *lpStruct)
-{
- if (!TEXTMETRICWFc.cached) cacheTEXTMETRICWFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmHeight, (jint)lpStruct->tmHeight);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAscent, (jint)lpStruct->tmAscent);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDescent, (jint)lpStruct->tmDescent);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading, (jint)lpStruct->tmInternalLeading);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading, (jint)lpStruct->tmExternalLeading);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth, (jint)lpStruct->tmAveCharWidth);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth, (jint)lpStruct->tmMaxCharWidth);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmWeight, (jint)lpStruct->tmWeight);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmOverhang, (jint)lpStruct->tmOverhang);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX, (jint)lpStruct->tmDigitizedAspectX);
- (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY, (jint)lpStruct->tmDigitizedAspectY);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmItalic, (jbyte)lpStruct->tmItalic);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined, (jbyte)lpStruct->tmUnderlined);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut, (jbyte)lpStruct->tmStruckOut);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily, (jbyte)lpStruct->tmPitchAndFamily);
- (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmCharSet, (jbyte)lpStruct->tmCharSet);
- (*env)->SetCharField(env, lpObject, TEXTMETRICWFc.tmFirstChar, (jchar)lpStruct->tmFirstChar);
- (*env)->SetCharField(env, lpObject, TEXTMETRICWFc.tmLastChar, (jchar)lpStruct->tmLastChar);
- (*env)->SetCharField(env, lpObject, TEXTMETRICWFc.tmDefaultChar, (jchar)lpStruct->tmDefaultChar);
- (*env)->SetCharField(env, lpObject, TEXTMETRICWFc.tmBreakChar, (jchar)lpStruct->tmBreakChar);
-}
-#endif
-
-#ifndef NO_TOOLINFO
-typedef struct TOOLINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, uFlags, hwnd, uId, left, top, right, bottom, hinst, lpszText, lParam;
-} TOOLINFO_FID_CACHE;
-
-TOOLINFO_FID_CACHE TOOLINFOFc;
-
-void cacheTOOLINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (TOOLINFOFc.cached) return;
- TOOLINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TOOLINFOFc.cbSize = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "cbSize", "I");
- TOOLINFOFc.uFlags = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "uFlags", "I");
- TOOLINFOFc.hwnd = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "hwnd", "I");
- TOOLINFOFc.uId = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "uId", "I");
- TOOLINFOFc.left = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "left", "I");
- TOOLINFOFc.top = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "top", "I");
- TOOLINFOFc.right = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "right", "I");
- TOOLINFOFc.bottom = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "bottom", "I");
- TOOLINFOFc.hinst = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "hinst", "I");
- TOOLINFOFc.lpszText = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "lpszText", "I");
- TOOLINFOFc.lParam = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "lParam", "I");
- TOOLINFOFc.cached = 1;
-}
-
-TOOLINFO *getTOOLINFOFields(JNIEnv *env, jobject lpObject, TOOLINFO *lpStruct)
-{
- if (!TOOLINFOFc.cached) cacheTOOLINFOFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, TOOLINFOFc.cbSize);
- lpStruct->uFlags = (*env)->GetIntField(env, lpObject, TOOLINFOFc.uFlags);
- lpStruct->hwnd = (HWND)(*env)->GetIntField(env, lpObject, TOOLINFOFc.hwnd);
- lpStruct->uId = (*env)->GetIntField(env, lpObject, TOOLINFOFc.uId);
- lpStruct->rect.left = (*env)->GetIntField(env, lpObject, TOOLINFOFc.left);
- lpStruct->rect.top = (*env)->GetIntField(env, lpObject, TOOLINFOFc.top);
- lpStruct->rect.right = (*env)->GetIntField(env, lpObject, TOOLINFOFc.right);
- lpStruct->rect.bottom = (*env)->GetIntField(env, lpObject, TOOLINFOFc.bottom);
- lpStruct->hinst = (HINSTANCE)(*env)->GetIntField(env, lpObject, TOOLINFOFc.hinst);
- lpStruct->lpszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TOOLINFOFc.lpszText);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, TOOLINFOFc.lParam);
- return lpStruct;
-}
-
-void setTOOLINFOFields(JNIEnv *env, jobject lpObject, TOOLINFO *lpStruct)
-{
- if (!TOOLINFOFc.cached) cacheTOOLINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.uFlags, (jint)lpStruct->uFlags);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.hwnd, (jint)lpStruct->hwnd);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.uId, (jint)lpStruct->uId);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.left, (jint)lpStruct->rect.left);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.top, (jint)lpStruct->rect.top);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.right, (jint)lpStruct->rect.right);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.bottom, (jint)lpStruct->rect.bottom);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.hinst, (jint)lpStruct->hinst);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.lpszText, (jint)lpStruct->lpszText);
- (*env)->SetIntField(env, lpObject, TOOLINFOFc.lParam, (jint)lpStruct->lParam);
-}
-#endif
-
-#ifndef NO_TRACKMOUSEEVENT
-typedef struct TRACKMOUSEEVENT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID cbSize, dwFlags, hwndTrack, dwHoverTime;
-} TRACKMOUSEEVENT_FID_CACHE;
-
-TRACKMOUSEEVENT_FID_CACHE TRACKMOUSEEVENTFc;
-
-void cacheTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject)
-{
- if (TRACKMOUSEEVENTFc.cached) return;
- TRACKMOUSEEVENTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TRACKMOUSEEVENTFc.cbSize = (*env)->GetFieldID(env, TRACKMOUSEEVENTFc.clazz, "cbSize", "I");
- TRACKMOUSEEVENTFc.dwFlags = (*env)->GetFieldID(env, TRACKMOUSEEVENTFc.clazz, "dwFlags", "I");
- TRACKMOUSEEVENTFc.hwndTrack = (*env)->GetFieldID(env, TRACKMOUSEEVENTFc.clazz, "hwndTrack", "I");
- TRACKMOUSEEVENTFc.dwHoverTime = (*env)->GetFieldID(env, TRACKMOUSEEVENTFc.clazz, "dwHoverTime", "I");
- TRACKMOUSEEVENTFc.cached = 1;
-}
-
-TRACKMOUSEEVENT *getTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject, TRACKMOUSEEVENT *lpStruct)
-{
- if (!TRACKMOUSEEVENTFc.cached) cacheTRACKMOUSEEVENTFields(env, lpObject);
- lpStruct->cbSize = (*env)->GetIntField(env, lpObject, TRACKMOUSEEVENTFc.cbSize);
- lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, TRACKMOUSEEVENTFc.dwFlags);
- lpStruct->hwndTrack = (HWND)(*env)->GetIntField(env, lpObject, TRACKMOUSEEVENTFc.hwndTrack);
- lpStruct->dwHoverTime = (*env)->GetIntField(env, lpObject, TRACKMOUSEEVENTFc.dwHoverTime);
- return lpStruct;
-}
-
-void setTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject, TRACKMOUSEEVENT *lpStruct)
-{
- if (!TRACKMOUSEEVENTFc.cached) cacheTRACKMOUSEEVENTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TRACKMOUSEEVENTFc.cbSize, (jint)lpStruct->cbSize);
- (*env)->SetIntField(env, lpObject, TRACKMOUSEEVENTFc.dwFlags, (jint)lpStruct->dwFlags);
- (*env)->SetIntField(env, lpObject, TRACKMOUSEEVENTFc.hwndTrack, (jint)lpStruct->hwndTrack);
- (*env)->SetIntField(env, lpObject, TRACKMOUSEEVENTFc.dwHoverTime, (jint)lpStruct->dwHoverTime);
-}
-#endif
-
-#ifndef NO_TRIVERTEX
-typedef struct TRIVERTEX_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID x, y, Red, Green, Blue, Alpha;
-} TRIVERTEX_FID_CACHE;
-
-TRIVERTEX_FID_CACHE TRIVERTEXFc;
-
-void cacheTRIVERTEXFields(JNIEnv *env, jobject lpObject)
-{
- if (TRIVERTEXFc.cached) return;
- TRIVERTEXFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TRIVERTEXFc.x = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "x", "I");
- TRIVERTEXFc.y = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "y", "I");
- TRIVERTEXFc.Red = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "Red", "S");
- TRIVERTEXFc.Green = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "Green", "S");
- TRIVERTEXFc.Blue = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "Blue", "S");
- TRIVERTEXFc.Alpha = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "Alpha", "S");
- TRIVERTEXFc.cached = 1;
-}
-
-TRIVERTEX *getTRIVERTEXFields(JNIEnv *env, jobject lpObject, TRIVERTEX *lpStruct)
-{
- if (!TRIVERTEXFc.cached) cacheTRIVERTEXFields(env, lpObject);
- lpStruct->x = (*env)->GetIntField(env, lpObject, TRIVERTEXFc.x);
- lpStruct->y = (*env)->GetIntField(env, lpObject, TRIVERTEXFc.y);
- lpStruct->Red = (*env)->GetShortField(env, lpObject, TRIVERTEXFc.Red);
- lpStruct->Green = (*env)->GetShortField(env, lpObject, TRIVERTEXFc.Green);
- lpStruct->Blue = (*env)->GetShortField(env, lpObject, TRIVERTEXFc.Blue);
- lpStruct->Alpha = (*env)->GetShortField(env, lpObject, TRIVERTEXFc.Alpha);
- return lpStruct;
-}
-
-void setTRIVERTEXFields(JNIEnv *env, jobject lpObject, TRIVERTEX *lpStruct)
-{
- if (!TRIVERTEXFc.cached) cacheTRIVERTEXFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TRIVERTEXFc.x, (jint)lpStruct->x);
- (*env)->SetIntField(env, lpObject, TRIVERTEXFc.y, (jint)lpStruct->y);
- (*env)->SetShortField(env, lpObject, TRIVERTEXFc.Red, (jshort)lpStruct->Red);
- (*env)->SetShortField(env, lpObject, TRIVERTEXFc.Green, (jshort)lpStruct->Green);
- (*env)->SetShortField(env, lpObject, TRIVERTEXFc.Blue, (jshort)lpStruct->Blue);
- (*env)->SetShortField(env, lpObject, TRIVERTEXFc.Alpha, (jshort)lpStruct->Alpha);
-}
-#endif
-
-#ifndef NO_TVHITTESTINFO
-typedef struct TVHITTESTINFO_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID x, y, flags, hItem;
-} TVHITTESTINFO_FID_CACHE;
-
-TVHITTESTINFO_FID_CACHE TVHITTESTINFOFc;
-
-void cacheTVHITTESTINFOFields(JNIEnv *env, jobject lpObject)
-{
- if (TVHITTESTINFOFc.cached) return;
- TVHITTESTINFOFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TVHITTESTINFOFc.x = (*env)->GetFieldID(env, TVHITTESTINFOFc.clazz, "x", "I");
- TVHITTESTINFOFc.y = (*env)->GetFieldID(env, TVHITTESTINFOFc.clazz, "y", "I");
- TVHITTESTINFOFc.flags = (*env)->GetFieldID(env, TVHITTESTINFOFc.clazz, "flags", "I");
- TVHITTESTINFOFc.hItem = (*env)->GetFieldID(env, TVHITTESTINFOFc.clazz, "hItem", "I");
- TVHITTESTINFOFc.cached = 1;
-}
-
-TVHITTESTINFO *getTVHITTESTINFOFields(JNIEnv *env, jobject lpObject, TVHITTESTINFO *lpStruct)
-{
- if (!TVHITTESTINFOFc.cached) cacheTVHITTESTINFOFields(env, lpObject);
- lpStruct->pt.x = (*env)->GetIntField(env, lpObject, TVHITTESTINFOFc.x);
- lpStruct->pt.y = (*env)->GetIntField(env, lpObject, TVHITTESTINFOFc.y);
- lpStruct->flags = (*env)->GetIntField(env, lpObject, TVHITTESTINFOFc.flags);
- lpStruct->hItem = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVHITTESTINFOFc.hItem);
- return lpStruct;
-}
-
-void setTVHITTESTINFOFields(JNIEnv *env, jobject lpObject, TVHITTESTINFO *lpStruct)
-{
- if (!TVHITTESTINFOFc.cached) cacheTVHITTESTINFOFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TVHITTESTINFOFc.x, (jint)lpStruct->pt.x);
- (*env)->SetIntField(env, lpObject, TVHITTESTINFOFc.y, (jint)lpStruct->pt.y);
- (*env)->SetIntField(env, lpObject, TVHITTESTINFOFc.flags, (jint)lpStruct->flags);
- (*env)->SetIntField(env, lpObject, TVHITTESTINFOFc.hItem, (jint)lpStruct->hItem);
-}
-#endif
-
-#ifndef NO_TVINSERTSTRUCT
-typedef struct TVINSERTSTRUCT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID hParent, hInsertAfter, mask, hItem, state, stateMask, pszText, cchTextMax, iImage, iSelectedImage, cChildren, lParam;
-} TVINSERTSTRUCT_FID_CACHE;
-
-TVINSERTSTRUCT_FID_CACHE TVINSERTSTRUCTFc;
-
-void cacheTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject)
-{
- if (TVINSERTSTRUCTFc.cached) return;
- TVINSERTSTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TVINSERTSTRUCTFc.hParent = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "hParent", "I");
- TVINSERTSTRUCTFc.hInsertAfter = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "hInsertAfter", "I");
- TVINSERTSTRUCTFc.mask = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "mask", "I");
- TVINSERTSTRUCTFc.hItem = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "hItem", "I");
- TVINSERTSTRUCTFc.state = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "state", "I");
- TVINSERTSTRUCTFc.stateMask = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "stateMask", "I");
- TVINSERTSTRUCTFc.pszText = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "pszText", "I");
- TVINSERTSTRUCTFc.cchTextMax = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "cchTextMax", "I");
- TVINSERTSTRUCTFc.iImage = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "iImage", "I");
- TVINSERTSTRUCTFc.iSelectedImage = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "iSelectedImage", "I");
- TVINSERTSTRUCTFc.cChildren = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "cChildren", "I");
- TVINSERTSTRUCTFc.lParam = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "lParam", "I");
- TVINSERTSTRUCTFc.cached = 1;
-}
-
-TVINSERTSTRUCT *getTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject, TVINSERTSTRUCT *lpStruct)
-{
- if (!TVINSERTSTRUCTFc.cached) cacheTVINSERTSTRUCTFields(env, lpObject);
- lpStruct->hParent = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.hParent);
- lpStruct->hInsertAfter = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.hInsertAfter);
- lpStruct->item.mask = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.mask);
- lpStruct->item.hItem = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.hItem);
- lpStruct->item.state = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.state);
- lpStruct->item.stateMask = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.stateMask);
- lpStruct->item.pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.pszText);
- lpStruct->item.cchTextMax = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.cchTextMax);
- lpStruct->item.iImage = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.iImage);
- lpStruct->item.iSelectedImage = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.iSelectedImage);
- lpStruct->item.cChildren = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.cChildren);
- lpStruct->item.lParam = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.lParam);
- return lpStruct;
-}
-
-void setTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject, TVINSERTSTRUCT *lpStruct)
-{
- if (!TVINSERTSTRUCTFc.cached) cacheTVINSERTSTRUCTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.hParent, (jint)lpStruct->hParent);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.hInsertAfter, (jint)lpStruct->hInsertAfter);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.mask, (jint)lpStruct->item.mask);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.hItem, (jint)lpStruct->item.hItem);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.state, (jint)lpStruct->item.state);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.stateMask, (jint)lpStruct->item.stateMask);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.pszText, (jint)lpStruct->item.pszText);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.cchTextMax, (jint)lpStruct->item.cchTextMax);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.iImage, (jint)lpStruct->item.iImage);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.iSelectedImage, (jint)lpStruct->item.iSelectedImage);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.cChildren, (jint)lpStruct->item.cChildren);
- (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.lParam, (jint)lpStruct->item.lParam);
-}
-#endif
-
-#ifndef NO_TVITEM
-typedef struct TVITEM_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID mask, hItem, state, stateMask, pszText, cchTextMax, iImage, iSelectedImage, cChildren, lParam;
-} TVITEM_FID_CACHE;
-
-TVITEM_FID_CACHE TVITEMFc;
-
-void cacheTVITEMFields(JNIEnv *env, jobject lpObject)
-{
- if (TVITEMFc.cached) return;
- TVITEMFc.clazz = (*env)->GetObjectClass(env, lpObject);
- TVITEMFc.mask = (*env)->GetFieldID(env, TVITEMFc.clazz, "mask", "I");
- TVITEMFc.hItem = (*env)->GetFieldID(env, TVITEMFc.clazz, "hItem", "I");
- TVITEMFc.state = (*env)->GetFieldID(env, TVITEMFc.clazz, "state", "I");
- TVITEMFc.stateMask = (*env)->GetFieldID(env, TVITEMFc.clazz, "stateMask", "I");
- TVITEMFc.pszText = (*env)->GetFieldID(env, TVITEMFc.clazz, "pszText", "I");
- TVITEMFc.cchTextMax = (*env)->GetFieldID(env, TVITEMFc.clazz, "cchTextMax", "I");
- TVITEMFc.iImage = (*env)->GetFieldID(env, TVITEMFc.clazz, "iImage", "I");
- TVITEMFc.iSelectedImage = (*env)->GetFieldID(env, TVITEMFc.clazz, "iSelectedImage", "I");
- TVITEMFc.cChildren = (*env)->GetFieldID(env, TVITEMFc.clazz, "cChildren", "I");
- TVITEMFc.lParam = (*env)->GetFieldID(env, TVITEMFc.clazz, "lParam", "I");
- TVITEMFc.cached = 1;
-}
-
-TVITEM *getTVITEMFields(JNIEnv *env, jobject lpObject, TVITEM *lpStruct)
-{
- if (!TVITEMFc.cached) cacheTVITEMFields(env, lpObject);
- lpStruct->mask = (*env)->GetIntField(env, lpObject, TVITEMFc.mask);
- lpStruct->hItem = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVITEMFc.hItem);
- lpStruct->state = (*env)->GetIntField(env, lpObject, TVITEMFc.state);
- lpStruct->stateMask = (*env)->GetIntField(env, lpObject, TVITEMFc.stateMask);
- lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TVITEMFc.pszText);
- lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, TVITEMFc.cchTextMax);
- lpStruct->iImage = (*env)->GetIntField(env, lpObject, TVITEMFc.iImage);
- lpStruct->iSelectedImage = (*env)->GetIntField(env, lpObject, TVITEMFc.iSelectedImage);
- lpStruct->cChildren = (*env)->GetIntField(env, lpObject, TVITEMFc.cChildren);
- lpStruct->lParam = (*env)->GetIntField(env, lpObject, TVITEMFc.lParam);
- return lpStruct;
-}
-
-void setTVITEMFields(JNIEnv *env, jobject lpObject, TVITEM *lpStruct)
-{
- if (!TVITEMFc.cached) cacheTVITEMFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, TVITEMFc.mask, (jint)lpStruct->mask);
- (*env)->SetIntField(env, lpObject, TVITEMFc.hItem, (jint)lpStruct->hItem);
- (*env)->SetIntField(env, lpObject, TVITEMFc.state, (jint)lpStruct->state);
- (*env)->SetIntField(env, lpObject, TVITEMFc.stateMask, (jint)lpStruct->stateMask);
- (*env)->SetIntField(env, lpObject, TVITEMFc.pszText, (jint)lpStruct->pszText);
- (*env)->SetIntField(env, lpObject, TVITEMFc.cchTextMax, (jint)lpStruct->cchTextMax);
- (*env)->SetIntField(env, lpObject, TVITEMFc.iImage, (jint)lpStruct->iImage);
- (*env)->SetIntField(env, lpObject, TVITEMFc.iSelectedImage, (jint)lpStruct->iSelectedImage);
- (*env)->SetIntField(env, lpObject, TVITEMFc.cChildren, (jint)lpStruct->cChildren);
- (*env)->SetIntField(env, lpObject, TVITEMFc.lParam, (jint)lpStruct->lParam);
-}
-#endif
-
-#ifndef NO_WINDOWPLACEMENT
-typedef struct WINDOWPLACEMENT_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID length, flags, showCmd, ptMinPosition_x, ptMinPosition_y, ptMaxPosition_x, ptMaxPosition_y, left, top, right, bottom;
-} WINDOWPLACEMENT_FID_CACHE;
-
-WINDOWPLACEMENT_FID_CACHE WINDOWPLACEMENTFc;
-
-void cacheWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject)
-{
- if (WINDOWPLACEMENTFc.cached) return;
- WINDOWPLACEMENTFc.clazz = (*env)->GetObjectClass(env, lpObject);
- WINDOWPLACEMENTFc.length = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "length", "I");
- WINDOWPLACEMENTFc.flags = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "flags", "I");
- WINDOWPLACEMENTFc.showCmd = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "showCmd", "I");
- WINDOWPLACEMENTFc.ptMinPosition_x = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "ptMinPosition_x", "I");
- WINDOWPLACEMENTFc.ptMinPosition_y = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "ptMinPosition_y", "I");
- WINDOWPLACEMENTFc.ptMaxPosition_x = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "ptMaxPosition_x", "I");
- WINDOWPLACEMENTFc.ptMaxPosition_y = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "ptMaxPosition_y", "I");
- WINDOWPLACEMENTFc.left = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "left", "I");
- WINDOWPLACEMENTFc.top = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "top", "I");
- WINDOWPLACEMENTFc.right = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "right", "I");
- WINDOWPLACEMENTFc.bottom = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "bottom", "I");
- WINDOWPLACEMENTFc.cached = 1;
-}
-
-WINDOWPLACEMENT *getWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject, WINDOWPLACEMENT *lpStruct)
-{
- if (!WINDOWPLACEMENTFc.cached) cacheWINDOWPLACEMENTFields(env, lpObject);
- lpStruct->length = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.length);
- lpStruct->flags = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.flags);
- lpStruct->showCmd = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.showCmd);
- lpStruct->ptMinPosition.x = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMinPosition_x);
- lpStruct->ptMinPosition.y = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMinPosition_y);
- lpStruct->ptMaxPosition.x = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMaxPosition_x);
- lpStruct->ptMaxPosition.y = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMaxPosition_y);
- lpStruct->rcNormalPosition.left = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.left);
- lpStruct->rcNormalPosition.top = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.top);
- lpStruct->rcNormalPosition.right = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.right);
- lpStruct->rcNormalPosition.bottom = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.bottom);
- return lpStruct;
-}
-
-void setWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject, WINDOWPLACEMENT *lpStruct)
-{
- if (!WINDOWPLACEMENTFc.cached) cacheWINDOWPLACEMENTFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.length, (jint)lpStruct->length);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.flags, (jint)lpStruct->flags);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.showCmd, (jint)lpStruct->showCmd);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMinPosition_x, (jint)lpStruct->ptMinPosition.x);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMinPosition_y, (jint)lpStruct->ptMinPosition.y);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMaxPosition_x, (jint)lpStruct->ptMaxPosition.x);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMaxPosition_y, (jint)lpStruct->ptMaxPosition.y);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.left, (jint)lpStruct->rcNormalPosition.left);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.top, (jint)lpStruct->rcNormalPosition.top);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.right, (jint)lpStruct->rcNormalPosition.right);
- (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.bottom, (jint)lpStruct->rcNormalPosition.bottom);
-}
-#endif
-
-#ifndef NO_WINDOWPOS
-typedef struct WINDOWPOS_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID hwnd, hwndInsertAfter, x, y, cx, cy, flags;
-} WINDOWPOS_FID_CACHE;
-
-WINDOWPOS_FID_CACHE WINDOWPOSFc;
-
-void cacheWINDOWPOSFields(JNIEnv *env, jobject lpObject)
-{
- if (WINDOWPOSFc.cached) return;
- WINDOWPOSFc.clazz = (*env)->GetObjectClass(env, lpObject);
- WINDOWPOSFc.hwnd = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "hwnd", "I");
- WINDOWPOSFc.hwndInsertAfter = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "hwndInsertAfter", "I");
- WINDOWPOSFc.x = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "x", "I");
- WINDOWPOSFc.y = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "y", "I");
- WINDOWPOSFc.cx = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "cx", "I");
- WINDOWPOSFc.cy = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "cy", "I");
- WINDOWPOSFc.flags = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "flags", "I");
- WINDOWPOSFc.cached = 1;
-}
-
-WINDOWPOS *getWINDOWPOSFields(JNIEnv *env, jobject lpObject, WINDOWPOS *lpStruct)
-{
- if (!WINDOWPOSFc.cached) cacheWINDOWPOSFields(env, lpObject);
- lpStruct->hwnd = (HWND)(*env)->GetIntField(env, lpObject, WINDOWPOSFc.hwnd);
- lpStruct->hwndInsertAfter = (HWND)(*env)->GetIntField(env, lpObject, WINDOWPOSFc.hwndInsertAfter);
- lpStruct->x = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.x);
- lpStruct->y = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.y);
- lpStruct->cx = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.cx);
- lpStruct->cy = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.cy);
- lpStruct->flags = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.flags);
- return lpStruct;
-}
-
-void setWINDOWPOSFields(JNIEnv *env, jobject lpObject, WINDOWPOS *lpStruct)
-{
- if (!WINDOWPOSFc.cached) cacheWINDOWPOSFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, WINDOWPOSFc.hwnd, (jint)lpStruct->hwnd);
- (*env)->SetIntField(env, lpObject, WINDOWPOSFc.hwndInsertAfter, (jint)lpStruct->hwndInsertAfter);
- (*env)->SetIntField(env, lpObject, WINDOWPOSFc.x, (jint)lpStruct->x);
- (*env)->SetIntField(env, lpObject, WINDOWPOSFc.y, (jint)lpStruct->y);
- (*env)->SetIntField(env, lpObject, WINDOWPOSFc.cx, (jint)lpStruct->cx);
- (*env)->SetIntField(env, lpObject, WINDOWPOSFc.cy, (jint)lpStruct->cy);
- (*env)->SetIntField(env, lpObject, WINDOWPOSFc.flags, (jint)lpStruct->flags);
-}
-#endif
-
-#ifndef NO_WNDCLASS
-typedef struct WNDCLASS_FID_CACHE {
- int cached;
- jclass clazz;
- jfieldID style, lpfnWndProc, cbClsExtra, cbWndExtra, hInstance, hIcon, hCursor, hbrBackground, lpszMenuName, lpszClassName;
-} WNDCLASS_FID_CACHE;
-
-WNDCLASS_FID_CACHE WNDCLASSFc;
-
-void cacheWNDCLASSFields(JNIEnv *env, jobject lpObject)
-{
- if (WNDCLASSFc.cached) return;
- WNDCLASSFc.clazz = (*env)->GetObjectClass(env, lpObject);
- WNDCLASSFc.style = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "style", "I");
- WNDCLASSFc.lpfnWndProc = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "lpfnWndProc", "I");
- WNDCLASSFc.cbClsExtra = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "cbClsExtra", "I");
- WNDCLASSFc.cbWndExtra = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "cbWndExtra", "I");
- WNDCLASSFc.hInstance = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "hInstance", "I");
- WNDCLASSFc.hIcon = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "hIcon", "I");
- WNDCLASSFc.hCursor = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "hCursor", "I");
- WNDCLASSFc.hbrBackground = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "hbrBackground", "I");
- WNDCLASSFc.lpszMenuName = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "lpszMenuName", "I");
- WNDCLASSFc.lpszClassName = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "lpszClassName", "I");
- WNDCLASSFc.cached = 1;
-}
-
-WNDCLASS *getWNDCLASSFields(JNIEnv *env, jobject lpObject, WNDCLASS *lpStruct)
-{
- if (!WNDCLASSFc.cached) cacheWNDCLASSFields(env, lpObject);
- lpStruct->style = (*env)->GetIntField(env, lpObject, WNDCLASSFc.style);
- lpStruct->lpfnWndProc = (WNDPROC)(*env)->GetIntField(env, lpObject, WNDCLASSFc.lpfnWndProc);
- lpStruct->cbClsExtra = (*env)->GetIntField(env, lpObject, WNDCLASSFc.cbClsExtra);
- lpStruct->cbWndExtra = (*env)->GetIntField(env, lpObject, WNDCLASSFc.cbWndExtra);
- lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, WNDCLASSFc.hInstance);
- lpStruct->hIcon = (HICON)(*env)->GetIntField(env, lpObject, WNDCLASSFc.hIcon);
- lpStruct->hCursor = (HCURSOR)(*env)->GetIntField(env, lpObject, WNDCLASSFc.hCursor);
- lpStruct->hbrBackground = (HBRUSH)(*env)->GetIntField(env, lpObject, WNDCLASSFc.hbrBackground);
- lpStruct->lpszMenuName = (LPCTSTR)(*env)->GetIntField(env, lpObject, WNDCLASSFc.lpszMenuName);
- lpStruct->lpszClassName = (LPCTSTR)(*env)->GetIntField(env, lpObject, WNDCLASSFc.lpszClassName);
- return lpStruct;
-}
-
-void setWNDCLASSFields(JNIEnv *env, jobject lpObject, WNDCLASS *lpStruct)
-{
- if (!WNDCLASSFc.cached) cacheWNDCLASSFields(env, lpObject);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.style, (jint)lpStruct->style);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.lpfnWndProc, (jint)lpStruct->lpfnWndProc);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.cbClsExtra, (jint)lpStruct->cbClsExtra);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.cbWndExtra, (jint)lpStruct->cbWndExtra);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.hInstance, (jint)lpStruct->hInstance);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.hIcon, (jint)lpStruct->hIcon);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.hCursor, (jint)lpStruct->hCursor);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.hbrBackground, (jint)lpStruct->hbrBackground);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.lpszMenuName, (jint)lpStruct->lpszMenuName);
- (*env)->SetIntField(env, lpObject, WNDCLASSFc.lpszClassName, (jint)lpStruct->lpszClassName);
-}
-#endif
-
+/******************************************************************************* +* Copyright (c) 2000, 2003 IBM Corporation and others. +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Common Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/cpl-v10.html +* +* Contributors: +* IBM Corporation - initial API and implementation +*******************************************************************************/ + +#include "swt.h" +#include "os_structs.h" + +#ifndef NO_ACCEL +typedef struct ACCEL_FID_CACHE { + int cached; + jclass clazz; + jfieldID fVirt, key, cmd; +} ACCEL_FID_CACHE; + +ACCEL_FID_CACHE ACCELFc; + +void cacheACCELFields(JNIEnv *env, jobject lpObject) +{ + if (ACCELFc.cached) return; + ACCELFc.clazz = (*env)->GetObjectClass(env, lpObject); + ACCELFc.fVirt = (*env)->GetFieldID(env, ACCELFc.clazz, "fVirt", "B"); + ACCELFc.key = (*env)->GetFieldID(env, ACCELFc.clazz, "key", "S"); + ACCELFc.cmd = (*env)->GetFieldID(env, ACCELFc.clazz, "cmd", "S"); + ACCELFc.cached = 1; +} + +ACCEL *getACCELFields(JNIEnv *env, jobject lpObject, ACCEL *lpStruct) +{ + if (!ACCELFc.cached) cacheACCELFields(env, lpObject); + lpStruct->fVirt = (*env)->GetByteField(env, lpObject, ACCELFc.fVirt); + lpStruct->key = (*env)->GetShortField(env, lpObject, ACCELFc.key); + lpStruct->cmd = (*env)->GetShortField(env, lpObject, ACCELFc.cmd); + return lpStruct; +} + +void setACCELFields(JNIEnv *env, jobject lpObject, ACCEL *lpStruct) +{ + if (!ACCELFc.cached) cacheACCELFields(env, lpObject); + (*env)->SetByteField(env, lpObject, ACCELFc.fVirt, (jbyte)lpStruct->fVirt); + (*env)->SetShortField(env, lpObject, ACCELFc.key, (jshort)lpStruct->key); + (*env)->SetShortField(env, lpObject, ACCELFc.cmd, (jshort)lpStruct->cmd); +} +#endif + +#ifndef NO_BITMAP +typedef struct BITMAP_FID_CACHE { + int cached; + jclass clazz; + jfieldID bmType, bmWidth, bmHeight, bmWidthBytes, bmPlanes, bmBitsPixel, bmBits; +} BITMAP_FID_CACHE; + +BITMAP_FID_CACHE BITMAPFc; + +void cacheBITMAPFields(JNIEnv *env, jobject lpObject) +{ + if (BITMAPFc.cached) return; + BITMAPFc.clazz = (*env)->GetObjectClass(env, lpObject); + BITMAPFc.bmType = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmType", "I"); + BITMAPFc.bmWidth = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmWidth", "I"); + BITMAPFc.bmHeight = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmHeight", "I"); + BITMAPFc.bmWidthBytes = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmWidthBytes", "I"); + BITMAPFc.bmPlanes = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmPlanes", "S"); + BITMAPFc.bmBitsPixel = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmBitsPixel", "S"); + BITMAPFc.bmBits = (*env)->GetFieldID(env, BITMAPFc.clazz, "bmBits", "I"); + BITMAPFc.cached = 1; +} + +BITMAP *getBITMAPFields(JNIEnv *env, jobject lpObject, BITMAP *lpStruct) +{ + if (!BITMAPFc.cached) cacheBITMAPFields(env, lpObject); + lpStruct->bmType = (*env)->GetIntField(env, lpObject, BITMAPFc.bmType); + lpStruct->bmWidth = (*env)->GetIntField(env, lpObject, BITMAPFc.bmWidth); + lpStruct->bmHeight = (*env)->GetIntField(env, lpObject, BITMAPFc.bmHeight); + lpStruct->bmWidthBytes = (*env)->GetIntField(env, lpObject, BITMAPFc.bmWidthBytes); + lpStruct->bmPlanes = (*env)->GetShortField(env, lpObject, BITMAPFc.bmPlanes); + lpStruct->bmBitsPixel = (*env)->GetShortField(env, lpObject, BITMAPFc.bmBitsPixel); + lpStruct->bmBits = (LPVOID)(*env)->GetIntField(env, lpObject, BITMAPFc.bmBits); + return lpStruct; +} + +void setBITMAPFields(JNIEnv *env, jobject lpObject, BITMAP *lpStruct) +{ + if (!BITMAPFc.cached) cacheBITMAPFields(env, lpObject); + (*env)->SetIntField(env, lpObject, BITMAPFc.bmType, (jint)lpStruct->bmType); + (*env)->SetIntField(env, lpObject, BITMAPFc.bmWidth, (jint)lpStruct->bmWidth); + (*env)->SetIntField(env, lpObject, BITMAPFc.bmHeight, (jint)lpStruct->bmHeight); + (*env)->SetIntField(env, lpObject, BITMAPFc.bmWidthBytes, (jint)lpStruct->bmWidthBytes); + (*env)->SetShortField(env, lpObject, BITMAPFc.bmPlanes, (jshort)lpStruct->bmPlanes); + (*env)->SetShortField(env, lpObject, BITMAPFc.bmBitsPixel, (jshort)lpStruct->bmBitsPixel); + (*env)->SetIntField(env, lpObject, BITMAPFc.bmBits, (jint)lpStruct->bmBits); +} +#endif + +#ifndef NO_BITMAPINFOHEADER +typedef struct BITMAPINFOHEADER_FID_CACHE { + int cached; + jclass clazz; + jfieldID biSize, biWidth, biHeight, biPlanes, biBitCount, biCompression, biSizeImage, biXPelsPerMeter, biYPelsPerMeter, biClrUsed, biClrImportant; +} BITMAPINFOHEADER_FID_CACHE; + +BITMAPINFOHEADER_FID_CACHE BITMAPINFOHEADERFc; + +void cacheBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject) +{ + if (BITMAPINFOHEADERFc.cached) return; + BITMAPINFOHEADERFc.clazz = (*env)->GetObjectClass(env, lpObject); + BITMAPINFOHEADERFc.biSize = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biSize", "I"); + BITMAPINFOHEADERFc.biWidth = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biWidth", "I"); + BITMAPINFOHEADERFc.biHeight = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biHeight", "I"); + BITMAPINFOHEADERFc.biPlanes = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biPlanes", "S"); + BITMAPINFOHEADERFc.biBitCount = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biBitCount", "S"); + BITMAPINFOHEADERFc.biCompression = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biCompression", "I"); + BITMAPINFOHEADERFc.biSizeImage = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biSizeImage", "I"); + BITMAPINFOHEADERFc.biXPelsPerMeter = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biXPelsPerMeter", "I"); + BITMAPINFOHEADERFc.biYPelsPerMeter = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biYPelsPerMeter", "I"); + BITMAPINFOHEADERFc.biClrUsed = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biClrUsed", "I"); + BITMAPINFOHEADERFc.biClrImportant = (*env)->GetFieldID(env, BITMAPINFOHEADERFc.clazz, "biClrImportant", "I"); + BITMAPINFOHEADERFc.cached = 1; +} + +BITMAPINFOHEADER *getBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject, BITMAPINFOHEADER *lpStruct) +{ + if (!BITMAPINFOHEADERFc.cached) cacheBITMAPINFOHEADERFields(env, lpObject); + lpStruct->biSize = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biSize); + lpStruct->biWidth = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biWidth); + lpStruct->biHeight = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biHeight); + lpStruct->biPlanes = (*env)->GetShortField(env, lpObject, BITMAPINFOHEADERFc.biPlanes); + lpStruct->biBitCount = (*env)->GetShortField(env, lpObject, BITMAPINFOHEADERFc.biBitCount); + lpStruct->biCompression = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biCompression); + lpStruct->biSizeImage = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biSizeImage); + lpStruct->biXPelsPerMeter = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biXPelsPerMeter); + lpStruct->biYPelsPerMeter = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biYPelsPerMeter); + lpStruct->biClrUsed = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biClrUsed); + lpStruct->biClrImportant = (*env)->GetIntField(env, lpObject, BITMAPINFOHEADERFc.biClrImportant); + return lpStruct; +} + +void setBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject, BITMAPINFOHEADER *lpStruct) +{ + if (!BITMAPINFOHEADERFc.cached) cacheBITMAPINFOHEADERFields(env, lpObject); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biSize, (jint)lpStruct->biSize); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biWidth, (jint)lpStruct->biWidth); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biHeight, (jint)lpStruct->biHeight); + (*env)->SetShortField(env, lpObject, BITMAPINFOHEADERFc.biPlanes, (jshort)lpStruct->biPlanes); + (*env)->SetShortField(env, lpObject, BITMAPINFOHEADERFc.biBitCount, (jshort)lpStruct->biBitCount); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biCompression, (jint)lpStruct->biCompression); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biSizeImage, (jint)lpStruct->biSizeImage); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biXPelsPerMeter, (jint)lpStruct->biXPelsPerMeter); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biYPelsPerMeter, (jint)lpStruct->biYPelsPerMeter); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biClrUsed, (jint)lpStruct->biClrUsed); + (*env)->SetIntField(env, lpObject, BITMAPINFOHEADERFc.biClrImportant, (jint)lpStruct->biClrImportant); +} +#endif + +#ifndef NO_BROWSEINFO +typedef struct BROWSEINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID hwndOwner, pidlRoot, pszDisplayName, lpszTitle, ulFlags, lpfn, lParam, iImage; +} BROWSEINFO_FID_CACHE; + +BROWSEINFO_FID_CACHE BROWSEINFOFc; + +void cacheBROWSEINFOFields(JNIEnv *env, jobject lpObject) +{ + if (BROWSEINFOFc.cached) return; + BROWSEINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + BROWSEINFOFc.hwndOwner = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "hwndOwner", "I"); + BROWSEINFOFc.pidlRoot = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "pidlRoot", "I"); + BROWSEINFOFc.pszDisplayName = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "pszDisplayName", "I"); + BROWSEINFOFc.lpszTitle = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "lpszTitle", "I"); + BROWSEINFOFc.ulFlags = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "ulFlags", "I"); + BROWSEINFOFc.lpfn = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "lpfn", "I"); + BROWSEINFOFc.lParam = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "lParam", "I"); + BROWSEINFOFc.iImage = (*env)->GetFieldID(env, BROWSEINFOFc.clazz, "iImage", "I"); + BROWSEINFOFc.cached = 1; +} + +BROWSEINFO *getBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct) +{ + if (!BROWSEINFOFc.cached) cacheBROWSEINFOFields(env, lpObject); + lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.hwndOwner); + lpStruct->pidlRoot = (LPCITEMIDLIST)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.pidlRoot); + lpStruct->pszDisplayName = (LPTSTR)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.pszDisplayName); + lpStruct->lpszTitle = (LPCTSTR)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.lpszTitle); + lpStruct->ulFlags = (*env)->GetIntField(env, lpObject, BROWSEINFOFc.ulFlags); + lpStruct->lpfn = (BFFCALLBACK)(*env)->GetIntField(env, lpObject, BROWSEINFOFc.lpfn); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, BROWSEINFOFc.lParam); + lpStruct->iImage = (*env)->GetIntField(env, lpObject, BROWSEINFOFc.iImage); + return lpStruct; +} + +void setBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct) +{ + if (!BROWSEINFOFc.cached) cacheBROWSEINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, BROWSEINFOFc.hwndOwner, (jint)lpStruct->hwndOwner); + (*env)->SetIntField(env, lpObject, BROWSEINFOFc.pidlRoot, (jint)lpStruct->pidlRoot); + (*env)->SetIntField(env, lpObject, BROWSEINFOFc.pszDisplayName, (jint)lpStruct->pszDisplayName); + (*env)->SetIntField(env, lpObject, BROWSEINFOFc.lpszTitle, (jint)lpStruct->lpszTitle); + (*env)->SetIntField(env, lpObject, BROWSEINFOFc.ulFlags, (jint)lpStruct->ulFlags); + (*env)->SetIntField(env, lpObject, BROWSEINFOFc.lpfn, (jint)lpStruct->lpfn); + (*env)->SetIntField(env, lpObject, BROWSEINFOFc.lParam, (jint)lpStruct->lParam); + (*env)->SetIntField(env, lpObject, BROWSEINFOFc.iImage, (jint)lpStruct->iImage); +} +#endif + +#ifndef NO_CHOOSECOLOR +typedef struct CHOOSECOLOR_FID_CACHE { + int cached; + jclass clazz; + jfieldID lStructSize, hwndOwner, hInstance, rgbResult, lpCustColors, Flags, lCustData, lpfnHook, lpTemplateName; +} CHOOSECOLOR_FID_CACHE; + +CHOOSECOLOR_FID_CACHE CHOOSECOLORFc; + +void cacheCHOOSECOLORFields(JNIEnv *env, jobject lpObject) +{ + if (CHOOSECOLORFc.cached) return; + CHOOSECOLORFc.clazz = (*env)->GetObjectClass(env, lpObject); + CHOOSECOLORFc.lStructSize = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lStructSize", "I"); + CHOOSECOLORFc.hwndOwner = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "hwndOwner", "I"); + CHOOSECOLORFc.hInstance = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "hInstance", "I"); + CHOOSECOLORFc.rgbResult = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "rgbResult", "I"); + CHOOSECOLORFc.lpCustColors = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lpCustColors", "I"); + CHOOSECOLORFc.Flags = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "Flags", "I"); + CHOOSECOLORFc.lCustData = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lCustData", "I"); + CHOOSECOLORFc.lpfnHook = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lpfnHook", "I"); + CHOOSECOLORFc.lpTemplateName = (*env)->GetFieldID(env, CHOOSECOLORFc.clazz, "lpTemplateName", "I"); + CHOOSECOLORFc.cached = 1; +} + +CHOOSECOLOR *getCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct) +{ + if (!CHOOSECOLORFc.cached) cacheCHOOSECOLORFields(env, lpObject); + lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lStructSize); + lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.hwndOwner); + lpStruct->hInstance = (HANDLE)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.hInstance); + lpStruct->rgbResult = (*env)->GetIntField(env, lpObject, CHOOSECOLORFc.rgbResult); + lpStruct->lpCustColors = (COLORREF *)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lpCustColors); + lpStruct->Flags = (*env)->GetIntField(env, lpObject, CHOOSECOLORFc.Flags); + lpStruct->lCustData = (*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lCustData); + lpStruct->lpfnHook = (LPCCHOOKPROC)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lpfnHook); + lpStruct->lpTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, CHOOSECOLORFc.lpTemplateName); + return lpStruct; +} + +void setCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct) +{ + if (!CHOOSECOLORFc.cached) cacheCHOOSECOLORFields(env, lpObject); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lStructSize, (jint)lpStruct->lStructSize); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.hwndOwner, (jint)lpStruct->hwndOwner); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.hInstance, (jint)lpStruct->hInstance); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.rgbResult, (jint)lpStruct->rgbResult); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lpCustColors, (jint)lpStruct->lpCustColors); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.Flags, (jint)lpStruct->Flags); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lCustData, (jint)lpStruct->lCustData); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lpfnHook, (jint)lpStruct->lpfnHook); + (*env)->SetIntField(env, lpObject, CHOOSECOLORFc.lpTemplateName, (jint)lpStruct->lpTemplateName); +} +#endif + +#ifndef NO_CHOOSEFONT +typedef struct CHOOSEFONT_FID_CACHE { + int cached; + jclass clazz; + jfieldID lStructSize, hwndOwner, hDC, lpLogFont, iPointSize, Flags, rgbColors, lCustData, lpfnHook, lpTemplateName, hInstance, lpszStyle, nFontType, nSizeMin, nSizeMax; +} CHOOSEFONT_FID_CACHE; + +CHOOSEFONT_FID_CACHE CHOOSEFONTFc; + +void cacheCHOOSEFONTFields(JNIEnv *env, jobject lpObject) +{ + if (CHOOSEFONTFc.cached) return; + CHOOSEFONTFc.clazz = (*env)->GetObjectClass(env, lpObject); + CHOOSEFONTFc.lStructSize = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lStructSize", "I"); + CHOOSEFONTFc.hwndOwner = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "hwndOwner", "I"); + CHOOSEFONTFc.hDC = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "hDC", "I"); + CHOOSEFONTFc.lpLogFont = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lpLogFont", "I"); + CHOOSEFONTFc.iPointSize = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "iPointSize", "I"); + CHOOSEFONTFc.Flags = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "Flags", "I"); + CHOOSEFONTFc.rgbColors = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "rgbColors", "I"); + CHOOSEFONTFc.lCustData = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lCustData", "I"); + CHOOSEFONTFc.lpfnHook = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lpfnHook", "I"); + CHOOSEFONTFc.lpTemplateName = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lpTemplateName", "I"); + CHOOSEFONTFc.hInstance = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "hInstance", "I"); + CHOOSEFONTFc.lpszStyle = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "lpszStyle", "I"); + CHOOSEFONTFc.nFontType = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "nFontType", "S"); + CHOOSEFONTFc.nSizeMin = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "nSizeMin", "I"); + CHOOSEFONTFc.nSizeMax = (*env)->GetFieldID(env, CHOOSEFONTFc.clazz, "nSizeMax", "I"); + CHOOSEFONTFc.cached = 1; +} + +CHOOSEFONT *getCHOOSEFONTFields(JNIEnv *env, jobject lpObject, CHOOSEFONT *lpStruct) +{ + if (!CHOOSEFONTFc.cached) cacheCHOOSEFONTFields(env, lpObject); + lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lStructSize); + lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.hwndOwner); + lpStruct->hDC = (HDC)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.hDC); + lpStruct->lpLogFont = (LPLOGFONT)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lpLogFont); + lpStruct->iPointSize = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.iPointSize); + lpStruct->Flags = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.Flags); + lpStruct->rgbColors = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.rgbColors); + lpStruct->lCustData = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lCustData); + lpStruct->lpfnHook = (LPCFHOOKPROC)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lpfnHook); + lpStruct->lpTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lpTemplateName); + lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.hInstance); + lpStruct->lpszStyle = (LPTSTR)(*env)->GetIntField(env, lpObject, CHOOSEFONTFc.lpszStyle); + lpStruct->nFontType = (*env)->GetShortField(env, lpObject, CHOOSEFONTFc.nFontType); + lpStruct->nSizeMin = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.nSizeMin); + lpStruct->nSizeMax = (*env)->GetIntField(env, lpObject, CHOOSEFONTFc.nSizeMax); + return lpStruct; +} + +void setCHOOSEFONTFields(JNIEnv *env, jobject lpObject, CHOOSEFONT *lpStruct) +{ + if (!CHOOSEFONTFc.cached) cacheCHOOSEFONTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lStructSize, (jint)lpStruct->lStructSize); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.hwndOwner, (jint)lpStruct->hwndOwner); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.hDC, (jint)lpStruct->hDC); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lpLogFont, (jint)lpStruct->lpLogFont); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.iPointSize, (jint)lpStruct->iPointSize); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.Flags, (jint)lpStruct->Flags); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.rgbColors, (jint)lpStruct->rgbColors); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lCustData, (jint)lpStruct->lCustData); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lpfnHook, (jint)lpStruct->lpfnHook); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lpTemplateName, (jint)lpStruct->lpTemplateName); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.hInstance, (jint)lpStruct->hInstance); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.lpszStyle, (jint)lpStruct->lpszStyle); + (*env)->SetShortField(env, lpObject, CHOOSEFONTFc.nFontType, (jshort)lpStruct->nFontType); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.nSizeMin, (jint)lpStruct->nSizeMin); + (*env)->SetIntField(env, lpObject, CHOOSEFONTFc.nSizeMax, (jint)lpStruct->nSizeMax); +} +#endif + +#ifndef NO_COMPOSITIONFORM +typedef struct COMPOSITIONFORM_FID_CACHE { + int cached; + jclass clazz; + jfieldID dwStyle, x, y, left, top, right, bottom; +} COMPOSITIONFORM_FID_CACHE; + +COMPOSITIONFORM_FID_CACHE COMPOSITIONFORMFc; + +void cacheCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject) +{ + if (COMPOSITIONFORMFc.cached) return; + COMPOSITIONFORMFc.clazz = (*env)->GetObjectClass(env, lpObject); + COMPOSITIONFORMFc.dwStyle = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "dwStyle", "I"); + COMPOSITIONFORMFc.x = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "x", "I"); + COMPOSITIONFORMFc.y = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "y", "I"); + COMPOSITIONFORMFc.left = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "left", "I"); + COMPOSITIONFORMFc.top = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "top", "I"); + COMPOSITIONFORMFc.right = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "right", "I"); + COMPOSITIONFORMFc.bottom = (*env)->GetFieldID(env, COMPOSITIONFORMFc.clazz, "bottom", "I"); + COMPOSITIONFORMFc.cached = 1; +} + +COMPOSITIONFORM *getCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject, COMPOSITIONFORM *lpStruct) +{ + if (!COMPOSITIONFORMFc.cached) cacheCOMPOSITIONFORMFields(env, lpObject); + lpStruct->dwStyle = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.dwStyle); + lpStruct->ptCurrentPos.y = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.x); + lpStruct->ptCurrentPos.x = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.y); + lpStruct->rcArea.left = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.left); + lpStruct->rcArea.top = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.top); + lpStruct->rcArea.right = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.right); + lpStruct->rcArea.bottom = (*env)->GetIntField(env, lpObject, COMPOSITIONFORMFc.bottom); + return lpStruct; +} + +void setCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject, COMPOSITIONFORM *lpStruct) +{ + if (!COMPOSITIONFORMFc.cached) cacheCOMPOSITIONFORMFields(env, lpObject); + (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.dwStyle, (jint)lpStruct->dwStyle); + (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.x, (jint)lpStruct->ptCurrentPos.y); + (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.y, (jint)lpStruct->ptCurrentPos.x); + (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.left, (jint)lpStruct->rcArea.left); + (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.top, (jint)lpStruct->rcArea.top); + (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.right, (jint)lpStruct->rcArea.right); + (*env)->SetIntField(env, lpObject, COMPOSITIONFORMFc.bottom, (jint)lpStruct->rcArea.bottom); +} +#endif + +#ifndef NO_CREATESTRUCT +typedef struct CREATESTRUCT_FID_CACHE { + int cached; + jclass clazz; + jfieldID lpCreateParams, hInstance, hMenu, hwndParent, cy, cx, y, x, style, lpszName, lpszClass, dwExStyle; +} CREATESTRUCT_FID_CACHE; + +CREATESTRUCT_FID_CACHE CREATESTRUCTFc; + +void cacheCREATESTRUCTFields(JNIEnv *env, jobject lpObject) +{ + if (CREATESTRUCTFc.cached) return; + CREATESTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject); + CREATESTRUCTFc.lpCreateParams = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "lpCreateParams", "I"); + CREATESTRUCTFc.hInstance = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "hInstance", "I"); + CREATESTRUCTFc.hMenu = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "hMenu", "I"); + CREATESTRUCTFc.hwndParent = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "hwndParent", "I"); + CREATESTRUCTFc.cy = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "cy", "I"); + CREATESTRUCTFc.cx = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "cx", "I"); + CREATESTRUCTFc.y = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "y", "I"); + CREATESTRUCTFc.x = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "x", "I"); + CREATESTRUCTFc.style = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "style", "I"); + CREATESTRUCTFc.lpszName = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "lpszName", "I"); + CREATESTRUCTFc.lpszClass = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "lpszClass", "I"); + CREATESTRUCTFc.dwExStyle = (*env)->GetFieldID(env, CREATESTRUCTFc.clazz, "dwExStyle", "I"); + CREATESTRUCTFc.cached = 1; +} + +CREATESTRUCT *getCREATESTRUCTFields(JNIEnv *env, jobject lpObject, CREATESTRUCT *lpStruct) +{ + if (!CREATESTRUCTFc.cached) cacheCREATESTRUCTFields(env, lpObject); + lpStruct->lpCreateParams = (LPVOID)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.lpCreateParams); + lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.hInstance); + lpStruct->hMenu = (HMENU)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.hMenu); + lpStruct->hwndParent = (HWND)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.hwndParent); + lpStruct->cy = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.cy); + lpStruct->cx = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.cx); + lpStruct->y = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.y); + lpStruct->x = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.x); + lpStruct->style = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.style); + lpStruct->lpszName = (LPCTSTR)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.lpszName); + lpStruct->lpszClass = (LPCTSTR)(*env)->GetIntField(env, lpObject, CREATESTRUCTFc.lpszClass); + lpStruct->dwExStyle = (*env)->GetIntField(env, lpObject, CREATESTRUCTFc.dwExStyle); + return lpStruct; +} + +void setCREATESTRUCTFields(JNIEnv *env, jobject lpObject, CREATESTRUCT *lpStruct) +{ + if (!CREATESTRUCTFc.cached) cacheCREATESTRUCTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.lpCreateParams, (jint)lpStruct->lpCreateParams); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.hInstance, (jint)lpStruct->hInstance); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.hMenu, (jint)lpStruct->hMenu); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.hwndParent, (jint)lpStruct->hwndParent); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.cy, (jint)lpStruct->cy); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.cx, (jint)lpStruct->cx); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.y, (jint)lpStruct->y); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.x, (jint)lpStruct->x); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.style, (jint)lpStruct->style); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.lpszName, (jint)lpStruct->lpszName); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.lpszClass, (jint)lpStruct->lpszClass); + (*env)->SetIntField(env, lpObject, CREATESTRUCTFc.dwExStyle, (jint)lpStruct->dwExStyle); +} +#endif + +#ifndef NO_DIBSECTION +typedef struct DIBSECTION_FID_CACHE { + int cached; + jclass clazz; + jfieldID biSize, biWidth, biHeight, biPlanes, biBitCount, biCompression, biSizeImage, biXPelsPerMeter, biYPelsPerMeter, biClrUsed, biClrImportant, dsBitfields0, dsBitfields1, dsBitfields2, dshSection, dsOffset; +} DIBSECTION_FID_CACHE; + +DIBSECTION_FID_CACHE DIBSECTIONFc; + +void cacheDIBSECTIONFields(JNIEnv *env, jobject lpObject) +{ + if (DIBSECTIONFc.cached) return; + cacheBITMAPFields(env, lpObject); + DIBSECTIONFc.clazz = (*env)->GetObjectClass(env, lpObject); + DIBSECTIONFc.biSize = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biSize", "I"); + DIBSECTIONFc.biWidth = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biWidth", "I"); + DIBSECTIONFc.biHeight = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biHeight", "I"); + DIBSECTIONFc.biPlanes = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biPlanes", "S"); + DIBSECTIONFc.biBitCount = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biBitCount", "S"); + DIBSECTIONFc.biCompression = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biCompression", "I"); + DIBSECTIONFc.biSizeImage = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biSizeImage", "I"); + DIBSECTIONFc.biXPelsPerMeter = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biXPelsPerMeter", "I"); + DIBSECTIONFc.biYPelsPerMeter = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biYPelsPerMeter", "I"); + DIBSECTIONFc.biClrUsed = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biClrUsed", "I"); + DIBSECTIONFc.biClrImportant = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "biClrImportant", "I"); + DIBSECTIONFc.dsBitfields0 = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dsBitfields0", "I"); + DIBSECTIONFc.dsBitfields1 = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dsBitfields1", "I"); + DIBSECTIONFc.dsBitfields2 = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dsBitfields2", "I"); + DIBSECTIONFc.dshSection = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dshSection", "I"); + DIBSECTIONFc.dsOffset = (*env)->GetFieldID(env, DIBSECTIONFc.clazz, "dsOffset", "I"); + DIBSECTIONFc.cached = 1; +} + +DIBSECTION *getDIBSECTIONFields(JNIEnv *env, jobject lpObject, DIBSECTION *lpStruct) +{ + if (!DIBSECTIONFc.cached) cacheDIBSECTIONFields(env, lpObject); + getBITMAPFields(env, lpObject, (BITMAP *)lpStruct); + lpStruct->dsBmih.biSize = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biSize); + lpStruct->dsBmih.biWidth = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biWidth); + lpStruct->dsBmih.biHeight = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biHeight); + lpStruct->dsBmih.biPlanes = (*env)->GetShortField(env, lpObject, DIBSECTIONFc.biPlanes); + lpStruct->dsBmih.biBitCount = (*env)->GetShortField(env, lpObject, DIBSECTIONFc.biBitCount); + lpStruct->dsBmih.biCompression = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biCompression); + lpStruct->dsBmih.biSizeImage = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biSizeImage); + lpStruct->dsBmih.biXPelsPerMeter = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biXPelsPerMeter); + lpStruct->dsBmih.biYPelsPerMeter = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biYPelsPerMeter); + lpStruct->dsBmih.biClrUsed = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biClrUsed); + lpStruct->dsBmih.biClrImportant = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.biClrImportant); + lpStruct->dsBitfields[0] = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.dsBitfields0); + lpStruct->dsBitfields[1] = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.dsBitfields1); + lpStruct->dsBitfields[2] = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.dsBitfields2); + lpStruct->dshSection = (HANDLE)(*env)->GetIntField(env, lpObject, DIBSECTIONFc.dshSection); + lpStruct->dsOffset = (*env)->GetIntField(env, lpObject, DIBSECTIONFc.dsOffset); + return lpStruct; +} + +void setDIBSECTIONFields(JNIEnv *env, jobject lpObject, DIBSECTION *lpStruct) +{ + if (!DIBSECTIONFc.cached) cacheDIBSECTIONFields(env, lpObject); + setBITMAPFields(env, lpObject, (BITMAP *)lpStruct); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biSize, (jint)lpStruct->dsBmih.biSize); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biWidth, (jint)lpStruct->dsBmih.biWidth); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biHeight, (jint)lpStruct->dsBmih.biHeight); + (*env)->SetShortField(env, lpObject, DIBSECTIONFc.biPlanes, (jshort)lpStruct->dsBmih.biPlanes); + (*env)->SetShortField(env, lpObject, DIBSECTIONFc.biBitCount, (jshort)lpStruct->dsBmih.biBitCount); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biCompression, (jint)lpStruct->dsBmih.biCompression); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biSizeImage, (jint)lpStruct->dsBmih.biSizeImage); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biXPelsPerMeter, (jint)lpStruct->dsBmih.biXPelsPerMeter); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biYPelsPerMeter, (jint)lpStruct->dsBmih.biYPelsPerMeter); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biClrUsed, (jint)lpStruct->dsBmih.biClrUsed); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.biClrImportant, (jint)lpStruct->dsBmih.biClrImportant); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dsBitfields0, (jint)lpStruct->dsBitfields[0]); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dsBitfields1, (jint)lpStruct->dsBitfields[1]); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dsBitfields2, (jint)lpStruct->dsBitfields[2]); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dshSection, (jint)lpStruct->dshSection); + (*env)->SetIntField(env, lpObject, DIBSECTIONFc.dsOffset, (jint)lpStruct->dsOffset); +} +#endif + +#ifndef NO_DLLVERSIONINFO +typedef struct DLLVERSIONINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, dwMajorVersion, dwMinorVersion, dwBuildNumber, dwPlatformID; +} DLLVERSIONINFO_FID_CACHE; + +DLLVERSIONINFO_FID_CACHE DLLVERSIONINFOFc; + +void cacheDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject) +{ + if (DLLVERSIONINFOFc.cached) return; + DLLVERSIONINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + DLLVERSIONINFOFc.cbSize = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "cbSize", "I"); + DLLVERSIONINFOFc.dwMajorVersion = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "dwMajorVersion", "I"); + DLLVERSIONINFOFc.dwMinorVersion = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "dwMinorVersion", "I"); + DLLVERSIONINFOFc.dwBuildNumber = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "dwBuildNumber", "I"); + DLLVERSIONINFOFc.dwPlatformID = (*env)->GetFieldID(env, DLLVERSIONINFOFc.clazz, "dwPlatformID", "I"); + DLLVERSIONINFOFc.cached = 1; +} + +DLLVERSIONINFO *getDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject, DLLVERSIONINFO *lpStruct) +{ + if (!DLLVERSIONINFOFc.cached) cacheDLLVERSIONINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.cbSize); + lpStruct->dwMajorVersion = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.dwMajorVersion); + lpStruct->dwMinorVersion = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.dwMinorVersion); + lpStruct->dwBuildNumber = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.dwBuildNumber); + lpStruct->dwPlatformID = (*env)->GetIntField(env, lpObject, DLLVERSIONINFOFc.dwPlatformID); + return lpStruct; +} + +void setDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject, DLLVERSIONINFO *lpStruct) +{ + if (!DLLVERSIONINFOFc.cached) cacheDLLVERSIONINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.dwMajorVersion, (jint)lpStruct->dwMajorVersion); + (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.dwMinorVersion, (jint)lpStruct->dwMinorVersion); + (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.dwBuildNumber, (jint)lpStruct->dwBuildNumber); + (*env)->SetIntField(env, lpObject, DLLVERSIONINFOFc.dwPlatformID, (jint)lpStruct->dwPlatformID); +} +#endif + +#ifndef NO_DOCINFO +typedef struct DOCINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, lpszDocName, lpszOutput, lpszDatatype, fwType; +} DOCINFO_FID_CACHE; + +DOCINFO_FID_CACHE DOCINFOFc; + +void cacheDOCINFOFields(JNIEnv *env, jobject lpObject) +{ + if (DOCINFOFc.cached) return; + DOCINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + DOCINFOFc.cbSize = (*env)->GetFieldID(env, DOCINFOFc.clazz, "cbSize", "I"); + DOCINFOFc.lpszDocName = (*env)->GetFieldID(env, DOCINFOFc.clazz, "lpszDocName", "I"); + DOCINFOFc.lpszOutput = (*env)->GetFieldID(env, DOCINFOFc.clazz, "lpszOutput", "I"); + DOCINFOFc.lpszDatatype = (*env)->GetFieldID(env, DOCINFOFc.clazz, "lpszDatatype", "I"); + DOCINFOFc.fwType = (*env)->GetFieldID(env, DOCINFOFc.clazz, "fwType", "I"); + DOCINFOFc.cached = 1; +} + +DOCINFO *getDOCINFOFields(JNIEnv *env, jobject lpObject, DOCINFO *lpStruct) +{ + if (!DOCINFOFc.cached) cacheDOCINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, DOCINFOFc.cbSize); + lpStruct->lpszDocName = (LPCTSTR)(*env)->GetIntField(env, lpObject, DOCINFOFc.lpszDocName); + lpStruct->lpszOutput = (LPCTSTR)(*env)->GetIntField(env, lpObject, DOCINFOFc.lpszOutput); + lpStruct->lpszDatatype = (LPCTSTR)(*env)->GetIntField(env, lpObject, DOCINFOFc.lpszDatatype); + lpStruct->fwType = (*env)->GetIntField(env, lpObject, DOCINFOFc.fwType); + return lpStruct; +} + +void setDOCINFOFields(JNIEnv *env, jobject lpObject, DOCINFO *lpStruct) +{ + if (!DOCINFOFc.cached) cacheDOCINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, DOCINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, DOCINFOFc.lpszDocName, (jint)lpStruct->lpszDocName); + (*env)->SetIntField(env, lpObject, DOCINFOFc.lpszOutput, (jint)lpStruct->lpszOutput); + (*env)->SetIntField(env, lpObject, DOCINFOFc.lpszDatatype, (jint)lpStruct->lpszDatatype); + (*env)->SetIntField(env, lpObject, DOCINFOFc.fwType, (jint)lpStruct->fwType); +} +#endif + +#ifndef NO_DRAWITEMSTRUCT +typedef struct DRAWITEMSTRUCT_FID_CACHE { + int cached; + jclass clazz; + jfieldID CtlType, CtlID, itemID, itemAction, itemState, hwndItem, hDC, left, top, bottom, right, itemData; +} DRAWITEMSTRUCT_FID_CACHE; + +DRAWITEMSTRUCT_FID_CACHE DRAWITEMSTRUCTFc; + +void cacheDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject) +{ + if (DRAWITEMSTRUCTFc.cached) return; + DRAWITEMSTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject); + DRAWITEMSTRUCTFc.CtlType = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "CtlType", "I"); + DRAWITEMSTRUCTFc.CtlID = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "CtlID", "I"); + DRAWITEMSTRUCTFc.itemID = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "itemID", "I"); + DRAWITEMSTRUCTFc.itemAction = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "itemAction", "I"); + DRAWITEMSTRUCTFc.itemState = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "itemState", "I"); + DRAWITEMSTRUCTFc.hwndItem = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "hwndItem", "I"); + DRAWITEMSTRUCTFc.hDC = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "hDC", "I"); + DRAWITEMSTRUCTFc.left = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "left", "I"); + DRAWITEMSTRUCTFc.top = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "top", "I"); + DRAWITEMSTRUCTFc.bottom = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "bottom", "I"); + DRAWITEMSTRUCTFc.right = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "right", "I"); + DRAWITEMSTRUCTFc.itemData = (*env)->GetFieldID(env, DRAWITEMSTRUCTFc.clazz, "itemData", "I"); + DRAWITEMSTRUCTFc.cached = 1; +} + +DRAWITEMSTRUCT *getDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject, DRAWITEMSTRUCT *lpStruct) +{ + if (!DRAWITEMSTRUCTFc.cached) cacheDRAWITEMSTRUCTFields(env, lpObject); + lpStruct->CtlType = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.CtlType); + lpStruct->CtlID = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.CtlID); + lpStruct->itemID = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemID); + lpStruct->itemAction = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemAction); + lpStruct->itemState = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemState); + lpStruct->hwndItem = (HWND)(*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.hwndItem); + lpStruct->hDC = (HDC)(*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.hDC); + lpStruct->rcItem.left = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.left); + lpStruct->rcItem.top = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.top); + lpStruct->rcItem.bottom = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.bottom); + lpStruct->rcItem.right = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.right); + lpStruct->itemData = (*env)->GetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemData); + return lpStruct; +} + +void setDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject, DRAWITEMSTRUCT *lpStruct) +{ + if (!DRAWITEMSTRUCTFc.cached) cacheDRAWITEMSTRUCTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.CtlType, (jint)lpStruct->CtlType); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.CtlID, (jint)lpStruct->CtlID); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemID, (jint)lpStruct->itemID); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemAction, (jint)lpStruct->itemAction); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemState, (jint)lpStruct->itemState); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.hwndItem, (jint)lpStruct->hwndItem); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.hDC, (jint)lpStruct->hDC); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.left, (jint)lpStruct->rcItem.left); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.top, (jint)lpStruct->rcItem.top); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.bottom, (jint)lpStruct->rcItem.bottom); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.right, (jint)lpStruct->rcItem.right); + (*env)->SetIntField(env, lpObject, DRAWITEMSTRUCTFc.itemData, (jint)lpStruct->itemData); +} +#endif + +#ifndef NO_DROPFILES +typedef struct DROPFILES_FID_CACHE { + int cached; + jclass clazz; + jfieldID pFiles, pt_x, pt_y, fNC, fWide; +} DROPFILES_FID_CACHE; + +DROPFILES_FID_CACHE DROPFILESFc; + +void cacheDROPFILESFields(JNIEnv *env, jobject lpObject) +{ + if (DROPFILESFc.cached) return; + DROPFILESFc.clazz = (*env)->GetObjectClass(env, lpObject); + DROPFILESFc.pFiles = (*env)->GetFieldID(env, DROPFILESFc.clazz, "pFiles", "I"); + DROPFILESFc.pt_x = (*env)->GetFieldID(env, DROPFILESFc.clazz, "pt_x", "I"); + DROPFILESFc.pt_y = (*env)->GetFieldID(env, DROPFILESFc.clazz, "pt_y", "I"); + DROPFILESFc.fNC = (*env)->GetFieldID(env, DROPFILESFc.clazz, "fNC", "I"); + DROPFILESFc.fWide = (*env)->GetFieldID(env, DROPFILESFc.clazz, "fWide", "I"); + DROPFILESFc.cached = 1; +} + +DROPFILES *getDROPFILESFields(JNIEnv *env, jobject lpObject, DROPFILES *lpStruct) +{ + if (!DROPFILESFc.cached) cacheDROPFILESFields(env, lpObject); + lpStruct->pFiles = (*env)->GetIntField(env, lpObject, DROPFILESFc.pFiles); + lpStruct->pt.x = (*env)->GetIntField(env, lpObject, DROPFILESFc.pt_x); + lpStruct->pt.y = (*env)->GetIntField(env, lpObject, DROPFILESFc.pt_y); + lpStruct->fNC = (*env)->GetIntField(env, lpObject, DROPFILESFc.fNC); + lpStruct->fWide = (*env)->GetIntField(env, lpObject, DROPFILESFc.fWide); + return lpStruct; +} + +void setDROPFILESFields(JNIEnv *env, jobject lpObject, DROPFILES *lpStruct) +{ + if (!DROPFILESFc.cached) cacheDROPFILESFields(env, lpObject); + (*env)->SetIntField(env, lpObject, DROPFILESFc.pFiles, (jint)lpStruct->pFiles); + (*env)->SetIntField(env, lpObject, DROPFILESFc.pt_x, (jint)lpStruct->pt.x); + (*env)->SetIntField(env, lpObject, DROPFILESFc.pt_y, (jint)lpStruct->pt.y); + (*env)->SetIntField(env, lpObject, DROPFILESFc.fNC, (jint)lpStruct->fNC); + (*env)->SetIntField(env, lpObject, DROPFILESFc.fWide, (jint)lpStruct->fWide); +} +#endif + +#ifndef NO_FILETIME +typedef struct FILETIME_FID_CACHE { + int cached; + jclass clazz; + jfieldID dwLowDateTime, dwHighDateTime; +} FILETIME_FID_CACHE; + +FILETIME_FID_CACHE FILETIMEFc; + +void cacheFILETIMEFields(JNIEnv *env, jobject lpObject) +{ + if (FILETIMEFc.cached) return; + FILETIMEFc.clazz = (*env)->GetObjectClass(env, lpObject); + FILETIMEFc.dwLowDateTime = (*env)->GetFieldID(env, FILETIMEFc.clazz, "dwLowDateTime", "I"); + FILETIMEFc.dwHighDateTime = (*env)->GetFieldID(env, FILETIMEFc.clazz, "dwHighDateTime", "I"); + FILETIMEFc.cached = 1; +} + +FILETIME *getFILETIMEFields(JNIEnv *env, jobject lpObject, FILETIME *lpStruct) +{ + if (!FILETIMEFc.cached) cacheFILETIMEFields(env, lpObject); + lpStruct->dwLowDateTime = (*env)->GetIntField(env, lpObject, FILETIMEFc.dwLowDateTime); + lpStruct->dwHighDateTime = (*env)->GetIntField(env, lpObject, FILETIMEFc.dwHighDateTime); + return lpStruct; +} + +void setFILETIMEFields(JNIEnv *env, jobject lpObject, FILETIME *lpStruct) +{ + if (!FILETIMEFc.cached) cacheFILETIMEFields(env, lpObject); + (*env)->SetIntField(env, lpObject, FILETIMEFc.dwLowDateTime, (jint)lpStruct->dwLowDateTime); + (*env)->SetIntField(env, lpObject, FILETIMEFc.dwHighDateTime, (jint)lpStruct->dwHighDateTime); +} +#endif + +#ifndef NO_GCP_RESULTS +typedef struct GCP_RESULTS_FID_CACHE { + int cached; + jclass clazz; + jfieldID lStructSize, lpOutString, lpOrder, lpDx, lpCaretPos, lpClass, lpGlyphs, nGlyphs, nMaxFit; +} GCP_RESULTS_FID_CACHE; + +GCP_RESULTS_FID_CACHE GCP_RESULTSFc; + +void cacheGCP_RESULTSFields(JNIEnv *env, jobject lpObject) +{ + if (GCP_RESULTSFc.cached) return; + GCP_RESULTSFc.clazz = (*env)->GetObjectClass(env, lpObject); + GCP_RESULTSFc.lStructSize = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lStructSize", "I"); + GCP_RESULTSFc.lpOutString = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpOutString", "I"); + GCP_RESULTSFc.lpOrder = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpOrder", "I"); + GCP_RESULTSFc.lpDx = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpDx", "I"); + GCP_RESULTSFc.lpCaretPos = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpCaretPos", "I"); + GCP_RESULTSFc.lpClass = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpClass", "I"); + GCP_RESULTSFc.lpGlyphs = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "lpGlyphs", "I"); + GCP_RESULTSFc.nGlyphs = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "nGlyphs", "I"); + GCP_RESULTSFc.nMaxFit = (*env)->GetFieldID(env, GCP_RESULTSFc.clazz, "nMaxFit", "I"); + GCP_RESULTSFc.cached = 1; +} + +GCP_RESULTS *getGCP_RESULTSFields(JNIEnv *env, jobject lpObject, GCP_RESULTS *lpStruct) +{ + if (!GCP_RESULTSFc.cached) cacheGCP_RESULTSFields(env, lpObject); + lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lStructSize); + lpStruct->lpOutString = (LPTSTR)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpOutString); + lpStruct->lpOrder = (UINT *)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpOrder); + lpStruct->lpDx = (int *)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpDx); + lpStruct->lpCaretPos = (int *)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpCaretPos); + lpStruct->lpClass = (LPSTR)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpClass); + lpStruct->lpGlyphs = (LPWSTR)(*env)->GetIntField(env, lpObject, GCP_RESULTSFc.lpGlyphs); + lpStruct->nGlyphs = (*env)->GetIntField(env, lpObject, GCP_RESULTSFc.nGlyphs); + lpStruct->nMaxFit = (*env)->GetIntField(env, lpObject, GCP_RESULTSFc.nMaxFit); + return lpStruct; +} + +void setGCP_RESULTSFields(JNIEnv *env, jobject lpObject, GCP_RESULTS *lpStruct) +{ + if (!GCP_RESULTSFc.cached) cacheGCP_RESULTSFields(env, lpObject); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lStructSize, (jint)lpStruct->lStructSize); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpOutString, (jint)lpStruct->lpOutString); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpOrder, (jint)lpStruct->lpOrder); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpDx, (jint)lpStruct->lpDx); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpCaretPos, (jint)lpStruct->lpCaretPos); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpClass, (jint)lpStruct->lpClass); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.lpGlyphs, (jint)lpStruct->lpGlyphs); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.nGlyphs, (jint)lpStruct->nGlyphs); + (*env)->SetIntField(env, lpObject, GCP_RESULTSFc.nMaxFit, (jint)lpStruct->nMaxFit); +} +#endif + +#ifndef NO_GRADIENT_RECT +typedef struct GRADIENT_RECT_FID_CACHE { + int cached; + jclass clazz; + jfieldID UpperLeft, LowerRight; +} GRADIENT_RECT_FID_CACHE; + +GRADIENT_RECT_FID_CACHE GRADIENT_RECTFc; + +void cacheGRADIENT_RECTFields(JNIEnv *env, jobject lpObject) +{ + if (GRADIENT_RECTFc.cached) return; + GRADIENT_RECTFc.clazz = (*env)->GetObjectClass(env, lpObject); + GRADIENT_RECTFc.UpperLeft = (*env)->GetFieldID(env, GRADIENT_RECTFc.clazz, "UpperLeft", "I"); + GRADIENT_RECTFc.LowerRight = (*env)->GetFieldID(env, GRADIENT_RECTFc.clazz, "LowerRight", "I"); + GRADIENT_RECTFc.cached = 1; +} + +GRADIENT_RECT *getGRADIENT_RECTFields(JNIEnv *env, jobject lpObject, GRADIENT_RECT *lpStruct) +{ + if (!GRADIENT_RECTFc.cached) cacheGRADIENT_RECTFields(env, lpObject); + lpStruct->UpperLeft = (*env)->GetIntField(env, lpObject, GRADIENT_RECTFc.UpperLeft); + lpStruct->LowerRight = (*env)->GetIntField(env, lpObject, GRADIENT_RECTFc.LowerRight); + return lpStruct; +} + +void setGRADIENT_RECTFields(JNIEnv *env, jobject lpObject, GRADIENT_RECT *lpStruct) +{ + if (!GRADIENT_RECTFc.cached) cacheGRADIENT_RECTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, GRADIENT_RECTFc.UpperLeft, (jint)lpStruct->UpperLeft); + (*env)->SetIntField(env, lpObject, GRADIENT_RECTFc.LowerRight, (jint)lpStruct->LowerRight); +} +#endif + +#ifndef NO_HDITEM +typedef struct HDITEM_FID_CACHE { + int cached; + jclass clazz; + jfieldID mask, cxy, pszText, hbm, cchTextMax, fmt, lParam, iImage, iOrder; +} HDITEM_FID_CACHE; + +HDITEM_FID_CACHE HDITEMFc; + +void cacheHDITEMFields(JNIEnv *env, jobject lpObject) +{ + if (HDITEMFc.cached) return; + HDITEMFc.clazz = (*env)->GetObjectClass(env, lpObject); + HDITEMFc.mask = (*env)->GetFieldID(env, HDITEMFc.clazz, "mask", "I"); + HDITEMFc.cxy = (*env)->GetFieldID(env, HDITEMFc.clazz, "cxy", "I"); + HDITEMFc.pszText = (*env)->GetFieldID(env, HDITEMFc.clazz, "pszText", "I"); + HDITEMFc.hbm = (*env)->GetFieldID(env, HDITEMFc.clazz, "hbm", "I"); + HDITEMFc.cchTextMax = (*env)->GetFieldID(env, HDITEMFc.clazz, "cchTextMax", "I"); + HDITEMFc.fmt = (*env)->GetFieldID(env, HDITEMFc.clazz, "fmt", "I"); + HDITEMFc.lParam = (*env)->GetFieldID(env, HDITEMFc.clazz, "lParam", "I"); + HDITEMFc.iImage = (*env)->GetFieldID(env, HDITEMFc.clazz, "iImage", "I"); + HDITEMFc.iOrder = (*env)->GetFieldID(env, HDITEMFc.clazz, "iOrder", "I"); + HDITEMFc.cached = 1; +} + +HDITEM *getHDITEMFields(JNIEnv *env, jobject lpObject, HDITEM *lpStruct) +{ + if (!HDITEMFc.cached) cacheHDITEMFields(env, lpObject); + lpStruct->mask = (*env)->GetIntField(env, lpObject, HDITEMFc.mask); + lpStruct->cxy = (*env)->GetIntField(env, lpObject, HDITEMFc.cxy); + lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, HDITEMFc.pszText); + lpStruct->hbm = (HBITMAP)(*env)->GetIntField(env, lpObject, HDITEMFc.hbm); + lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, HDITEMFc.cchTextMax); + lpStruct->fmt = (*env)->GetIntField(env, lpObject, HDITEMFc.fmt); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, HDITEMFc.lParam); + lpStruct->iImage = (*env)->GetIntField(env, lpObject, HDITEMFc.iImage); + lpStruct->iOrder = (*env)->GetIntField(env, lpObject, HDITEMFc.iOrder); + return lpStruct; +} + +void setHDITEMFields(JNIEnv *env, jobject lpObject, HDITEM *lpStruct) +{ + if (!HDITEMFc.cached) cacheHDITEMFields(env, lpObject); + (*env)->SetIntField(env, lpObject, HDITEMFc.mask, (jint)lpStruct->mask); + (*env)->SetIntField(env, lpObject, HDITEMFc.cxy, (jint)lpStruct->cxy); + (*env)->SetIntField(env, lpObject, HDITEMFc.pszText, (jint)lpStruct->pszText); + (*env)->SetIntField(env, lpObject, HDITEMFc.hbm, (jint)lpStruct->hbm); + (*env)->SetIntField(env, lpObject, HDITEMFc.cchTextMax, (jint)lpStruct->cchTextMax); + (*env)->SetIntField(env, lpObject, HDITEMFc.fmt, (jint)lpStruct->fmt); + (*env)->SetIntField(env, lpObject, HDITEMFc.lParam, (jint)lpStruct->lParam); + (*env)->SetIntField(env, lpObject, HDITEMFc.iImage, (jint)lpStruct->iImage); + (*env)->SetIntField(env, lpObject, HDITEMFc.iOrder, (jint)lpStruct->iOrder); +} +#endif + +#ifndef NO_HELPINFO +typedef struct HELPINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, iContextType, iCtrlId, hItemHandle, dwContextId, x, y; +} HELPINFO_FID_CACHE; + +HELPINFO_FID_CACHE HELPINFOFc; + +void cacheHELPINFOFields(JNIEnv *env, jobject lpObject) +{ + if (HELPINFOFc.cached) return; + HELPINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + HELPINFOFc.cbSize = (*env)->GetFieldID(env, HELPINFOFc.clazz, "cbSize", "I"); + HELPINFOFc.iContextType = (*env)->GetFieldID(env, HELPINFOFc.clazz, "iContextType", "I"); + HELPINFOFc.iCtrlId = (*env)->GetFieldID(env, HELPINFOFc.clazz, "iCtrlId", "I"); + HELPINFOFc.hItemHandle = (*env)->GetFieldID(env, HELPINFOFc.clazz, "hItemHandle", "I"); + HELPINFOFc.dwContextId = (*env)->GetFieldID(env, HELPINFOFc.clazz, "dwContextId", "I"); + HELPINFOFc.x = (*env)->GetFieldID(env, HELPINFOFc.clazz, "x", "I"); + HELPINFOFc.y = (*env)->GetFieldID(env, HELPINFOFc.clazz, "y", "I"); + HELPINFOFc.cached = 1; +} + +HELPINFO *getHELPINFOFields(JNIEnv *env, jobject lpObject, HELPINFO *lpStruct) +{ + if (!HELPINFOFc.cached) cacheHELPINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, HELPINFOFc.cbSize); + lpStruct->iContextType = (*env)->GetIntField(env, lpObject, HELPINFOFc.iContextType); + lpStruct->iCtrlId = (*env)->GetIntField(env, lpObject, HELPINFOFc.iCtrlId); + lpStruct->hItemHandle = (HANDLE)(*env)->GetIntField(env, lpObject, HELPINFOFc.hItemHandle); + lpStruct->dwContextId = (*env)->GetIntField(env, lpObject, HELPINFOFc.dwContextId); + lpStruct->MousePos.x = (*env)->GetIntField(env, lpObject, HELPINFOFc.x); + lpStruct->MousePos.y = (*env)->GetIntField(env, lpObject, HELPINFOFc.y); + return lpStruct; +} + +void setHELPINFOFields(JNIEnv *env, jobject lpObject, HELPINFO *lpStruct) +{ + if (!HELPINFOFc.cached) cacheHELPINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, HELPINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, HELPINFOFc.iContextType, (jint)lpStruct->iContextType); + (*env)->SetIntField(env, lpObject, HELPINFOFc.iCtrlId, (jint)lpStruct->iCtrlId); + (*env)->SetIntField(env, lpObject, HELPINFOFc.hItemHandle, (jint)lpStruct->hItemHandle); + (*env)->SetIntField(env, lpObject, HELPINFOFc.dwContextId, (jint)lpStruct->dwContextId); + (*env)->SetIntField(env, lpObject, HELPINFOFc.x, (jint)lpStruct->MousePos.x); + (*env)->SetIntField(env, lpObject, HELPINFOFc.y, (jint)lpStruct->MousePos.y); +} +#endif + +#ifndef NO_ICONINFO +typedef struct ICONINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID fIcon, xHotspot, yHotspot, hbmMask, hbmColor; +} ICONINFO_FID_CACHE; + +ICONINFO_FID_CACHE ICONINFOFc; + +void cacheICONINFOFields(JNIEnv *env, jobject lpObject) +{ + if (ICONINFOFc.cached) return; + ICONINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + ICONINFOFc.fIcon = (*env)->GetFieldID(env, ICONINFOFc.clazz, "fIcon", "Z"); + ICONINFOFc.xHotspot = (*env)->GetFieldID(env, ICONINFOFc.clazz, "xHotspot", "I"); + ICONINFOFc.yHotspot = (*env)->GetFieldID(env, ICONINFOFc.clazz, "yHotspot", "I"); + ICONINFOFc.hbmMask = (*env)->GetFieldID(env, ICONINFOFc.clazz, "hbmMask", "I"); + ICONINFOFc.hbmColor = (*env)->GetFieldID(env, ICONINFOFc.clazz, "hbmColor", "I"); + ICONINFOFc.cached = 1; +} + +ICONINFO *getICONINFOFields(JNIEnv *env, jobject lpObject, ICONINFO *lpStruct) +{ + if (!ICONINFOFc.cached) cacheICONINFOFields(env, lpObject); + lpStruct->fIcon = (*env)->GetBooleanField(env, lpObject, ICONINFOFc.fIcon); + lpStruct->xHotspot = (*env)->GetIntField(env, lpObject, ICONINFOFc.xHotspot); + lpStruct->yHotspot = (*env)->GetIntField(env, lpObject, ICONINFOFc.yHotspot); + lpStruct->hbmMask = (HBITMAP)(*env)->GetIntField(env, lpObject, ICONINFOFc.hbmMask); + lpStruct->hbmColor = (HBITMAP)(*env)->GetIntField(env, lpObject, ICONINFOFc.hbmColor); + return lpStruct; +} + +void setICONINFOFields(JNIEnv *env, jobject lpObject, ICONINFO *lpStruct) +{ + if (!ICONINFOFc.cached) cacheICONINFOFields(env, lpObject); + (*env)->SetBooleanField(env, lpObject, ICONINFOFc.fIcon, (jboolean)lpStruct->fIcon); + (*env)->SetIntField(env, lpObject, ICONINFOFc.xHotspot, (jint)lpStruct->xHotspot); + (*env)->SetIntField(env, lpObject, ICONINFOFc.yHotspot, (jint)lpStruct->yHotspot); + (*env)->SetIntField(env, lpObject, ICONINFOFc.hbmMask, (jint)lpStruct->hbmMask); + (*env)->SetIntField(env, lpObject, ICONINFOFc.hbmColor, (jint)lpStruct->hbmColor); +} +#endif + +#ifndef NO_INITCOMMONCONTROLSEX +typedef struct INITCOMMONCONTROLSEX_FID_CACHE { + int cached; + jclass clazz; + jfieldID dwSize, dwICC; +} INITCOMMONCONTROLSEX_FID_CACHE; + +INITCOMMONCONTROLSEX_FID_CACHE INITCOMMONCONTROLSEXFc; + +void cacheINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject) +{ + if (INITCOMMONCONTROLSEXFc.cached) return; + INITCOMMONCONTROLSEXFc.clazz = (*env)->GetObjectClass(env, lpObject); + INITCOMMONCONTROLSEXFc.dwSize = (*env)->GetFieldID(env, INITCOMMONCONTROLSEXFc.clazz, "dwSize", "I"); + INITCOMMONCONTROLSEXFc.dwICC = (*env)->GetFieldID(env, INITCOMMONCONTROLSEXFc.clazz, "dwICC", "I"); + INITCOMMONCONTROLSEXFc.cached = 1; +} + +INITCOMMONCONTROLSEX *getINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject, INITCOMMONCONTROLSEX *lpStruct) +{ + if (!INITCOMMONCONTROLSEXFc.cached) cacheINITCOMMONCONTROLSEXFields(env, lpObject); + lpStruct->dwSize = (*env)->GetIntField(env, lpObject, INITCOMMONCONTROLSEXFc.dwSize); + lpStruct->dwICC = (*env)->GetIntField(env, lpObject, INITCOMMONCONTROLSEXFc.dwICC); + return lpStruct; +} + +void setINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject, INITCOMMONCONTROLSEX *lpStruct) +{ + if (!INITCOMMONCONTROLSEXFc.cached) cacheINITCOMMONCONTROLSEXFields(env, lpObject); + (*env)->SetIntField(env, lpObject, INITCOMMONCONTROLSEXFc.dwSize, (jint)lpStruct->dwSize); + (*env)->SetIntField(env, lpObject, INITCOMMONCONTROLSEXFc.dwICC, (jint)lpStruct->dwICC); +} +#endif + +#ifndef NO_LOGBRUSH +typedef struct LOGBRUSH_FID_CACHE { + int cached; + jclass clazz; + jfieldID lbStyle, lbColor, lbHatch; +} LOGBRUSH_FID_CACHE; + +LOGBRUSH_FID_CACHE LOGBRUSHFc; + +void cacheLOGBRUSHFields(JNIEnv *env, jobject lpObject) +{ + if (LOGBRUSHFc.cached) return; + LOGBRUSHFc.clazz = (*env)->GetObjectClass(env, lpObject); + LOGBRUSHFc.lbStyle = (*env)->GetFieldID(env, LOGBRUSHFc.clazz, "lbStyle", "I"); + LOGBRUSHFc.lbColor = (*env)->GetFieldID(env, LOGBRUSHFc.clazz, "lbColor", "I"); + LOGBRUSHFc.lbHatch = (*env)->GetFieldID(env, LOGBRUSHFc.clazz, "lbHatch", "I"); + LOGBRUSHFc.cached = 1; +} + +LOGBRUSH *getLOGBRUSHFields(JNIEnv *env, jobject lpObject, LOGBRUSH *lpStruct) +{ + if (!LOGBRUSHFc.cached) cacheLOGBRUSHFields(env, lpObject); + lpStruct->lbStyle = (*env)->GetIntField(env, lpObject, LOGBRUSHFc.lbStyle); + lpStruct->lbColor = (*env)->GetIntField(env, lpObject, LOGBRUSHFc.lbColor); + lpStruct->lbHatch = (*env)->GetIntField(env, lpObject, LOGBRUSHFc.lbHatch); + return lpStruct; +} + +void setLOGBRUSHFields(JNIEnv *env, jobject lpObject, LOGBRUSH *lpStruct) +{ + if (!LOGBRUSHFc.cached) cacheLOGBRUSHFields(env, lpObject); + (*env)->SetIntField(env, lpObject, LOGBRUSHFc.lbStyle, (jint)lpStruct->lbStyle); + (*env)->SetIntField(env, lpObject, LOGBRUSHFc.lbColor, (jint)lpStruct->lbColor); + (*env)->SetIntField(env, lpObject, LOGBRUSHFc.lbHatch, (jint)lpStruct->lbHatch); +} +#endif + +#ifndef NO_LOGFONT +typedef struct LOGFONT_FID_CACHE { + int cached; + jclass clazz; + jfieldID lfHeight, lfWidth, lfEscapement, lfOrientation, lfWeight, lfItalic, lfUnderline, lfStrikeOut, lfCharSet, lfOutPrecision, lfClipPrecision, lfQuality, lfPitchAndFamily; +} LOGFONT_FID_CACHE; + +LOGFONT_FID_CACHE LOGFONTFc; + +void cacheLOGFONTFields(JNIEnv *env, jobject lpObject) +{ + if (LOGFONTFc.cached) return; + LOGFONTFc.clazz = (*env)->GetObjectClass(env, lpObject); + LOGFONTFc.lfHeight = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfHeight", "I"); + LOGFONTFc.lfWidth = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfWidth", "I"); + LOGFONTFc.lfEscapement = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfEscapement", "I"); + LOGFONTFc.lfOrientation = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfOrientation", "I"); + LOGFONTFc.lfWeight = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfWeight", "I"); + LOGFONTFc.lfItalic = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfItalic", "B"); + LOGFONTFc.lfUnderline = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfUnderline", "B"); + LOGFONTFc.lfStrikeOut = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfStrikeOut", "B"); + LOGFONTFc.lfCharSet = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfCharSet", "B"); + LOGFONTFc.lfOutPrecision = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfOutPrecision", "B"); + LOGFONTFc.lfClipPrecision = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfClipPrecision", "B"); + LOGFONTFc.lfQuality = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfQuality", "B"); + LOGFONTFc.lfPitchAndFamily = (*env)->GetFieldID(env, LOGFONTFc.clazz, "lfPitchAndFamily", "B"); + LOGFONTFc.cached = 1; +} + +LOGFONT *getLOGFONTFields(JNIEnv *env, jobject lpObject, LOGFONT *lpStruct) +{ + if (!LOGFONTFc.cached) cacheLOGFONTFields(env, lpObject); + lpStruct->lfHeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfHeight); + lpStruct->lfWidth = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWidth); + lpStruct->lfEscapement = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfEscapement); + lpStruct->lfOrientation = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfOrientation); + lpStruct->lfWeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWeight); + lpStruct->lfItalic = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfItalic); + lpStruct->lfUnderline = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfUnderline); + lpStruct->lfStrikeOut = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfStrikeOut); + lpStruct->lfCharSet = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfCharSet); + lpStruct->lfOutPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfOutPrecision); + lpStruct->lfClipPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfClipPrecision); + lpStruct->lfQuality = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfQuality); + lpStruct->lfPitchAndFamily = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily); + return lpStruct; +} + +void setLOGFONTFields(JNIEnv *env, jobject lpObject, LOGFONT *lpStruct) +{ + if (!LOGFONTFc.cached) cacheLOGFONTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfHeight, (jint)lpStruct->lfHeight); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWidth, (jint)lpStruct->lfWidth); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfEscapement, (jint)lpStruct->lfEscapement); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfOrientation, (jint)lpStruct->lfOrientation); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWeight, (jint)lpStruct->lfWeight); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfItalic, (jbyte)lpStruct->lfItalic); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfUnderline, (jbyte)lpStruct->lfUnderline); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfStrikeOut, (jbyte)lpStruct->lfStrikeOut); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfCharSet, (jbyte)lpStruct->lfCharSet); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfOutPrecision, (jbyte)lpStruct->lfOutPrecision); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfClipPrecision, (jbyte)lpStruct->lfClipPrecision); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfQuality, (jbyte)lpStruct->lfQuality); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily, (jbyte)lpStruct->lfPitchAndFamily); +} +#endif + +#ifndef NO_LOGFONTA +typedef struct LOGFONTA_FID_CACHE { + int cached; + jclass clazz; + jfieldID lfFaceName; +} LOGFONTA_FID_CACHE; + +LOGFONTA_FID_CACHE LOGFONTAFc; + +void cacheLOGFONTAFields(JNIEnv *env, jobject lpObject) +{ + if (LOGFONTAFc.cached) return; + cacheLOGFONTFields(env, lpObject); + LOGFONTAFc.clazz = (*env)->GetObjectClass(env, lpObject); + LOGFONTAFc.lfFaceName = (*env)->GetFieldID(env, LOGFONTAFc.clazz, "lfFaceName", "[B"); + LOGFONTAFc.cached = 1; +} + +LOGFONTA *getLOGFONTAFields(JNIEnv *env, jobject lpObject, LOGFONTA *lpStruct) +{ + if (!LOGFONTAFc.cached) cacheLOGFONTAFields(env, lpObject); + lpStruct->lfHeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfHeight); + lpStruct->lfWidth = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWidth); + lpStruct->lfEscapement = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfEscapement); + lpStruct->lfOrientation = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfOrientation); + lpStruct->lfWeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWeight); + lpStruct->lfItalic = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfItalic); + lpStruct->lfUnderline = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfUnderline); + lpStruct->lfStrikeOut = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfStrikeOut); + lpStruct->lfCharSet = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfCharSet); + lpStruct->lfOutPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfOutPrecision); + lpStruct->lfClipPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfClipPrecision); + lpStruct->lfQuality = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfQuality); + lpStruct->lfPitchAndFamily = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily); + { + jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, LOGFONTAFc.lfFaceName); + (*env)->GetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->lfFaceName), (void *)lpStruct->lfFaceName); + } + return lpStruct; +} + +void setLOGFONTAFields(JNIEnv *env, jobject lpObject, LOGFONTA *lpStruct) +{ + if (!LOGFONTAFc.cached) cacheLOGFONTAFields(env, lpObject); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfHeight, (jint)lpStruct->lfHeight); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWidth, (jint)lpStruct->lfWidth); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfEscapement, (jint)lpStruct->lfEscapement); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfOrientation, (jint)lpStruct->lfOrientation); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWeight, (jint)lpStruct->lfWeight); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfItalic, (jbyte)lpStruct->lfItalic); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfUnderline, (jbyte)lpStruct->lfUnderline); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfStrikeOut, (jbyte)lpStruct->lfStrikeOut); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfCharSet, (jbyte)lpStruct->lfCharSet); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfOutPrecision, (jbyte)lpStruct->lfOutPrecision); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfClipPrecision, (jbyte)lpStruct->lfClipPrecision); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfQuality, (jbyte)lpStruct->lfQuality); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily, (jbyte)lpStruct->lfPitchAndFamily); + { + jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, LOGFONTAFc.lfFaceName); + (*env)->SetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->lfFaceName), (void *)lpStruct->lfFaceName); + } +} +#endif + +#ifndef NO_LOGFONTW +typedef struct LOGFONTW_FID_CACHE { + int cached; + jclass clazz; + jfieldID lfFaceName; +} LOGFONTW_FID_CACHE; + +LOGFONTW_FID_CACHE LOGFONTWFc; + +void cacheLOGFONTWFields(JNIEnv *env, jobject lpObject) +{ + if (LOGFONTWFc.cached) return; + cacheLOGFONTFields(env, lpObject); + LOGFONTWFc.clazz = (*env)->GetObjectClass(env, lpObject); + LOGFONTWFc.lfFaceName = (*env)->GetFieldID(env, LOGFONTWFc.clazz, "lfFaceName", "[C"); + LOGFONTWFc.cached = 1; +} + +LOGFONTW *getLOGFONTWFields(JNIEnv *env, jobject lpObject, LOGFONTW *lpStruct) +{ + if (!LOGFONTWFc.cached) cacheLOGFONTWFields(env, lpObject); + lpStruct->lfHeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfHeight); + lpStruct->lfWidth = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWidth); + lpStruct->lfEscapement = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfEscapement); + lpStruct->lfOrientation = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfOrientation); + lpStruct->lfWeight = (*env)->GetIntField(env, lpObject, LOGFONTFc.lfWeight); + lpStruct->lfItalic = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfItalic); + lpStruct->lfUnderline = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfUnderline); + lpStruct->lfStrikeOut = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfStrikeOut); + lpStruct->lfCharSet = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfCharSet); + lpStruct->lfOutPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfOutPrecision); + lpStruct->lfClipPrecision = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfClipPrecision); + lpStruct->lfQuality = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfQuality); + lpStruct->lfPitchAndFamily = (*env)->GetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily); + { + jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, LOGFONTWFc.lfFaceName); + (*env)->GetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->lfFaceName) / 2, (void *)lpStruct->lfFaceName); + } + return lpStruct; +} + +void setLOGFONTWFields(JNIEnv *env, jobject lpObject, LOGFONTW *lpStruct) +{ + if (!LOGFONTWFc.cached) cacheLOGFONTWFields(env, lpObject); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfHeight, (jint)lpStruct->lfHeight); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWidth, (jint)lpStruct->lfWidth); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfEscapement, (jint)lpStruct->lfEscapement); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfOrientation, (jint)lpStruct->lfOrientation); + (*env)->SetIntField(env, lpObject, LOGFONTFc.lfWeight, (jint)lpStruct->lfWeight); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfItalic, (jbyte)lpStruct->lfItalic); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfUnderline, (jbyte)lpStruct->lfUnderline); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfStrikeOut, (jbyte)lpStruct->lfStrikeOut); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfCharSet, (jbyte)lpStruct->lfCharSet); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfOutPrecision, (jbyte)lpStruct->lfOutPrecision); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfClipPrecision, (jbyte)lpStruct->lfClipPrecision); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfQuality, (jbyte)lpStruct->lfQuality); + (*env)->SetByteField(env, lpObject, LOGFONTFc.lfPitchAndFamily, (jbyte)lpStruct->lfPitchAndFamily); + { + jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, LOGFONTWFc.lfFaceName); + (*env)->SetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->lfFaceName) / 2, (void *)lpStruct->lfFaceName); + } +} +#endif + +#ifndef NO_LOGPEN +typedef struct LOGPEN_FID_CACHE { + int cached; + jclass clazz; + jfieldID lopnStyle, x, y, lopnColor; +} LOGPEN_FID_CACHE; + +LOGPEN_FID_CACHE LOGPENFc; + +void cacheLOGPENFields(JNIEnv *env, jobject lpObject) +{ + if (LOGPENFc.cached) return; + LOGPENFc.clazz = (*env)->GetObjectClass(env, lpObject); + LOGPENFc.lopnStyle = (*env)->GetFieldID(env, LOGPENFc.clazz, "lopnStyle", "I"); + LOGPENFc.x = (*env)->GetFieldID(env, LOGPENFc.clazz, "x", "I"); + LOGPENFc.y = (*env)->GetFieldID(env, LOGPENFc.clazz, "y", "I"); + LOGPENFc.lopnColor = (*env)->GetFieldID(env, LOGPENFc.clazz, "lopnColor", "I"); + LOGPENFc.cached = 1; +} + +LOGPEN *getLOGPENFields(JNIEnv *env, jobject lpObject, LOGPEN *lpStruct) +{ + if (!LOGPENFc.cached) cacheLOGPENFields(env, lpObject); + lpStruct->lopnStyle = (*env)->GetIntField(env, lpObject, LOGPENFc.lopnStyle); + lpStruct->lopnWidth.x = (*env)->GetIntField(env, lpObject, LOGPENFc.x); + lpStruct->lopnWidth.y = (*env)->GetIntField(env, lpObject, LOGPENFc.y); + lpStruct->lopnColor = (*env)->GetIntField(env, lpObject, LOGPENFc.lopnColor); + return lpStruct; +} + +void setLOGPENFields(JNIEnv *env, jobject lpObject, LOGPEN *lpStruct) +{ + if (!LOGPENFc.cached) cacheLOGPENFields(env, lpObject); + (*env)->SetIntField(env, lpObject, LOGPENFc.lopnStyle, (jint)lpStruct->lopnStyle); + (*env)->SetIntField(env, lpObject, LOGPENFc.x, (jint)lpStruct->lopnWidth.x); + (*env)->SetIntField(env, lpObject, LOGPENFc.y, (jint)lpStruct->lopnWidth.y); + (*env)->SetIntField(env, lpObject, LOGPENFc.lopnColor, (jint)lpStruct->lopnColor); +} +#endif + +#ifndef NO_LVCOLUMN +typedef struct LVCOLUMN_FID_CACHE { + int cached; + jclass clazz; + jfieldID mask, fmt, cx, pszText, cchTextMax, iSubItem, iImage, iOrder; +} LVCOLUMN_FID_CACHE; + +LVCOLUMN_FID_CACHE LVCOLUMNFc; + +void cacheLVCOLUMNFields(JNIEnv *env, jobject lpObject) +{ + if (LVCOLUMNFc.cached) return; + LVCOLUMNFc.clazz = (*env)->GetObjectClass(env, lpObject); + LVCOLUMNFc.mask = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "mask", "I"); + LVCOLUMNFc.fmt = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "fmt", "I"); + LVCOLUMNFc.cx = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "cx", "I"); + LVCOLUMNFc.pszText = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "pszText", "I"); + LVCOLUMNFc.cchTextMax = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "cchTextMax", "I"); + LVCOLUMNFc.iSubItem = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "iSubItem", "I"); + LVCOLUMNFc.iImage = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "iImage", "I"); + LVCOLUMNFc.iOrder = (*env)->GetFieldID(env, LVCOLUMNFc.clazz, "iOrder", "I"); + LVCOLUMNFc.cached = 1; +} + +LVCOLUMN *getLVCOLUMNFields(JNIEnv *env, jobject lpObject, LVCOLUMN *lpStruct) +{ + if (!LVCOLUMNFc.cached) cacheLVCOLUMNFields(env, lpObject); + lpStruct->mask = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.mask); + lpStruct->fmt = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.fmt); + lpStruct->cx = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.cx); + lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, LVCOLUMNFc.pszText); + lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.cchTextMax); + lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.iSubItem); + lpStruct->iImage = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.iImage); + lpStruct->iOrder = (*env)->GetIntField(env, lpObject, LVCOLUMNFc.iOrder); + return lpStruct; +} + +void setLVCOLUMNFields(JNIEnv *env, jobject lpObject, LVCOLUMN *lpStruct) +{ + if (!LVCOLUMNFc.cached) cacheLVCOLUMNFields(env, lpObject); + (*env)->SetIntField(env, lpObject, LVCOLUMNFc.mask, (jint)lpStruct->mask); + (*env)->SetIntField(env, lpObject, LVCOLUMNFc.fmt, (jint)lpStruct->fmt); + (*env)->SetIntField(env, lpObject, LVCOLUMNFc.cx, (jint)lpStruct->cx); + (*env)->SetIntField(env, lpObject, LVCOLUMNFc.pszText, (jint)lpStruct->pszText); + (*env)->SetIntField(env, lpObject, LVCOLUMNFc.cchTextMax, (jint)lpStruct->cchTextMax); + (*env)->SetIntField(env, lpObject, LVCOLUMNFc.iSubItem, (jint)lpStruct->iSubItem); + (*env)->SetIntField(env, lpObject, LVCOLUMNFc.iImage, (jint)lpStruct->iImage); + (*env)->SetIntField(env, lpObject, LVCOLUMNFc.iOrder, (jint)lpStruct->iOrder); +} +#endif + +#ifndef NO_LVHITTESTINFO +typedef struct LVHITTESTINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID x, y, flags, iItem, iSubItem; +} LVHITTESTINFO_FID_CACHE; + +LVHITTESTINFO_FID_CACHE LVHITTESTINFOFc; + +void cacheLVHITTESTINFOFields(JNIEnv *env, jobject lpObject) +{ + if (LVHITTESTINFOFc.cached) return; + LVHITTESTINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + LVHITTESTINFOFc.x = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "x", "I"); + LVHITTESTINFOFc.y = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "y", "I"); + LVHITTESTINFOFc.flags = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "flags", "I"); + LVHITTESTINFOFc.iItem = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "iItem", "I"); + LVHITTESTINFOFc.iSubItem = (*env)->GetFieldID(env, LVHITTESTINFOFc.clazz, "iSubItem", "I"); + LVHITTESTINFOFc.cached = 1; +} + +LVHITTESTINFO *getLVHITTESTINFOFields(JNIEnv *env, jobject lpObject, LVHITTESTINFO *lpStruct) +{ + if (!LVHITTESTINFOFc.cached) cacheLVHITTESTINFOFields(env, lpObject); + lpStruct->pt.x = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.x); + lpStruct->pt.y = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.y); + lpStruct->flags = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.flags); + lpStruct->iItem = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.iItem); + lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, LVHITTESTINFOFc.iSubItem); + return lpStruct; +} + +void setLVHITTESTINFOFields(JNIEnv *env, jobject lpObject, LVHITTESTINFO *lpStruct) +{ + if (!LVHITTESTINFOFc.cached) cacheLVHITTESTINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.x, (jint)lpStruct->pt.x); + (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.y, (jint)lpStruct->pt.y); + (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.flags, (jint)lpStruct->flags); + (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.iItem, (jint)lpStruct->iItem); + (*env)->SetIntField(env, lpObject, LVHITTESTINFOFc.iSubItem, (jint)lpStruct->iSubItem); +} +#endif + +#ifndef NO_LVITEM +typedef struct LVITEM_FID_CACHE { + int cached; + jclass clazz; + jfieldID mask, iItem, iSubItem, state, stateMask, pszText, cchTextMax, iImage, lParam, iIndent; +} LVITEM_FID_CACHE; + +LVITEM_FID_CACHE LVITEMFc; + +void cacheLVITEMFields(JNIEnv *env, jobject lpObject) +{ + if (LVITEMFc.cached) return; + LVITEMFc.clazz = (*env)->GetObjectClass(env, lpObject); + LVITEMFc.mask = (*env)->GetFieldID(env, LVITEMFc.clazz, "mask", "I"); + LVITEMFc.iItem = (*env)->GetFieldID(env, LVITEMFc.clazz, "iItem", "I"); + LVITEMFc.iSubItem = (*env)->GetFieldID(env, LVITEMFc.clazz, "iSubItem", "I"); + LVITEMFc.state = (*env)->GetFieldID(env, LVITEMFc.clazz, "state", "I"); + LVITEMFc.stateMask = (*env)->GetFieldID(env, LVITEMFc.clazz, "stateMask", "I"); + LVITEMFc.pszText = (*env)->GetFieldID(env, LVITEMFc.clazz, "pszText", "I"); + LVITEMFc.cchTextMax = (*env)->GetFieldID(env, LVITEMFc.clazz, "cchTextMax", "I"); + LVITEMFc.iImage = (*env)->GetFieldID(env, LVITEMFc.clazz, "iImage", "I"); + LVITEMFc.lParam = (*env)->GetFieldID(env, LVITEMFc.clazz, "lParam", "I"); + LVITEMFc.iIndent = (*env)->GetFieldID(env, LVITEMFc.clazz, "iIndent", "I"); + LVITEMFc.cached = 1; +} + +LVITEM *getLVITEMFields(JNIEnv *env, jobject lpObject, LVITEM *lpStruct) +{ + if (!LVITEMFc.cached) cacheLVITEMFields(env, lpObject); + lpStruct->mask = (*env)->GetIntField(env, lpObject, LVITEMFc.mask); + lpStruct->iItem = (*env)->GetIntField(env, lpObject, LVITEMFc.iItem); + lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, LVITEMFc.iSubItem); + lpStruct->state = (*env)->GetIntField(env, lpObject, LVITEMFc.state); + lpStruct->stateMask = (*env)->GetIntField(env, lpObject, LVITEMFc.stateMask); + lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, LVITEMFc.pszText); + lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, LVITEMFc.cchTextMax); + lpStruct->iImage = (*env)->GetIntField(env, lpObject, LVITEMFc.iImage); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, LVITEMFc.lParam); + lpStruct->iIndent = (*env)->GetIntField(env, lpObject, LVITEMFc.iIndent); + return lpStruct; +} + +void setLVITEMFields(JNIEnv *env, jobject lpObject, LVITEM *lpStruct) +{ + if (!LVITEMFc.cached) cacheLVITEMFields(env, lpObject); + (*env)->SetIntField(env, lpObject, LVITEMFc.mask, (jint)lpStruct->mask); + (*env)->SetIntField(env, lpObject, LVITEMFc.iItem, (jint)lpStruct->iItem); + (*env)->SetIntField(env, lpObject, LVITEMFc.iSubItem, (jint)lpStruct->iSubItem); + (*env)->SetIntField(env, lpObject, LVITEMFc.state, (jint)lpStruct->state); + (*env)->SetIntField(env, lpObject, LVITEMFc.stateMask, (jint)lpStruct->stateMask); + (*env)->SetIntField(env, lpObject, LVITEMFc.pszText, (jint)lpStruct->pszText); + (*env)->SetIntField(env, lpObject, LVITEMFc.cchTextMax, (jint)lpStruct->cchTextMax); + (*env)->SetIntField(env, lpObject, LVITEMFc.iImage, (jint)lpStruct->iImage); + (*env)->SetIntField(env, lpObject, LVITEMFc.lParam, (jint)lpStruct->lParam); + (*env)->SetIntField(env, lpObject, LVITEMFc.iIndent, (jint)lpStruct->iIndent); +} +#endif + +#ifndef NO_MEASUREITEMSTRUCT +typedef struct MEASUREITEMSTRUCT_FID_CACHE { + int cached; + jclass clazz; + jfieldID CtlType, CtlID, itemID, itemWidth, itemHeight, itemData; +} MEASUREITEMSTRUCT_FID_CACHE; + +MEASUREITEMSTRUCT_FID_CACHE MEASUREITEMSTRUCTFc; + +void cacheMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject) +{ + if (MEASUREITEMSTRUCTFc.cached) return; + MEASUREITEMSTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject); + MEASUREITEMSTRUCTFc.CtlType = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "CtlType", "I"); + MEASUREITEMSTRUCTFc.CtlID = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "CtlID", "I"); + MEASUREITEMSTRUCTFc.itemID = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "itemID", "I"); + MEASUREITEMSTRUCTFc.itemWidth = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "itemWidth", "I"); + MEASUREITEMSTRUCTFc.itemHeight = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "itemHeight", "I"); + MEASUREITEMSTRUCTFc.itemData = (*env)->GetFieldID(env, MEASUREITEMSTRUCTFc.clazz, "itemData", "I"); + MEASUREITEMSTRUCTFc.cached = 1; +} + +MEASUREITEMSTRUCT *getMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject, MEASUREITEMSTRUCT *lpStruct) +{ + if (!MEASUREITEMSTRUCTFc.cached) cacheMEASUREITEMSTRUCTFields(env, lpObject); + lpStruct->CtlType = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.CtlType); + lpStruct->CtlID = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.CtlID); + lpStruct->itemID = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemID); + lpStruct->itemWidth = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemWidth); + lpStruct->itemHeight = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemHeight); + lpStruct->itemData = (*env)->GetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemData); + return lpStruct; +} + +void setMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject, MEASUREITEMSTRUCT *lpStruct) +{ + if (!MEASUREITEMSTRUCTFc.cached) cacheMEASUREITEMSTRUCTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.CtlType, (jint)lpStruct->CtlType); + (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.CtlID, (jint)lpStruct->CtlID); + (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemID, (jint)lpStruct->itemID); + (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemWidth, (jint)lpStruct->itemWidth); + (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemHeight, (jint)lpStruct->itemHeight); + (*env)->SetIntField(env, lpObject, MEASUREITEMSTRUCTFc.itemData, (jint)lpStruct->itemData); +} +#endif + +#ifndef NO_MENUINFO +typedef struct MENUINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, fMask, dwStyle, cyMax, hbrBack, dwContextHelpID, dwMenuData; +} MENUINFO_FID_CACHE; + +MENUINFO_FID_CACHE MENUINFOFc; + +void cacheMENUINFOFields(JNIEnv *env, jobject lpObject) +{ + if (MENUINFOFc.cached) return; + MENUINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + MENUINFOFc.cbSize = (*env)->GetFieldID(env, MENUINFOFc.clazz, "cbSize", "I"); + MENUINFOFc.fMask = (*env)->GetFieldID(env, MENUINFOFc.clazz, "fMask", "I"); + MENUINFOFc.dwStyle = (*env)->GetFieldID(env, MENUINFOFc.clazz, "dwStyle", "I"); + MENUINFOFc.cyMax = (*env)->GetFieldID(env, MENUINFOFc.clazz, "cyMax", "I"); + MENUINFOFc.hbrBack = (*env)->GetFieldID(env, MENUINFOFc.clazz, "hbrBack", "I"); + MENUINFOFc.dwContextHelpID = (*env)->GetFieldID(env, MENUINFOFc.clazz, "dwContextHelpID", "I"); + MENUINFOFc.dwMenuData = (*env)->GetFieldID(env, MENUINFOFc.clazz, "dwMenuData", "I"); + MENUINFOFc.cached = 1; +} + +MENUINFO *getMENUINFOFields(JNIEnv *env, jobject lpObject, MENUINFO *lpStruct) +{ + if (!MENUINFOFc.cached) cacheMENUINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, MENUINFOFc.cbSize); + lpStruct->fMask = (*env)->GetIntField(env, lpObject, MENUINFOFc.fMask); + lpStruct->dwStyle = (*env)->GetIntField(env, lpObject, MENUINFOFc.dwStyle); + lpStruct->cyMax = (*env)->GetIntField(env, lpObject, MENUINFOFc.cyMax); + lpStruct->hbrBack = (HBRUSH)(*env)->GetIntField(env, lpObject, MENUINFOFc.hbrBack); + lpStruct->dwContextHelpID = (*env)->GetIntField(env, lpObject, MENUINFOFc.dwContextHelpID); + lpStruct->dwMenuData = (*env)->GetIntField(env, lpObject, MENUINFOFc.dwMenuData); + return lpStruct; +} + +void setMENUINFOFields(JNIEnv *env, jobject lpObject, MENUINFO *lpStruct) +{ + if (!MENUINFOFc.cached) cacheMENUINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, MENUINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, MENUINFOFc.fMask, (jint)lpStruct->fMask); + (*env)->SetIntField(env, lpObject, MENUINFOFc.dwStyle, (jint)lpStruct->dwStyle); + (*env)->SetIntField(env, lpObject, MENUINFOFc.cyMax, (jint)lpStruct->cyMax); + (*env)->SetIntField(env, lpObject, MENUINFOFc.hbrBack, (jint)lpStruct->hbrBack); + (*env)->SetIntField(env, lpObject, MENUINFOFc.dwContextHelpID, (jint)lpStruct->dwContextHelpID); + (*env)->SetIntField(env, lpObject, MENUINFOFc.dwMenuData, (jint)lpStruct->dwMenuData); +} +#endif + +#ifndef NO_MENUITEMINFO +typedef struct MENUITEMINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, fMask, fType, fState, wID, hSubMenu, hbmpChecked, hbmpUnchecked, dwItemData, dwTypeData, cch, hbmpItem; +} MENUITEMINFO_FID_CACHE; + +MENUITEMINFO_FID_CACHE MENUITEMINFOFc; + +void cacheMENUITEMINFOFields(JNIEnv *env, jobject lpObject) +{ + if (MENUITEMINFOFc.cached) return; + MENUITEMINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + MENUITEMINFOFc.cbSize = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "cbSize", "I"); + MENUITEMINFOFc.fMask = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "fMask", "I"); + MENUITEMINFOFc.fType = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "fType", "I"); + MENUITEMINFOFc.fState = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "fState", "I"); + MENUITEMINFOFc.wID = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "wID", "I"); + MENUITEMINFOFc.hSubMenu = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "hSubMenu", "I"); + MENUITEMINFOFc.hbmpChecked = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "hbmpChecked", "I"); + MENUITEMINFOFc.hbmpUnchecked = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "hbmpUnchecked", "I"); + MENUITEMINFOFc.dwItemData = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "dwItemData", "I"); + MENUITEMINFOFc.dwTypeData = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "dwTypeData", "I"); + MENUITEMINFOFc.cch = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "cch", "I"); + MENUITEMINFOFc.hbmpItem = (*env)->GetFieldID(env, MENUITEMINFOFc.clazz, "hbmpItem", "I"); + MENUITEMINFOFc.cached = 1; +} + +MENUITEMINFO *getMENUITEMINFOFields(JNIEnv *env, jobject lpObject, MENUITEMINFO *lpStruct) +{ + if (!MENUITEMINFOFc.cached) cacheMENUITEMINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.cbSize); + lpStruct->fMask = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.fMask); + lpStruct->fType = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.fType); + lpStruct->fState = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.fState); + lpStruct->wID = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.wID); + lpStruct->hSubMenu = (HMENU)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.hSubMenu); + lpStruct->hbmpChecked = (HBITMAP)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.hbmpChecked); + lpStruct->hbmpUnchecked = (HBITMAP)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.hbmpUnchecked); + lpStruct->dwItemData = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.dwItemData); + lpStruct->dwTypeData = (LPTSTR)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.dwTypeData); + lpStruct->cch = (*env)->GetIntField(env, lpObject, MENUITEMINFOFc.cch); +#ifndef _WIN32_WCE + lpStruct->hbmpItem = (HBITMAP)(*env)->GetIntField(env, lpObject, MENUITEMINFOFc.hbmpItem); +#endif + return lpStruct; +} + +void setMENUITEMINFOFields(JNIEnv *env, jobject lpObject, MENUITEMINFO *lpStruct) +{ + if (!MENUITEMINFOFc.cached) cacheMENUITEMINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.fMask, (jint)lpStruct->fMask); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.fType, (jint)lpStruct->fType); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.fState, (jint)lpStruct->fState); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.wID, (jint)lpStruct->wID); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.hSubMenu, (jint)lpStruct->hSubMenu); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.hbmpChecked, (jint)lpStruct->hbmpChecked); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.hbmpUnchecked, (jint)lpStruct->hbmpUnchecked); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.dwItemData, (jint)lpStruct->dwItemData); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.dwTypeData, (jint)lpStruct->dwTypeData); + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.cch, (jint)lpStruct->cch); +#ifndef _WIN32_WCE + (*env)->SetIntField(env, lpObject, MENUITEMINFOFc.hbmpItem, (jint)lpStruct->hbmpItem); +#endif +} +#endif + +#ifndef NO_MONITORINFO +typedef struct MONITORINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, rcMonitor_left, rcMonitor_top, rcMonitor_right, rcMonitor_bottom, rcWork_left, rcWork_top, rcWork_right, rcWork_bottom, dwFlags; +} MONITORINFO_FID_CACHE; + +MONITORINFO_FID_CACHE MONITORINFOFc; + +void cacheMONITORINFOFields(JNIEnv *env, jobject lpObject) +{ + if (MONITORINFOFc.cached) return; + MONITORINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + MONITORINFOFc.cbSize = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "cbSize", "I"); + MONITORINFOFc.rcMonitor_left = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcMonitor_left", "I"); + MONITORINFOFc.rcMonitor_top = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcMonitor_top", "I"); + MONITORINFOFc.rcMonitor_right = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcMonitor_right", "I"); + MONITORINFOFc.rcMonitor_bottom = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcMonitor_bottom", "I"); + MONITORINFOFc.rcWork_left = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcWork_left", "I"); + MONITORINFOFc.rcWork_top = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcWork_top", "I"); + MONITORINFOFc.rcWork_right = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcWork_right", "I"); + MONITORINFOFc.rcWork_bottom = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "rcWork_bottom", "I"); + MONITORINFOFc.dwFlags = (*env)->GetFieldID(env, MONITORINFOFc.clazz, "dwFlags", "I"); + MONITORINFOFc.cached = 1; +} + +MONITORINFO *getMONITORINFOFields(JNIEnv *env, jobject lpObject, MONITORINFO *lpStruct) +{ + if (!MONITORINFOFc.cached) cacheMONITORINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, MONITORINFOFc.cbSize); + lpStruct->rcMonitor.left = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcMonitor_left); + lpStruct->rcMonitor.top = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcMonitor_top); + lpStruct->rcMonitor.right = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcMonitor_right); + lpStruct->rcMonitor.bottom = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcMonitor_bottom); + lpStruct->rcWork.left = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcWork_left); + lpStruct->rcWork.top = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcWork_top); + lpStruct->rcWork.right = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcWork_right); + lpStruct->rcWork.bottom = (*env)->GetIntField(env, lpObject, MONITORINFOFc.rcWork_bottom); + lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, MONITORINFOFc.dwFlags); + return lpStruct; +} + +void setMONITORINFOFields(JNIEnv *env, jobject lpObject, MONITORINFO *lpStruct) +{ + if (!MONITORINFOFc.cached) cacheMONITORINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcMonitor_left, (jint)lpStruct->rcMonitor.left); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcMonitor_top, (jint)lpStruct->rcMonitor.top); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcMonitor_right, (jint)lpStruct->rcMonitor.right); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcMonitor_bottom, (jint)lpStruct->rcMonitor.bottom); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcWork_left, (jint)lpStruct->rcWork.left); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcWork_top, (jint)lpStruct->rcWork.top); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcWork_right, (jint)lpStruct->rcWork.right); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.rcWork_bottom, (jint)lpStruct->rcWork.bottom); + (*env)->SetIntField(env, lpObject, MONITORINFOFc.dwFlags, (jint)lpStruct->dwFlags); +} +#endif + +#ifndef NO_MSG +typedef struct MSG_FID_CACHE { + int cached; + jclass clazz; + jfieldID hwnd, message, wParam, lParam, time, x, y; +} MSG_FID_CACHE; + +MSG_FID_CACHE MSGFc; + +void cacheMSGFields(JNIEnv *env, jobject lpObject) +{ + if (MSGFc.cached) return; + MSGFc.clazz = (*env)->GetObjectClass(env, lpObject); + MSGFc.hwnd = (*env)->GetFieldID(env, MSGFc.clazz, "hwnd", "I"); + MSGFc.message = (*env)->GetFieldID(env, MSGFc.clazz, "message", "I"); + MSGFc.wParam = (*env)->GetFieldID(env, MSGFc.clazz, "wParam", "I"); + MSGFc.lParam = (*env)->GetFieldID(env, MSGFc.clazz, "lParam", "I"); + MSGFc.time = (*env)->GetFieldID(env, MSGFc.clazz, "time", "I"); + MSGFc.x = (*env)->GetFieldID(env, MSGFc.clazz, "x", "I"); + MSGFc.y = (*env)->GetFieldID(env, MSGFc.clazz, "y", "I"); + MSGFc.cached = 1; +} + +MSG *getMSGFields(JNIEnv *env, jobject lpObject, MSG *lpStruct) +{ + if (!MSGFc.cached) cacheMSGFields(env, lpObject); + lpStruct->hwnd = (HWND)(*env)->GetIntField(env, lpObject, MSGFc.hwnd); + lpStruct->message = (*env)->GetIntField(env, lpObject, MSGFc.message); + lpStruct->wParam = (*env)->GetIntField(env, lpObject, MSGFc.wParam); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, MSGFc.lParam); + lpStruct->time = (*env)->GetIntField(env, lpObject, MSGFc.time); + lpStruct->pt.x = (*env)->GetIntField(env, lpObject, MSGFc.x); + lpStruct->pt.y = (*env)->GetIntField(env, lpObject, MSGFc.y); + return lpStruct; +} + +void setMSGFields(JNIEnv *env, jobject lpObject, MSG *lpStruct) +{ + if (!MSGFc.cached) cacheMSGFields(env, lpObject); + (*env)->SetIntField(env, lpObject, MSGFc.hwnd, (jint)lpStruct->hwnd); + (*env)->SetIntField(env, lpObject, MSGFc.message, (jint)lpStruct->message); + (*env)->SetIntField(env, lpObject, MSGFc.wParam, (jint)lpStruct->wParam); + (*env)->SetIntField(env, lpObject, MSGFc.lParam, (jint)lpStruct->lParam); + (*env)->SetIntField(env, lpObject, MSGFc.time, (jint)lpStruct->time); + (*env)->SetIntField(env, lpObject, MSGFc.x, (jint)lpStruct->pt.x); + (*env)->SetIntField(env, lpObject, MSGFc.y, (jint)lpStruct->pt.y); +} +#endif + +#ifndef NO_NMHDR +typedef struct NMHDR_FID_CACHE { + int cached; + jclass clazz; + jfieldID hwndFrom, idFrom, code; +} NMHDR_FID_CACHE; + +NMHDR_FID_CACHE NMHDRFc; + +void cacheNMHDRFields(JNIEnv *env, jobject lpObject) +{ + if (NMHDRFc.cached) return; + NMHDRFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMHDRFc.hwndFrom = (*env)->GetFieldID(env, NMHDRFc.clazz, "hwndFrom", "I"); + NMHDRFc.idFrom = (*env)->GetFieldID(env, NMHDRFc.clazz, "idFrom", "I"); + NMHDRFc.code = (*env)->GetFieldID(env, NMHDRFc.clazz, "code", "I"); + NMHDRFc.cached = 1; +} + +NMHDR *getNMHDRFields(JNIEnv *env, jobject lpObject, NMHDR *lpStruct) +{ + if (!NMHDRFc.cached) cacheNMHDRFields(env, lpObject); + lpStruct->hwndFrom = (HWND)(*env)->GetIntField(env, lpObject, NMHDRFc.hwndFrom); + lpStruct->idFrom = (*env)->GetIntField(env, lpObject, NMHDRFc.idFrom); + lpStruct->code = (*env)->GetIntField(env, lpObject, NMHDRFc.code); + return lpStruct; +} + +void setNMHDRFields(JNIEnv *env, jobject lpObject, NMHDR *lpStruct) +{ + if (!NMHDRFc.cached) cacheNMHDRFields(env, lpObject); + (*env)->SetIntField(env, lpObject, NMHDRFc.hwndFrom, (jint)lpStruct->hwndFrom); + (*env)->SetIntField(env, lpObject, NMHDRFc.idFrom, (jint)lpStruct->idFrom); + (*env)->SetIntField(env, lpObject, NMHDRFc.code, (jint)lpStruct->code); +} +#endif + +#ifndef NO_NMCUSTOMDRAW +typedef struct NMCUSTOMDRAW_FID_CACHE { + int cached; + jclass clazz; + jfieldID dwDrawStage, hdc, left, top, right, bottom, dwItemSpec, uItemState, lItemlParam; +} NMCUSTOMDRAW_FID_CACHE; + +NMCUSTOMDRAW_FID_CACHE NMCUSTOMDRAWFc; + +void cacheNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject) +{ + if (NMCUSTOMDRAWFc.cached) return; + cacheNMHDRFields(env, lpObject); + NMCUSTOMDRAWFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMCUSTOMDRAWFc.dwDrawStage = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "dwDrawStage", "I"); + NMCUSTOMDRAWFc.hdc = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "hdc", "I"); + NMCUSTOMDRAWFc.left = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "left", "I"); + NMCUSTOMDRAWFc.top = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "top", "I"); + NMCUSTOMDRAWFc.right = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "right", "I"); + NMCUSTOMDRAWFc.bottom = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "bottom", "I"); + NMCUSTOMDRAWFc.dwItemSpec = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "dwItemSpec", "I"); + NMCUSTOMDRAWFc.uItemState = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "uItemState", "I"); + NMCUSTOMDRAWFc.lItemlParam = (*env)->GetFieldID(env, NMCUSTOMDRAWFc.clazz, "lItemlParam", "I"); + NMCUSTOMDRAWFc.cached = 1; +} + +NMCUSTOMDRAW *getNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMCUSTOMDRAW *lpStruct) +{ + if (!NMCUSTOMDRAWFc.cached) cacheNMCUSTOMDRAWFields(env, lpObject); + getNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + lpStruct->dwDrawStage = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.dwDrawStage); + lpStruct->hdc = (HDC)(*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.hdc); + lpStruct->rc.left = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.left); + lpStruct->rc.top = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.top); + lpStruct->rc.right = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.right); + lpStruct->rc.bottom = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.bottom); + lpStruct->dwItemSpec = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.dwItemSpec); + lpStruct->uItemState = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.uItemState); + lpStruct->lItemlParam = (*env)->GetIntField(env, lpObject, NMCUSTOMDRAWFc.lItemlParam); + return lpStruct; +} + +void setNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMCUSTOMDRAW *lpStruct) +{ + if (!NMCUSTOMDRAWFc.cached) cacheNMCUSTOMDRAWFields(env, lpObject); + setNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.dwDrawStage, (jint)lpStruct->dwDrawStage); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.hdc, (jint)lpStruct->hdc); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.left, (jint)lpStruct->rc.left); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.top, (jint)lpStruct->rc.top); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.right, (jint)lpStruct->rc.right); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.bottom, (jint)lpStruct->rc.bottom); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.dwItemSpec, (jint)lpStruct->dwItemSpec); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.uItemState, (jint)lpStruct->uItemState); + (*env)->SetIntField(env, lpObject, NMCUSTOMDRAWFc.lItemlParam, (jint)lpStruct->lItemlParam); +} +#endif + +#ifndef NO_NMHEADER +typedef struct NMHEADER_FID_CACHE { + int cached; + jclass clazz; + jfieldID iItem, iButton, pitem; +} NMHEADER_FID_CACHE; + +NMHEADER_FID_CACHE NMHEADERFc; + +void cacheNMHEADERFields(JNIEnv *env, jobject lpObject) +{ + if (NMHEADERFc.cached) return; + cacheNMHDRFields(env, lpObject); + NMHEADERFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMHEADERFc.iItem = (*env)->GetFieldID(env, NMHEADERFc.clazz, "iItem", "I"); + NMHEADERFc.iButton = (*env)->GetFieldID(env, NMHEADERFc.clazz, "iButton", "I"); + NMHEADERFc.pitem = (*env)->GetFieldID(env, NMHEADERFc.clazz, "pitem", "I"); + NMHEADERFc.cached = 1; +} + +NMHEADER *getNMHEADERFields(JNIEnv *env, jobject lpObject, NMHEADER *lpStruct) +{ + if (!NMHEADERFc.cached) cacheNMHEADERFields(env, lpObject); + getNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + lpStruct->iItem = (*env)->GetIntField(env, lpObject, NMHEADERFc.iItem); + lpStruct->iButton = (*env)->GetIntField(env, lpObject, NMHEADERFc.iButton); + lpStruct->pitem = (HDITEM FAR *)(*env)->GetIntField(env, lpObject, NMHEADERFc.pitem); + return lpStruct; +} + +void setNMHEADERFields(JNIEnv *env, jobject lpObject, NMHEADER *lpStruct) +{ + if (!NMHEADERFc.cached) cacheNMHEADERFields(env, lpObject); + setNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + (*env)->SetIntField(env, lpObject, NMHEADERFc.iItem, (jint)lpStruct->iItem); + (*env)->SetIntField(env, lpObject, NMHEADERFc.iButton, (jint)lpStruct->iButton); + (*env)->SetIntField(env, lpObject, NMHEADERFc.pitem, (jint)lpStruct->pitem); +} +#endif + +#ifndef NO_NMLISTVIEW +typedef struct NMLISTVIEW_FID_CACHE { + int cached; + jclass clazz; + jfieldID iItem, iSubItem, uNewState, uOldState, uChanged, x, y, lParam; +} NMLISTVIEW_FID_CACHE; + +NMLISTVIEW_FID_CACHE NMLISTVIEWFc; + +void cacheNMLISTVIEWFields(JNIEnv *env, jobject lpObject) +{ + if (NMLISTVIEWFc.cached) return; + cacheNMHDRFields(env, lpObject); + NMLISTVIEWFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMLISTVIEWFc.iItem = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "iItem", "I"); + NMLISTVIEWFc.iSubItem = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "iSubItem", "I"); + NMLISTVIEWFc.uNewState = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "uNewState", "I"); + NMLISTVIEWFc.uOldState = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "uOldState", "I"); + NMLISTVIEWFc.uChanged = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "uChanged", "I"); + NMLISTVIEWFc.x = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "x", "I"); + NMLISTVIEWFc.y = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "y", "I"); + NMLISTVIEWFc.lParam = (*env)->GetFieldID(env, NMLISTVIEWFc.clazz, "lParam", "I"); + NMLISTVIEWFc.cached = 1; +} + +NMLISTVIEW *getNMLISTVIEWFields(JNIEnv *env, jobject lpObject, NMLISTVIEW *lpStruct) +{ + if (!NMLISTVIEWFc.cached) cacheNMLISTVIEWFields(env, lpObject); + getNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + lpStruct->iItem = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.iItem); + lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.iSubItem); + lpStruct->uNewState = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.uNewState); + lpStruct->uOldState = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.uOldState); + lpStruct->uChanged = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.uChanged); + lpStruct->ptAction.x = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.x); + lpStruct->ptAction.y = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.y); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMLISTVIEWFc.lParam); + return lpStruct; +} + +void setNMLISTVIEWFields(JNIEnv *env, jobject lpObject, NMLISTVIEW *lpStruct) +{ + if (!NMLISTVIEWFc.cached) cacheNMLISTVIEWFields(env, lpObject); + setNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.iItem, (jint)lpStruct->iItem); + (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.iSubItem, (jint)lpStruct->iSubItem); + (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.uNewState, (jint)lpStruct->uNewState); + (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.uOldState, (jint)lpStruct->uOldState); + (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.uChanged, (jint)lpStruct->uChanged); + (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.x, (jint)lpStruct->ptAction.x); + (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.y, (jint)lpStruct->ptAction.y); + (*env)->SetIntField(env, lpObject, NMLISTVIEWFc.lParam, (jint)lpStruct->lParam); +} +#endif + +#ifndef NO_NMLVCUSTOMDRAW +typedef struct NMLVCUSTOMDRAW_FID_CACHE { + int cached; + jclass clazz; + jfieldID clrText, clrTextBk, iSubItem; +} NMLVCUSTOMDRAW_FID_CACHE; + +NMLVCUSTOMDRAW_FID_CACHE NMLVCUSTOMDRAWFc; + +void cacheNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject) +{ + if (NMLVCUSTOMDRAWFc.cached) return; + cacheNMCUSTOMDRAWFields(env, lpObject); + NMLVCUSTOMDRAWFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMLVCUSTOMDRAWFc.clrText = (*env)->GetFieldID(env, NMLVCUSTOMDRAWFc.clazz, "clrText", "I"); + NMLVCUSTOMDRAWFc.clrTextBk = (*env)->GetFieldID(env, NMLVCUSTOMDRAWFc.clazz, "clrTextBk", "I"); + NMLVCUSTOMDRAWFc.iSubItem = (*env)->GetFieldID(env, NMLVCUSTOMDRAWFc.clazz, "iSubItem", "I"); + NMLVCUSTOMDRAWFc.cached = 1; +} + +NMLVCUSTOMDRAW *getNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMLVCUSTOMDRAW *lpStruct) +{ + if (!NMLVCUSTOMDRAWFc.cached) cacheNMLVCUSTOMDRAWFields(env, lpObject); + getNMCUSTOMDRAWFields(env, lpObject, (NMCUSTOMDRAW *)lpStruct); + lpStruct->clrText = (*env)->GetIntField(env, lpObject, NMLVCUSTOMDRAWFc.clrText); + lpStruct->clrTextBk = (*env)->GetIntField(env, lpObject, NMLVCUSTOMDRAWFc.clrTextBk); + lpStruct->iSubItem = (*env)->GetIntField(env, lpObject, NMLVCUSTOMDRAWFc.iSubItem); + return lpStruct; +} + +void setNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMLVCUSTOMDRAW *lpStruct) +{ + if (!NMLVCUSTOMDRAWFc.cached) cacheNMLVCUSTOMDRAWFields(env, lpObject); + setNMCUSTOMDRAWFields(env, lpObject, (NMCUSTOMDRAW *)lpStruct); + (*env)->SetIntField(env, lpObject, NMLVCUSTOMDRAWFc.clrText, (jint)lpStruct->clrText); + (*env)->SetIntField(env, lpObject, NMLVCUSTOMDRAWFc.clrTextBk, (jint)lpStruct->clrTextBk); + (*env)->SetIntField(env, lpObject, NMLVCUSTOMDRAWFc.iSubItem, (jint)lpStruct->iSubItem); +} +#endif + +#ifndef NO_NMREBARCHEVRON +typedef struct NMREBARCHEVRON_FID_CACHE { + int cached; + jclass clazz; + jfieldID uBand, wID, lParam, left, top, right, bottom, lParamNM; +} NMREBARCHEVRON_FID_CACHE; + +NMREBARCHEVRON_FID_CACHE NMREBARCHEVRONFc; + +void cacheNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject) +{ + if (NMREBARCHEVRONFc.cached) return; + cacheNMHDRFields(env, lpObject); + NMREBARCHEVRONFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMREBARCHEVRONFc.uBand = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "uBand", "I"); + NMREBARCHEVRONFc.wID = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "wID", "I"); + NMREBARCHEVRONFc.lParam = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "lParam", "I"); + NMREBARCHEVRONFc.left = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "left", "I"); + NMREBARCHEVRONFc.top = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "top", "I"); + NMREBARCHEVRONFc.right = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "right", "I"); + NMREBARCHEVRONFc.bottom = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "bottom", "I"); + NMREBARCHEVRONFc.lParamNM = (*env)->GetFieldID(env, NMREBARCHEVRONFc.clazz, "lParamNM", "I"); + NMREBARCHEVRONFc.cached = 1; +} + +NMREBARCHEVRON *getNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject, NMREBARCHEVRON *lpStruct) +{ + if (!NMREBARCHEVRONFc.cached) cacheNMREBARCHEVRONFields(env, lpObject); + getNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + lpStruct->uBand = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.uBand); + lpStruct->wID = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.wID); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.lParam); + lpStruct->rc.left = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.left); + lpStruct->rc.top = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.top); + lpStruct->rc.right = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.right); + lpStruct->rc.bottom = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.bottom); + lpStruct->lParamNM = (*env)->GetIntField(env, lpObject, NMREBARCHEVRONFc.lParamNM); + return lpStruct; +} + +void setNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject, NMREBARCHEVRON *lpStruct) +{ + if (!NMREBARCHEVRONFc.cached) cacheNMREBARCHEVRONFields(env, lpObject); + setNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.uBand, (jint)lpStruct->uBand); + (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.wID, (jint)lpStruct->wID); + (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.lParam, (jint)lpStruct->lParam); + (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.left, (jint)lpStruct->rc.left); + (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.top, (jint)lpStruct->rc.top); + (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.right, (jint)lpStruct->rc.right); + (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.bottom, (jint)lpStruct->rc.bottom); + (*env)->SetIntField(env, lpObject, NMREBARCHEVRONFc.lParamNM, (jint)lpStruct->lParamNM); +} +#endif + +#ifndef NO_NMTOOLBAR +typedef struct NMTOOLBAR_FID_CACHE { + int cached; + jclass clazz; + jfieldID iItem, iBitmap, idCommand, fsState, fsStyle, dwData, iString, cchText, pszText, left, top, right, bottom; +} NMTOOLBAR_FID_CACHE; + +NMTOOLBAR_FID_CACHE NMTOOLBARFc; + +void cacheNMTOOLBARFields(JNIEnv *env, jobject lpObject) +{ + if (NMTOOLBARFc.cached) return; + cacheNMHDRFields(env, lpObject); + NMTOOLBARFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMTOOLBARFc.iItem = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "iItem", "I"); + NMTOOLBARFc.iBitmap = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "iBitmap", "I"); + NMTOOLBARFc.idCommand = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "idCommand", "I"); + NMTOOLBARFc.fsState = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "fsState", "B"); + NMTOOLBARFc.fsStyle = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "fsStyle", "B"); + NMTOOLBARFc.dwData = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "dwData", "I"); + NMTOOLBARFc.iString = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "iString", "I"); + NMTOOLBARFc.cchText = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "cchText", "I"); + NMTOOLBARFc.pszText = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "pszText", "I"); + NMTOOLBARFc.left = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "left", "I"); + NMTOOLBARFc.top = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "top", "I"); + NMTOOLBARFc.right = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "right", "I"); + NMTOOLBARFc.bottom = (*env)->GetFieldID(env, NMTOOLBARFc.clazz, "bottom", "I"); + NMTOOLBARFc.cached = 1; +} + +NMTOOLBAR *getNMTOOLBARFields(JNIEnv *env, jobject lpObject, NMTOOLBAR *lpStruct) +{ + if (!NMTOOLBARFc.cached) cacheNMTOOLBARFields(env, lpObject); + getNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + lpStruct->iItem = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.iItem); + lpStruct->tbButton.iBitmap = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.iBitmap); + lpStruct->tbButton.idCommand = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.idCommand); + lpStruct->tbButton.fsState = (*env)->GetByteField(env, lpObject, NMTOOLBARFc.fsState); + lpStruct->tbButton.fsStyle = (*env)->GetByteField(env, lpObject, NMTOOLBARFc.fsStyle); + lpStruct->tbButton.dwData = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.dwData); + lpStruct->tbButton.iString = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.iString); + lpStruct->cchText = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.cchText); + lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, NMTOOLBARFc.pszText); +#ifndef _WIN32_WCE + lpStruct->rcButton.left = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.left); +#endif +#ifndef _WIN32_WCE + lpStruct->rcButton.top = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.top); +#endif +#ifndef _WIN32_WCE + lpStruct->rcButton.right = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.right); +#endif +#ifndef _WIN32_WCE + lpStruct->rcButton.bottom = (*env)->GetIntField(env, lpObject, NMTOOLBARFc.bottom); +#endif + return lpStruct; +} + +void setNMTOOLBARFields(JNIEnv *env, jobject lpObject, NMTOOLBAR *lpStruct) +{ + if (!NMTOOLBARFc.cached) cacheNMTOOLBARFields(env, lpObject); + setNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.iItem, (jint)lpStruct->iItem); + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.iBitmap, (jint)lpStruct->tbButton.iBitmap); + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.idCommand, (jint)lpStruct->tbButton.idCommand); + (*env)->SetByteField(env, lpObject, NMTOOLBARFc.fsState, (jbyte)lpStruct->tbButton.fsState); + (*env)->SetByteField(env, lpObject, NMTOOLBARFc.fsStyle, (jbyte)lpStruct->tbButton.fsStyle); + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.dwData, (jint)lpStruct->tbButton.dwData); + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.iString, (jint)lpStruct->tbButton.iString); + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.cchText, (jint)lpStruct->cchText); + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.pszText, (jint)lpStruct->pszText); +#ifndef _WIN32_WCE + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.left, (jint)lpStruct->rcButton.left); +#endif +#ifndef _WIN32_WCE + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.top, (jint)lpStruct->rcButton.top); +#endif +#ifndef _WIN32_WCE + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.right, (jint)lpStruct->rcButton.right); +#endif +#ifndef _WIN32_WCE + (*env)->SetIntField(env, lpObject, NMTOOLBARFc.bottom, (jint)lpStruct->rcButton.bottom); +#endif +} +#endif + +#ifndef NO_NMTTDISPINFO +typedef struct NMTTDISPINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID lpszText, hinst, uFlags, lParam; +} NMTTDISPINFO_FID_CACHE; + +NMTTDISPINFO_FID_CACHE NMTTDISPINFOFc; + +void cacheNMTTDISPINFOFields(JNIEnv *env, jobject lpObject) +{ + if (NMTTDISPINFOFc.cached) return; + cacheNMHDRFields(env, lpObject); + NMTTDISPINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMTTDISPINFOFc.lpszText = (*env)->GetFieldID(env, NMTTDISPINFOFc.clazz, "lpszText", "I"); + NMTTDISPINFOFc.hinst = (*env)->GetFieldID(env, NMTTDISPINFOFc.clazz, "hinst", "I"); + NMTTDISPINFOFc.uFlags = (*env)->GetFieldID(env, NMTTDISPINFOFc.clazz, "uFlags", "I"); + NMTTDISPINFOFc.lParam = (*env)->GetFieldID(env, NMTTDISPINFOFc.clazz, "lParam", "I"); + NMTTDISPINFOFc.cached = 1; +} + +NMTTDISPINFO *getNMTTDISPINFOFields(JNIEnv *env, jobject lpObject, NMTTDISPINFO *lpStruct) +{ + if (!NMTTDISPINFOFc.cached) cacheNMTTDISPINFOFields(env, lpObject); + getNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + lpStruct->lpszText = (void *)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lpszText); + lpStruct->hinst = (HINSTANCE)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.hinst); + lpStruct->uFlags = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.uFlags); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lParam); + return lpStruct; +} + +void setNMTTDISPINFOFields(JNIEnv *env, jobject lpObject, NMTTDISPINFO *lpStruct) +{ + if (!NMTTDISPINFOFc.cached) cacheNMTTDISPINFOFields(env, lpObject); + setNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lpszText, (jint)lpStruct->lpszText); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.hinst, (jint)lpStruct->hinst); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.uFlags, (jint)lpStruct->uFlags); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lParam, (jint)lpStruct->lParam); +} +#endif + +#ifndef NO_NMTTDISPINFOA +typedef struct NMTTDISPINFOA_FID_CACHE { + int cached; + jclass clazz; + jfieldID szText; +} NMTTDISPINFOA_FID_CACHE; + +NMTTDISPINFOA_FID_CACHE NMTTDISPINFOAFc; + +void cacheNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject) +{ + if (NMTTDISPINFOAFc.cached) return; + cacheNMTTDISPINFOFields(env, lpObject); + NMTTDISPINFOAFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMTTDISPINFOAFc.szText = (*env)->GetFieldID(env, NMTTDISPINFOAFc.clazz, "szText", "[B"); + NMTTDISPINFOAFc.cached = 1; +} + +NMTTDISPINFOA *getNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOA *lpStruct) +{ + if (!NMTTDISPINFOAFc.cached) cacheNMTTDISPINFOAFields(env, lpObject); + getNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + lpStruct->lpszText = (void *)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lpszText); + lpStruct->hinst = (HINSTANCE)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.hinst); + lpStruct->uFlags = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.uFlags); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lParam); + { + jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, NMTTDISPINFOAFc.szText); + (*env)->GetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szText), (void *)lpStruct->szText); + } + return lpStruct; +} + +void setNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOA *lpStruct) +{ + if (!NMTTDISPINFOAFc.cached) cacheNMTTDISPINFOAFields(env, lpObject); + setNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lpszText, (jint)lpStruct->lpszText); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.hinst, (jint)lpStruct->hinst); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.uFlags, (jint)lpStruct->uFlags); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lParam, (jint)lpStruct->lParam); + { + jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, NMTTDISPINFOAFc.szText); + (*env)->SetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szText), (void *)lpStruct->szText); + } +} +#endif + +#ifndef NO_NMTTDISPINFOW +typedef struct NMTTDISPINFOW_FID_CACHE { + int cached; + jclass clazz; + jfieldID szText; +} NMTTDISPINFOW_FID_CACHE; + +NMTTDISPINFOW_FID_CACHE NMTTDISPINFOWFc; + +void cacheNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject) +{ + if (NMTTDISPINFOWFc.cached) return; + cacheNMTTDISPINFOFields(env, lpObject); + NMTTDISPINFOWFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMTTDISPINFOWFc.szText = (*env)->GetFieldID(env, NMTTDISPINFOWFc.clazz, "szText", "[C"); + NMTTDISPINFOWFc.cached = 1; +} + +NMTTDISPINFOW *getNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOW *lpStruct) +{ + if (!NMTTDISPINFOWFc.cached) cacheNMTTDISPINFOWFields(env, lpObject); + getNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + lpStruct->lpszText = (void *)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lpszText); + lpStruct->hinst = (HINSTANCE)(*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.hinst); + lpStruct->uFlags = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.uFlags); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, NMTTDISPINFOFc.lParam); + { + jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, NMTTDISPINFOWFc.szText); + (*env)->GetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szText) / 2, (void *)lpStruct->szText); + } + return lpStruct; +} + +void setNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOW *lpStruct) +{ + if (!NMTTDISPINFOWFc.cached) cacheNMTTDISPINFOWFields(env, lpObject); + setNMHDRFields(env, lpObject, (NMHDR *)lpStruct); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lpszText, (jint)lpStruct->lpszText); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.hinst, (jint)lpStruct->hinst); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.uFlags, (jint)lpStruct->uFlags); + (*env)->SetIntField(env, lpObject, NMTTDISPINFOFc.lParam, (jint)lpStruct->lParam); + { + jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, NMTTDISPINFOWFc.szText); + (*env)->SetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szText) / 2, (void *)lpStruct->szText); + } +} +#endif + +#ifndef NO_NMTVCUSTOMDRAW +typedef struct NMTVCUSTOMDRAW_FID_CACHE { + int cached; + jclass clazz; + jfieldID clrText, clrTextBk, iLevel; +} NMTVCUSTOMDRAW_FID_CACHE; + +NMTVCUSTOMDRAW_FID_CACHE NMTVCUSTOMDRAWFc; + +void cacheNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject) +{ + if (NMTVCUSTOMDRAWFc.cached) return; + cacheNMCUSTOMDRAWFields(env, lpObject); + NMTVCUSTOMDRAWFc.clazz = (*env)->GetObjectClass(env, lpObject); + NMTVCUSTOMDRAWFc.clrText = (*env)->GetFieldID(env, NMTVCUSTOMDRAWFc.clazz, "clrText", "I"); + NMTVCUSTOMDRAWFc.clrTextBk = (*env)->GetFieldID(env, NMTVCUSTOMDRAWFc.clazz, "clrTextBk", "I"); + NMTVCUSTOMDRAWFc.iLevel = (*env)->GetFieldID(env, NMTVCUSTOMDRAWFc.clazz, "iLevel", "I"); + NMTVCUSTOMDRAWFc.cached = 1; +} + +NMTVCUSTOMDRAW *getNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMTVCUSTOMDRAW *lpStruct) +{ + if (!NMTVCUSTOMDRAWFc.cached) cacheNMTVCUSTOMDRAWFields(env, lpObject); + getNMCUSTOMDRAWFields(env, lpObject, (NMCUSTOMDRAW *)lpStruct); + lpStruct->clrText = (*env)->GetIntField(env, lpObject, NMTVCUSTOMDRAWFc.clrText); + lpStruct->clrTextBk = (*env)->GetIntField(env, lpObject, NMTVCUSTOMDRAWFc.clrTextBk); +#ifndef _WIN32_WCE + lpStruct->iLevel = (*env)->GetIntField(env, lpObject, NMTVCUSTOMDRAWFc.iLevel); +#endif + return lpStruct; +} + +void setNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMTVCUSTOMDRAW *lpStruct) +{ + if (!NMTVCUSTOMDRAWFc.cached) cacheNMTVCUSTOMDRAWFields(env, lpObject); + setNMCUSTOMDRAWFields(env, lpObject, (NMCUSTOMDRAW *)lpStruct); + (*env)->SetIntField(env, lpObject, NMTVCUSTOMDRAWFc.clrText, (jint)lpStruct->clrText); + (*env)->SetIntField(env, lpObject, NMTVCUSTOMDRAWFc.clrTextBk, (jint)lpStruct->clrTextBk); +#ifndef _WIN32_WCE + (*env)->SetIntField(env, lpObject, NMTVCUSTOMDRAWFc.iLevel, (jint)lpStruct->iLevel); +#endif +} +#endif + +#ifndef NO_NONCLIENTMETRICS +typedef struct NONCLIENTMETRICS_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, iBorderWidth, iScrollWidth, iScrollHeight, iCaptionWidth, iCaptionHeight, iSmCaptionWidth, iSmCaptionHeight, iMenuWidth, iMenuHeight; +} NONCLIENTMETRICS_FID_CACHE; + +NONCLIENTMETRICS_FID_CACHE NONCLIENTMETRICSFc; + +void cacheNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject) +{ + if (NONCLIENTMETRICSFc.cached) return; + NONCLIENTMETRICSFc.clazz = (*env)->GetObjectClass(env, lpObject); + NONCLIENTMETRICSFc.cbSize = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "cbSize", "I"); + NONCLIENTMETRICSFc.iBorderWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iBorderWidth", "I"); + NONCLIENTMETRICSFc.iScrollWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iScrollWidth", "I"); + NONCLIENTMETRICSFc.iScrollHeight = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iScrollHeight", "I"); + NONCLIENTMETRICSFc.iCaptionWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iCaptionWidth", "I"); + NONCLIENTMETRICSFc.iCaptionHeight = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iCaptionHeight", "I"); + NONCLIENTMETRICSFc.iSmCaptionWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iSmCaptionWidth", "I"); + NONCLIENTMETRICSFc.iSmCaptionHeight = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iSmCaptionHeight", "I"); + NONCLIENTMETRICSFc.iMenuWidth = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iMenuWidth", "I"); + NONCLIENTMETRICSFc.iMenuHeight = (*env)->GetFieldID(env, NONCLIENTMETRICSFc.clazz, "iMenuHeight", "I"); + NONCLIENTMETRICSFc.cached = 1; +} + +NONCLIENTMETRICS *getNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICS *lpStruct) +{ + if (!NONCLIENTMETRICSFc.cached) cacheNONCLIENTMETRICSFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize); + lpStruct->iBorderWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth); + lpStruct->iScrollWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth); + lpStruct->iScrollHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight); + lpStruct->iCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth); + lpStruct->iCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight); + lpStruct->iSmCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth); + lpStruct->iSmCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight); + lpStruct->iMenuWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth); + lpStruct->iMenuHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight); + return lpStruct; +} + +void setNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICS *lpStruct) +{ + if (!NONCLIENTMETRICSFc.cached) cacheNONCLIENTMETRICSFields(env, lpObject); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth, (jint)lpStruct->iBorderWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth, (jint)lpStruct->iScrollWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight, (jint)lpStruct->iScrollHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth, (jint)lpStruct->iCaptionWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight, (jint)lpStruct->iCaptionHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth, (jint)lpStruct->iSmCaptionWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight, (jint)lpStruct->iSmCaptionHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth, (jint)lpStruct->iMenuWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight, (jint)lpStruct->iMenuHeight); +} +#endif + +#ifndef NO_NONCLIENTMETRICSA +typedef struct NONCLIENTMETRICSA_FID_CACHE { + int cached; + jclass clazz; + jfieldID lfCaptionFont, lfSmCaptionFont, lfMenuFont, lfStatusFont, lfMessageFont; +} NONCLIENTMETRICSA_FID_CACHE; + +NONCLIENTMETRICSA_FID_CACHE NONCLIENTMETRICSAFc; + +void cacheNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject) +{ + if (NONCLIENTMETRICSAFc.cached) return; + cacheNONCLIENTMETRICSFields(env, lpObject); + NONCLIENTMETRICSAFc.clazz = (*env)->GetObjectClass(env, lpObject); + NONCLIENTMETRICSAFc.lfCaptionFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfCaptionFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;"); + NONCLIENTMETRICSAFc.lfSmCaptionFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfSmCaptionFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;"); + NONCLIENTMETRICSAFc.lfMenuFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfMenuFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;"); + NONCLIENTMETRICSAFc.lfStatusFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfStatusFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;"); + NONCLIENTMETRICSAFc.lfMessageFont = (*env)->GetFieldID(env, NONCLIENTMETRICSAFc.clazz, "lfMessageFont", "Lorg/eclipse/swt/internal/win32/LOGFONTA;"); + NONCLIENTMETRICSAFc.cached = 1; +} + +NONCLIENTMETRICSA *getNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSA *lpStruct) +{ + if (!NONCLIENTMETRICSAFc.cached) cacheNONCLIENTMETRICSAFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize); + lpStruct->iBorderWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth); + lpStruct->iScrollWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth); + lpStruct->iScrollHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight); + lpStruct->iCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth); + lpStruct->iCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight); + lpStruct->iSmCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth); + lpStruct->iSmCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight); + lpStruct->iMenuWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth); + lpStruct->iMenuHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight); + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfCaptionFont); + getLOGFONTAFields(env, lpObject1, &lpStruct->lfCaptionFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfSmCaptionFont); + getLOGFONTAFields(env, lpObject1, &lpStruct->lfSmCaptionFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfMenuFont); + getLOGFONTAFields(env, lpObject1, &lpStruct->lfMenuFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfStatusFont); + getLOGFONTAFields(env, lpObject1, &lpStruct->lfStatusFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfMessageFont); + getLOGFONTAFields(env, lpObject1, &lpStruct->lfMessageFont); + } + return lpStruct; +} + +void setNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSA *lpStruct) +{ + if (!NONCLIENTMETRICSAFc.cached) cacheNONCLIENTMETRICSAFields(env, lpObject); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth, (jint)lpStruct->iBorderWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth, (jint)lpStruct->iScrollWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight, (jint)lpStruct->iScrollHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth, (jint)lpStruct->iCaptionWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight, (jint)lpStruct->iCaptionHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth, (jint)lpStruct->iSmCaptionWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight, (jint)lpStruct->iSmCaptionHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth, (jint)lpStruct->iMenuWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight, (jint)lpStruct->iMenuHeight); + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfCaptionFont); + setLOGFONTAFields(env, lpObject1, &lpStruct->lfCaptionFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfSmCaptionFont); + setLOGFONTAFields(env, lpObject1, &lpStruct->lfSmCaptionFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfMenuFont); + setLOGFONTAFields(env, lpObject1, &lpStruct->lfMenuFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfStatusFont); + setLOGFONTAFields(env, lpObject1, &lpStruct->lfStatusFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSAFc.lfMessageFont); + setLOGFONTAFields(env, lpObject1, &lpStruct->lfMessageFont); + } +} +#endif + +#ifndef NO_NONCLIENTMETRICSW +typedef struct NONCLIENTMETRICSW_FID_CACHE { + int cached; + jclass clazz; + jfieldID lfCaptionFont, lfSmCaptionFont, lfMenuFont, lfStatusFont, lfMessageFont; +} NONCLIENTMETRICSW_FID_CACHE; + +NONCLIENTMETRICSW_FID_CACHE NONCLIENTMETRICSWFc; + +void cacheNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject) +{ + if (NONCLIENTMETRICSWFc.cached) return; + cacheNONCLIENTMETRICSFields(env, lpObject); + NONCLIENTMETRICSWFc.clazz = (*env)->GetObjectClass(env, lpObject); + NONCLIENTMETRICSWFc.lfCaptionFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfCaptionFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;"); + NONCLIENTMETRICSWFc.lfSmCaptionFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfSmCaptionFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;"); + NONCLIENTMETRICSWFc.lfMenuFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfMenuFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;"); + NONCLIENTMETRICSWFc.lfStatusFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfStatusFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;"); + NONCLIENTMETRICSWFc.lfMessageFont = (*env)->GetFieldID(env, NONCLIENTMETRICSWFc.clazz, "lfMessageFont", "Lorg/eclipse/swt/internal/win32/LOGFONTW;"); + NONCLIENTMETRICSWFc.cached = 1; +} + +NONCLIENTMETRICSW *getNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSW *lpStruct) +{ + if (!NONCLIENTMETRICSWFc.cached) cacheNONCLIENTMETRICSWFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize); + lpStruct->iBorderWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth); + lpStruct->iScrollWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth); + lpStruct->iScrollHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight); + lpStruct->iCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth); + lpStruct->iCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight); + lpStruct->iSmCaptionWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth); + lpStruct->iSmCaptionHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight); + lpStruct->iMenuWidth = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth); + lpStruct->iMenuHeight = (*env)->GetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight); + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfCaptionFont); + getLOGFONTWFields(env, lpObject1, &lpStruct->lfCaptionFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfSmCaptionFont); + getLOGFONTWFields(env, lpObject1, &lpStruct->lfSmCaptionFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfMenuFont); + getLOGFONTWFields(env, lpObject1, &lpStruct->lfMenuFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfStatusFont); + getLOGFONTWFields(env, lpObject1, &lpStruct->lfStatusFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfMessageFont); + getLOGFONTWFields(env, lpObject1, &lpStruct->lfMessageFont); + } + return lpStruct; +} + +void setNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSW *lpStruct) +{ + if (!NONCLIENTMETRICSWFc.cached) cacheNONCLIENTMETRICSWFields(env, lpObject); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iBorderWidth, (jint)lpStruct->iBorderWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollWidth, (jint)lpStruct->iScrollWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iScrollHeight, (jint)lpStruct->iScrollHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionWidth, (jint)lpStruct->iCaptionWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iCaptionHeight, (jint)lpStruct->iCaptionHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionWidth, (jint)lpStruct->iSmCaptionWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iSmCaptionHeight, (jint)lpStruct->iSmCaptionHeight); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuWidth, (jint)lpStruct->iMenuWidth); + (*env)->SetIntField(env, lpObject, NONCLIENTMETRICSFc.iMenuHeight, (jint)lpStruct->iMenuHeight); + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfCaptionFont); + setLOGFONTWFields(env, lpObject1, &lpStruct->lfCaptionFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfSmCaptionFont); + setLOGFONTWFields(env, lpObject1, &lpStruct->lfSmCaptionFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfMenuFont); + setLOGFONTWFields(env, lpObject1, &lpStruct->lfMenuFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfStatusFont); + setLOGFONTWFields(env, lpObject1, &lpStruct->lfStatusFont); + } + { + jobject lpObject1 = (*env)->GetObjectField(env, lpObject, NONCLIENTMETRICSWFc.lfMessageFont); + setLOGFONTWFields(env, lpObject1, &lpStruct->lfMessageFont); + } +} +#endif + +#ifndef NO_OPENFILENAME +typedef struct OPENFILENAME_FID_CACHE { + int cached; + jclass clazz; + jfieldID lStructSize, hwndOwner, hInstance, lpstrFilter, lpstrCustomFilter, nMaxCustFilter, nFilterIndex, lpstrFile, nMaxFile, lpstrFileTitle, nMaxFileTitle, lpstrInitialDir, lpstrTitle, Flags, nFileOffset, nFileExtension, lpstrDefExt, lCustData, lpfnHook, lpTemplateName; +} OPENFILENAME_FID_CACHE; + +OPENFILENAME_FID_CACHE OPENFILENAMEFc; + +void cacheOPENFILENAMEFields(JNIEnv *env, jobject lpObject) +{ + if (OPENFILENAMEFc.cached) return; + OPENFILENAMEFc.clazz = (*env)->GetObjectClass(env, lpObject); + OPENFILENAMEFc.lStructSize = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lStructSize", "I"); + OPENFILENAMEFc.hwndOwner = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "hwndOwner", "I"); + OPENFILENAMEFc.hInstance = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "hInstance", "I"); + OPENFILENAMEFc.lpstrFilter = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrFilter", "I"); + OPENFILENAMEFc.lpstrCustomFilter = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrCustomFilter", "I"); + OPENFILENAMEFc.nMaxCustFilter = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nMaxCustFilter", "I"); + OPENFILENAMEFc.nFilterIndex = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nFilterIndex", "I"); + OPENFILENAMEFc.lpstrFile = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrFile", "I"); + OPENFILENAMEFc.nMaxFile = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nMaxFile", "I"); + OPENFILENAMEFc.lpstrFileTitle = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrFileTitle", "I"); + OPENFILENAMEFc.nMaxFileTitle = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nMaxFileTitle", "I"); + OPENFILENAMEFc.lpstrInitialDir = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrInitialDir", "I"); + OPENFILENAMEFc.lpstrTitle = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrTitle", "I"); + OPENFILENAMEFc.Flags = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "Flags", "I"); + OPENFILENAMEFc.nFileOffset = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nFileOffset", "S"); + OPENFILENAMEFc.nFileExtension = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "nFileExtension", "S"); + OPENFILENAMEFc.lpstrDefExt = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpstrDefExt", "I"); + OPENFILENAMEFc.lCustData = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lCustData", "I"); + OPENFILENAMEFc.lpfnHook = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpfnHook", "I"); + OPENFILENAMEFc.lpTemplateName = (*env)->GetFieldID(env, OPENFILENAMEFc.clazz, "lpTemplateName", "I"); + OPENFILENAMEFc.cached = 1; +} + +OPENFILENAME *getOPENFILENAMEFields(JNIEnv *env, jobject lpObject, OPENFILENAME *lpStruct) +{ + if (!OPENFILENAMEFc.cached) cacheOPENFILENAMEFields(env, lpObject); + lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lStructSize); + lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.hwndOwner); + lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.hInstance); + lpStruct->lpstrFilter = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrFilter); + lpStruct->lpstrCustomFilter = (LPTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrCustomFilter); + lpStruct->nMaxCustFilter = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.nMaxCustFilter); + lpStruct->nFilterIndex = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.nFilterIndex); + lpStruct->lpstrFile = (LPTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrFile); + lpStruct->nMaxFile = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.nMaxFile); + lpStruct->lpstrFileTitle = (LPTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrFileTitle); + lpStruct->nMaxFileTitle = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.nMaxFileTitle); + lpStruct->lpstrInitialDir = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrInitialDir); + lpStruct->lpstrTitle = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrTitle); + lpStruct->Flags = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.Flags); + lpStruct->nFileOffset = (*env)->GetShortField(env, lpObject, OPENFILENAMEFc.nFileOffset); + lpStruct->nFileExtension = (*env)->GetShortField(env, lpObject, OPENFILENAMEFc.nFileExtension); + lpStruct->lpstrDefExt = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpstrDefExt); + lpStruct->lCustData = (*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lCustData); + lpStruct->lpfnHook = (LPOFNHOOKPROC)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpfnHook); + lpStruct->lpTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, OPENFILENAMEFc.lpTemplateName); + return lpStruct; +} + +void setOPENFILENAMEFields(JNIEnv *env, jobject lpObject, OPENFILENAME *lpStruct) +{ + if (!OPENFILENAMEFc.cached) cacheOPENFILENAMEFields(env, lpObject); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lStructSize, (jint)lpStruct->lStructSize); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.hwndOwner, (jint)lpStruct->hwndOwner); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.hInstance, (jint)lpStruct->hInstance); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrFilter, (jint)lpStruct->lpstrFilter); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrCustomFilter, (jint)lpStruct->lpstrCustomFilter); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.nMaxCustFilter, (jint)lpStruct->nMaxCustFilter); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.nFilterIndex, (jint)lpStruct->nFilterIndex); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrFile, (jint)lpStruct->lpstrFile); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.nMaxFile, (jint)lpStruct->nMaxFile); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrFileTitle, (jint)lpStruct->lpstrFileTitle); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.nMaxFileTitle, (jint)lpStruct->nMaxFileTitle); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrInitialDir, (jint)lpStruct->lpstrInitialDir); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrTitle, (jint)lpStruct->lpstrTitle); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.Flags, (jint)lpStruct->Flags); + (*env)->SetShortField(env, lpObject, OPENFILENAMEFc.nFileOffset, (jshort)lpStruct->nFileOffset); + (*env)->SetShortField(env, lpObject, OPENFILENAMEFc.nFileExtension, (jshort)lpStruct->nFileExtension); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpstrDefExt, (jint)lpStruct->lpstrDefExt); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lCustData, (jint)lpStruct->lCustData); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpfnHook, (jint)lpStruct->lpfnHook); + (*env)->SetIntField(env, lpObject, OPENFILENAMEFc.lpTemplateName, (jint)lpStruct->lpTemplateName); +} +#endif + +#ifndef NO_OSVERSIONINFO +typedef struct OSVERSIONINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID dwOSVersionInfoSize, dwMajorVersion, dwMinorVersion, dwBuildNumber, dwPlatformId; +} OSVERSIONINFO_FID_CACHE; + +OSVERSIONINFO_FID_CACHE OSVERSIONINFOFc; + +void cacheOSVERSIONINFOFields(JNIEnv *env, jobject lpObject) +{ + if (OSVERSIONINFOFc.cached) return; + OSVERSIONINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + OSVERSIONINFOFc.dwOSVersionInfoSize = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwOSVersionInfoSize", "I"); + OSVERSIONINFOFc.dwMajorVersion = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwMajorVersion", "I"); + OSVERSIONINFOFc.dwMinorVersion = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwMinorVersion", "I"); + OSVERSIONINFOFc.dwBuildNumber = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwBuildNumber", "I"); + OSVERSIONINFOFc.dwPlatformId = (*env)->GetFieldID(env, OSVERSIONINFOFc.clazz, "dwPlatformId", "I"); + OSVERSIONINFOFc.cached = 1; +} + +OSVERSIONINFO *getOSVERSIONINFOFields(JNIEnv *env, jobject lpObject, OSVERSIONINFO *lpStruct) +{ + if (!OSVERSIONINFOFc.cached) cacheOSVERSIONINFOFields(env, lpObject); + lpStruct->dwOSVersionInfoSize = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize); + lpStruct->dwMajorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion); + lpStruct->dwMinorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion); + lpStruct->dwBuildNumber = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber); + lpStruct->dwPlatformId = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId); + return lpStruct; +} + +void setOSVERSIONINFOFields(JNIEnv *env, jobject lpObject, OSVERSIONINFO *lpStruct) +{ + if (!OSVERSIONINFOFc.cached) cacheOSVERSIONINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize, (jint)lpStruct->dwOSVersionInfoSize); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion, (jint)lpStruct->dwMajorVersion); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion, (jint)lpStruct->dwMinorVersion); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber, (jint)lpStruct->dwBuildNumber); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId, (jint)lpStruct->dwPlatformId); +} +#endif + +#ifndef NO_OSVERSIONINFOA +typedef struct OSVERSIONINFOA_FID_CACHE { + int cached; + jclass clazz; + jfieldID szCSDVersion; +} OSVERSIONINFOA_FID_CACHE; + +OSVERSIONINFOA_FID_CACHE OSVERSIONINFOAFc; + +void cacheOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject) +{ + if (OSVERSIONINFOAFc.cached) return; + cacheOSVERSIONINFOFields(env, lpObject); + OSVERSIONINFOAFc.clazz = (*env)->GetObjectClass(env, lpObject); + OSVERSIONINFOAFc.szCSDVersion = (*env)->GetFieldID(env, OSVERSIONINFOAFc.clazz, "szCSDVersion", "[B"); + OSVERSIONINFOAFc.cached = 1; +} + +OSVERSIONINFOA *getOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOA *lpStruct) +{ + if (!OSVERSIONINFOAFc.cached) cacheOSVERSIONINFOAFields(env, lpObject); + lpStruct->dwOSVersionInfoSize = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize); + lpStruct->dwMajorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion); + lpStruct->dwMinorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion); + lpStruct->dwBuildNumber = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber); + lpStruct->dwPlatformId = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId); + { + jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, OSVERSIONINFOAFc.szCSDVersion); + (*env)->GetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szCSDVersion), (void *)lpStruct->szCSDVersion); + } + return lpStruct; +} + +void setOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOA *lpStruct) +{ + if (!OSVERSIONINFOAFc.cached) cacheOSVERSIONINFOAFields(env, lpObject); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize, (jint)lpStruct->dwOSVersionInfoSize); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion, (jint)lpStruct->dwMajorVersion); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion, (jint)lpStruct->dwMinorVersion); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber, (jint)lpStruct->dwBuildNumber); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId, (jint)lpStruct->dwPlatformId); + { + jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, OSVERSIONINFOAFc.szCSDVersion); + (*env)->SetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szCSDVersion), (void *)lpStruct->szCSDVersion); + } +} +#endif + +#ifndef NO_OSVERSIONINFOW +typedef struct OSVERSIONINFOW_FID_CACHE { + int cached; + jclass clazz; + jfieldID szCSDVersion; +} OSVERSIONINFOW_FID_CACHE; + +OSVERSIONINFOW_FID_CACHE OSVERSIONINFOWFc; + +void cacheOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject) +{ + if (OSVERSIONINFOWFc.cached) return; + cacheOSVERSIONINFOFields(env, lpObject); + OSVERSIONINFOWFc.clazz = (*env)->GetObjectClass(env, lpObject); + OSVERSIONINFOWFc.szCSDVersion = (*env)->GetFieldID(env, OSVERSIONINFOWFc.clazz, "szCSDVersion", "[C"); + OSVERSIONINFOWFc.cached = 1; +} + +OSVERSIONINFOW *getOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOW *lpStruct) +{ + if (!OSVERSIONINFOWFc.cached) cacheOSVERSIONINFOWFields(env, lpObject); + lpStruct->dwOSVersionInfoSize = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize); + lpStruct->dwMajorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion); + lpStruct->dwMinorVersion = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion); + lpStruct->dwBuildNumber = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber); + lpStruct->dwPlatformId = (*env)->GetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId); + { + jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, OSVERSIONINFOWFc.szCSDVersion); + (*env)->GetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szCSDVersion) / 2, (void *)lpStruct->szCSDVersion); + } + return lpStruct; +} + +void setOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOW *lpStruct) +{ + if (!OSVERSIONINFOWFc.cached) cacheOSVERSIONINFOWFields(env, lpObject); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwOSVersionInfoSize, (jint)lpStruct->dwOSVersionInfoSize); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMajorVersion, (jint)lpStruct->dwMajorVersion); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwMinorVersion, (jint)lpStruct->dwMinorVersion); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwBuildNumber, (jint)lpStruct->dwBuildNumber); + (*env)->SetIntField(env, lpObject, OSVERSIONINFOFc.dwPlatformId, (jint)lpStruct->dwPlatformId); + { + jcharArray lpObject1 = (*env)->GetObjectField(env, lpObject, OSVERSIONINFOWFc.szCSDVersion); + (*env)->SetCharArrayRegion(env, lpObject1, 0, sizeof(lpStruct->szCSDVersion) / 2, (void *)lpStruct->szCSDVersion); + } +} +#endif + +#ifndef NO_PAINTSTRUCT +typedef struct PAINTSTRUCT_FID_CACHE { + int cached; + jclass clazz; + jfieldID hdc, fErase, left, top, right, bottom, fRestore, fIncUpdate, rgbReserved; +} PAINTSTRUCT_FID_CACHE; + +PAINTSTRUCT_FID_CACHE PAINTSTRUCTFc; + +void cachePAINTSTRUCTFields(JNIEnv *env, jobject lpObject) +{ + if (PAINTSTRUCTFc.cached) return; + PAINTSTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject); + PAINTSTRUCTFc.hdc = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "hdc", "I"); + PAINTSTRUCTFc.fErase = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "fErase", "Z"); + PAINTSTRUCTFc.left = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "left", "I"); + PAINTSTRUCTFc.top = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "top", "I"); + PAINTSTRUCTFc.right = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "right", "I"); + PAINTSTRUCTFc.bottom = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "bottom", "I"); + PAINTSTRUCTFc.fRestore = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "fRestore", "Z"); + PAINTSTRUCTFc.fIncUpdate = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "fIncUpdate", "Z"); + PAINTSTRUCTFc.rgbReserved = (*env)->GetFieldID(env, PAINTSTRUCTFc.clazz, "rgbReserved", "[B"); + PAINTSTRUCTFc.cached = 1; +} + +PAINTSTRUCT *getPAINTSTRUCTFields(JNIEnv *env, jobject lpObject, PAINTSTRUCT *lpStruct) +{ + if (!PAINTSTRUCTFc.cached) cachePAINTSTRUCTFields(env, lpObject); + lpStruct->hdc = (HDC)(*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.hdc); + lpStruct->fErase = (*env)->GetBooleanField(env, lpObject, PAINTSTRUCTFc.fErase); + lpStruct->rcPaint.left = (*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.left); + lpStruct->rcPaint.top = (*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.top); + lpStruct->rcPaint.right = (*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.right); + lpStruct->rcPaint.bottom = (*env)->GetIntField(env, lpObject, PAINTSTRUCTFc.bottom); + lpStruct->fRestore = (*env)->GetBooleanField(env, lpObject, PAINTSTRUCTFc.fRestore); + lpStruct->fIncUpdate = (*env)->GetBooleanField(env, lpObject, PAINTSTRUCTFc.fIncUpdate); + { + jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, PAINTSTRUCTFc.rgbReserved); + (*env)->GetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->rgbReserved), (void *)lpStruct->rgbReserved); + } + return lpStruct; +} + +void setPAINTSTRUCTFields(JNIEnv *env, jobject lpObject, PAINTSTRUCT *lpStruct) +{ + if (!PAINTSTRUCTFc.cached) cachePAINTSTRUCTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.hdc, (jint)lpStruct->hdc); + (*env)->SetBooleanField(env, lpObject, PAINTSTRUCTFc.fErase, (jboolean)lpStruct->fErase); + (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.left, (jint)lpStruct->rcPaint.left); + (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.top, (jint)lpStruct->rcPaint.top); + (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.right, (jint)lpStruct->rcPaint.right); + (*env)->SetIntField(env, lpObject, PAINTSTRUCTFc.bottom, (jint)lpStruct->rcPaint.bottom); + (*env)->SetBooleanField(env, lpObject, PAINTSTRUCTFc.fRestore, (jboolean)lpStruct->fRestore); + (*env)->SetBooleanField(env, lpObject, PAINTSTRUCTFc.fIncUpdate, (jboolean)lpStruct->fIncUpdate); + { + jbyteArray lpObject1 = (*env)->GetObjectField(env, lpObject, PAINTSTRUCTFc.rgbReserved); + (*env)->SetByteArrayRegion(env, lpObject1, 0, sizeof(lpStruct->rgbReserved), (void *)lpStruct->rgbReserved); + } +} +#endif + +#ifndef NO_POINT +typedef struct POINT_FID_CACHE { + int cached; + jclass clazz; + jfieldID x, y; +} POINT_FID_CACHE; + +POINT_FID_CACHE POINTFc; + +void cachePOINTFields(JNIEnv *env, jobject lpObject) +{ + if (POINTFc.cached) return; + POINTFc.clazz = (*env)->GetObjectClass(env, lpObject); + POINTFc.x = (*env)->GetFieldID(env, POINTFc.clazz, "x", "I"); + POINTFc.y = (*env)->GetFieldID(env, POINTFc.clazz, "y", "I"); + POINTFc.cached = 1; +} + +POINT *getPOINTFields(JNIEnv *env, jobject lpObject, POINT *lpStruct) +{ + if (!POINTFc.cached) cachePOINTFields(env, lpObject); + lpStruct->x = (*env)->GetIntField(env, lpObject, POINTFc.x); + lpStruct->y = (*env)->GetIntField(env, lpObject, POINTFc.y); + return lpStruct; +} + +void setPOINTFields(JNIEnv *env, jobject lpObject, POINT *lpStruct) +{ + if (!POINTFc.cached) cachePOINTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, POINTFc.x, (jint)lpStruct->x); + (*env)->SetIntField(env, lpObject, POINTFc.y, (jint)lpStruct->y); +} +#endif + +#ifndef NO_PRINTDLG +typedef struct PRINTDLG_FID_CACHE { + int cached; + jclass clazz; + jfieldID lStructSize, hwndOwner, hDevMode, hDevNames, hDC, Flags, nFromPage, nToPage, nMinPage, nMaxPage, nCopies, hInstance, lCustData, lpfnPrintHook, lpfnSetupHook, lpPrintTemplateName, lpSetupTemplateName, hPrintTemplate, hSetupTemplate; +} PRINTDLG_FID_CACHE; + +PRINTDLG_FID_CACHE PRINTDLGFc; + +void cachePRINTDLGFields(JNIEnv *env, jobject lpObject) +{ + if (PRINTDLGFc.cached) return; + PRINTDLGFc.clazz = (*env)->GetObjectClass(env, lpObject); + PRINTDLGFc.lStructSize = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lStructSize", "I"); + PRINTDLGFc.hwndOwner = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hwndOwner", "I"); + PRINTDLGFc.hDevMode = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hDevMode", "I"); + PRINTDLGFc.hDevNames = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hDevNames", "I"); + PRINTDLGFc.hDC = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hDC", "I"); + PRINTDLGFc.Flags = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "Flags", "I"); + PRINTDLGFc.nFromPage = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nFromPage", "S"); + PRINTDLGFc.nToPage = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nToPage", "S"); + PRINTDLGFc.nMinPage = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nMinPage", "S"); + PRINTDLGFc.nMaxPage = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nMaxPage", "S"); + PRINTDLGFc.nCopies = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "nCopies", "S"); + PRINTDLGFc.hInstance = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hInstance", "I"); + PRINTDLGFc.lCustData = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lCustData", "I"); + PRINTDLGFc.lpfnPrintHook = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lpfnPrintHook", "I"); + PRINTDLGFc.lpfnSetupHook = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lpfnSetupHook", "I"); + PRINTDLGFc.lpPrintTemplateName = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lpPrintTemplateName", "I"); + PRINTDLGFc.lpSetupTemplateName = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "lpSetupTemplateName", "I"); + PRINTDLGFc.hPrintTemplate = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hPrintTemplate", "I"); + PRINTDLGFc.hSetupTemplate = (*env)->GetFieldID(env, PRINTDLGFc.clazz, "hSetupTemplate", "I"); + PRINTDLGFc.cached = 1; +} + +PRINTDLG *getPRINTDLGFields(JNIEnv *env, jobject lpObject, PRINTDLG *lpStruct) +{ + if (!PRINTDLGFc.cached) cachePRINTDLGFields(env, lpObject); + lpStruct->lStructSize = (*env)->GetIntField(env, lpObject, PRINTDLGFc.lStructSize); + lpStruct->hwndOwner = (HWND)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hwndOwner); + lpStruct->hDevMode = (HGLOBAL)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hDevMode); + lpStruct->hDevNames = (HGLOBAL)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hDevNames); + lpStruct->hDC = (HDC)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hDC); + lpStruct->Flags = (*env)->GetIntField(env, lpObject, PRINTDLGFc.Flags); + lpStruct->nFromPage = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nFromPage); + lpStruct->nToPage = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nToPage); + lpStruct->nMinPage = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nMinPage); + lpStruct->nMaxPage = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nMaxPage); + lpStruct->nCopies = (*env)->GetShortField(env, lpObject, PRINTDLGFc.nCopies); + lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hInstance); + lpStruct->lCustData = (*env)->GetIntField(env, lpObject, PRINTDLGFc.lCustData); + lpStruct->lpfnPrintHook = (LPPRINTHOOKPROC)(*env)->GetIntField(env, lpObject, PRINTDLGFc.lpfnPrintHook); + lpStruct->lpfnSetupHook = (LPPRINTHOOKPROC)(*env)->GetIntField(env, lpObject, PRINTDLGFc.lpfnSetupHook); + lpStruct->lpPrintTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, PRINTDLGFc.lpPrintTemplateName); + lpStruct->lpSetupTemplateName = (LPCTSTR)(*env)->GetIntField(env, lpObject, PRINTDLGFc.lpSetupTemplateName); + lpStruct->hPrintTemplate = (HGLOBAL)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hPrintTemplate); + lpStruct->hSetupTemplate = (HGLOBAL)(*env)->GetIntField(env, lpObject, PRINTDLGFc.hSetupTemplate); + return lpStruct; +} + +void setPRINTDLGFields(JNIEnv *env, jobject lpObject, PRINTDLG *lpStruct) +{ + if (!PRINTDLGFc.cached) cachePRINTDLGFields(env, lpObject); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.lStructSize, (jint)lpStruct->lStructSize); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.hwndOwner, (jint)lpStruct->hwndOwner); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.hDevMode, (jint)lpStruct->hDevMode); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.hDevNames, (jint)lpStruct->hDevNames); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.hDC, (jint)lpStruct->hDC); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.Flags, (jint)lpStruct->Flags); + (*env)->SetShortField(env, lpObject, PRINTDLGFc.nFromPage, (jshort)lpStruct->nFromPage); + (*env)->SetShortField(env, lpObject, PRINTDLGFc.nToPage, (jshort)lpStruct->nToPage); + (*env)->SetShortField(env, lpObject, PRINTDLGFc.nMinPage, (jshort)lpStruct->nMinPage); + (*env)->SetShortField(env, lpObject, PRINTDLGFc.nMaxPage, (jshort)lpStruct->nMaxPage); + (*env)->SetShortField(env, lpObject, PRINTDLGFc.nCopies, (jshort)lpStruct->nCopies); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.hInstance, (jint)lpStruct->hInstance); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.lCustData, (jint)lpStruct->lCustData); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.lpfnPrintHook, (jint)lpStruct->lpfnPrintHook); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.lpfnSetupHook, (jint)lpStruct->lpfnSetupHook); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.lpPrintTemplateName, (jint)lpStruct->lpPrintTemplateName); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.lpSetupTemplateName, (jint)lpStruct->lpSetupTemplateName); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.hPrintTemplate, (jint)lpStruct->hPrintTemplate); + (*env)->SetIntField(env, lpObject, PRINTDLGFc.hSetupTemplate, (jint)lpStruct->hSetupTemplate); +} +#endif + +#ifndef NO_REBARBANDINFO +typedef struct REBARBANDINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, fMask, fStyle, clrFore, clrBack, lpText, cch, iImage, hwndChild, cxMinChild, cyMinChild, cx, hbmBack, wID, cyChild, cyMaxChild, cyIntegral, cxIdeal, lParam, cxHeader; +} REBARBANDINFO_FID_CACHE; + +REBARBANDINFO_FID_CACHE REBARBANDINFOFc; + +void cacheREBARBANDINFOFields(JNIEnv *env, jobject lpObject) +{ + if (REBARBANDINFOFc.cached) return; + REBARBANDINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + REBARBANDINFOFc.cbSize = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cbSize", "I"); + REBARBANDINFOFc.fMask = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "fMask", "I"); + REBARBANDINFOFc.fStyle = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "fStyle", "I"); + REBARBANDINFOFc.clrFore = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "clrFore", "I"); + REBARBANDINFOFc.clrBack = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "clrBack", "I"); + REBARBANDINFOFc.lpText = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "lpText", "I"); + REBARBANDINFOFc.cch = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cch", "I"); + REBARBANDINFOFc.iImage = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "iImage", "I"); + REBARBANDINFOFc.hwndChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "hwndChild", "I"); + REBARBANDINFOFc.cxMinChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cxMinChild", "I"); + REBARBANDINFOFc.cyMinChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cyMinChild", "I"); + REBARBANDINFOFc.cx = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cx", "I"); + REBARBANDINFOFc.hbmBack = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "hbmBack", "I"); + REBARBANDINFOFc.wID = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "wID", "I"); + REBARBANDINFOFc.cyChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cyChild", "I"); + REBARBANDINFOFc.cyMaxChild = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cyMaxChild", "I"); + REBARBANDINFOFc.cyIntegral = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cyIntegral", "I"); + REBARBANDINFOFc.cxIdeal = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cxIdeal", "I"); + REBARBANDINFOFc.lParam = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "lParam", "I"); + REBARBANDINFOFc.cxHeader = (*env)->GetFieldID(env, REBARBANDINFOFc.clazz, "cxHeader", "I"); + REBARBANDINFOFc.cached = 1; +} + +REBARBANDINFO *getREBARBANDINFOFields(JNIEnv *env, jobject lpObject, REBARBANDINFO *lpStruct) +{ + if (!REBARBANDINFOFc.cached) cacheREBARBANDINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cbSize); + lpStruct->fMask = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.fMask); + lpStruct->fStyle = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.fStyle); + lpStruct->clrFore = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.clrFore); + lpStruct->clrBack = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.clrBack); + lpStruct->lpText = (LPTSTR)(*env)->GetIntField(env, lpObject, REBARBANDINFOFc.lpText); + lpStruct->cch = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cch); + lpStruct->iImage = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.iImage); + lpStruct->hwndChild = (HWND)(*env)->GetIntField(env, lpObject, REBARBANDINFOFc.hwndChild); + lpStruct->cxMinChild = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cxMinChild); + lpStruct->cyMinChild = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cyMinChild); + lpStruct->cx = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cx); + lpStruct->hbmBack = (HBITMAP)(*env)->GetIntField(env, lpObject, REBARBANDINFOFc.hbmBack); + lpStruct->wID = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.wID); + lpStruct->cyChild = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cyChild); + lpStruct->cyMaxChild = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cyMaxChild); + lpStruct->cyIntegral = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cyIntegral); + lpStruct->cxIdeal = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cxIdeal); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.lParam); +#ifndef _WIN32_WCE + lpStruct->cxHeader = (*env)->GetIntField(env, lpObject, REBARBANDINFOFc.cxHeader); +#endif + return lpStruct; +} + +void setREBARBANDINFOFields(JNIEnv *env, jobject lpObject, REBARBANDINFO *lpStruct) +{ + if (!REBARBANDINFOFc.cached) cacheREBARBANDINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.fMask, (jint)lpStruct->fMask); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.fStyle, (jint)lpStruct->fStyle); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.clrFore, (jint)lpStruct->clrFore); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.clrBack, (jint)lpStruct->clrBack); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.lpText, (jint)lpStruct->lpText); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cch, (jint)lpStruct->cch); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.iImage, (jint)lpStruct->iImage); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.hwndChild, (jint)lpStruct->hwndChild); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cxMinChild, (jint)lpStruct->cxMinChild); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cyMinChild, (jint)lpStruct->cyMinChild); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cx, (jint)lpStruct->cx); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.hbmBack, (jint)lpStruct->hbmBack); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.wID, (jint)lpStruct->wID); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cyChild, (jint)lpStruct->cyChild); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cyMaxChild, (jint)lpStruct->cyMaxChild); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cyIntegral, (jint)lpStruct->cyIntegral); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cxIdeal, (jint)lpStruct->cxIdeal); + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.lParam, (jint)lpStruct->lParam); +#ifndef _WIN32_WCE + (*env)->SetIntField(env, lpObject, REBARBANDINFOFc.cxHeader, (jint)lpStruct->cxHeader); +#endif +} +#endif + +#ifndef NO_RECT +typedef struct RECT_FID_CACHE { + int cached; + jclass clazz; + jfieldID left, top, right, bottom; +} RECT_FID_CACHE; + +RECT_FID_CACHE RECTFc; + +void cacheRECTFields(JNIEnv *env, jobject lpObject) +{ + if (RECTFc.cached) return; + RECTFc.clazz = (*env)->GetObjectClass(env, lpObject); + RECTFc.left = (*env)->GetFieldID(env, RECTFc.clazz, "left", "I"); + RECTFc.top = (*env)->GetFieldID(env, RECTFc.clazz, "top", "I"); + RECTFc.right = (*env)->GetFieldID(env, RECTFc.clazz, "right", "I"); + RECTFc.bottom = (*env)->GetFieldID(env, RECTFc.clazz, "bottom", "I"); + RECTFc.cached = 1; +} + +RECT *getRECTFields(JNIEnv *env, jobject lpObject, RECT *lpStruct) +{ + if (!RECTFc.cached) cacheRECTFields(env, lpObject); + lpStruct->left = (*env)->GetIntField(env, lpObject, RECTFc.left); + lpStruct->top = (*env)->GetIntField(env, lpObject, RECTFc.top); + lpStruct->right = (*env)->GetIntField(env, lpObject, RECTFc.right); + lpStruct->bottom = (*env)->GetIntField(env, lpObject, RECTFc.bottom); + return lpStruct; +} + +void setRECTFields(JNIEnv *env, jobject lpObject, RECT *lpStruct) +{ + if (!RECTFc.cached) cacheRECTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, RECTFc.left, (jint)lpStruct->left); + (*env)->SetIntField(env, lpObject, RECTFc.top, (jint)lpStruct->top); + (*env)->SetIntField(env, lpObject, RECTFc.right, (jint)lpStruct->right); + (*env)->SetIntField(env, lpObject, RECTFc.bottom, (jint)lpStruct->bottom); +} +#endif + +#ifndef NO_SCROLLINFO +typedef struct SCROLLINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, fMask, nMin, nMax, nPage, nPos, nTrackPos; +} SCROLLINFO_FID_CACHE; + +SCROLLINFO_FID_CACHE SCROLLINFOFc; + +void cacheSCROLLINFOFields(JNIEnv *env, jobject lpObject) +{ + if (SCROLLINFOFc.cached) return; + SCROLLINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + SCROLLINFOFc.cbSize = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "cbSize", "I"); + SCROLLINFOFc.fMask = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "fMask", "I"); + SCROLLINFOFc.nMin = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nMin", "I"); + SCROLLINFOFc.nMax = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nMax", "I"); + SCROLLINFOFc.nPage = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nPage", "I"); + SCROLLINFOFc.nPos = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nPos", "I"); + SCROLLINFOFc.nTrackPos = (*env)->GetFieldID(env, SCROLLINFOFc.clazz, "nTrackPos", "I"); + SCROLLINFOFc.cached = 1; +} + +SCROLLINFO *getSCROLLINFOFields(JNIEnv *env, jobject lpObject, SCROLLINFO *lpStruct) +{ + if (!SCROLLINFOFc.cached) cacheSCROLLINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.cbSize); + lpStruct->fMask = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.fMask); + lpStruct->nMin = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nMin); + lpStruct->nMax = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nMax); + lpStruct->nPage = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nPage); + lpStruct->nPos = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nPos); + lpStruct->nTrackPos = (*env)->GetIntField(env, lpObject, SCROLLINFOFc.nTrackPos); + return lpStruct; +} + +void setSCROLLINFOFields(JNIEnv *env, jobject lpObject, SCROLLINFO *lpStruct) +{ + if (!SCROLLINFOFc.cached) cacheSCROLLINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, SCROLLINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, SCROLLINFOFc.fMask, (jint)lpStruct->fMask); + (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nMin, (jint)lpStruct->nMin); + (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nMax, (jint)lpStruct->nMax); + (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nPage, (jint)lpStruct->nPage); + (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nPos, (jint)lpStruct->nPos); + (*env)->SetIntField(env, lpObject, SCROLLINFOFc.nTrackPos, (jint)lpStruct->nTrackPos); +} +#endif + +#ifndef NO_SHACTIVATEINFO +typedef struct SHACTIVATEINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, hwndLastFocus, fSipUp, fSipOnDeactivation, fActive, fReserved; +} SHACTIVATEINFO_FID_CACHE; + +SHACTIVATEINFO_FID_CACHE SHACTIVATEINFOFc; + +void cacheSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject) +{ + if (SHACTIVATEINFOFc.cached) return; + SHACTIVATEINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + SHACTIVATEINFOFc.cbSize = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "cbSize", "I"); + SHACTIVATEINFOFc.hwndLastFocus = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "hwndLastFocus", "I"); + SHACTIVATEINFOFc.fSipUp = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "fSipUp", "I"); + SHACTIVATEINFOFc.fSipOnDeactivation = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "fSipOnDeactivation", "I"); + SHACTIVATEINFOFc.fActive = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "fActive", "I"); + SHACTIVATEINFOFc.fReserved = (*env)->GetFieldID(env, SHACTIVATEINFOFc.clazz, "fReserved", "I"); + SHACTIVATEINFOFc.cached = 1; +} + +SHACTIVATEINFO *getSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject, SHACTIVATEINFO *lpStruct) +{ + if (!SHACTIVATEINFOFc.cached) cacheSHACTIVATEINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.cbSize); + lpStruct->hwndLastFocus = (HWND)(*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.hwndLastFocus); + lpStruct->fSipUp = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.fSipUp); + lpStruct->fSipOnDeactivation = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.fSipOnDeactivation); + lpStruct->fActive = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.fActive); + lpStruct->fReserved = (*env)->GetIntField(env, lpObject, SHACTIVATEINFOFc.fReserved); + return lpStruct; +} + +void setSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject, SHACTIVATEINFO *lpStruct) +{ + if (!SHACTIVATEINFOFc.cached) cacheSHACTIVATEINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.hwndLastFocus, (jint)lpStruct->hwndLastFocus); + (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.fSipUp, (jint)lpStruct->fSipUp); + (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.fSipOnDeactivation, (jint)lpStruct->fSipOnDeactivation); + (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.fActive, (jint)lpStruct->fActive); + (*env)->SetIntField(env, lpObject, SHACTIVATEINFOFc.fReserved, (jint)lpStruct->fReserved); +} +#endif + +#ifndef NO_SHELLEXECUTEINFO +typedef struct SHELLEXECUTEINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, fMask, hwnd, lpVerb, lpFile, lpParameters, lpDirectory, nShow, hInstApp, lpIDList, lpClass, hkeyClass, dwHotKey, hIcon, hProcess; +} SHELLEXECUTEINFO_FID_CACHE; + +SHELLEXECUTEINFO_FID_CACHE SHELLEXECUTEINFOFc; + +void cacheSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject) +{ + if (SHELLEXECUTEINFOFc.cached) return; + SHELLEXECUTEINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + SHELLEXECUTEINFOFc.cbSize = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "cbSize", "I"); + SHELLEXECUTEINFOFc.fMask = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "fMask", "I"); + SHELLEXECUTEINFOFc.hwnd = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hwnd", "I"); + SHELLEXECUTEINFOFc.lpVerb = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpVerb", "I"); + SHELLEXECUTEINFOFc.lpFile = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpFile", "I"); + SHELLEXECUTEINFOFc.lpParameters = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpParameters", "I"); + SHELLEXECUTEINFOFc.lpDirectory = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpDirectory", "I"); + SHELLEXECUTEINFOFc.nShow = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "nShow", "I"); + SHELLEXECUTEINFOFc.hInstApp = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hInstApp", "I"); + SHELLEXECUTEINFOFc.lpIDList = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpIDList", "I"); + SHELLEXECUTEINFOFc.lpClass = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "lpClass", "I"); + SHELLEXECUTEINFOFc.hkeyClass = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hkeyClass", "I"); + SHELLEXECUTEINFOFc.dwHotKey = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "dwHotKey", "I"); + SHELLEXECUTEINFOFc.hIcon = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hIcon", "I"); + SHELLEXECUTEINFOFc.hProcess = (*env)->GetFieldID(env, SHELLEXECUTEINFOFc.clazz, "hProcess", "I"); + SHELLEXECUTEINFOFc.cached = 1; +} + +SHELLEXECUTEINFO *getSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject, SHELLEXECUTEINFO *lpStruct) +{ + if (!SHELLEXECUTEINFOFc.cached) cacheSHELLEXECUTEINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.cbSize); + lpStruct->fMask = (*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.fMask); + lpStruct->hwnd = (HWND)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hwnd); + lpStruct->lpVerb = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpVerb); + lpStruct->lpFile = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpFile); + lpStruct->lpParameters = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpParameters); + lpStruct->lpDirectory = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpDirectory); + lpStruct->nShow = (*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.nShow); + lpStruct->hInstApp = (HINSTANCE)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hInstApp); + lpStruct->lpIDList = (LPVOID)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpIDList); + lpStruct->lpClass = (LPCTSTR)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpClass); + lpStruct->hkeyClass = (HKEY)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hkeyClass); + lpStruct->dwHotKey = (*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.dwHotKey); + lpStruct->hIcon = (HANDLE)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hIcon); + lpStruct->hProcess = (HANDLE)(*env)->GetIntField(env, lpObject, SHELLEXECUTEINFOFc.hProcess); + return lpStruct; +} + +void setSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject, SHELLEXECUTEINFO *lpStruct) +{ + if (!SHELLEXECUTEINFOFc.cached) cacheSHELLEXECUTEINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.fMask, (jint)lpStruct->fMask); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hwnd, (jint)lpStruct->hwnd); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpVerb, (jint)lpStruct->lpVerb); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpFile, (jint)lpStruct->lpFile); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpParameters, (jint)lpStruct->lpParameters); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpDirectory, (jint)lpStruct->lpDirectory); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.nShow, (jint)lpStruct->nShow); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hInstApp, (jint)lpStruct->hInstApp); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpIDList, (jint)lpStruct->lpIDList); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.lpClass, (jint)lpStruct->lpClass); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hkeyClass, (jint)lpStruct->hkeyClass); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.dwHotKey, (jint)lpStruct->dwHotKey); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hIcon, (jint)lpStruct->hIcon); + (*env)->SetIntField(env, lpObject, SHELLEXECUTEINFOFc.hProcess, (jint)lpStruct->hProcess); +} +#endif + +#ifndef NO_SHMENUBARINFO +typedef struct SHMENUBARINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, hwndParent, dwFlags, nToolBarId, hInstRes, nBmpId, cBmpImages, hwndMB; +} SHMENUBARINFO_FID_CACHE; + +SHMENUBARINFO_FID_CACHE SHMENUBARINFOFc; + +void cacheSHMENUBARINFOFields(JNIEnv *env, jobject lpObject) +{ + if (SHMENUBARINFOFc.cached) return; + SHMENUBARINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + SHMENUBARINFOFc.cbSize = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "cbSize", "I"); + SHMENUBARINFOFc.hwndParent = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "hwndParent", "I"); + SHMENUBARINFOFc.dwFlags = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "dwFlags", "I"); + SHMENUBARINFOFc.nToolBarId = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "nToolBarId", "I"); + SHMENUBARINFOFc.hInstRes = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "hInstRes", "I"); + SHMENUBARINFOFc.nBmpId = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "nBmpId", "I"); + SHMENUBARINFOFc.cBmpImages = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "cBmpImages", "I"); + SHMENUBARINFOFc.hwndMB = (*env)->GetFieldID(env, SHMENUBARINFOFc.clazz, "hwndMB", "I"); + SHMENUBARINFOFc.cached = 1; +} + +SHMENUBARINFO *getSHMENUBARINFOFields(JNIEnv *env, jobject lpObject, SHMENUBARINFO *lpStruct) +{ + if (!SHMENUBARINFOFc.cached) cacheSHMENUBARINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.cbSize); + lpStruct->hwndParent = (HWND)(*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.hwndParent); + lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.dwFlags); + lpStruct->nToolBarId = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.nToolBarId); + lpStruct->hInstRes = (HINSTANCE)(*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.hInstRes); + lpStruct->nBmpId = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.nBmpId); + lpStruct->cBmpImages = (*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.cBmpImages); + lpStruct->hwndMB = (HWND)(*env)->GetIntField(env, lpObject, SHMENUBARINFOFc.hwndMB); + return lpStruct; +} + +void setSHMENUBARINFOFields(JNIEnv *env, jobject lpObject, SHMENUBARINFO *lpStruct) +{ + if (!SHMENUBARINFOFc.cached) cacheSHMENUBARINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.hwndParent, (jint)lpStruct->hwndParent); + (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.dwFlags, (jint)lpStruct->dwFlags); + (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.nToolBarId, (jint)lpStruct->nToolBarId); + (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.hInstRes, (jint)lpStruct->hInstRes); + (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.nBmpId, (jint)lpStruct->nBmpId); + (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.cBmpImages, (jint)lpStruct->cBmpImages); + (*env)->SetIntField(env, lpObject, SHMENUBARINFOFc.hwndMB, (jint)lpStruct->hwndMB); +} +#endif + +#ifndef NO_SHRGINFO +typedef struct SHRGINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, hwndClient, ptDown_x, ptDown_y, dwFlags; +} SHRGINFO_FID_CACHE; + +SHRGINFO_FID_CACHE SHRGINFOFc; + +void cacheSHRGINFOFields(JNIEnv *env, jobject lpObject) +{ + if (SHRGINFOFc.cached) return; + SHRGINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + SHRGINFOFc.cbSize = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "cbSize", "I"); + SHRGINFOFc.hwndClient = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "hwndClient", "I"); + SHRGINFOFc.ptDown_x = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "ptDown_x", "I"); + SHRGINFOFc.ptDown_y = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "ptDown_y", "I"); + SHRGINFOFc.dwFlags = (*env)->GetFieldID(env, SHRGINFOFc.clazz, "dwFlags", "I"); + SHRGINFOFc.cached = 1; +} + +SHRGINFO *getSHRGINFOFields(JNIEnv *env, jobject lpObject, SHRGINFO *lpStruct) +{ + if (!SHRGINFOFc.cached) cacheSHRGINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SHRGINFOFc.cbSize); + lpStruct->hwndClient = (HWND)(*env)->GetIntField(env, lpObject, SHRGINFOFc.hwndClient); + lpStruct->ptDown.x = (*env)->GetIntField(env, lpObject, SHRGINFOFc.ptDown_x); + lpStruct->ptDown.y = (*env)->GetIntField(env, lpObject, SHRGINFOFc.ptDown_y); + lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, SHRGINFOFc.dwFlags); + return lpStruct; +} + +void setSHRGINFOFields(JNIEnv *env, jobject lpObject, SHRGINFO *lpStruct) +{ + if (!SHRGINFOFc.cached) cacheSHRGINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, SHRGINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, SHRGINFOFc.hwndClient, (jint)lpStruct->hwndClient); + (*env)->SetIntField(env, lpObject, SHRGINFOFc.ptDown_x, (jint)lpStruct->ptDown.x); + (*env)->SetIntField(env, lpObject, SHRGINFOFc.ptDown_y, (jint)lpStruct->ptDown.y); + (*env)->SetIntField(env, lpObject, SHRGINFOFc.dwFlags, (jint)lpStruct->dwFlags); +} +#endif + +#ifndef NO_SIPINFO +typedef struct SIPINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, fdwFlags, rcVisibleDesktop_left, rcVisibleDesktop_top, rcVisibleDesktop_right, rcVisibleDesktop_bottom, rcSipRect_left, rcSipRect_top, rcSipRect_right, rcSipRect_bottom, dwImDataSize, pvImData; +} SIPINFO_FID_CACHE; + +SIPINFO_FID_CACHE SIPINFOFc; + +void cacheSIPINFOFields(JNIEnv *env, jobject lpObject) +{ + if (SIPINFOFc.cached) return; + SIPINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + SIPINFOFc.cbSize = (*env)->GetFieldID(env, SIPINFOFc.clazz, "cbSize", "I"); + SIPINFOFc.fdwFlags = (*env)->GetFieldID(env, SIPINFOFc.clazz, "fdwFlags", "I"); + SIPINFOFc.rcVisibleDesktop_left = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcVisibleDesktop_left", "I"); + SIPINFOFc.rcVisibleDesktop_top = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcVisibleDesktop_top", "I"); + SIPINFOFc.rcVisibleDesktop_right = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcVisibleDesktop_right", "I"); + SIPINFOFc.rcVisibleDesktop_bottom = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcVisibleDesktop_bottom", "I"); + SIPINFOFc.rcSipRect_left = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcSipRect_left", "I"); + SIPINFOFc.rcSipRect_top = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcSipRect_top", "I"); + SIPINFOFc.rcSipRect_right = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcSipRect_right", "I"); + SIPINFOFc.rcSipRect_bottom = (*env)->GetFieldID(env, SIPINFOFc.clazz, "rcSipRect_bottom", "I"); + SIPINFOFc.dwImDataSize = (*env)->GetFieldID(env, SIPINFOFc.clazz, "dwImDataSize", "I"); + SIPINFOFc.pvImData = (*env)->GetFieldID(env, SIPINFOFc.clazz, "pvImData", "I"); + SIPINFOFc.cached = 1; +} + +SIPINFO *getSIPINFOFields(JNIEnv *env, jobject lpObject, SIPINFO *lpStruct) +{ + if (!SIPINFOFc.cached) cacheSIPINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, SIPINFOFc.cbSize); + lpStruct->fdwFlags = (*env)->GetIntField(env, lpObject, SIPINFOFc.fdwFlags); + lpStruct->rcVisibleDesktop.left = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_left); + lpStruct->rcVisibleDesktop.top = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_top); + lpStruct->rcVisibleDesktop.right = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_right); + lpStruct->rcVisibleDesktop.bottom = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_bottom); + lpStruct->rcSipRect.left = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcSipRect_left); + lpStruct->rcSipRect.top = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcSipRect_top); + lpStruct->rcSipRect.right = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcSipRect_right); + lpStruct->rcSipRect.bottom = (*env)->GetIntField(env, lpObject, SIPINFOFc.rcSipRect_bottom); + lpStruct->dwImDataSize = (*env)->GetIntField(env, lpObject, SIPINFOFc.dwImDataSize); + lpStruct->pvImData = (void *)(*env)->GetIntField(env, lpObject, SIPINFOFc.pvImData); + return lpStruct; +} + +void setSIPINFOFields(JNIEnv *env, jobject lpObject, SIPINFO *lpStruct) +{ + if (!SIPINFOFc.cached) cacheSIPINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, SIPINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, SIPINFOFc.fdwFlags, (jint)lpStruct->fdwFlags); + (*env)->SetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_left, (jint)lpStruct->rcVisibleDesktop.left); + (*env)->SetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_top, (jint)lpStruct->rcVisibleDesktop.top); + (*env)->SetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_right, (jint)lpStruct->rcVisibleDesktop.right); + (*env)->SetIntField(env, lpObject, SIPINFOFc.rcVisibleDesktop_bottom, (jint)lpStruct->rcVisibleDesktop.bottom); + (*env)->SetIntField(env, lpObject, SIPINFOFc.rcSipRect_left, (jint)lpStruct->rcSipRect.left); + (*env)->SetIntField(env, lpObject, SIPINFOFc.rcSipRect_top, (jint)lpStruct->rcSipRect.top); + (*env)->SetIntField(env, lpObject, SIPINFOFc.rcSipRect_right, (jint)lpStruct->rcSipRect.right); + (*env)->SetIntField(env, lpObject, SIPINFOFc.rcSipRect_bottom, (jint)lpStruct->rcSipRect.bottom); + (*env)->SetIntField(env, lpObject, SIPINFOFc.dwImDataSize, (jint)lpStruct->dwImDataSize); + (*env)->SetIntField(env, lpObject, SIPINFOFc.pvImData, (jint)lpStruct->pvImData); +} +#endif + +#ifndef NO_SIZE +typedef struct SIZE_FID_CACHE { + int cached; + jclass clazz; + jfieldID cx, cy; +} SIZE_FID_CACHE; + +SIZE_FID_CACHE SIZEFc; + +void cacheSIZEFields(JNIEnv *env, jobject lpObject) +{ + if (SIZEFc.cached) return; + SIZEFc.clazz = (*env)->GetObjectClass(env, lpObject); + SIZEFc.cx = (*env)->GetFieldID(env, SIZEFc.clazz, "cx", "I"); + SIZEFc.cy = (*env)->GetFieldID(env, SIZEFc.clazz, "cy", "I"); + SIZEFc.cached = 1; +} + +SIZE *getSIZEFields(JNIEnv *env, jobject lpObject, SIZE *lpStruct) +{ + if (!SIZEFc.cached) cacheSIZEFields(env, lpObject); + lpStruct->cx = (*env)->GetIntField(env, lpObject, SIZEFc.cx); + lpStruct->cy = (*env)->GetIntField(env, lpObject, SIZEFc.cy); + return lpStruct; +} + +void setSIZEFields(JNIEnv *env, jobject lpObject, SIZE *lpStruct) +{ + if (!SIZEFc.cached) cacheSIZEFields(env, lpObject); + (*env)->SetIntField(env, lpObject, SIZEFc.cx, (jint)lpStruct->cx); + (*env)->SetIntField(env, lpObject, SIZEFc.cy, (jint)lpStruct->cy); +} +#endif + +#ifndef NO_TBBUTTON +typedef struct TBBUTTON_FID_CACHE { + int cached; + jclass clazz; + jfieldID iBitmap, idCommand, fsState, fsStyle, dwData, iString; +} TBBUTTON_FID_CACHE; + +TBBUTTON_FID_CACHE TBBUTTONFc; + +void cacheTBBUTTONFields(JNIEnv *env, jobject lpObject) +{ + if (TBBUTTONFc.cached) return; + TBBUTTONFc.clazz = (*env)->GetObjectClass(env, lpObject); + TBBUTTONFc.iBitmap = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "iBitmap", "I"); + TBBUTTONFc.idCommand = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "idCommand", "I"); + TBBUTTONFc.fsState = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "fsState", "B"); + TBBUTTONFc.fsStyle = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "fsStyle", "B"); + TBBUTTONFc.dwData = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "dwData", "I"); + TBBUTTONFc.iString = (*env)->GetFieldID(env, TBBUTTONFc.clazz, "iString", "I"); + TBBUTTONFc.cached = 1; +} + +TBBUTTON *getTBBUTTONFields(JNIEnv *env, jobject lpObject, TBBUTTON *lpStruct) +{ + if (!TBBUTTONFc.cached) cacheTBBUTTONFields(env, lpObject); + lpStruct->iBitmap = (*env)->GetIntField(env, lpObject, TBBUTTONFc.iBitmap); + lpStruct->idCommand = (*env)->GetIntField(env, lpObject, TBBUTTONFc.idCommand); + lpStruct->fsState = (*env)->GetByteField(env, lpObject, TBBUTTONFc.fsState); + lpStruct->fsStyle = (*env)->GetByteField(env, lpObject, TBBUTTONFc.fsStyle); + lpStruct->dwData = (*env)->GetIntField(env, lpObject, TBBUTTONFc.dwData); + lpStruct->iString = (*env)->GetIntField(env, lpObject, TBBUTTONFc.iString); + return lpStruct; +} + +void setTBBUTTONFields(JNIEnv *env, jobject lpObject, TBBUTTON *lpStruct) +{ + if (!TBBUTTONFc.cached) cacheTBBUTTONFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TBBUTTONFc.iBitmap, (jint)lpStruct->iBitmap); + (*env)->SetIntField(env, lpObject, TBBUTTONFc.idCommand, (jint)lpStruct->idCommand); + (*env)->SetByteField(env, lpObject, TBBUTTONFc.fsState, (jbyte)lpStruct->fsState); + (*env)->SetByteField(env, lpObject, TBBUTTONFc.fsStyle, (jbyte)lpStruct->fsStyle); + (*env)->SetIntField(env, lpObject, TBBUTTONFc.dwData, (jint)lpStruct->dwData); + (*env)->SetIntField(env, lpObject, TBBUTTONFc.iString, (jint)lpStruct->iString); +} +#endif + +#ifndef NO_TBBUTTONINFO +typedef struct TBBUTTONINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, dwMask, idCommand, iImage, fsState, fsStyle, cx, lParam, pszText, cchText; +} TBBUTTONINFO_FID_CACHE; + +TBBUTTONINFO_FID_CACHE TBBUTTONINFOFc; + +void cacheTBBUTTONINFOFields(JNIEnv *env, jobject lpObject) +{ + if (TBBUTTONINFOFc.cached) return; + TBBUTTONINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + TBBUTTONINFOFc.cbSize = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "cbSize", "I"); + TBBUTTONINFOFc.dwMask = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "dwMask", "I"); + TBBUTTONINFOFc.idCommand = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "idCommand", "I"); + TBBUTTONINFOFc.iImage = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "iImage", "I"); + TBBUTTONINFOFc.fsState = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "fsState", "B"); + TBBUTTONINFOFc.fsStyle = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "fsStyle", "B"); + TBBUTTONINFOFc.cx = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "cx", "S"); + TBBUTTONINFOFc.lParam = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "lParam", "I"); + TBBUTTONINFOFc.pszText = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "pszText", "I"); + TBBUTTONINFOFc.cchText = (*env)->GetFieldID(env, TBBUTTONINFOFc.clazz, "cchText", "I"); + TBBUTTONINFOFc.cached = 1; +} + +TBBUTTONINFO *getTBBUTTONINFOFields(JNIEnv *env, jobject lpObject, TBBUTTONINFO *lpStruct) +{ + if (!TBBUTTONINFOFc.cached) cacheTBBUTTONINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.cbSize); + lpStruct->dwMask = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.dwMask); + lpStruct->idCommand = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.idCommand); + lpStruct->iImage = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.iImage); + lpStruct->fsState = (*env)->GetByteField(env, lpObject, TBBUTTONINFOFc.fsState); + lpStruct->fsStyle = (*env)->GetByteField(env, lpObject, TBBUTTONINFOFc.fsStyle); + lpStruct->cx = (*env)->GetShortField(env, lpObject, TBBUTTONINFOFc.cx); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.lParam); + lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.pszText); + lpStruct->cchText = (*env)->GetIntField(env, lpObject, TBBUTTONINFOFc.cchText); + return lpStruct; +} + +void setTBBUTTONINFOFields(JNIEnv *env, jobject lpObject, TBBUTTONINFO *lpStruct) +{ + if (!TBBUTTONINFOFc.cached) cacheTBBUTTONINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.dwMask, (jint)lpStruct->dwMask); + (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.idCommand, (jint)lpStruct->idCommand); + (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.iImage, (jint)lpStruct->iImage); + (*env)->SetByteField(env, lpObject, TBBUTTONINFOFc.fsState, (jbyte)lpStruct->fsState); + (*env)->SetByteField(env, lpObject, TBBUTTONINFOFc.fsStyle, (jbyte)lpStruct->fsStyle); + (*env)->SetShortField(env, lpObject, TBBUTTONINFOFc.cx, (jshort)lpStruct->cx); + (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.lParam, (jint)lpStruct->lParam); + (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.pszText, (jint)lpStruct->pszText); + (*env)->SetIntField(env, lpObject, TBBUTTONINFOFc.cchText, (jint)lpStruct->cchText); +} +#endif + +#ifndef NO_TCITEM +typedef struct TCITEM_FID_CACHE { + int cached; + jclass clazz; + jfieldID mask, dwState, dwStateMask, pszText, cchTextMax, iImage, lParam; +} TCITEM_FID_CACHE; + +TCITEM_FID_CACHE TCITEMFc; + +void cacheTCITEMFields(JNIEnv *env, jobject lpObject) +{ + if (TCITEMFc.cached) return; + TCITEMFc.clazz = (*env)->GetObjectClass(env, lpObject); + TCITEMFc.mask = (*env)->GetFieldID(env, TCITEMFc.clazz, "mask", "I"); + TCITEMFc.dwState = (*env)->GetFieldID(env, TCITEMFc.clazz, "dwState", "I"); + TCITEMFc.dwStateMask = (*env)->GetFieldID(env, TCITEMFc.clazz, "dwStateMask", "I"); + TCITEMFc.pszText = (*env)->GetFieldID(env, TCITEMFc.clazz, "pszText", "I"); + TCITEMFc.cchTextMax = (*env)->GetFieldID(env, TCITEMFc.clazz, "cchTextMax", "I"); + TCITEMFc.iImage = (*env)->GetFieldID(env, TCITEMFc.clazz, "iImage", "I"); + TCITEMFc.lParam = (*env)->GetFieldID(env, TCITEMFc.clazz, "lParam", "I"); + TCITEMFc.cached = 1; +} + +TCITEM *getTCITEMFields(JNIEnv *env, jobject lpObject, TCITEM *lpStruct) +{ + if (!TCITEMFc.cached) cacheTCITEMFields(env, lpObject); + lpStruct->mask = (*env)->GetIntField(env, lpObject, TCITEMFc.mask); + lpStruct->dwState = (*env)->GetIntField(env, lpObject, TCITEMFc.dwState); + lpStruct->dwStateMask = (*env)->GetIntField(env, lpObject, TCITEMFc.dwStateMask); + lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TCITEMFc.pszText); + lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, TCITEMFc.cchTextMax); + lpStruct->iImage = (*env)->GetIntField(env, lpObject, TCITEMFc.iImage); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, TCITEMFc.lParam); + return lpStruct; +} + +void setTCITEMFields(JNIEnv *env, jobject lpObject, TCITEM *lpStruct) +{ + if (!TCITEMFc.cached) cacheTCITEMFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TCITEMFc.mask, (jint)lpStruct->mask); + (*env)->SetIntField(env, lpObject, TCITEMFc.dwState, (jint)lpStruct->dwState); + (*env)->SetIntField(env, lpObject, TCITEMFc.dwStateMask, (jint)lpStruct->dwStateMask); + (*env)->SetIntField(env, lpObject, TCITEMFc.pszText, (jint)lpStruct->pszText); + (*env)->SetIntField(env, lpObject, TCITEMFc.cchTextMax, (jint)lpStruct->cchTextMax); + (*env)->SetIntField(env, lpObject, TCITEMFc.iImage, (jint)lpStruct->iImage); + (*env)->SetIntField(env, lpObject, TCITEMFc.lParam, (jint)lpStruct->lParam); +} +#endif + +#ifndef NO_TEXTMETRIC +typedef struct TEXTMETRIC_FID_CACHE { + int cached; + jclass clazz; + jfieldID tmHeight, tmAscent, tmDescent, tmInternalLeading, tmExternalLeading, tmAveCharWidth, tmMaxCharWidth, tmWeight, tmOverhang, tmDigitizedAspectX, tmDigitizedAspectY, tmItalic, tmUnderlined, tmStruckOut, tmPitchAndFamily, tmCharSet; +} TEXTMETRIC_FID_CACHE; + +TEXTMETRIC_FID_CACHE TEXTMETRICFc; + +void cacheTEXTMETRICFields(JNIEnv *env, jobject lpObject) +{ + if (TEXTMETRICFc.cached) return; + TEXTMETRICFc.clazz = (*env)->GetObjectClass(env, lpObject); + TEXTMETRICFc.tmHeight = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmHeight", "I"); + TEXTMETRICFc.tmAscent = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmAscent", "I"); + TEXTMETRICFc.tmDescent = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmDescent", "I"); + TEXTMETRICFc.tmInternalLeading = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmInternalLeading", "I"); + TEXTMETRICFc.tmExternalLeading = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmExternalLeading", "I"); + TEXTMETRICFc.tmAveCharWidth = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmAveCharWidth", "I"); + TEXTMETRICFc.tmMaxCharWidth = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmMaxCharWidth", "I"); + TEXTMETRICFc.tmWeight = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmWeight", "I"); + TEXTMETRICFc.tmOverhang = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmOverhang", "I"); + TEXTMETRICFc.tmDigitizedAspectX = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmDigitizedAspectX", "I"); + TEXTMETRICFc.tmDigitizedAspectY = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmDigitizedAspectY", "I"); + TEXTMETRICFc.tmItalic = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmItalic", "B"); + TEXTMETRICFc.tmUnderlined = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmUnderlined", "B"); + TEXTMETRICFc.tmStruckOut = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmStruckOut", "B"); + TEXTMETRICFc.tmPitchAndFamily = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmPitchAndFamily", "B"); + TEXTMETRICFc.tmCharSet = (*env)->GetFieldID(env, TEXTMETRICFc.clazz, "tmCharSet", "B"); + TEXTMETRICFc.cached = 1; +} + +TEXTMETRIC *getTEXTMETRICFields(JNIEnv *env, jobject lpObject, TEXTMETRIC *lpStruct) +{ + if (!TEXTMETRICFc.cached) cacheTEXTMETRICFields(env, lpObject); + lpStruct->tmHeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmHeight); + lpStruct->tmAscent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAscent); + lpStruct->tmDescent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDescent); + lpStruct->tmInternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading); + lpStruct->tmExternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading); + lpStruct->tmAveCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth); + lpStruct->tmMaxCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth); + lpStruct->tmWeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmWeight); + lpStruct->tmOverhang = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmOverhang); + lpStruct->tmDigitizedAspectX = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX); + lpStruct->tmDigitizedAspectY = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY); + lpStruct->tmItalic = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmItalic); + lpStruct->tmUnderlined = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined); + lpStruct->tmStruckOut = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut); + lpStruct->tmPitchAndFamily = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily); + lpStruct->tmCharSet = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmCharSet); + return lpStruct; +} + +void setTEXTMETRICFields(JNIEnv *env, jobject lpObject, TEXTMETRIC *lpStruct) +{ + if (!TEXTMETRICFc.cached) cacheTEXTMETRICFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmHeight, (jint)lpStruct->tmHeight); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAscent, (jint)lpStruct->tmAscent); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDescent, (jint)lpStruct->tmDescent); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading, (jint)lpStruct->tmInternalLeading); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading, (jint)lpStruct->tmExternalLeading); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth, (jint)lpStruct->tmAveCharWidth); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth, (jint)lpStruct->tmMaxCharWidth); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmWeight, (jint)lpStruct->tmWeight); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmOverhang, (jint)lpStruct->tmOverhang); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX, (jint)lpStruct->tmDigitizedAspectX); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY, (jint)lpStruct->tmDigitizedAspectY); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmItalic, (jbyte)lpStruct->tmItalic); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined, (jbyte)lpStruct->tmUnderlined); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut, (jbyte)lpStruct->tmStruckOut); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily, (jbyte)lpStruct->tmPitchAndFamily); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmCharSet, (jbyte)lpStruct->tmCharSet); +} +#endif + +#ifndef NO_TEXTMETRICA +typedef struct TEXTMETRICA_FID_CACHE { + int cached; + jclass clazz; + jfieldID tmFirstChar, tmLastChar, tmDefaultChar, tmBreakChar; +} TEXTMETRICA_FID_CACHE; + +TEXTMETRICA_FID_CACHE TEXTMETRICAFc; + +void cacheTEXTMETRICAFields(JNIEnv *env, jobject lpObject) +{ + if (TEXTMETRICAFc.cached) return; + cacheTEXTMETRICFields(env, lpObject); + TEXTMETRICAFc.clazz = (*env)->GetObjectClass(env, lpObject); + TEXTMETRICAFc.tmFirstChar = (*env)->GetFieldID(env, TEXTMETRICAFc.clazz, "tmFirstChar", "B"); + TEXTMETRICAFc.tmLastChar = (*env)->GetFieldID(env, TEXTMETRICAFc.clazz, "tmLastChar", "B"); + TEXTMETRICAFc.tmDefaultChar = (*env)->GetFieldID(env, TEXTMETRICAFc.clazz, "tmDefaultChar", "B"); + TEXTMETRICAFc.tmBreakChar = (*env)->GetFieldID(env, TEXTMETRICAFc.clazz, "tmBreakChar", "B"); + TEXTMETRICAFc.cached = 1; +} + +TEXTMETRICA *getTEXTMETRICAFields(JNIEnv *env, jobject lpObject, TEXTMETRICA *lpStruct) +{ + if (!TEXTMETRICAFc.cached) cacheTEXTMETRICAFields(env, lpObject); + lpStruct->tmHeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmHeight); + lpStruct->tmAscent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAscent); + lpStruct->tmDescent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDescent); + lpStruct->tmInternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading); + lpStruct->tmExternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading); + lpStruct->tmAveCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth); + lpStruct->tmMaxCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth); + lpStruct->tmWeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmWeight); + lpStruct->tmOverhang = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmOverhang); + lpStruct->tmDigitizedAspectX = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX); + lpStruct->tmDigitizedAspectY = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY); + lpStruct->tmItalic = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmItalic); + lpStruct->tmUnderlined = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined); + lpStruct->tmStruckOut = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut); + lpStruct->tmPitchAndFamily = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily); + lpStruct->tmCharSet = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmCharSet); + lpStruct->tmFirstChar = (*env)->GetByteField(env, lpObject, TEXTMETRICAFc.tmFirstChar); + lpStruct->tmLastChar = (*env)->GetByteField(env, lpObject, TEXTMETRICAFc.tmLastChar); + lpStruct->tmDefaultChar = (*env)->GetByteField(env, lpObject, TEXTMETRICAFc.tmDefaultChar); + lpStruct->tmBreakChar = (*env)->GetByteField(env, lpObject, TEXTMETRICAFc.tmBreakChar); + return lpStruct; +} + +void setTEXTMETRICAFields(JNIEnv *env, jobject lpObject, TEXTMETRICA *lpStruct) +{ + if (!TEXTMETRICAFc.cached) cacheTEXTMETRICAFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmHeight, (jint)lpStruct->tmHeight); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAscent, (jint)lpStruct->tmAscent); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDescent, (jint)lpStruct->tmDescent); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading, (jint)lpStruct->tmInternalLeading); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading, (jint)lpStruct->tmExternalLeading); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth, (jint)lpStruct->tmAveCharWidth); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth, (jint)lpStruct->tmMaxCharWidth); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmWeight, (jint)lpStruct->tmWeight); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmOverhang, (jint)lpStruct->tmOverhang); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX, (jint)lpStruct->tmDigitizedAspectX); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY, (jint)lpStruct->tmDigitizedAspectY); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmItalic, (jbyte)lpStruct->tmItalic); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined, (jbyte)lpStruct->tmUnderlined); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut, (jbyte)lpStruct->tmStruckOut); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily, (jbyte)lpStruct->tmPitchAndFamily); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmCharSet, (jbyte)lpStruct->tmCharSet); + (*env)->SetByteField(env, lpObject, TEXTMETRICAFc.tmFirstChar, (jbyte)lpStruct->tmFirstChar); + (*env)->SetByteField(env, lpObject, TEXTMETRICAFc.tmLastChar, (jbyte)lpStruct->tmLastChar); + (*env)->SetByteField(env, lpObject, TEXTMETRICAFc.tmDefaultChar, (jbyte)lpStruct->tmDefaultChar); + (*env)->SetByteField(env, lpObject, TEXTMETRICAFc.tmBreakChar, (jbyte)lpStruct->tmBreakChar); +} +#endif + +#ifndef NO_TEXTMETRICW +typedef struct TEXTMETRICW_FID_CACHE { + int cached; + jclass clazz; + jfieldID tmFirstChar, tmLastChar, tmDefaultChar, tmBreakChar; +} TEXTMETRICW_FID_CACHE; + +TEXTMETRICW_FID_CACHE TEXTMETRICWFc; + +void cacheTEXTMETRICWFields(JNIEnv *env, jobject lpObject) +{ + if (TEXTMETRICWFc.cached) return; + cacheTEXTMETRICFields(env, lpObject); + TEXTMETRICWFc.clazz = (*env)->GetObjectClass(env, lpObject); + TEXTMETRICWFc.tmFirstChar = (*env)->GetFieldID(env, TEXTMETRICWFc.clazz, "tmFirstChar", "C"); + TEXTMETRICWFc.tmLastChar = (*env)->GetFieldID(env, TEXTMETRICWFc.clazz, "tmLastChar", "C"); + TEXTMETRICWFc.tmDefaultChar = (*env)->GetFieldID(env, TEXTMETRICWFc.clazz, "tmDefaultChar", "C"); + TEXTMETRICWFc.tmBreakChar = (*env)->GetFieldID(env, TEXTMETRICWFc.clazz, "tmBreakChar", "C"); + TEXTMETRICWFc.cached = 1; +} + +TEXTMETRICW *getTEXTMETRICWFields(JNIEnv *env, jobject lpObject, TEXTMETRICW *lpStruct) +{ + if (!TEXTMETRICWFc.cached) cacheTEXTMETRICWFields(env, lpObject); + lpStruct->tmHeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmHeight); + lpStruct->tmAscent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAscent); + lpStruct->tmDescent = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDescent); + lpStruct->tmInternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading); + lpStruct->tmExternalLeading = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading); + lpStruct->tmAveCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth); + lpStruct->tmMaxCharWidth = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth); + lpStruct->tmWeight = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmWeight); + lpStruct->tmOverhang = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmOverhang); + lpStruct->tmDigitizedAspectX = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX); + lpStruct->tmDigitizedAspectY = (*env)->GetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY); + lpStruct->tmItalic = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmItalic); + lpStruct->tmUnderlined = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined); + lpStruct->tmStruckOut = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut); + lpStruct->tmPitchAndFamily = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily); + lpStruct->tmCharSet = (*env)->GetByteField(env, lpObject, TEXTMETRICFc.tmCharSet); + lpStruct->tmFirstChar = (*env)->GetCharField(env, lpObject, TEXTMETRICWFc.tmFirstChar); + lpStruct->tmLastChar = (*env)->GetCharField(env, lpObject, TEXTMETRICWFc.tmLastChar); + lpStruct->tmDefaultChar = (*env)->GetCharField(env, lpObject, TEXTMETRICWFc.tmDefaultChar); + lpStruct->tmBreakChar = (*env)->GetCharField(env, lpObject, TEXTMETRICWFc.tmBreakChar); + return lpStruct; +} + +void setTEXTMETRICWFields(JNIEnv *env, jobject lpObject, TEXTMETRICW *lpStruct) +{ + if (!TEXTMETRICWFc.cached) cacheTEXTMETRICWFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmHeight, (jint)lpStruct->tmHeight); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAscent, (jint)lpStruct->tmAscent); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDescent, (jint)lpStruct->tmDescent); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmInternalLeading, (jint)lpStruct->tmInternalLeading); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmExternalLeading, (jint)lpStruct->tmExternalLeading); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmAveCharWidth, (jint)lpStruct->tmAveCharWidth); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmMaxCharWidth, (jint)lpStruct->tmMaxCharWidth); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmWeight, (jint)lpStruct->tmWeight); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmOverhang, (jint)lpStruct->tmOverhang); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectX, (jint)lpStruct->tmDigitizedAspectX); + (*env)->SetIntField(env, lpObject, TEXTMETRICFc.tmDigitizedAspectY, (jint)lpStruct->tmDigitizedAspectY); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmItalic, (jbyte)lpStruct->tmItalic); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmUnderlined, (jbyte)lpStruct->tmUnderlined); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmStruckOut, (jbyte)lpStruct->tmStruckOut); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmPitchAndFamily, (jbyte)lpStruct->tmPitchAndFamily); + (*env)->SetByteField(env, lpObject, TEXTMETRICFc.tmCharSet, (jbyte)lpStruct->tmCharSet); + (*env)->SetCharField(env, lpObject, TEXTMETRICWFc.tmFirstChar, (jchar)lpStruct->tmFirstChar); + (*env)->SetCharField(env, lpObject, TEXTMETRICWFc.tmLastChar, (jchar)lpStruct->tmLastChar); + (*env)->SetCharField(env, lpObject, TEXTMETRICWFc.tmDefaultChar, (jchar)lpStruct->tmDefaultChar); + (*env)->SetCharField(env, lpObject, TEXTMETRICWFc.tmBreakChar, (jchar)lpStruct->tmBreakChar); +} +#endif + +#ifndef NO_TOOLINFO +typedef struct TOOLINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, uFlags, hwnd, uId, left, top, right, bottom, hinst, lpszText, lParam; +} TOOLINFO_FID_CACHE; + +TOOLINFO_FID_CACHE TOOLINFOFc; + +void cacheTOOLINFOFields(JNIEnv *env, jobject lpObject) +{ + if (TOOLINFOFc.cached) return; + TOOLINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + TOOLINFOFc.cbSize = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "cbSize", "I"); + TOOLINFOFc.uFlags = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "uFlags", "I"); + TOOLINFOFc.hwnd = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "hwnd", "I"); + TOOLINFOFc.uId = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "uId", "I"); + TOOLINFOFc.left = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "left", "I"); + TOOLINFOFc.top = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "top", "I"); + TOOLINFOFc.right = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "right", "I"); + TOOLINFOFc.bottom = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "bottom", "I"); + TOOLINFOFc.hinst = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "hinst", "I"); + TOOLINFOFc.lpszText = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "lpszText", "I"); + TOOLINFOFc.lParam = (*env)->GetFieldID(env, TOOLINFOFc.clazz, "lParam", "I"); + TOOLINFOFc.cached = 1; +} + +TOOLINFO *getTOOLINFOFields(JNIEnv *env, jobject lpObject, TOOLINFO *lpStruct) +{ + if (!TOOLINFOFc.cached) cacheTOOLINFOFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, TOOLINFOFc.cbSize); + lpStruct->uFlags = (*env)->GetIntField(env, lpObject, TOOLINFOFc.uFlags); + lpStruct->hwnd = (HWND)(*env)->GetIntField(env, lpObject, TOOLINFOFc.hwnd); + lpStruct->uId = (*env)->GetIntField(env, lpObject, TOOLINFOFc.uId); + lpStruct->rect.left = (*env)->GetIntField(env, lpObject, TOOLINFOFc.left); + lpStruct->rect.top = (*env)->GetIntField(env, lpObject, TOOLINFOFc.top); + lpStruct->rect.right = (*env)->GetIntField(env, lpObject, TOOLINFOFc.right); + lpStruct->rect.bottom = (*env)->GetIntField(env, lpObject, TOOLINFOFc.bottom); + lpStruct->hinst = (HINSTANCE)(*env)->GetIntField(env, lpObject, TOOLINFOFc.hinst); + lpStruct->lpszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TOOLINFOFc.lpszText); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, TOOLINFOFc.lParam); + return lpStruct; +} + +void setTOOLINFOFields(JNIEnv *env, jobject lpObject, TOOLINFO *lpStruct) +{ + if (!TOOLINFOFc.cached) cacheTOOLINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.uFlags, (jint)lpStruct->uFlags); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.hwnd, (jint)lpStruct->hwnd); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.uId, (jint)lpStruct->uId); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.left, (jint)lpStruct->rect.left); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.top, (jint)lpStruct->rect.top); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.right, (jint)lpStruct->rect.right); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.bottom, (jint)lpStruct->rect.bottom); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.hinst, (jint)lpStruct->hinst); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.lpszText, (jint)lpStruct->lpszText); + (*env)->SetIntField(env, lpObject, TOOLINFOFc.lParam, (jint)lpStruct->lParam); +} +#endif + +#ifndef NO_TRACKMOUSEEVENT +typedef struct TRACKMOUSEEVENT_FID_CACHE { + int cached; + jclass clazz; + jfieldID cbSize, dwFlags, hwndTrack, dwHoverTime; +} TRACKMOUSEEVENT_FID_CACHE; + +TRACKMOUSEEVENT_FID_CACHE TRACKMOUSEEVENTFc; + +void cacheTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject) +{ + if (TRACKMOUSEEVENTFc.cached) return; + TRACKMOUSEEVENTFc.clazz = (*env)->GetObjectClass(env, lpObject); + TRACKMOUSEEVENTFc.cbSize = (*env)->GetFieldID(env, TRACKMOUSEEVENTFc.clazz, "cbSize", "I"); + TRACKMOUSEEVENTFc.dwFlags = (*env)->GetFieldID(env, TRACKMOUSEEVENTFc.clazz, "dwFlags", "I"); + TRACKMOUSEEVENTFc.hwndTrack = (*env)->GetFieldID(env, TRACKMOUSEEVENTFc.clazz, "hwndTrack", "I"); + TRACKMOUSEEVENTFc.dwHoverTime = (*env)->GetFieldID(env, TRACKMOUSEEVENTFc.clazz, "dwHoverTime", "I"); + TRACKMOUSEEVENTFc.cached = 1; +} + +TRACKMOUSEEVENT *getTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject, TRACKMOUSEEVENT *lpStruct) +{ + if (!TRACKMOUSEEVENTFc.cached) cacheTRACKMOUSEEVENTFields(env, lpObject); + lpStruct->cbSize = (*env)->GetIntField(env, lpObject, TRACKMOUSEEVENTFc.cbSize); + lpStruct->dwFlags = (*env)->GetIntField(env, lpObject, TRACKMOUSEEVENTFc.dwFlags); + lpStruct->hwndTrack = (HWND)(*env)->GetIntField(env, lpObject, TRACKMOUSEEVENTFc.hwndTrack); + lpStruct->dwHoverTime = (*env)->GetIntField(env, lpObject, TRACKMOUSEEVENTFc.dwHoverTime); + return lpStruct; +} + +void setTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject, TRACKMOUSEEVENT *lpStruct) +{ + if (!TRACKMOUSEEVENTFc.cached) cacheTRACKMOUSEEVENTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TRACKMOUSEEVENTFc.cbSize, (jint)lpStruct->cbSize); + (*env)->SetIntField(env, lpObject, TRACKMOUSEEVENTFc.dwFlags, (jint)lpStruct->dwFlags); + (*env)->SetIntField(env, lpObject, TRACKMOUSEEVENTFc.hwndTrack, (jint)lpStruct->hwndTrack); + (*env)->SetIntField(env, lpObject, TRACKMOUSEEVENTFc.dwHoverTime, (jint)lpStruct->dwHoverTime); +} +#endif + +#ifndef NO_TRIVERTEX +typedef struct TRIVERTEX_FID_CACHE { + int cached; + jclass clazz; + jfieldID x, y, Red, Green, Blue, Alpha; +} TRIVERTEX_FID_CACHE; + +TRIVERTEX_FID_CACHE TRIVERTEXFc; + +void cacheTRIVERTEXFields(JNIEnv *env, jobject lpObject) +{ + if (TRIVERTEXFc.cached) return; + TRIVERTEXFc.clazz = (*env)->GetObjectClass(env, lpObject); + TRIVERTEXFc.x = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "x", "I"); + TRIVERTEXFc.y = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "y", "I"); + TRIVERTEXFc.Red = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "Red", "S"); + TRIVERTEXFc.Green = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "Green", "S"); + TRIVERTEXFc.Blue = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "Blue", "S"); + TRIVERTEXFc.Alpha = (*env)->GetFieldID(env, TRIVERTEXFc.clazz, "Alpha", "S"); + TRIVERTEXFc.cached = 1; +} + +TRIVERTEX *getTRIVERTEXFields(JNIEnv *env, jobject lpObject, TRIVERTEX *lpStruct) +{ + if (!TRIVERTEXFc.cached) cacheTRIVERTEXFields(env, lpObject); + lpStruct->x = (*env)->GetIntField(env, lpObject, TRIVERTEXFc.x); + lpStruct->y = (*env)->GetIntField(env, lpObject, TRIVERTEXFc.y); + lpStruct->Red = (*env)->GetShortField(env, lpObject, TRIVERTEXFc.Red); + lpStruct->Green = (*env)->GetShortField(env, lpObject, TRIVERTEXFc.Green); + lpStruct->Blue = (*env)->GetShortField(env, lpObject, TRIVERTEXFc.Blue); + lpStruct->Alpha = (*env)->GetShortField(env, lpObject, TRIVERTEXFc.Alpha); + return lpStruct; +} + +void setTRIVERTEXFields(JNIEnv *env, jobject lpObject, TRIVERTEX *lpStruct) +{ + if (!TRIVERTEXFc.cached) cacheTRIVERTEXFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TRIVERTEXFc.x, (jint)lpStruct->x); + (*env)->SetIntField(env, lpObject, TRIVERTEXFc.y, (jint)lpStruct->y); + (*env)->SetShortField(env, lpObject, TRIVERTEXFc.Red, (jshort)lpStruct->Red); + (*env)->SetShortField(env, lpObject, TRIVERTEXFc.Green, (jshort)lpStruct->Green); + (*env)->SetShortField(env, lpObject, TRIVERTEXFc.Blue, (jshort)lpStruct->Blue); + (*env)->SetShortField(env, lpObject, TRIVERTEXFc.Alpha, (jshort)lpStruct->Alpha); +} +#endif + +#ifndef NO_TVHITTESTINFO +typedef struct TVHITTESTINFO_FID_CACHE { + int cached; + jclass clazz; + jfieldID x, y, flags, hItem; +} TVHITTESTINFO_FID_CACHE; + +TVHITTESTINFO_FID_CACHE TVHITTESTINFOFc; + +void cacheTVHITTESTINFOFields(JNIEnv *env, jobject lpObject) +{ + if (TVHITTESTINFOFc.cached) return; + TVHITTESTINFOFc.clazz = (*env)->GetObjectClass(env, lpObject); + TVHITTESTINFOFc.x = (*env)->GetFieldID(env, TVHITTESTINFOFc.clazz, "x", "I"); + TVHITTESTINFOFc.y = (*env)->GetFieldID(env, TVHITTESTINFOFc.clazz, "y", "I"); + TVHITTESTINFOFc.flags = (*env)->GetFieldID(env, TVHITTESTINFOFc.clazz, "flags", "I"); + TVHITTESTINFOFc.hItem = (*env)->GetFieldID(env, TVHITTESTINFOFc.clazz, "hItem", "I"); + TVHITTESTINFOFc.cached = 1; +} + +TVHITTESTINFO *getTVHITTESTINFOFields(JNIEnv *env, jobject lpObject, TVHITTESTINFO *lpStruct) +{ + if (!TVHITTESTINFOFc.cached) cacheTVHITTESTINFOFields(env, lpObject); + lpStruct->pt.x = (*env)->GetIntField(env, lpObject, TVHITTESTINFOFc.x); + lpStruct->pt.y = (*env)->GetIntField(env, lpObject, TVHITTESTINFOFc.y); + lpStruct->flags = (*env)->GetIntField(env, lpObject, TVHITTESTINFOFc.flags); + lpStruct->hItem = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVHITTESTINFOFc.hItem); + return lpStruct; +} + +void setTVHITTESTINFOFields(JNIEnv *env, jobject lpObject, TVHITTESTINFO *lpStruct) +{ + if (!TVHITTESTINFOFc.cached) cacheTVHITTESTINFOFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TVHITTESTINFOFc.x, (jint)lpStruct->pt.x); + (*env)->SetIntField(env, lpObject, TVHITTESTINFOFc.y, (jint)lpStruct->pt.y); + (*env)->SetIntField(env, lpObject, TVHITTESTINFOFc.flags, (jint)lpStruct->flags); + (*env)->SetIntField(env, lpObject, TVHITTESTINFOFc.hItem, (jint)lpStruct->hItem); +} +#endif + +#ifndef NO_TVINSERTSTRUCT +typedef struct TVINSERTSTRUCT_FID_CACHE { + int cached; + jclass clazz; + jfieldID hParent, hInsertAfter, mask, hItem, state, stateMask, pszText, cchTextMax, iImage, iSelectedImage, cChildren, lParam; +} TVINSERTSTRUCT_FID_CACHE; + +TVINSERTSTRUCT_FID_CACHE TVINSERTSTRUCTFc; + +void cacheTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject) +{ + if (TVINSERTSTRUCTFc.cached) return; + TVINSERTSTRUCTFc.clazz = (*env)->GetObjectClass(env, lpObject); + TVINSERTSTRUCTFc.hParent = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "hParent", "I"); + TVINSERTSTRUCTFc.hInsertAfter = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "hInsertAfter", "I"); + TVINSERTSTRUCTFc.mask = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "mask", "I"); + TVINSERTSTRUCTFc.hItem = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "hItem", "I"); + TVINSERTSTRUCTFc.state = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "state", "I"); + TVINSERTSTRUCTFc.stateMask = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "stateMask", "I"); + TVINSERTSTRUCTFc.pszText = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "pszText", "I"); + TVINSERTSTRUCTFc.cchTextMax = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "cchTextMax", "I"); + TVINSERTSTRUCTFc.iImage = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "iImage", "I"); + TVINSERTSTRUCTFc.iSelectedImage = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "iSelectedImage", "I"); + TVINSERTSTRUCTFc.cChildren = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "cChildren", "I"); + TVINSERTSTRUCTFc.lParam = (*env)->GetFieldID(env, TVINSERTSTRUCTFc.clazz, "lParam", "I"); + TVINSERTSTRUCTFc.cached = 1; +} + +TVINSERTSTRUCT *getTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject, TVINSERTSTRUCT *lpStruct) +{ + if (!TVINSERTSTRUCTFc.cached) cacheTVINSERTSTRUCTFields(env, lpObject); + lpStruct->hParent = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.hParent); + lpStruct->hInsertAfter = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.hInsertAfter); + lpStruct->item.mask = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.mask); + lpStruct->item.hItem = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.hItem); + lpStruct->item.state = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.state); + lpStruct->item.stateMask = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.stateMask); + lpStruct->item.pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.pszText); + lpStruct->item.cchTextMax = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.cchTextMax); + lpStruct->item.iImage = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.iImage); + lpStruct->item.iSelectedImage = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.iSelectedImage); + lpStruct->item.cChildren = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.cChildren); + lpStruct->item.lParam = (*env)->GetIntField(env, lpObject, TVINSERTSTRUCTFc.lParam); + return lpStruct; +} + +void setTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject, TVINSERTSTRUCT *lpStruct) +{ + if (!TVINSERTSTRUCTFc.cached) cacheTVINSERTSTRUCTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.hParent, (jint)lpStruct->hParent); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.hInsertAfter, (jint)lpStruct->hInsertAfter); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.mask, (jint)lpStruct->item.mask); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.hItem, (jint)lpStruct->item.hItem); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.state, (jint)lpStruct->item.state); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.stateMask, (jint)lpStruct->item.stateMask); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.pszText, (jint)lpStruct->item.pszText); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.cchTextMax, (jint)lpStruct->item.cchTextMax); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.iImage, (jint)lpStruct->item.iImage); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.iSelectedImage, (jint)lpStruct->item.iSelectedImage); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.cChildren, (jint)lpStruct->item.cChildren); + (*env)->SetIntField(env, lpObject, TVINSERTSTRUCTFc.lParam, (jint)lpStruct->item.lParam); +} +#endif + +#ifndef NO_TVITEM +typedef struct TVITEM_FID_CACHE { + int cached; + jclass clazz; + jfieldID mask, hItem, state, stateMask, pszText, cchTextMax, iImage, iSelectedImage, cChildren, lParam; +} TVITEM_FID_CACHE; + +TVITEM_FID_CACHE TVITEMFc; + +void cacheTVITEMFields(JNIEnv *env, jobject lpObject) +{ + if (TVITEMFc.cached) return; + TVITEMFc.clazz = (*env)->GetObjectClass(env, lpObject); + TVITEMFc.mask = (*env)->GetFieldID(env, TVITEMFc.clazz, "mask", "I"); + TVITEMFc.hItem = (*env)->GetFieldID(env, TVITEMFc.clazz, "hItem", "I"); + TVITEMFc.state = (*env)->GetFieldID(env, TVITEMFc.clazz, "state", "I"); + TVITEMFc.stateMask = (*env)->GetFieldID(env, TVITEMFc.clazz, "stateMask", "I"); + TVITEMFc.pszText = (*env)->GetFieldID(env, TVITEMFc.clazz, "pszText", "I"); + TVITEMFc.cchTextMax = (*env)->GetFieldID(env, TVITEMFc.clazz, "cchTextMax", "I"); + TVITEMFc.iImage = (*env)->GetFieldID(env, TVITEMFc.clazz, "iImage", "I"); + TVITEMFc.iSelectedImage = (*env)->GetFieldID(env, TVITEMFc.clazz, "iSelectedImage", "I"); + TVITEMFc.cChildren = (*env)->GetFieldID(env, TVITEMFc.clazz, "cChildren", "I"); + TVITEMFc.lParam = (*env)->GetFieldID(env, TVITEMFc.clazz, "lParam", "I"); + TVITEMFc.cached = 1; +} + +TVITEM *getTVITEMFields(JNIEnv *env, jobject lpObject, TVITEM *lpStruct) +{ + if (!TVITEMFc.cached) cacheTVITEMFields(env, lpObject); + lpStruct->mask = (*env)->GetIntField(env, lpObject, TVITEMFc.mask); + lpStruct->hItem = (HTREEITEM)(*env)->GetIntField(env, lpObject, TVITEMFc.hItem); + lpStruct->state = (*env)->GetIntField(env, lpObject, TVITEMFc.state); + lpStruct->stateMask = (*env)->GetIntField(env, lpObject, TVITEMFc.stateMask); + lpStruct->pszText = (LPTSTR)(*env)->GetIntField(env, lpObject, TVITEMFc.pszText); + lpStruct->cchTextMax = (*env)->GetIntField(env, lpObject, TVITEMFc.cchTextMax); + lpStruct->iImage = (*env)->GetIntField(env, lpObject, TVITEMFc.iImage); + lpStruct->iSelectedImage = (*env)->GetIntField(env, lpObject, TVITEMFc.iSelectedImage); + lpStruct->cChildren = (*env)->GetIntField(env, lpObject, TVITEMFc.cChildren); + lpStruct->lParam = (*env)->GetIntField(env, lpObject, TVITEMFc.lParam); + return lpStruct; +} + +void setTVITEMFields(JNIEnv *env, jobject lpObject, TVITEM *lpStruct) +{ + if (!TVITEMFc.cached) cacheTVITEMFields(env, lpObject); + (*env)->SetIntField(env, lpObject, TVITEMFc.mask, (jint)lpStruct->mask); + (*env)->SetIntField(env, lpObject, TVITEMFc.hItem, (jint)lpStruct->hItem); + (*env)->SetIntField(env, lpObject, TVITEMFc.state, (jint)lpStruct->state); + (*env)->SetIntField(env, lpObject, TVITEMFc.stateMask, (jint)lpStruct->stateMask); + (*env)->SetIntField(env, lpObject, TVITEMFc.pszText, (jint)lpStruct->pszText); + (*env)->SetIntField(env, lpObject, TVITEMFc.cchTextMax, (jint)lpStruct->cchTextMax); + (*env)->SetIntField(env, lpObject, TVITEMFc.iImage, (jint)lpStruct->iImage); + (*env)->SetIntField(env, lpObject, TVITEMFc.iSelectedImage, (jint)lpStruct->iSelectedImage); + (*env)->SetIntField(env, lpObject, TVITEMFc.cChildren, (jint)lpStruct->cChildren); + (*env)->SetIntField(env, lpObject, TVITEMFc.lParam, (jint)lpStruct->lParam); +} +#endif + +#ifndef NO_WINDOWPLACEMENT +typedef struct WINDOWPLACEMENT_FID_CACHE { + int cached; + jclass clazz; + jfieldID length, flags, showCmd, ptMinPosition_x, ptMinPosition_y, ptMaxPosition_x, ptMaxPosition_y, left, top, right, bottom; +} WINDOWPLACEMENT_FID_CACHE; + +WINDOWPLACEMENT_FID_CACHE WINDOWPLACEMENTFc; + +void cacheWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject) +{ + if (WINDOWPLACEMENTFc.cached) return; + WINDOWPLACEMENTFc.clazz = (*env)->GetObjectClass(env, lpObject); + WINDOWPLACEMENTFc.length = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "length", "I"); + WINDOWPLACEMENTFc.flags = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "flags", "I"); + WINDOWPLACEMENTFc.showCmd = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "showCmd", "I"); + WINDOWPLACEMENTFc.ptMinPosition_x = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "ptMinPosition_x", "I"); + WINDOWPLACEMENTFc.ptMinPosition_y = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "ptMinPosition_y", "I"); + WINDOWPLACEMENTFc.ptMaxPosition_x = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "ptMaxPosition_x", "I"); + WINDOWPLACEMENTFc.ptMaxPosition_y = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "ptMaxPosition_y", "I"); + WINDOWPLACEMENTFc.left = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "left", "I"); + WINDOWPLACEMENTFc.top = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "top", "I"); + WINDOWPLACEMENTFc.right = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "right", "I"); + WINDOWPLACEMENTFc.bottom = (*env)->GetFieldID(env, WINDOWPLACEMENTFc.clazz, "bottom", "I"); + WINDOWPLACEMENTFc.cached = 1; +} + +WINDOWPLACEMENT *getWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject, WINDOWPLACEMENT *lpStruct) +{ + if (!WINDOWPLACEMENTFc.cached) cacheWINDOWPLACEMENTFields(env, lpObject); + lpStruct->length = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.length); + lpStruct->flags = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.flags); + lpStruct->showCmd = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.showCmd); + lpStruct->ptMinPosition.x = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMinPosition_x); + lpStruct->ptMinPosition.y = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMinPosition_y); + lpStruct->ptMaxPosition.x = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMaxPosition_x); + lpStruct->ptMaxPosition.y = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMaxPosition_y); + lpStruct->rcNormalPosition.left = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.left); + lpStruct->rcNormalPosition.top = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.top); + lpStruct->rcNormalPosition.right = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.right); + lpStruct->rcNormalPosition.bottom = (*env)->GetIntField(env, lpObject, WINDOWPLACEMENTFc.bottom); + return lpStruct; +} + +void setWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject, WINDOWPLACEMENT *lpStruct) +{ + if (!WINDOWPLACEMENTFc.cached) cacheWINDOWPLACEMENTFields(env, lpObject); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.length, (jint)lpStruct->length); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.flags, (jint)lpStruct->flags); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.showCmd, (jint)lpStruct->showCmd); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMinPosition_x, (jint)lpStruct->ptMinPosition.x); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMinPosition_y, (jint)lpStruct->ptMinPosition.y); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMaxPosition_x, (jint)lpStruct->ptMaxPosition.x); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.ptMaxPosition_y, (jint)lpStruct->ptMaxPosition.y); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.left, (jint)lpStruct->rcNormalPosition.left); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.top, (jint)lpStruct->rcNormalPosition.top); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.right, (jint)lpStruct->rcNormalPosition.right); + (*env)->SetIntField(env, lpObject, WINDOWPLACEMENTFc.bottom, (jint)lpStruct->rcNormalPosition.bottom); +} +#endif + +#ifndef NO_WINDOWPOS +typedef struct WINDOWPOS_FID_CACHE { + int cached; + jclass clazz; + jfieldID hwnd, hwndInsertAfter, x, y, cx, cy, flags; +} WINDOWPOS_FID_CACHE; + +WINDOWPOS_FID_CACHE WINDOWPOSFc; + +void cacheWINDOWPOSFields(JNIEnv *env, jobject lpObject) +{ + if (WINDOWPOSFc.cached) return; + WINDOWPOSFc.clazz = (*env)->GetObjectClass(env, lpObject); + WINDOWPOSFc.hwnd = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "hwnd", "I"); + WINDOWPOSFc.hwndInsertAfter = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "hwndInsertAfter", "I"); + WINDOWPOSFc.x = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "x", "I"); + WINDOWPOSFc.y = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "y", "I"); + WINDOWPOSFc.cx = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "cx", "I"); + WINDOWPOSFc.cy = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "cy", "I"); + WINDOWPOSFc.flags = (*env)->GetFieldID(env, WINDOWPOSFc.clazz, "flags", "I"); + WINDOWPOSFc.cached = 1; +} + +WINDOWPOS *getWINDOWPOSFields(JNIEnv *env, jobject lpObject, WINDOWPOS *lpStruct) +{ + if (!WINDOWPOSFc.cached) cacheWINDOWPOSFields(env, lpObject); + lpStruct->hwnd = (HWND)(*env)->GetIntField(env, lpObject, WINDOWPOSFc.hwnd); + lpStruct->hwndInsertAfter = (HWND)(*env)->GetIntField(env, lpObject, WINDOWPOSFc.hwndInsertAfter); + lpStruct->x = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.x); + lpStruct->y = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.y); + lpStruct->cx = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.cx); + lpStruct->cy = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.cy); + lpStruct->flags = (*env)->GetIntField(env, lpObject, WINDOWPOSFc.flags); + return lpStruct; +} + +void setWINDOWPOSFields(JNIEnv *env, jobject lpObject, WINDOWPOS *lpStruct) +{ + if (!WINDOWPOSFc.cached) cacheWINDOWPOSFields(env, lpObject); + (*env)->SetIntField(env, lpObject, WINDOWPOSFc.hwnd, (jint)lpStruct->hwnd); + (*env)->SetIntField(env, lpObject, WINDOWPOSFc.hwndInsertAfter, (jint)lpStruct->hwndInsertAfter); + (*env)->SetIntField(env, lpObject, WINDOWPOSFc.x, (jint)lpStruct->x); + (*env)->SetIntField(env, lpObject, WINDOWPOSFc.y, (jint)lpStruct->y); + (*env)->SetIntField(env, lpObject, WINDOWPOSFc.cx, (jint)lpStruct->cx); + (*env)->SetIntField(env, lpObject, WINDOWPOSFc.cy, (jint)lpStruct->cy); + (*env)->SetIntField(env, lpObject, WINDOWPOSFc.flags, (jint)lpStruct->flags); +} +#endif + +#ifndef NO_WNDCLASS +typedef struct WNDCLASS_FID_CACHE { + int cached; + jclass clazz; + jfieldID style, lpfnWndProc, cbClsExtra, cbWndExtra, hInstance, hIcon, hCursor, hbrBackground, lpszMenuName, lpszClassName; +} WNDCLASS_FID_CACHE; + +WNDCLASS_FID_CACHE WNDCLASSFc; + +void cacheWNDCLASSFields(JNIEnv *env, jobject lpObject) +{ + if (WNDCLASSFc.cached) return; + WNDCLASSFc.clazz = (*env)->GetObjectClass(env, lpObject); + WNDCLASSFc.style = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "style", "I"); + WNDCLASSFc.lpfnWndProc = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "lpfnWndProc", "I"); + WNDCLASSFc.cbClsExtra = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "cbClsExtra", "I"); + WNDCLASSFc.cbWndExtra = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "cbWndExtra", "I"); + WNDCLASSFc.hInstance = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "hInstance", "I"); + WNDCLASSFc.hIcon = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "hIcon", "I"); + WNDCLASSFc.hCursor = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "hCursor", "I"); + WNDCLASSFc.hbrBackground = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "hbrBackground", "I"); + WNDCLASSFc.lpszMenuName = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "lpszMenuName", "I"); + WNDCLASSFc.lpszClassName = (*env)->GetFieldID(env, WNDCLASSFc.clazz, "lpszClassName", "I"); + WNDCLASSFc.cached = 1; +} + +WNDCLASS *getWNDCLASSFields(JNIEnv *env, jobject lpObject, WNDCLASS *lpStruct) +{ + if (!WNDCLASSFc.cached) cacheWNDCLASSFields(env, lpObject); + lpStruct->style = (*env)->GetIntField(env, lpObject, WNDCLASSFc.style); + lpStruct->lpfnWndProc = (WNDPROC)(*env)->GetIntField(env, lpObject, WNDCLASSFc.lpfnWndProc); + lpStruct->cbClsExtra = (*env)->GetIntField(env, lpObject, WNDCLASSFc.cbClsExtra); + lpStruct->cbWndExtra = (*env)->GetIntField(env, lpObject, WNDCLASSFc.cbWndExtra); + lpStruct->hInstance = (HINSTANCE)(*env)->GetIntField(env, lpObject, WNDCLASSFc.hInstance); + lpStruct->hIcon = (HICON)(*env)->GetIntField(env, lpObject, WNDCLASSFc.hIcon); + lpStruct->hCursor = (HCURSOR)(*env)->GetIntField(env, lpObject, WNDCLASSFc.hCursor); + lpStruct->hbrBackground = (HBRUSH)(*env)->GetIntField(env, lpObject, WNDCLASSFc.hbrBackground); + lpStruct->lpszMenuName = (LPCTSTR)(*env)->GetIntField(env, lpObject, WNDCLASSFc.lpszMenuName); + lpStruct->lpszClassName = (LPCTSTR)(*env)->GetIntField(env, lpObject, WNDCLASSFc.lpszClassName); + return lpStruct; +} + +void setWNDCLASSFields(JNIEnv *env, jobject lpObject, WNDCLASS *lpStruct) +{ + if (!WNDCLASSFc.cached) cacheWNDCLASSFields(env, lpObject); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.style, (jint)lpStruct->style); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.lpfnWndProc, (jint)lpStruct->lpfnWndProc); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.cbClsExtra, (jint)lpStruct->cbClsExtra); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.cbWndExtra, (jint)lpStruct->cbWndExtra); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.hInstance, (jint)lpStruct->hInstance); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.hIcon, (jint)lpStruct->hIcon); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.hCursor, (jint)lpStruct->hCursor); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.hbrBackground, (jint)lpStruct->hbrBackground); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.lpszMenuName, (jint)lpStruct->lpszMenuName); + (*env)->SetIntField(env, lpObject, WNDCLASSFc.lpszClassName, (jint)lpStruct->lpszClassName); +} +#endif + diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.h b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.h index 30d087ff6f..aabd864c4a 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.h +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.h @@ -1,637 +1,637 @@ -/*******************************************************************************
-* Copyright (c) 2000, 2003 IBM Corporation and others.
-* All rights reserved. This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-*
-* Contributors:
-* IBM Corporation - initial API and implementation
-*******************************************************************************/
-
-#include "os.h"
-
-#ifndef NO_ACCEL
-ACCEL *getACCELFields(JNIEnv *env, jobject lpObject, ACCEL *lpStruct);
-void setACCELFields(JNIEnv *env, jobject lpObject, ACCEL *lpStruct);
-#else
-#define getACCELFields(a,b,c) NULL
-#define setACCELFields(a,b,c)
-#endif
-
-#ifndef NO_BITMAP
-BITMAP *getBITMAPFields(JNIEnv *env, jobject lpObject, BITMAP *lpStruct);
-void setBITMAPFields(JNIEnv *env, jobject lpObject, BITMAP *lpStruct);
-#else
-#define getBITMAPFields(a,b,c) NULL
-#define setBITMAPFields(a,b,c)
-#endif
-
-#ifndef NO_BITMAPINFOHEADER
-BITMAPINFOHEADER *getBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject, BITMAPINFOHEADER *lpStruct);
-void setBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject, BITMAPINFOHEADER *lpStruct);
-#else
-#define getBITMAPINFOHEADERFields(a,b,c) NULL
-#define setBITMAPINFOHEADERFields(a,b,c)
-#endif
-
-#ifndef NO_BROWSEINFO
-BROWSEINFO *getBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct);
-void setBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct);
-#else
-#define getBROWSEINFOFields(a,b,c) NULL
-#define setBROWSEINFOFields(a,b,c)
-#endif
-
-#ifndef NO_CHOOSECOLOR
-CHOOSECOLOR *getCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct);
-void setCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct);
-#else
-#define getCHOOSECOLORFields(a,b,c) NULL
-#define setCHOOSECOLORFields(a,b,c)
-#endif
-
-#ifndef NO_CHOOSEFONT
-CHOOSEFONT *getCHOOSEFONTFields(JNIEnv *env, jobject lpObject, CHOOSEFONT *lpStruct);
-void setCHOOSEFONTFields(JNIEnv *env, jobject lpObject, CHOOSEFONT *lpStruct);
-#else
-#define getCHOOSEFONTFields(a,b,c) NULL
-#define setCHOOSEFONTFields(a,b,c)
-#endif
-
-#ifndef NO_COMPOSITIONFORM
-COMPOSITIONFORM *getCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject, COMPOSITIONFORM *lpStruct);
-void setCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject, COMPOSITIONFORM *lpStruct);
-#else
-#define getCOMPOSITIONFORMFields(a,b,c) NULL
-#define setCOMPOSITIONFORMFields(a,b,c)
-#endif
-
-#ifndef NO_CREATESTRUCT
-CREATESTRUCT *getCREATESTRUCTFields(JNIEnv *env, jobject lpObject, CREATESTRUCT *lpStruct);
-void setCREATESTRUCTFields(JNIEnv *env, jobject lpObject, CREATESTRUCT *lpStruct);
-#else
-#define getCREATESTRUCTFields(a,b,c) NULL
-#define setCREATESTRUCTFields(a,b,c)
-#endif
-
-#ifndef NO_DIBSECTION
-DIBSECTION *getDIBSECTIONFields(JNIEnv *env, jobject lpObject, DIBSECTION *lpStruct);
-void setDIBSECTIONFields(JNIEnv *env, jobject lpObject, DIBSECTION *lpStruct);
-#else
-#define getDIBSECTIONFields(a,b,c) NULL
-#define setDIBSECTIONFields(a,b,c)
-#endif
-
-#ifndef NO_DLLVERSIONINFO
-DLLVERSIONINFO *getDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject, DLLVERSIONINFO *lpStruct);
-void setDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject, DLLVERSIONINFO *lpStruct);
-#else
-#define getDLLVERSIONINFOFields(a,b,c) NULL
-#define setDLLVERSIONINFOFields(a,b,c)
-#endif
-
-#ifndef NO_DOCINFO
-DOCINFO *getDOCINFOFields(JNIEnv *env, jobject lpObject, DOCINFO *lpStruct);
-void setDOCINFOFields(JNIEnv *env, jobject lpObject, DOCINFO *lpStruct);
-#else
-#define getDOCINFOFields(a,b,c) NULL
-#define setDOCINFOFields(a,b,c)
-#endif
-
-#ifndef NO_DRAWITEMSTRUCT
-DRAWITEMSTRUCT *getDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject, DRAWITEMSTRUCT *lpStruct);
-void setDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject, DRAWITEMSTRUCT *lpStruct);
-#else
-#define getDRAWITEMSTRUCTFields(a,b,c) NULL
-#define setDRAWITEMSTRUCTFields(a,b,c)
-#endif
-
-#ifndef NO_DROPFILES
-DROPFILES *getDROPFILESFields(JNIEnv *env, jobject lpObject, DROPFILES *lpStruct);
-void setDROPFILESFields(JNIEnv *env, jobject lpObject, DROPFILES *lpStruct);
-#else
-#define getDROPFILESFields(a,b,c) NULL
-#define setDROPFILESFields(a,b,c)
-#endif
-
-#ifndef NO_FILETIME
-FILETIME *getFILETIMEFields(JNIEnv *env, jobject lpObject, FILETIME *lpStruct);
-void setFILETIMEFields(JNIEnv *env, jobject lpObject, FILETIME *lpStruct);
-#else
-#define getFILETIMEFields(a,b,c) NULL
-#define setFILETIMEFields(a,b,c)
-#endif
-
-#ifndef NO_GCP_RESULTS
-GCP_RESULTS *getGCP_RESULTSFields(JNIEnv *env, jobject lpObject, GCP_RESULTS *lpStruct);
-void setGCP_RESULTSFields(JNIEnv *env, jobject lpObject, GCP_RESULTS *lpStruct);
-#else
-#define getGCP_RESULTSFields(a,b,c) NULL
-#define setGCP_RESULTSFields(a,b,c)
-#endif
-
-#ifndef NO_GRADIENT_RECT
-GRADIENT_RECT *getGRADIENT_RECTFields(JNIEnv *env, jobject lpObject, GRADIENT_RECT *lpStruct);
-void setGRADIENT_RECTFields(JNIEnv *env, jobject lpObject, GRADIENT_RECT *lpStruct);
-#else
-#define getGRADIENT_RECTFields(a,b,c) NULL
-#define setGRADIENT_RECTFields(a,b,c)
-#endif
-
-#ifndef NO_HDITEM
-HDITEM *getHDITEMFields(JNIEnv *env, jobject lpObject, HDITEM *lpStruct);
-void setHDITEMFields(JNIEnv *env, jobject lpObject, HDITEM *lpStruct);
-#else
-#define getHDITEMFields(a,b,c) NULL
-#define setHDITEMFields(a,b,c)
-#endif
-
-#ifndef NO_HELPINFO
-HELPINFO *getHELPINFOFields(JNIEnv *env, jobject lpObject, HELPINFO *lpStruct);
-void setHELPINFOFields(JNIEnv *env, jobject lpObject, HELPINFO *lpStruct);
-#else
-#define getHELPINFOFields(a,b,c) NULL
-#define setHELPINFOFields(a,b,c)
-#endif
-
-#ifndef NO_ICONINFO
-ICONINFO *getICONINFOFields(JNIEnv *env, jobject lpObject, ICONINFO *lpStruct);
-void setICONINFOFields(JNIEnv *env, jobject lpObject, ICONINFO *lpStruct);
-#else
-#define getICONINFOFields(a,b,c) NULL
-#define setICONINFOFields(a,b,c)
-#endif
-
-#ifndef NO_INITCOMMONCONTROLSEX
-INITCOMMONCONTROLSEX *getINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject, INITCOMMONCONTROLSEX *lpStruct);
-void setINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject, INITCOMMONCONTROLSEX *lpStruct);
-#else
-#define getINITCOMMONCONTROLSEXFields(a,b,c) NULL
-#define setINITCOMMONCONTROLSEXFields(a,b,c)
-#endif
-
-#ifndef NO_LOGBRUSH
-LOGBRUSH *getLOGBRUSHFields(JNIEnv *env, jobject lpObject, LOGBRUSH *lpStruct);
-void setLOGBRUSHFields(JNIEnv *env, jobject lpObject, LOGBRUSH *lpStruct);
-#else
-#define getLOGBRUSHFields(a,b,c) NULL
-#define setLOGBRUSHFields(a,b,c)
-#endif
-
-#ifndef NO_LOGFONT
-LOGFONT *getLOGFONTFields(JNIEnv *env, jobject lpObject, LOGFONT *lpStruct);
-void setLOGFONTFields(JNIEnv *env, jobject lpObject, LOGFONT *lpStruct);
-#else
-#define getLOGFONTFields(a,b,c) NULL
-#define setLOGFONTFields(a,b,c)
-#endif
-
-#ifndef NO_LOGFONTA
-LOGFONTA *getLOGFONTAFields(JNIEnv *env, jobject lpObject, LOGFONTA *lpStruct);
-void setLOGFONTAFields(JNIEnv *env, jobject lpObject, LOGFONTA *lpStruct);
-#else
-#define getLOGFONTAFields(a,b,c) NULL
-#define setLOGFONTAFields(a,b,c)
-#endif
-
-#ifndef NO_LOGFONTW
-LOGFONTW *getLOGFONTWFields(JNIEnv *env, jobject lpObject, LOGFONTW *lpStruct);
-void setLOGFONTWFields(JNIEnv *env, jobject lpObject, LOGFONTW *lpStruct);
-#else
-#define getLOGFONTWFields(a,b,c) NULL
-#define setLOGFONTWFields(a,b,c)
-#endif
-
-#ifndef NO_LOGPEN
-LOGPEN *getLOGPENFields(JNIEnv *env, jobject lpObject, LOGPEN *lpStruct);
-void setLOGPENFields(JNIEnv *env, jobject lpObject, LOGPEN *lpStruct);
-#else
-#define getLOGPENFields(a,b,c) NULL
-#define setLOGPENFields(a,b,c)
-#endif
-
-#ifndef NO_LVCOLUMN
-LVCOLUMN *getLVCOLUMNFields(JNIEnv *env, jobject lpObject, LVCOLUMN *lpStruct);
-void setLVCOLUMNFields(JNIEnv *env, jobject lpObject, LVCOLUMN *lpStruct);
-#else
-#define getLVCOLUMNFields(a,b,c) NULL
-#define setLVCOLUMNFields(a,b,c)
-#endif
-
-#ifndef NO_LVHITTESTINFO
-LVHITTESTINFO *getLVHITTESTINFOFields(JNIEnv *env, jobject lpObject, LVHITTESTINFO *lpStruct);
-void setLVHITTESTINFOFields(JNIEnv *env, jobject lpObject, LVHITTESTINFO *lpStruct);
-#else
-#define getLVHITTESTINFOFields(a,b,c) NULL
-#define setLVHITTESTINFOFields(a,b,c)
-#endif
-
-#ifndef NO_LVITEM
-LVITEM *getLVITEMFields(JNIEnv *env, jobject lpObject, LVITEM *lpStruct);
-void setLVITEMFields(JNIEnv *env, jobject lpObject, LVITEM *lpStruct);
-#else
-#define getLVITEMFields(a,b,c) NULL
-#define setLVITEMFields(a,b,c)
-#endif
-
-#ifndef NO_MEASUREITEMSTRUCT
-MEASUREITEMSTRUCT *getMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject, MEASUREITEMSTRUCT *lpStruct);
-void setMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject, MEASUREITEMSTRUCT *lpStruct);
-#else
-#define getMEASUREITEMSTRUCTFields(a,b,c) NULL
-#define setMEASUREITEMSTRUCTFields(a,b,c)
-#endif
-
-#ifndef NO_MENUINFO
-MENUINFO *getMENUINFOFields(JNIEnv *env, jobject lpObject, MENUINFO *lpStruct);
-void setMENUINFOFields(JNIEnv *env, jobject lpObject, MENUINFO *lpStruct);
-#else
-#define getMENUINFOFields(a,b,c) NULL
-#define setMENUINFOFields(a,b,c)
-#endif
-
-#ifndef NO_MENUITEMINFO
-MENUITEMINFO *getMENUITEMINFOFields(JNIEnv *env, jobject lpObject, MENUITEMINFO *lpStruct);
-void setMENUITEMINFOFields(JNIEnv *env, jobject lpObject, MENUITEMINFO *lpStruct);
-#else
-#define getMENUITEMINFOFields(a,b,c) NULL
-#define setMENUITEMINFOFields(a,b,c)
-#endif
-
-#ifndef NO_MONITORINFO
-MONITORINFO *getMONITORINFOFields(JNIEnv *env, jobject lpObject, MONITORINFO *lpStruct);
-void setMONITORINFOFields(JNIEnv *env, jobject lpObject, MONITORINFO *lpStruct);
-#else
-#define getMONITORINFOFields(a,b,c) NULL
-#define setMONITORINFOFields(a,b,c)
-#endif
-
-#ifndef NO_MSG
-MSG *getMSGFields(JNIEnv *env, jobject lpObject, MSG *lpStruct);
-void setMSGFields(JNIEnv *env, jobject lpObject, MSG *lpStruct);
-#else
-#define getMSGFields(a,b,c) NULL
-#define setMSGFields(a,b,c)
-#endif
-
-#ifndef NO_NMHDR
-NMHDR *getNMHDRFields(JNIEnv *env, jobject lpObject, NMHDR *lpStruct);
-void setNMHDRFields(JNIEnv *env, jobject lpObject, NMHDR *lpStruct);
-#else
-#define getNMHDRFields(a,b,c) NULL
-#define setNMHDRFields(a,b,c)
-#endif
-
-#ifndef NO_NMCUSTOMDRAW
-NMCUSTOMDRAW *getNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMCUSTOMDRAW *lpStruct);
-void setNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMCUSTOMDRAW *lpStruct);
-#else
-#define getNMCUSTOMDRAWFields(a,b,c) NULL
-#define setNMCUSTOMDRAWFields(a,b,c)
-#endif
-
-#ifndef NO_NMHEADER
-NMHEADER *getNMHEADERFields(JNIEnv *env, jobject lpObject, NMHEADER *lpStruct);
-void setNMHEADERFields(JNIEnv *env, jobject lpObject, NMHEADER *lpStruct);
-#else
-#define getNMHEADERFields(a,b,c) NULL
-#define setNMHEADERFields(a,b,c)
-#endif
-
-#ifndef NO_NMLISTVIEW
-NMLISTVIEW *getNMLISTVIEWFields(JNIEnv *env, jobject lpObject, NMLISTVIEW *lpStruct);
-void setNMLISTVIEWFields(JNIEnv *env, jobject lpObject, NMLISTVIEW *lpStruct);
-#else
-#define getNMLISTVIEWFields(a,b,c) NULL
-#define setNMLISTVIEWFields(a,b,c)
-#endif
-
-#ifndef NO_NMLVCUSTOMDRAW
-NMLVCUSTOMDRAW *getNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMLVCUSTOMDRAW *lpStruct);
-void setNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMLVCUSTOMDRAW *lpStruct);
-#else
-#define getNMLVCUSTOMDRAWFields(a,b,c) NULL
-#define setNMLVCUSTOMDRAWFields(a,b,c)
-#endif
-
-#ifndef NO_NMREBARCHEVRON
-NMREBARCHEVRON *getNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject, NMREBARCHEVRON *lpStruct);
-void setNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject, NMREBARCHEVRON *lpStruct);
-#else
-#define getNMREBARCHEVRONFields(a,b,c) NULL
-#define setNMREBARCHEVRONFields(a,b,c)
-#endif
-
-#ifndef NO_NMTOOLBAR
-NMTOOLBAR *getNMTOOLBARFields(JNIEnv *env, jobject lpObject, NMTOOLBAR *lpStruct);
-void setNMTOOLBARFields(JNIEnv *env, jobject lpObject, NMTOOLBAR *lpStruct);
-#else
-#define getNMTOOLBARFields(a,b,c) NULL
-#define setNMTOOLBARFields(a,b,c)
-#endif
-
-#ifndef NO_NMTTDISPINFO
-NMTTDISPINFO *getNMTTDISPINFOFields(JNIEnv *env, jobject lpObject, NMTTDISPINFO *lpStruct);
-void setNMTTDISPINFOFields(JNIEnv *env, jobject lpObject, NMTTDISPINFO *lpStruct);
-#else
-#define getNMTTDISPINFOFields(a,b,c) NULL
-#define setNMTTDISPINFOFields(a,b,c)
-#endif
-
-#ifndef NO_NMTTDISPINFOA
-NMTTDISPINFOA *getNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOA *lpStruct);
-void setNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOA *lpStruct);
-#else
-#define getNMTTDISPINFOAFields(a,b,c) NULL
-#define setNMTTDISPINFOAFields(a,b,c)
-#endif
-
-#ifndef NO_NMTTDISPINFOW
-NMTTDISPINFOW *getNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOW *lpStruct);
-void setNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOW *lpStruct);
-#else
-#define getNMTTDISPINFOWFields(a,b,c) NULL
-#define setNMTTDISPINFOWFields(a,b,c)
-#endif
-
-#ifndef NO_NMTVCUSTOMDRAW
-NMTVCUSTOMDRAW *getNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMTVCUSTOMDRAW *lpStruct);
-void setNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMTVCUSTOMDRAW *lpStruct);
-#else
-#define getNMTVCUSTOMDRAWFields(a,b,c) NULL
-#define setNMTVCUSTOMDRAWFields(a,b,c)
-#endif
-
-#ifndef NO_NONCLIENTMETRICS
-NONCLIENTMETRICS *getNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICS *lpStruct);
-void setNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICS *lpStruct);
-#else
-#define getNONCLIENTMETRICSFields(a,b,c) NULL
-#define setNONCLIENTMETRICSFields(a,b,c)
-#endif
-
-#ifndef NO_NONCLIENTMETRICSA
-NONCLIENTMETRICSA *getNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSA *lpStruct);
-void setNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSA *lpStruct);
-#else
-#define getNONCLIENTMETRICSAFields(a,b,c) NULL
-#define setNONCLIENTMETRICSAFields(a,b,c)
-#endif
-
-#ifndef NO_NONCLIENTMETRICSW
-NONCLIENTMETRICSW *getNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSW *lpStruct);
-void setNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSW *lpStruct);
-#else
-#define getNONCLIENTMETRICSWFields(a,b,c) NULL
-#define setNONCLIENTMETRICSWFields(a,b,c)
-#endif
-
-#ifndef NO_OPENFILENAME
-OPENFILENAME *getOPENFILENAMEFields(JNIEnv *env, jobject lpObject, OPENFILENAME *lpStruct);
-void setOPENFILENAMEFields(JNIEnv *env, jobject lpObject, OPENFILENAME *lpStruct);
-#else
-#define getOPENFILENAMEFields(a,b,c) NULL
-#define setOPENFILENAMEFields(a,b,c)
-#endif
-
-#ifndef NO_OSVERSIONINFO
-OSVERSIONINFO *getOSVERSIONINFOFields(JNIEnv *env, jobject lpObject, OSVERSIONINFO *lpStruct);
-void setOSVERSIONINFOFields(JNIEnv *env, jobject lpObject, OSVERSIONINFO *lpStruct);
-#else
-#define getOSVERSIONINFOFields(a,b,c) NULL
-#define setOSVERSIONINFOFields(a,b,c)
-#endif
-
-#ifndef NO_OSVERSIONINFOA
-OSVERSIONINFOA *getOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOA *lpStruct);
-void setOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOA *lpStruct);
-#else
-#define getOSVERSIONINFOAFields(a,b,c) NULL
-#define setOSVERSIONINFOAFields(a,b,c)
-#endif
-
-#ifndef NO_OSVERSIONINFOW
-OSVERSIONINFOW *getOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOW *lpStruct);
-void setOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOW *lpStruct);
-#else
-#define getOSVERSIONINFOWFields(a,b,c) NULL
-#define setOSVERSIONINFOWFields(a,b,c)
-#endif
-
-#ifndef NO_PAINTSTRUCT
-PAINTSTRUCT *getPAINTSTRUCTFields(JNIEnv *env, jobject lpObject, PAINTSTRUCT *lpStruct);
-void setPAINTSTRUCTFields(JNIEnv *env, jobject lpObject, PAINTSTRUCT *lpStruct);
-#else
-#define getPAINTSTRUCTFields(a,b,c) NULL
-#define setPAINTSTRUCTFields(a,b,c)
-#endif
-
-#ifndef NO_POINT
-POINT *getPOINTFields(JNIEnv *env, jobject lpObject, POINT *lpStruct);
-void setPOINTFields(JNIEnv *env, jobject lpObject, POINT *lpStruct);
-#else
-#define getPOINTFields(a,b,c) NULL
-#define setPOINTFields(a,b,c)
-#endif
-
-#ifndef NO_PRINTDLG
-PRINTDLG *getPRINTDLGFields(JNIEnv *env, jobject lpObject, PRINTDLG *lpStruct);
-void setPRINTDLGFields(JNIEnv *env, jobject lpObject, PRINTDLG *lpStruct);
-#else
-#define getPRINTDLGFields(a,b,c) NULL
-#define setPRINTDLGFields(a,b,c)
-#endif
-
-#ifndef NO_REBARBANDINFO
-REBARBANDINFO *getREBARBANDINFOFields(JNIEnv *env, jobject lpObject, REBARBANDINFO *lpStruct);
-void setREBARBANDINFOFields(JNIEnv *env, jobject lpObject, REBARBANDINFO *lpStruct);
-#else
-#define getREBARBANDINFOFields(a,b,c) NULL
-#define setREBARBANDINFOFields(a,b,c)
-#endif
-
-#ifndef NO_RECT
-RECT *getRECTFields(JNIEnv *env, jobject lpObject, RECT *lpStruct);
-void setRECTFields(JNIEnv *env, jobject lpObject, RECT *lpStruct);
-#else
-#define getRECTFields(a,b,c) NULL
-#define setRECTFields(a,b,c)
-#endif
-
-#ifndef NO_SCROLLINFO
-SCROLLINFO *getSCROLLINFOFields(JNIEnv *env, jobject lpObject, SCROLLINFO *lpStruct);
-void setSCROLLINFOFields(JNIEnv *env, jobject lpObject, SCROLLINFO *lpStruct);
-#else
-#define getSCROLLINFOFields(a,b,c) NULL
-#define setSCROLLINFOFields(a,b,c)
-#endif
-
-#ifndef NO_SHACTIVATEINFO
-SHACTIVATEINFO *getSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject, SHACTIVATEINFO *lpStruct);
-void setSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject, SHACTIVATEINFO *lpStruct);
-#else
-#define getSHACTIVATEINFOFields(a,b,c) NULL
-#define setSHACTIVATEINFOFields(a,b,c)
-#endif
-
-#ifndef NO_SHELLEXECUTEINFO
-SHELLEXECUTEINFO *getSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject, SHELLEXECUTEINFO *lpStruct);
-void setSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject, SHELLEXECUTEINFO *lpStruct);
-#else
-#define getSHELLEXECUTEINFOFields(a,b,c) NULL
-#define setSHELLEXECUTEINFOFields(a,b,c)
-#endif
-
-#ifndef NO_SHMENUBARINFO
-SHMENUBARINFO *getSHMENUBARINFOFields(JNIEnv *env, jobject lpObject, SHMENUBARINFO *lpStruct);
-void setSHMENUBARINFOFields(JNIEnv *env, jobject lpObject, SHMENUBARINFO *lpStruct);
-#else
-#define getSHMENUBARINFOFields(a,b,c) NULL
-#define setSHMENUBARINFOFields(a,b,c)
-#endif
-
-#ifndef NO_SHRGINFO
-SHRGINFO *getSHRGINFOFields(JNIEnv *env, jobject lpObject, SHRGINFO *lpStruct);
-void setSHRGINFOFields(JNIEnv *env, jobject lpObject, SHRGINFO *lpStruct);
-#else
-#define getSHRGINFOFields(a,b,c) NULL
-#define setSHRGINFOFields(a,b,c)
-#endif
-
-#ifndef NO_SIPINFO
-SIPINFO *getSIPINFOFields(JNIEnv *env, jobject lpObject, SIPINFO *lpStruct);
-void setSIPINFOFields(JNIEnv *env, jobject lpObject, SIPINFO *lpStruct);
-#else
-#define getSIPINFOFields(a,b,c) NULL
-#define setSIPINFOFields(a,b,c)
-#endif
-
-#ifndef NO_SIZE
-SIZE *getSIZEFields(JNIEnv *env, jobject lpObject, SIZE *lpStruct);
-void setSIZEFields(JNIEnv *env, jobject lpObject, SIZE *lpStruct);
-#else
-#define getSIZEFields(a,b,c) NULL
-#define setSIZEFields(a,b,c)
-#endif
-
-#ifndef NO_TBBUTTON
-TBBUTTON *getTBBUTTONFields(JNIEnv *env, jobject lpObject, TBBUTTON *lpStruct);
-void setTBBUTTONFields(JNIEnv *env, jobject lpObject, TBBUTTON *lpStruct);
-#else
-#define getTBBUTTONFields(a,b,c) NULL
-#define setTBBUTTONFields(a,b,c)
-#endif
-
-#ifndef NO_TBBUTTONINFO
-TBBUTTONINFO *getTBBUTTONINFOFields(JNIEnv *env, jobject lpObject, TBBUTTONINFO *lpStruct);
-void setTBBUTTONINFOFields(JNIEnv *env, jobject lpObject, TBBUTTONINFO *lpStruct);
-#else
-#define getTBBUTTONINFOFields(a,b,c) NULL
-#define setTBBUTTONINFOFields(a,b,c)
-#endif
-
-#ifndef NO_TCITEM
-TCITEM *getTCITEMFields(JNIEnv *env, jobject lpObject, TCITEM *lpStruct);
-void setTCITEMFields(JNIEnv *env, jobject lpObject, TCITEM *lpStruct);
-#else
-#define getTCITEMFields(a,b,c) NULL
-#define setTCITEMFields(a,b,c)
-#endif
-
-#ifndef NO_TEXTMETRIC
-TEXTMETRIC *getTEXTMETRICFields(JNIEnv *env, jobject lpObject, TEXTMETRIC *lpStruct);
-void setTEXTMETRICFields(JNIEnv *env, jobject lpObject, TEXTMETRIC *lpStruct);
-#else
-#define getTEXTMETRICFields(a,b,c) NULL
-#define setTEXTMETRICFields(a,b,c)
-#endif
-
-#ifndef NO_TEXTMETRICA
-TEXTMETRICA *getTEXTMETRICAFields(JNIEnv *env, jobject lpObject, TEXTMETRICA *lpStruct);
-void setTEXTMETRICAFields(JNIEnv *env, jobject lpObject, TEXTMETRICA *lpStruct);
-#else
-#define getTEXTMETRICAFields(a,b,c) NULL
-#define setTEXTMETRICAFields(a,b,c)
-#endif
-
-#ifndef NO_TEXTMETRICW
-TEXTMETRICW *getTEXTMETRICWFields(JNIEnv *env, jobject lpObject, TEXTMETRICW *lpStruct);
-void setTEXTMETRICWFields(JNIEnv *env, jobject lpObject, TEXTMETRICW *lpStruct);
-#else
-#define getTEXTMETRICWFields(a,b,c) NULL
-#define setTEXTMETRICWFields(a,b,c)
-#endif
-
-#ifndef NO_TOOLINFO
-TOOLINFO *getTOOLINFOFields(JNIEnv *env, jobject lpObject, TOOLINFO *lpStruct);
-void setTOOLINFOFields(JNIEnv *env, jobject lpObject, TOOLINFO *lpStruct);
-#else
-#define getTOOLINFOFields(a,b,c) NULL
-#define setTOOLINFOFields(a,b,c)
-#endif
-
-#ifndef NO_TRACKMOUSEEVENT
-TRACKMOUSEEVENT *getTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject, TRACKMOUSEEVENT *lpStruct);
-void setTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject, TRACKMOUSEEVENT *lpStruct);
-#else
-#define getTRACKMOUSEEVENTFields(a,b,c) NULL
-#define setTRACKMOUSEEVENTFields(a,b,c)
-#endif
-
-#ifndef NO_TRIVERTEX
-TRIVERTEX *getTRIVERTEXFields(JNIEnv *env, jobject lpObject, TRIVERTEX *lpStruct);
-void setTRIVERTEXFields(JNIEnv *env, jobject lpObject, TRIVERTEX *lpStruct);
-#else
-#define getTRIVERTEXFields(a,b,c) NULL
-#define setTRIVERTEXFields(a,b,c)
-#endif
-
-#ifndef NO_TVHITTESTINFO
-TVHITTESTINFO *getTVHITTESTINFOFields(JNIEnv *env, jobject lpObject, TVHITTESTINFO *lpStruct);
-void setTVHITTESTINFOFields(JNIEnv *env, jobject lpObject, TVHITTESTINFO *lpStruct);
-#else
-#define getTVHITTESTINFOFields(a,b,c) NULL
-#define setTVHITTESTINFOFields(a,b,c)
-#endif
-
-#ifndef NO_TVINSERTSTRUCT
-TVINSERTSTRUCT *getTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject, TVINSERTSTRUCT *lpStruct);
-void setTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject, TVINSERTSTRUCT *lpStruct);
-#else
-#define getTVINSERTSTRUCTFields(a,b,c) NULL
-#define setTVINSERTSTRUCTFields(a,b,c)
-#endif
-
-#ifndef NO_TVITEM
-TVITEM *getTVITEMFields(JNIEnv *env, jobject lpObject, TVITEM *lpStruct);
-void setTVITEMFields(JNIEnv *env, jobject lpObject, TVITEM *lpStruct);
-#else
-#define getTVITEMFields(a,b,c) NULL
-#define setTVITEMFields(a,b,c)
-#endif
-
-#ifndef NO_WINDOWPLACEMENT
-WINDOWPLACEMENT *getWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject, WINDOWPLACEMENT *lpStruct);
-void setWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject, WINDOWPLACEMENT *lpStruct);
-#else
-#define getWINDOWPLACEMENTFields(a,b,c) NULL
-#define setWINDOWPLACEMENTFields(a,b,c)
-#endif
-
-#ifndef NO_WINDOWPOS
-WINDOWPOS *getWINDOWPOSFields(JNIEnv *env, jobject lpObject, WINDOWPOS *lpStruct);
-void setWINDOWPOSFields(JNIEnv *env, jobject lpObject, WINDOWPOS *lpStruct);
-#else
-#define getWINDOWPOSFields(a,b,c) NULL
-#define setWINDOWPOSFields(a,b,c)
-#endif
-
-#ifndef NO_WNDCLASS
-WNDCLASS *getWNDCLASSFields(JNIEnv *env, jobject lpObject, WNDCLASS *lpStruct);
-void setWNDCLASSFields(JNIEnv *env, jobject lpObject, WNDCLASS *lpStruct);
-#else
-#define getWNDCLASSFields(a,b,c) NULL
-#define setWNDCLASSFields(a,b,c)
-#endif
-
+/******************************************************************************* +* Copyright (c) 2000, 2003 IBM Corporation and others. +* All rights reserved. This program and the accompanying materials +* are made available under the terms of the Common Public License v1.0 +* which accompanies this distribution, and is available at +* http://www.eclipse.org/legal/cpl-v10.html +* +* Contributors: +* IBM Corporation - initial API and implementation +*******************************************************************************/ + +#include "os.h" + +#ifndef NO_ACCEL +ACCEL *getACCELFields(JNIEnv *env, jobject lpObject, ACCEL *lpStruct); +void setACCELFields(JNIEnv *env, jobject lpObject, ACCEL *lpStruct); +#else +#define getACCELFields(a,b,c) NULL +#define setACCELFields(a,b,c) +#endif + +#ifndef NO_BITMAP +BITMAP *getBITMAPFields(JNIEnv *env, jobject lpObject, BITMAP *lpStruct); +void setBITMAPFields(JNIEnv *env, jobject lpObject, BITMAP *lpStruct); +#else +#define getBITMAPFields(a,b,c) NULL +#define setBITMAPFields(a,b,c) +#endif + +#ifndef NO_BITMAPINFOHEADER +BITMAPINFOHEADER *getBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject, BITMAPINFOHEADER *lpStruct); +void setBITMAPINFOHEADERFields(JNIEnv *env, jobject lpObject, BITMAPINFOHEADER *lpStruct); +#else +#define getBITMAPINFOHEADERFields(a,b,c) NULL +#define setBITMAPINFOHEADERFields(a,b,c) +#endif + +#ifndef NO_BROWSEINFO +BROWSEINFO *getBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct); +void setBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct); +#else +#define getBROWSEINFOFields(a,b,c) NULL +#define setBROWSEINFOFields(a,b,c) +#endif + +#ifndef NO_CHOOSECOLOR +CHOOSECOLOR *getCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct); +void setCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct); +#else +#define getCHOOSECOLORFields(a,b,c) NULL +#define setCHOOSECOLORFields(a,b,c) +#endif + +#ifndef NO_CHOOSEFONT +CHOOSEFONT *getCHOOSEFONTFields(JNIEnv *env, jobject lpObject, CHOOSEFONT *lpStruct); +void setCHOOSEFONTFields(JNIEnv *env, jobject lpObject, CHOOSEFONT *lpStruct); +#else +#define getCHOOSEFONTFields(a,b,c) NULL +#define setCHOOSEFONTFields(a,b,c) +#endif + +#ifndef NO_COMPOSITIONFORM +COMPOSITIONFORM *getCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject, COMPOSITIONFORM *lpStruct); +void setCOMPOSITIONFORMFields(JNIEnv *env, jobject lpObject, COMPOSITIONFORM *lpStruct); +#else +#define getCOMPOSITIONFORMFields(a,b,c) NULL +#define setCOMPOSITIONFORMFields(a,b,c) +#endif + +#ifndef NO_CREATESTRUCT +CREATESTRUCT *getCREATESTRUCTFields(JNIEnv *env, jobject lpObject, CREATESTRUCT *lpStruct); +void setCREATESTRUCTFields(JNIEnv *env, jobject lpObject, CREATESTRUCT *lpStruct); +#else +#define getCREATESTRUCTFields(a,b,c) NULL +#define setCREATESTRUCTFields(a,b,c) +#endif + +#ifndef NO_DIBSECTION +DIBSECTION *getDIBSECTIONFields(JNIEnv *env, jobject lpObject, DIBSECTION *lpStruct); +void setDIBSECTIONFields(JNIEnv *env, jobject lpObject, DIBSECTION *lpStruct); +#else +#define getDIBSECTIONFields(a,b,c) NULL +#define setDIBSECTIONFields(a,b,c) +#endif + +#ifndef NO_DLLVERSIONINFO +DLLVERSIONINFO *getDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject, DLLVERSIONINFO *lpStruct); +void setDLLVERSIONINFOFields(JNIEnv *env, jobject lpObject, DLLVERSIONINFO *lpStruct); +#else +#define getDLLVERSIONINFOFields(a,b,c) NULL +#define setDLLVERSIONINFOFields(a,b,c) +#endif + +#ifndef NO_DOCINFO +DOCINFO *getDOCINFOFields(JNIEnv *env, jobject lpObject, DOCINFO *lpStruct); +void setDOCINFOFields(JNIEnv *env, jobject lpObject, DOCINFO *lpStruct); +#else +#define getDOCINFOFields(a,b,c) NULL +#define setDOCINFOFields(a,b,c) +#endif + +#ifndef NO_DRAWITEMSTRUCT +DRAWITEMSTRUCT *getDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject, DRAWITEMSTRUCT *lpStruct); +void setDRAWITEMSTRUCTFields(JNIEnv *env, jobject lpObject, DRAWITEMSTRUCT *lpStruct); +#else +#define getDRAWITEMSTRUCTFields(a,b,c) NULL +#define setDRAWITEMSTRUCTFields(a,b,c) +#endif + +#ifndef NO_DROPFILES +DROPFILES *getDROPFILESFields(JNIEnv *env, jobject lpObject, DROPFILES *lpStruct); +void setDROPFILESFields(JNIEnv *env, jobject lpObject, DROPFILES *lpStruct); +#else +#define getDROPFILESFields(a,b,c) NULL +#define setDROPFILESFields(a,b,c) +#endif + +#ifndef NO_FILETIME +FILETIME *getFILETIMEFields(JNIEnv *env, jobject lpObject, FILETIME *lpStruct); +void setFILETIMEFields(JNIEnv *env, jobject lpObject, FILETIME *lpStruct); +#else +#define getFILETIMEFields(a,b,c) NULL +#define setFILETIMEFields(a,b,c) +#endif + +#ifndef NO_GCP_RESULTS +GCP_RESULTS *getGCP_RESULTSFields(JNIEnv *env, jobject lpObject, GCP_RESULTS *lpStruct); +void setGCP_RESULTSFields(JNIEnv *env, jobject lpObject, GCP_RESULTS *lpStruct); +#else +#define getGCP_RESULTSFields(a,b,c) NULL +#define setGCP_RESULTSFields(a,b,c) +#endif + +#ifndef NO_GRADIENT_RECT +GRADIENT_RECT *getGRADIENT_RECTFields(JNIEnv *env, jobject lpObject, GRADIENT_RECT *lpStruct); +void setGRADIENT_RECTFields(JNIEnv *env, jobject lpObject, GRADIENT_RECT *lpStruct); +#else +#define getGRADIENT_RECTFields(a,b,c) NULL +#define setGRADIENT_RECTFields(a,b,c) +#endif + +#ifndef NO_HDITEM +HDITEM *getHDITEMFields(JNIEnv *env, jobject lpObject, HDITEM *lpStruct); +void setHDITEMFields(JNIEnv *env, jobject lpObject, HDITEM *lpStruct); +#else +#define getHDITEMFields(a,b,c) NULL +#define setHDITEMFields(a,b,c) +#endif + +#ifndef NO_HELPINFO +HELPINFO *getHELPINFOFields(JNIEnv *env, jobject lpObject, HELPINFO *lpStruct); +void setHELPINFOFields(JNIEnv *env, jobject lpObject, HELPINFO *lpStruct); +#else +#define getHELPINFOFields(a,b,c) NULL +#define setHELPINFOFields(a,b,c) +#endif + +#ifndef NO_ICONINFO +ICONINFO *getICONINFOFields(JNIEnv *env, jobject lpObject, ICONINFO *lpStruct); +void setICONINFOFields(JNIEnv *env, jobject lpObject, ICONINFO *lpStruct); +#else +#define getICONINFOFields(a,b,c) NULL +#define setICONINFOFields(a,b,c) +#endif + +#ifndef NO_INITCOMMONCONTROLSEX +INITCOMMONCONTROLSEX *getINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject, INITCOMMONCONTROLSEX *lpStruct); +void setINITCOMMONCONTROLSEXFields(JNIEnv *env, jobject lpObject, INITCOMMONCONTROLSEX *lpStruct); +#else +#define getINITCOMMONCONTROLSEXFields(a,b,c) NULL +#define setINITCOMMONCONTROLSEXFields(a,b,c) +#endif + +#ifndef NO_LOGBRUSH +LOGBRUSH *getLOGBRUSHFields(JNIEnv *env, jobject lpObject, LOGBRUSH *lpStruct); +void setLOGBRUSHFields(JNIEnv *env, jobject lpObject, LOGBRUSH *lpStruct); +#else +#define getLOGBRUSHFields(a,b,c) NULL +#define setLOGBRUSHFields(a,b,c) +#endif + +#ifndef NO_LOGFONT +LOGFONT *getLOGFONTFields(JNIEnv *env, jobject lpObject, LOGFONT *lpStruct); +void setLOGFONTFields(JNIEnv *env, jobject lpObject, LOGFONT *lpStruct); +#else +#define getLOGFONTFields(a,b,c) NULL +#define setLOGFONTFields(a,b,c) +#endif + +#ifndef NO_LOGFONTA +LOGFONTA *getLOGFONTAFields(JNIEnv *env, jobject lpObject, LOGFONTA *lpStruct); +void setLOGFONTAFields(JNIEnv *env, jobject lpObject, LOGFONTA *lpStruct); +#else +#define getLOGFONTAFields(a,b,c) NULL +#define setLOGFONTAFields(a,b,c) +#endif + +#ifndef NO_LOGFONTW +LOGFONTW *getLOGFONTWFields(JNIEnv *env, jobject lpObject, LOGFONTW *lpStruct); +void setLOGFONTWFields(JNIEnv *env, jobject lpObject, LOGFONTW *lpStruct); +#else +#define getLOGFONTWFields(a,b,c) NULL +#define setLOGFONTWFields(a,b,c) +#endif + +#ifndef NO_LOGPEN +LOGPEN *getLOGPENFields(JNIEnv *env, jobject lpObject, LOGPEN *lpStruct); +void setLOGPENFields(JNIEnv *env, jobject lpObject, LOGPEN *lpStruct); +#else +#define getLOGPENFields(a,b,c) NULL +#define setLOGPENFields(a,b,c) +#endif + +#ifndef NO_LVCOLUMN +LVCOLUMN *getLVCOLUMNFields(JNIEnv *env, jobject lpObject, LVCOLUMN *lpStruct); +void setLVCOLUMNFields(JNIEnv *env, jobject lpObject, LVCOLUMN *lpStruct); +#else +#define getLVCOLUMNFields(a,b,c) NULL +#define setLVCOLUMNFields(a,b,c) +#endif + +#ifndef NO_LVHITTESTINFO +LVHITTESTINFO *getLVHITTESTINFOFields(JNIEnv *env, jobject lpObject, LVHITTESTINFO *lpStruct); +void setLVHITTESTINFOFields(JNIEnv *env, jobject lpObject, LVHITTESTINFO *lpStruct); +#else +#define getLVHITTESTINFOFields(a,b,c) NULL +#define setLVHITTESTINFOFields(a,b,c) +#endif + +#ifndef NO_LVITEM +LVITEM *getLVITEMFields(JNIEnv *env, jobject lpObject, LVITEM *lpStruct); +void setLVITEMFields(JNIEnv *env, jobject lpObject, LVITEM *lpStruct); +#else +#define getLVITEMFields(a,b,c) NULL +#define setLVITEMFields(a,b,c) +#endif + +#ifndef NO_MEASUREITEMSTRUCT +MEASUREITEMSTRUCT *getMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject, MEASUREITEMSTRUCT *lpStruct); +void setMEASUREITEMSTRUCTFields(JNIEnv *env, jobject lpObject, MEASUREITEMSTRUCT *lpStruct); +#else +#define getMEASUREITEMSTRUCTFields(a,b,c) NULL +#define setMEASUREITEMSTRUCTFields(a,b,c) +#endif + +#ifndef NO_MENUINFO +MENUINFO *getMENUINFOFields(JNIEnv *env, jobject lpObject, MENUINFO *lpStruct); +void setMENUINFOFields(JNIEnv *env, jobject lpObject, MENUINFO *lpStruct); +#else +#define getMENUINFOFields(a,b,c) NULL +#define setMENUINFOFields(a,b,c) +#endif + +#ifndef NO_MENUITEMINFO +MENUITEMINFO *getMENUITEMINFOFields(JNIEnv *env, jobject lpObject, MENUITEMINFO *lpStruct); +void setMENUITEMINFOFields(JNIEnv *env, jobject lpObject, MENUITEMINFO *lpStruct); +#else +#define getMENUITEMINFOFields(a,b,c) NULL +#define setMENUITEMINFOFields(a,b,c) +#endif + +#ifndef NO_MONITORINFO +MONITORINFO *getMONITORINFOFields(JNIEnv *env, jobject lpObject, MONITORINFO *lpStruct); +void setMONITORINFOFields(JNIEnv *env, jobject lpObject, MONITORINFO *lpStruct); +#else +#define getMONITORINFOFields(a,b,c) NULL +#define setMONITORINFOFields(a,b,c) +#endif + +#ifndef NO_MSG +MSG *getMSGFields(JNIEnv *env, jobject lpObject, MSG *lpStruct); +void setMSGFields(JNIEnv *env, jobject lpObject, MSG *lpStruct); +#else +#define getMSGFields(a,b,c) NULL +#define setMSGFields(a,b,c) +#endif + +#ifndef NO_NMHDR +NMHDR *getNMHDRFields(JNIEnv *env, jobject lpObject, NMHDR *lpStruct); +void setNMHDRFields(JNIEnv *env, jobject lpObject, NMHDR *lpStruct); +#else +#define getNMHDRFields(a,b,c) NULL +#define setNMHDRFields(a,b,c) +#endif + +#ifndef NO_NMCUSTOMDRAW +NMCUSTOMDRAW *getNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMCUSTOMDRAW *lpStruct); +void setNMCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMCUSTOMDRAW *lpStruct); +#else +#define getNMCUSTOMDRAWFields(a,b,c) NULL +#define setNMCUSTOMDRAWFields(a,b,c) +#endif + +#ifndef NO_NMHEADER +NMHEADER *getNMHEADERFields(JNIEnv *env, jobject lpObject, NMHEADER *lpStruct); +void setNMHEADERFields(JNIEnv *env, jobject lpObject, NMHEADER *lpStruct); +#else +#define getNMHEADERFields(a,b,c) NULL +#define setNMHEADERFields(a,b,c) +#endif + +#ifndef NO_NMLISTVIEW +NMLISTVIEW *getNMLISTVIEWFields(JNIEnv *env, jobject lpObject, NMLISTVIEW *lpStruct); +void setNMLISTVIEWFields(JNIEnv *env, jobject lpObject, NMLISTVIEW *lpStruct); +#else +#define getNMLISTVIEWFields(a,b,c) NULL +#define setNMLISTVIEWFields(a,b,c) +#endif + +#ifndef NO_NMLVCUSTOMDRAW +NMLVCUSTOMDRAW *getNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMLVCUSTOMDRAW *lpStruct); +void setNMLVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMLVCUSTOMDRAW *lpStruct); +#else +#define getNMLVCUSTOMDRAWFields(a,b,c) NULL +#define setNMLVCUSTOMDRAWFields(a,b,c) +#endif + +#ifndef NO_NMREBARCHEVRON +NMREBARCHEVRON *getNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject, NMREBARCHEVRON *lpStruct); +void setNMREBARCHEVRONFields(JNIEnv *env, jobject lpObject, NMREBARCHEVRON *lpStruct); +#else +#define getNMREBARCHEVRONFields(a,b,c) NULL +#define setNMREBARCHEVRONFields(a,b,c) +#endif + +#ifndef NO_NMTOOLBAR +NMTOOLBAR *getNMTOOLBARFields(JNIEnv *env, jobject lpObject, NMTOOLBAR *lpStruct); +void setNMTOOLBARFields(JNIEnv *env, jobject lpObject, NMTOOLBAR *lpStruct); +#else +#define getNMTOOLBARFields(a,b,c) NULL +#define setNMTOOLBARFields(a,b,c) +#endif + +#ifndef NO_NMTTDISPINFO +NMTTDISPINFO *getNMTTDISPINFOFields(JNIEnv *env, jobject lpObject, NMTTDISPINFO *lpStruct); +void setNMTTDISPINFOFields(JNIEnv *env, jobject lpObject, NMTTDISPINFO *lpStruct); +#else +#define getNMTTDISPINFOFields(a,b,c) NULL +#define setNMTTDISPINFOFields(a,b,c) +#endif + +#ifndef NO_NMTTDISPINFOA +NMTTDISPINFOA *getNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOA *lpStruct); +void setNMTTDISPINFOAFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOA *lpStruct); +#else +#define getNMTTDISPINFOAFields(a,b,c) NULL +#define setNMTTDISPINFOAFields(a,b,c) +#endif + +#ifndef NO_NMTTDISPINFOW +NMTTDISPINFOW *getNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOW *lpStruct); +void setNMTTDISPINFOWFields(JNIEnv *env, jobject lpObject, NMTTDISPINFOW *lpStruct); +#else +#define getNMTTDISPINFOWFields(a,b,c) NULL +#define setNMTTDISPINFOWFields(a,b,c) +#endif + +#ifndef NO_NMTVCUSTOMDRAW +NMTVCUSTOMDRAW *getNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMTVCUSTOMDRAW *lpStruct); +void setNMTVCUSTOMDRAWFields(JNIEnv *env, jobject lpObject, NMTVCUSTOMDRAW *lpStruct); +#else +#define getNMTVCUSTOMDRAWFields(a,b,c) NULL +#define setNMTVCUSTOMDRAWFields(a,b,c) +#endif + +#ifndef NO_NONCLIENTMETRICS +NONCLIENTMETRICS *getNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICS *lpStruct); +void setNONCLIENTMETRICSFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICS *lpStruct); +#else +#define getNONCLIENTMETRICSFields(a,b,c) NULL +#define setNONCLIENTMETRICSFields(a,b,c) +#endif + +#ifndef NO_NONCLIENTMETRICSA +NONCLIENTMETRICSA *getNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSA *lpStruct); +void setNONCLIENTMETRICSAFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSA *lpStruct); +#else +#define getNONCLIENTMETRICSAFields(a,b,c) NULL +#define setNONCLIENTMETRICSAFields(a,b,c) +#endif + +#ifndef NO_NONCLIENTMETRICSW +NONCLIENTMETRICSW *getNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSW *lpStruct); +void setNONCLIENTMETRICSWFields(JNIEnv *env, jobject lpObject, NONCLIENTMETRICSW *lpStruct); +#else +#define getNONCLIENTMETRICSWFields(a,b,c) NULL +#define setNONCLIENTMETRICSWFields(a,b,c) +#endif + +#ifndef NO_OPENFILENAME +OPENFILENAME *getOPENFILENAMEFields(JNIEnv *env, jobject lpObject, OPENFILENAME *lpStruct); +void setOPENFILENAMEFields(JNIEnv *env, jobject lpObject, OPENFILENAME *lpStruct); +#else +#define getOPENFILENAMEFields(a,b,c) NULL +#define setOPENFILENAMEFields(a,b,c) +#endif + +#ifndef NO_OSVERSIONINFO +OSVERSIONINFO *getOSVERSIONINFOFields(JNIEnv *env, jobject lpObject, OSVERSIONINFO *lpStruct); +void setOSVERSIONINFOFields(JNIEnv *env, jobject lpObject, OSVERSIONINFO *lpStruct); +#else +#define getOSVERSIONINFOFields(a,b,c) NULL +#define setOSVERSIONINFOFields(a,b,c) +#endif + +#ifndef NO_OSVERSIONINFOA +OSVERSIONINFOA *getOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOA *lpStruct); +void setOSVERSIONINFOAFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOA *lpStruct); +#else +#define getOSVERSIONINFOAFields(a,b,c) NULL +#define setOSVERSIONINFOAFields(a,b,c) +#endif + +#ifndef NO_OSVERSIONINFOW +OSVERSIONINFOW *getOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOW *lpStruct); +void setOSVERSIONINFOWFields(JNIEnv *env, jobject lpObject, OSVERSIONINFOW *lpStruct); +#else +#define getOSVERSIONINFOWFields(a,b,c) NULL +#define setOSVERSIONINFOWFields(a,b,c) +#endif + +#ifndef NO_PAINTSTRUCT +PAINTSTRUCT *getPAINTSTRUCTFields(JNIEnv *env, jobject lpObject, PAINTSTRUCT *lpStruct); +void setPAINTSTRUCTFields(JNIEnv *env, jobject lpObject, PAINTSTRUCT *lpStruct); +#else +#define getPAINTSTRUCTFields(a,b,c) NULL +#define setPAINTSTRUCTFields(a,b,c) +#endif + +#ifndef NO_POINT +POINT *getPOINTFields(JNIEnv *env, jobject lpObject, POINT *lpStruct); +void setPOINTFields(JNIEnv *env, jobject lpObject, POINT *lpStruct); +#else +#define getPOINTFields(a,b,c) NULL +#define setPOINTFields(a,b,c) +#endif + +#ifndef NO_PRINTDLG +PRINTDLG *getPRINTDLGFields(JNIEnv *env, jobject lpObject, PRINTDLG *lpStruct); +void setPRINTDLGFields(JNIEnv *env, jobject lpObject, PRINTDLG *lpStruct); +#else +#define getPRINTDLGFields(a,b,c) NULL +#define setPRINTDLGFields(a,b,c) +#endif + +#ifndef NO_REBARBANDINFO +REBARBANDINFO *getREBARBANDINFOFields(JNIEnv *env, jobject lpObject, REBARBANDINFO *lpStruct); +void setREBARBANDINFOFields(JNIEnv *env, jobject lpObject, REBARBANDINFO *lpStruct); +#else +#define getREBARBANDINFOFields(a,b,c) NULL +#define setREBARBANDINFOFields(a,b,c) +#endif + +#ifndef NO_RECT +RECT *getRECTFields(JNIEnv *env, jobject lpObject, RECT *lpStruct); +void setRECTFields(JNIEnv *env, jobject lpObject, RECT *lpStruct); +#else +#define getRECTFields(a,b,c) NULL +#define setRECTFields(a,b,c) +#endif + +#ifndef NO_SCROLLINFO +SCROLLINFO *getSCROLLINFOFields(JNIEnv *env, jobject lpObject, SCROLLINFO *lpStruct); +void setSCROLLINFOFields(JNIEnv *env, jobject lpObject, SCROLLINFO *lpStruct); +#else +#define getSCROLLINFOFields(a,b,c) NULL +#define setSCROLLINFOFields(a,b,c) +#endif + +#ifndef NO_SHACTIVATEINFO +SHACTIVATEINFO *getSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject, SHACTIVATEINFO *lpStruct); +void setSHACTIVATEINFOFields(JNIEnv *env, jobject lpObject, SHACTIVATEINFO *lpStruct); +#else +#define getSHACTIVATEINFOFields(a,b,c) NULL +#define setSHACTIVATEINFOFields(a,b,c) +#endif + +#ifndef NO_SHELLEXECUTEINFO +SHELLEXECUTEINFO *getSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject, SHELLEXECUTEINFO *lpStruct); +void setSHELLEXECUTEINFOFields(JNIEnv *env, jobject lpObject, SHELLEXECUTEINFO *lpStruct); +#else +#define getSHELLEXECUTEINFOFields(a,b,c) NULL +#define setSHELLEXECUTEINFOFields(a,b,c) +#endif + +#ifndef NO_SHMENUBARINFO +SHMENUBARINFO *getSHMENUBARINFOFields(JNIEnv *env, jobject lpObject, SHMENUBARINFO *lpStruct); +void setSHMENUBARINFOFields(JNIEnv *env, jobject lpObject, SHMENUBARINFO *lpStruct); +#else +#define getSHMENUBARINFOFields(a,b,c) NULL +#define setSHMENUBARINFOFields(a,b,c) +#endif + +#ifndef NO_SHRGINFO +SHRGINFO *getSHRGINFOFields(JNIEnv *env, jobject lpObject, SHRGINFO *lpStruct); +void setSHRGINFOFields(JNIEnv *env, jobject lpObject, SHRGINFO *lpStruct); +#else +#define getSHRGINFOFields(a,b,c) NULL +#define setSHRGINFOFields(a,b,c) +#endif + +#ifndef NO_SIPINFO +SIPINFO *getSIPINFOFields(JNIEnv *env, jobject lpObject, SIPINFO *lpStruct); +void setSIPINFOFields(JNIEnv *env, jobject lpObject, SIPINFO *lpStruct); +#else +#define getSIPINFOFields(a,b,c) NULL +#define setSIPINFOFields(a,b,c) +#endif + +#ifndef NO_SIZE +SIZE *getSIZEFields(JNIEnv *env, jobject lpObject, SIZE *lpStruct); +void setSIZEFields(JNIEnv *env, jobject lpObject, SIZE *lpStruct); +#else +#define getSIZEFields(a,b,c) NULL +#define setSIZEFields(a,b,c) +#endif + +#ifndef NO_TBBUTTON +TBBUTTON *getTBBUTTONFields(JNIEnv *env, jobject lpObject, TBBUTTON *lpStruct); +void setTBBUTTONFields(JNIEnv *env, jobject lpObject, TBBUTTON *lpStruct); +#else +#define getTBBUTTONFields(a,b,c) NULL +#define setTBBUTTONFields(a,b,c) +#endif + +#ifndef NO_TBBUTTONINFO +TBBUTTONINFO *getTBBUTTONINFOFields(JNIEnv *env, jobject lpObject, TBBUTTONINFO *lpStruct); +void setTBBUTTONINFOFields(JNIEnv *env, jobject lpObject, TBBUTTONINFO *lpStruct); +#else +#define getTBBUTTONINFOFields(a,b,c) NULL +#define setTBBUTTONINFOFields(a,b,c) +#endif + +#ifndef NO_TCITEM +TCITEM *getTCITEMFields(JNIEnv *env, jobject lpObject, TCITEM *lpStruct); +void setTCITEMFields(JNIEnv *env, jobject lpObject, TCITEM *lpStruct); +#else +#define getTCITEMFields(a,b,c) NULL +#define setTCITEMFields(a,b,c) +#endif + +#ifndef NO_TEXTMETRIC +TEXTMETRIC *getTEXTMETRICFields(JNIEnv *env, jobject lpObject, TEXTMETRIC *lpStruct); +void setTEXTMETRICFields(JNIEnv *env, jobject lpObject, TEXTMETRIC *lpStruct); +#else +#define getTEXTMETRICFields(a,b,c) NULL +#define setTEXTMETRICFields(a,b,c) +#endif + +#ifndef NO_TEXTMETRICA +TEXTMETRICA *getTEXTMETRICAFields(JNIEnv *env, jobject lpObject, TEXTMETRICA *lpStruct); +void setTEXTMETRICAFields(JNIEnv *env, jobject lpObject, TEXTMETRICA *lpStruct); +#else +#define getTEXTMETRICAFields(a,b,c) NULL +#define setTEXTMETRICAFields(a,b,c) +#endif + +#ifndef NO_TEXTMETRICW +TEXTMETRICW *getTEXTMETRICWFields(JNIEnv *env, jobject lpObject, TEXTMETRICW *lpStruct); +void setTEXTMETRICWFields(JNIEnv *env, jobject lpObject, TEXTMETRICW *lpStruct); +#else +#define getTEXTMETRICWFields(a,b,c) NULL +#define setTEXTMETRICWFields(a,b,c) +#endif + +#ifndef NO_TOOLINFO +TOOLINFO *getTOOLINFOFields(JNIEnv *env, jobject lpObject, TOOLINFO *lpStruct); +void setTOOLINFOFields(JNIEnv *env, jobject lpObject, TOOLINFO *lpStruct); +#else +#define getTOOLINFOFields(a,b,c) NULL +#define setTOOLINFOFields(a,b,c) +#endif + +#ifndef NO_TRACKMOUSEEVENT +TRACKMOUSEEVENT *getTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject, TRACKMOUSEEVENT *lpStruct); +void setTRACKMOUSEEVENTFields(JNIEnv *env, jobject lpObject, TRACKMOUSEEVENT *lpStruct); +#else +#define getTRACKMOUSEEVENTFields(a,b,c) NULL +#define setTRACKMOUSEEVENTFields(a,b,c) +#endif + +#ifndef NO_TRIVERTEX +TRIVERTEX *getTRIVERTEXFields(JNIEnv *env, jobject lpObject, TRIVERTEX *lpStruct); +void setTRIVERTEXFields(JNIEnv *env, jobject lpObject, TRIVERTEX *lpStruct); +#else +#define getTRIVERTEXFields(a,b,c) NULL +#define setTRIVERTEXFields(a,b,c) +#endif + +#ifndef NO_TVHITTESTINFO +TVHITTESTINFO *getTVHITTESTINFOFields(JNIEnv *env, jobject lpObject, TVHITTESTINFO *lpStruct); +void setTVHITTESTINFOFields(JNIEnv *env, jobject lpObject, TVHITTESTINFO *lpStruct); +#else +#define getTVHITTESTINFOFields(a,b,c) NULL +#define setTVHITTESTINFOFields(a,b,c) +#endif + +#ifndef NO_TVINSERTSTRUCT +TVINSERTSTRUCT *getTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject, TVINSERTSTRUCT *lpStruct); +void setTVINSERTSTRUCTFields(JNIEnv *env, jobject lpObject, TVINSERTSTRUCT *lpStruct); +#else +#define getTVINSERTSTRUCTFields(a,b,c) NULL +#define setTVINSERTSTRUCTFields(a,b,c) +#endif + +#ifndef NO_TVITEM +TVITEM *getTVITEMFields(JNIEnv *env, jobject lpObject, TVITEM *lpStruct); +void setTVITEMFields(JNIEnv *env, jobject lpObject, TVITEM *lpStruct); +#else +#define getTVITEMFields(a,b,c) NULL +#define setTVITEMFields(a,b,c) +#endif + +#ifndef NO_WINDOWPLACEMENT +WINDOWPLACEMENT *getWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject, WINDOWPLACEMENT *lpStruct); +void setWINDOWPLACEMENTFields(JNIEnv *env, jobject lpObject, WINDOWPLACEMENT *lpStruct); +#else +#define getWINDOWPLACEMENTFields(a,b,c) NULL +#define setWINDOWPLACEMENTFields(a,b,c) +#endif + +#ifndef NO_WINDOWPOS +WINDOWPOS *getWINDOWPOSFields(JNIEnv *env, jobject lpObject, WINDOWPOS *lpStruct); +void setWINDOWPOSFields(JNIEnv *env, jobject lpObject, WINDOWPOS *lpStruct); +#else +#define getWINDOWPOSFields(a,b,c) NULL +#define setWINDOWPOSFields(a,b,c) +#endif + +#ifndef NO_WNDCLASS +WNDCLASS *getWNDCLASSFields(JNIEnv *env, jobject lpObject, WNDCLASS *lpStruct); +void setWNDCLASSFields(JNIEnv *env, jobject lpObject, WNDCLASS *lpStruct); +#else +#define getWNDCLASSFields(a,b,c) NULL +#define setWNDCLASSFields(a,b,c) +#endif + |