diff options
6 files changed, 39 insertions, 2 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c index 92f1670fae..484442f232 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c @@ -7326,6 +7326,26 @@ JNIEXPORT jintLong JNICALL OS_NATIVE(_1gtk_1accel_1group_1new) } #endif +#ifndef NO__1gtk_1accel_1label_1get_1accel_1widget +JNIEXPORT jintLong JNICALL OS_NATIVE(_1gtk_1accel_1label_1get_1accel_1widget) + (JNIEnv *env, jclass that, jintLong arg0) +{ + jintLong rc = 0; + OS_NATIVE_ENTER(env, that, _1gtk_1accel_1label_1get_1accel_1widget_FUNC); +/* + rc = (jintLong)gtk_accel_label_get_accel_widget((GtkAccelLabel *)arg0); +*/ + { + OS_LOAD_FUNCTION(fp, gtk_accel_label_get_accel_widget) + if (fp) { + rc = (jintLong)((jintLong (CALLING_CONVENTION*)(GtkAccelLabel *))fp)((GtkAccelLabel *)arg0); + } + } + OS_NATIVE_EXIT(env, that, _1gtk_1accel_1label_1get_1accel_1widget_FUNC); + return rc; +} +#endif + #ifndef NO__1gtk_1accel_1label_1set_1accel_1widget JNIEXPORT void JNICALL OS_NATIVE(_1gtk_1accel_1label_1set_1accel_1widget) (JNIEnv *env, jclass that, jintLong arg0, jintLong arg1) diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h index 3b2b5ba659..a5cc1eee30 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h @@ -326,6 +326,7 @@ #define gtk_printer_get_backend_LIB LIB_GTK #define gtk_printer_get_name_LIB LIB_GTK #define gtk_printer_is_default_LIB LIB_GTK +#define gtk_accel_label_get_accel_widget_LIB LIB_GTK #define ubuntu_menu_proxy_get_LIB LIB_GTK #define FcConfigAppFontAddFile_LIB LIB_FONTCONFIG diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c index b1b6aaeda9..f2ab3345d4 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c @@ -18,8 +18,8 @@ #ifdef NATIVE_STATS -int OS_nativeFunctionCount = 1335; -int OS_nativeFunctionCallCount[1335]; +int OS_nativeFunctionCount = 1336; +int OS_nativeFunctionCallCount[1336]; char * OS_nativeFunctionNames[] = { #ifndef JNI64 "Call__IIII", @@ -587,6 +587,7 @@ char * OS_nativeFunctionNames[] = { "_1glib_1micro_1version", "_1glib_1minor_1version", "_1gtk_1accel_1group_1new", + "_1gtk_1accel_1label_1get_1accel_1widget", "_1gtk_1accel_1label_1set_1accel_1widget", "_1gtk_1accelerator_1get_1default_1mod_1mask", "_1gtk_1accelerator_1parse", diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h index 81bd7056a9..cc5ebec505 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h @@ -595,6 +595,7 @@ typedef enum { _1glib_1micro_1version_FUNC, _1glib_1minor_1version_FUNC, _1gtk_1accel_1group_1new_FUNC, + _1gtk_1accel_1label_1get_1accel_1widget_FUNC, _1gtk_1accel_1label_1set_1accel_1widget_FUNC, _1gtk_1accelerator_1get_1default_1mod_1mask_FUNC, _1gtk_1accelerator_1parse_FUNC, diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java index 1b27f48bda..9fa691a87f 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java @@ -5496,6 +5496,19 @@ public static final void gtk_accel_label_set_accel_widget(int /*long*/ accel_lab lock.unlock(); } } +/** + * @method flags=dynamic + * @param accel_label cast=(GtkAccelLabel *) + * */ +public static final native int /*long*/ _gtk_accel_label_get_accel_widget(int /*long*/ accel_label); +public static final int /*long*/ gtk_accel_label_get_accel_widget(int /*long*/ accel_label) { + lock.lock(); + try { + return _gtk_accel_label_get_accel_widget(accel_label); + } finally { + lock.unlock(); + } +} /** @param adjustment cast=(GtkAdjustment *) */ public static final native void _gtk_adjustment_changed(int /*long*/ adjustment); public static final void gtk_adjustment_changed(int /*long*/ adjustment) { diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java index ccaa1c62ec..2b51d4973d 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java @@ -900,6 +900,7 @@ public void setText (String string) { OS.memmove (ptr, buffer, buffer.length); if (OS.GTK_IS_ACCEL_LABEL(label)) { int /*long*/ oldPtr = OS.GTK_ACCEL_LABEL_GET_ACCEL_STRING (label); + System.out.println("Old "+oldPtr+" New: " + OS.gtk_accel_label_get_accel_widget(label)); OS.GTK_ACCEL_LABEL_SET_ACCEL_STRING (label, ptr); if (oldPtr != 0) OS.g_free (oldPtr); } |