Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristophe Cornu2005-01-26 20:01:01 +0000
committerChristophe Cornu2005-01-26 20:01:01 +0000
commit45ead7e02d1b860c56546f26ef3ba779e562e49e (patch)
treeadb42fe0cc347dd4d758e2cb213130d5993d5734
parentb92209209f03511841435e43161860c522052575 (diff)
downloadeclipse.platform.swt-45ead7e02d1b860c56546f26ef3ba779e562e49e.tar.gz
eclipse.platform.swt-45ead7e02d1b860c56546f26ef3ba779e562e49e.tar.xz
eclipse.platform.swt-45ead7e02d1b860c56546f26ef3ba779e562e49e.zip
18699
-rw-r--r--bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.win32.OS.properties32
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.c64
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os.h13
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.c8
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.h4
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.c46
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_structs.h12
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/BUTTON_IMAGELIST.java21
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/OS.java21
9 files changed, 210 insertions, 11 deletions
diff --git a/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.win32.OS.properties b/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.win32.OS.properties
index 11a12b09f4..183c235e87 100644
--- a/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.win32.OS.properties
+++ b/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/org.eclipse.swt.internal.win32.OS.properties
@@ -45,6 +45,14 @@ BROWSEINFO_lpfn=cast=(BFFCALLBACK)
BROWSEINFO_lParam=
BROWSEINFO_iImage=
+org_eclipse_swt_internal_win32_BUTTON_1IMAGELIST=
+BUTTON_IMAGELIST_himl=cast=HIMAGELIST
+BUTTON_IMAGELIST_margin_left=accessor=margin.left,cast=LONG
+BUTTON_IMAGELIST_margin_top=accessor=margin.top,cast=LONG
+BUTTON_IMAGELIST_margin_right=accessor=margin.right,cast=LONG
+BUTTON_IMAGELIST_margin_bottom=accessor=margin.bottom,cast=LONG
+BUTTON_IMAGELIST_uAlign=cast=UINT
+
org_eclipse_swt_internal_win32_CHOOSECOLOR=
CHOOSECOLOR_lStructSize=
CHOOSECOLOR_hwndOwner=cast=(HWND)
@@ -2976,6 +2984,12 @@ OS_SendMessageA__IIII_1=
OS_SendMessageA__IIII_2=cast=(WPARAM)
OS_SendMessageA__IIII_3=cast=(LPARAM)
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2=
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_0=cast=HWND
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_1=
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_2=cast=WPARAM
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_3=cast=LPARAM
+
OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_HDITEM_2=
OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_HDITEM_2_0=cast=HWND
OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_HDITEM_2_1=
@@ -3024,6 +3038,12 @@ OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2_1=
OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2_2=cast=(WPARAM)
OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2_3=cast=(LPARAM)
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2=
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2_0=cast=HWND
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2_1=
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2_2=cast=WPARAM
+OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2_3=cast=LPARAM
+
OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2=
OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2_0=cast=(HWND)
OS_SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2_1=
@@ -3108,6 +3128,12 @@ OS_SendMessageW__IIII_1=
OS_SendMessageW__IIII_2=cast=(WPARAM)
OS_SendMessageW__IIII_3=cast=(LPARAM)
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2=
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_0=cast=HWND
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_1=
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_2=cast=WPARAM
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_3=cast=LPARAM
+
OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_HDITEM_2=
OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_HDITEM_2_0=cast=HWND
OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_HDITEM_2_1=
@@ -3156,6 +3182,12 @@ OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2_1=
OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2_2=cast=(WPARAM)
OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2_3=cast=(LPARAM)
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2=
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2_0=cast=HWND
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2_1=
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2_2=cast=WPARAM
+OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2_3=cast=LPARAM
+
OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2=
OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2_0=cast=(HWND)
OS_SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2_1=
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 fb0b80d987..de2b91720e 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
@@ -7872,6 +7872,22 @@ JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIII)
}
#endif
+#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2
+JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2)
+ (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
+{
+ BUTTON_IMAGELIST _arg3, *lparg3=NULL;
+ jint rc = 0;
+ OS_NATIVE_ENTER(env, that, SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_FUNC);
+ if (arg3) if ((lparg3 = getBUTTON_IMAGELISTFields(env, arg3, &_arg3)) == NULL) goto fail;
+ rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
+fail:
+ if (arg3 && lparg3) setBUTTON_IMAGELISTFields(env, arg3, lparg3);
+ OS_NATIVE_EXIT(env, that, SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_FUNC);
+ return rc;
+}
+#endif
+
#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_HDITEM_2
JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_HDITEM_2)
(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
@@ -8000,6 +8016,22 @@ fail:
}
#endif
+#ifndef NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2
+JNIEXPORT jint JNICALL OS_NATIVE(SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2)
+ (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
+{
+ SIZE _arg3, *lparg3=NULL;
+ jint rc = 0;
+ OS_NATIVE_ENTER(env, that, SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2_FUNC);
+ if (arg3) if ((lparg3 = getSIZEFields(env, arg3, &_arg3)) == NULL) goto fail;
+ rc = (jint)SendMessageA((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
+fail:
+ if (arg3 && lparg3) setSIZEFields(env, arg3, lparg3);
+ OS_NATIVE_EXIT(env, that, SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2_FUNC);
+ 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)
@@ -8223,6 +8255,22 @@ JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIII)
}
#endif
+#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2
+JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2)
+ (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
+{
+ BUTTON_IMAGELIST _arg3, *lparg3=NULL;
+ jint rc = 0;
+ OS_NATIVE_ENTER(env, that, SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_FUNC);
+ if (arg3) if ((lparg3 = getBUTTON_IMAGELISTFields(env, arg3, &_arg3)) == NULL) goto fail;
+ rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
+fail:
+ if (arg3 && lparg3) setBUTTON_IMAGELISTFields(env, arg3, lparg3);
+ OS_NATIVE_EXIT(env, that, SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_FUNC);
+ return rc;
+}
+#endif
+
#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_HDITEM_2
JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_HDITEM_2)
(JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
@@ -8351,6 +8399,22 @@ fail:
}
#endif
+#ifndef NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2
+JNIEXPORT jint JNICALL OS_NATIVE(SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2)
+ (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2, jobject arg3)
+{
+ SIZE _arg3, *lparg3=NULL;
+ jint rc = 0;
+ OS_NATIVE_ENTER(env, that, SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2_FUNC);
+ if (arg3) if ((lparg3 = getSIZEFields(env, arg3, &_arg3)) == NULL) goto fail;
+ rc = (jint)SendMessageW((HWND)arg0, arg1, (WPARAM)arg2, (LPARAM)lparg3);
+fail:
+ if (arg3 && lparg3) setSIZEFields(env, arg3, lparg3);
+ OS_NATIVE_EXIT(env, that, SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2_FUNC);
+ 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)
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 f391ddc25a..bee4053a95 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
@@ -12,15 +12,6 @@
#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>
@@ -55,6 +46,7 @@
/* Structs excludes */
#ifdef _WIN32_WCE
#define NO_BROWSEINFO
+#define NO_BUTTON_IMAGELIST
#define NO_CHOOSEFONT
#define NO_COMBOBOXINFO
#define NO_DOCINFO
@@ -315,6 +307,7 @@
#define NO_SHBrowseForFolderW
#define NO_SHGetPathFromIDListA
#define NO_SHGetPathFromIDListW
+#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2
#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
@@ -331,12 +324,14 @@
#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_UDACCEL_2
#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_HDITEM_2
#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2
+#define NO_SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_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_BUTTON_1IMAGELIST_2
#define NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_MARGINS_2
#define NO_SendMessageW__IIILorg_eclipse_swt_internal_win32_TOOLINFO_2
#define NO_SetDIBColorTable
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.c b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.c
index 79690ab6a9..0f48d7b65e 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.c
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.c
@@ -14,8 +14,8 @@
#ifdef NATIVE_STATS
-int OS_nativeFunctionCount = 623;
-int OS_nativeFunctionCallCount[623];
+int OS_nativeFunctionCount = 627;
+int OS_nativeFunctionCallCount[627];
char * OS_nativeFunctionNames[] = {
"AbortDoc",
"ActivateKeyboardLayout",
@@ -505,6 +505,7 @@ char * OS_nativeFunctionNames[] = {
"SelectPalette",
"SendInput",
"SendMessageA__IIII",
+ "SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2",
"SendMessageA__IIILorg_eclipse_swt_internal_win32_HDITEM_2",
"SendMessageA__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2",
"SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2",
@@ -513,6 +514,7 @@ char * OS_nativeFunctionNames[] = {
"SendMessageA__IIILorg_eclipse_swt_internal_win32_MARGINS_2",
"SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2",
"SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2",
+ "SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2",
"SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2",
"SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2",
"SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2",
@@ -527,6 +529,7 @@ char * OS_nativeFunctionNames[] = {
"SendMessageA__II_3II",
"SendMessageA__II_3I_3I",
"SendMessageW__IIII",
+ "SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2",
"SendMessageW__IIILorg_eclipse_swt_internal_win32_HDITEM_2",
"SendMessageW__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2",
"SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2",
@@ -535,6 +538,7 @@ char * OS_nativeFunctionNames[] = {
"SendMessageW__IIILorg_eclipse_swt_internal_win32_MARGINS_2",
"SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2",
"SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2",
+ "SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2",
"SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2",
"SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2",
"SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2",
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.h b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.h
index bdea5757df..ffc855a4cc 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.h
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/library/os_stats.h
@@ -509,6 +509,7 @@ typedef enum {
SelectPalette_FUNC,
SendInput_FUNC,
SendMessageA__IIII_FUNC,
+ SendMessageA__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_FUNC,
SendMessageA__IIILorg_eclipse_swt_internal_win32_HDITEM_2_FUNC,
SendMessageA__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2_FUNC,
SendMessageA__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2_FUNC,
@@ -517,6 +518,7 @@ typedef enum {
SendMessageA__IIILorg_eclipse_swt_internal_win32_MARGINS_2_FUNC,
SendMessageA__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2_FUNC,
SendMessageA__IIILorg_eclipse_swt_internal_win32_RECT_2_FUNC,
+ SendMessageA__IIILorg_eclipse_swt_internal_win32_SIZE_2_FUNC,
SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2_FUNC,
SendMessageA__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2_FUNC,
SendMessageA__IIILorg_eclipse_swt_internal_win32_TCITEM_2_FUNC,
@@ -531,6 +533,7 @@ typedef enum {
SendMessageA__II_3II_FUNC,
SendMessageA__II_3I_3I_FUNC,
SendMessageW__IIII_FUNC,
+ SendMessageW__IIILorg_eclipse_swt_internal_win32_BUTTON_1IMAGELIST_2_FUNC,
SendMessageW__IIILorg_eclipse_swt_internal_win32_HDITEM_2_FUNC,
SendMessageW__IIILorg_eclipse_swt_internal_win32_HDLAYOUT_2_FUNC,
SendMessageW__IIILorg_eclipse_swt_internal_win32_LVCOLUMN_2_FUNC,
@@ -539,6 +542,7 @@ typedef enum {
SendMessageW__IIILorg_eclipse_swt_internal_win32_MARGINS_2_FUNC,
SendMessageW__IIILorg_eclipse_swt_internal_win32_REBARBANDINFO_2_FUNC,
SendMessageW__IIILorg_eclipse_swt_internal_win32_RECT_2_FUNC,
+ SendMessageW__IIILorg_eclipse_swt_internal_win32_SIZE_2_FUNC,
SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTONINFO_2_FUNC,
SendMessageW__IIILorg_eclipse_swt_internal_win32_TBBUTTON_2_FUNC,
SendMessageW__IIILorg_eclipse_swt_internal_win32_TCITEM_2_FUNC,
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 b47a5da9e3..1a669ac0a4 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
@@ -211,6 +211,52 @@ void setBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct)
}
#endif
+#ifndef NO_BUTTON_IMAGELIST
+typedef struct BUTTON_IMAGELIST_FID_CACHE {
+ int cached;
+ jclass clazz;
+ jfieldID himl, margin_left, margin_top, margin_right, margin_bottom, uAlign;
+} BUTTON_IMAGELIST_FID_CACHE;
+
+BUTTON_IMAGELIST_FID_CACHE BUTTON_IMAGELISTFc;
+
+void cacheBUTTON_IMAGELISTFields(JNIEnv *env, jobject lpObject)
+{
+ if (BUTTON_IMAGELISTFc.cached) return;
+ BUTTON_IMAGELISTFc.clazz = (*env)->GetObjectClass(env, lpObject);
+ BUTTON_IMAGELISTFc.himl = (*env)->GetFieldID(env, BUTTON_IMAGELISTFc.clazz, "himl", "I");
+ BUTTON_IMAGELISTFc.margin_left = (*env)->GetFieldID(env, BUTTON_IMAGELISTFc.clazz, "margin_left", "I");
+ BUTTON_IMAGELISTFc.margin_top = (*env)->GetFieldID(env, BUTTON_IMAGELISTFc.clazz, "margin_top", "I");
+ BUTTON_IMAGELISTFc.margin_right = (*env)->GetFieldID(env, BUTTON_IMAGELISTFc.clazz, "margin_right", "I");
+ BUTTON_IMAGELISTFc.margin_bottom = (*env)->GetFieldID(env, BUTTON_IMAGELISTFc.clazz, "margin_bottom", "I");
+ BUTTON_IMAGELISTFc.uAlign = (*env)->GetFieldID(env, BUTTON_IMAGELISTFc.clazz, "uAlign", "I");
+ BUTTON_IMAGELISTFc.cached = 1;
+}
+
+BUTTON_IMAGELIST *getBUTTON_IMAGELISTFields(JNIEnv *env, jobject lpObject, BUTTON_IMAGELIST *lpStruct)
+{
+ if (!BUTTON_IMAGELISTFc.cached) cacheBUTTON_IMAGELISTFields(env, lpObject);
+ lpStruct->himl = (HIMAGELIST)(*env)->GetIntField(env, lpObject, BUTTON_IMAGELISTFc.himl);
+ lpStruct->margin.left = (LONG)(*env)->GetIntField(env, lpObject, BUTTON_IMAGELISTFc.margin_left);
+ lpStruct->margin.top = (LONG)(*env)->GetIntField(env, lpObject, BUTTON_IMAGELISTFc.margin_top);
+ lpStruct->margin.right = (LONG)(*env)->GetIntField(env, lpObject, BUTTON_IMAGELISTFc.margin_right);
+ lpStruct->margin.bottom = (LONG)(*env)->GetIntField(env, lpObject, BUTTON_IMAGELISTFc.margin_bottom);
+ lpStruct->uAlign = (UINT)(*env)->GetIntField(env, lpObject, BUTTON_IMAGELISTFc.uAlign);
+ return lpStruct;
+}
+
+void setBUTTON_IMAGELISTFields(JNIEnv *env, jobject lpObject, BUTTON_IMAGELIST *lpStruct)
+{
+ if (!BUTTON_IMAGELISTFc.cached) cacheBUTTON_IMAGELISTFields(env, lpObject);
+ (*env)->SetIntField(env, lpObject, BUTTON_IMAGELISTFc.himl, (jint)lpStruct->himl);
+ (*env)->SetIntField(env, lpObject, BUTTON_IMAGELISTFc.margin_left, (jint)lpStruct->margin.left);
+ (*env)->SetIntField(env, lpObject, BUTTON_IMAGELISTFc.margin_top, (jint)lpStruct->margin.top);
+ (*env)->SetIntField(env, lpObject, BUTTON_IMAGELISTFc.margin_right, (jint)lpStruct->margin.right);
+ (*env)->SetIntField(env, lpObject, BUTTON_IMAGELISTFc.margin_bottom, (jint)lpStruct->margin.bottom);
+ (*env)->SetIntField(env, lpObject, BUTTON_IMAGELISTFc.uAlign, (jint)lpStruct->uAlign);
+}
+#endif
+
#ifndef NO_CHOOSECOLOR
typedef struct CHOOSECOLOR_FID_CACHE {
int cached;
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 9d68de78ba..a30bc3f630 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
@@ -59,6 +59,18 @@ void setBROWSEINFOFields(JNIEnv *env, jobject lpObject, BROWSEINFO *lpStruct);
#define BROWSEINFO_sizeof() 0
#endif
+#ifndef NO_BUTTON_IMAGELIST
+void cacheBUTTON_IMAGELISTFields(JNIEnv *env, jobject lpObject);
+BUTTON_IMAGELIST *getBUTTON_IMAGELISTFields(JNIEnv *env, jobject lpObject, BUTTON_IMAGELIST *lpStruct);
+void setBUTTON_IMAGELISTFields(JNIEnv *env, jobject lpObject, BUTTON_IMAGELIST *lpStruct);
+#define BUTTON_IMAGELIST_sizeof() sizeof(BUTTON_IMAGELIST)
+#else
+#define cacheBUTTON_IMAGELISTFields(a,b)
+#define getBUTTON_IMAGELISTFields(a,b,c) NULL
+#define setBUTTON_IMAGELISTFields(a,b,c)
+#define BUTTON_IMAGELIST_sizeof() 0
+#endif
+
#ifndef NO_CHOOSECOLOR
void cacheCHOOSECOLORFields(JNIEnv *env, jobject lpObject);
CHOOSECOLOR *getCHOOSECOLORFields(JNIEnv *env, jobject lpObject, CHOOSECOLOR *lpStruct);
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/BUTTON_IMAGELIST.java b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/BUTTON_IMAGELIST.java
new file mode 100644
index 0000000000..1814a15805
--- /dev/null
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/BUTTON_IMAGELIST.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * 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
+ *******************************************************************************/
+package org.eclipse.swt.internal.win32;
+
+public class BUTTON_IMAGELIST {
+ public int himl;
+ public int margin_left;
+ public int margin_top;
+ public int margin_right;
+ public int margin_bottom;
+ public int uAlign;
+ public static final int sizeof = 24;
+}
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/OS.java b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/OS.java
index e2ca8f82b3..b327e0b1f4 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/OS.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/win32/org/eclipse/swt/internal/win32/OS.java
@@ -165,6 +165,13 @@ public class OS extends Platform {
public static final int BI_BITFIELDS = 3;
public static final int BI_RGB = 0;
public static final int BLACKNESS = 0x42;
+ public static final int BCM_FIRST = 0x1600;
+ public static final int BCM_GETIDEALSIZE = BCM_FIRST + 0x1;
+ public static final int BCM_GETIMAGELIST = BCM_FIRST + 0x3;
+ public static final int BCM_SETIMAGELIST = BCM_FIRST + 0x2;
+ public static final int BUTTON_IMAGELIST_ALIGN_LEFT = 0;
+ public static final int BUTTON_IMAGELIST_ALIGN_RIGHT = 1;
+ public static final int BUTTON_IMAGELIST_ALIGN_CENTER = 4;
public static final int BM_CLICK = 0xf5;
public static final int BM_GETCHECK = 0xf0;
public static final int BM_SETCHECK = 0xf1;
@@ -2110,6 +2117,11 @@ public static final int SendMessage (int hWnd, int Msg, int [] wParam, int [] lP
return SendMessageA (hWnd, Msg, wParam, lParam);
}
+public static final int SendMessage (int hWnd, int Msg, int wParam, SIZE lParam) {
+ if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
+ return SendMessageA (hWnd, Msg, wParam, lParam);
+}
+
public static final int SendMessage (int hWnd, int Msg, int [] wParam, int lParam) {
if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
return SendMessageA (hWnd, Msg, wParam, lParam);
@@ -2210,6 +2222,11 @@ public static final int SendMessage (int hWnd, int Msg, int wParam, HDLAYOUT lPa
return SendMessageA (hWnd, Msg, wParam, lParam);
}
+public static final int SendMessage (int hWnd, int Msg, int wParam, BUTTON_IMAGELIST lParam) {
+ if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
+ return SendMessageA (hWnd, Msg, wParam, lParam);
+}
+
public static final boolean SetMenuItemInfo (int hMenu, int uItem, boolean fByPosition, MENUITEMINFO lpmii) {
if (IsUnicode) return SetMenuItemInfoW (hMenu, uItem, fByPosition, lpmii);
return SetMenuItemInfoA (hMenu, uItem, fByPosition, lpmii);
@@ -2806,6 +2823,8 @@ public static final native int SendMessageW (int hWnd, int Msg, int wParam, TVIT
public static final native int SendMessageW (int hWnd, int Msg, int wParam, UDACCEL lParam);
public static final native int SendMessageW (int hWnd, int Msg, int wParam, HDITEM lParam);
public static final native int SendMessageW (int hWnd, int Msg, int wParam, HDLAYOUT lParam);
+public static final native int SendMessageW (int hWnd, int Msg, int wParam, BUTTON_IMAGELIST lParam);
+public static final native int SendMessageW (int hWnd, int Msg, int wParam, SIZE lParam);
public static final native int SendMessageA (int hWnd, int Msg, int [] wParam, int [] lParam);
public static final native int SendMessageA (int hWnd, int Msg, int [] wParam, int lParam);
public static final native int SendMessageA (int hWnd, int Msg, int wParam, byte [] lParam);
@@ -2828,6 +2847,8 @@ public static final native int SendMessageA (int hWnd, int Msg, int wParam, TVIT
public static final native int SendMessageA (int hWnd, int Msg, int wParam, UDACCEL lParam);
public static final native int SendMessageA (int hWnd, int Msg, int wParam, HDITEM lParam);
public static final native int SendMessageA (int hWnd, int Msg, int wParam, HDLAYOUT lParam);
+public static final native int SendMessageA (int hWnd, int Msg, int wParam, BUTTON_IMAGELIST lParam);
+public static final native int SendMessageA (int hWnd, int Msg, int wParam, SIZE lParam);
public static final native int SetActiveWindow (int hWnd);
public static final native int SetBkColor (int hdc, int colorRef);
public static final native int SetBkMode (int hdc, int mode);

Back to the top