diff options
author | Alexander Kurtakov | 2012-03-14 16:13:52 +0000 |
---|---|---|
committer | Silenio Quarti | 2012-03-19 14:39:17 +0000 |
commit | 76ea0a71909995e0099e839e67ffcafe22680240 (patch) | |
tree | 00cda381a86351a835303bb20bfa247abefcf216 | |
parent | 04c22da729e18d1ddf8c71f457fb67dda8450de7 (diff) | |
download | eclipse.platform.swt-76ea0a71909995e0099e839e67ffcafe22680240.tar.gz eclipse.platform.swt-76ea0a71909995e0099e839e67ffcafe22680240.tar.xz eclipse.platform.swt-76ea0a71909995e0099e839e67ffcafe22680240.zip |
Make gdk_draw_arc dynamic.
Every usage is checked that a cairo codepath is executed and returns
before the gdk_draw_arc call.
3 files changed, 11 insertions, 3 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 dad1ee406a..812f921007 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 @@ -5234,7 +5234,15 @@ JNIEXPORT void JNICALL OS_NATIVE(_1gdk_1draw_1arc) (JNIEnv *env, jclass that, jintLong arg0, jintLong arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8) { OS_NATIVE_ENTER(env, that, _1gdk_1draw_1arc_FUNC); - gdk_draw_arc((GdkDrawable *)arg0, (GdkGC *)arg1, (gint)arg2, (gint)arg3, (gint)arg4, (gint)arg5, (gint)arg6, (gint)arg7, (gint)arg8); +/* + gdk_draw_arc(arg0, arg1, (gint)arg2, (gint)arg3, (gint)arg4, (gint)arg5, (gint)arg6, (gint)arg7, (gint)arg8); +*/ + { + OS_LOAD_FUNCTION(fp, gdk_draw_arc) + if (fp) { + ((void (CALLING_CONVENTION*)(jintLong, jintLong, gint, gint, gint, gint, gint, gint, gint))fp)(arg0, arg1, (gint)arg2, (gint)arg3, (gint)arg4, (gint)arg5, (gint)arg6, (gint)arg7, (gint)arg8); + } + } OS_NATIVE_EXIT(env, that, _1gdk_1draw_1arc_FUNC); } #endif 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 0d78a07b38..079b754744 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 @@ -147,6 +147,7 @@ #define gdk_cursor_new_from_pixbuf_LIB LIB_GDK #define gdk_display_get_default_LIB LIB_GDK #define gdk_display_supports_cursor_color_LIB LIB_GDK +#define gdk_draw_arc_LIB LIB_GDK #define gdk_draw_pixbuf_LIB LIB_GDK #define gdk_pixbuf_save_to_bufferv_LIB LIB_GDK #define gdk_screen_get_default_LIB LIB_GDK 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 32677c1b48..0e68a83bdf 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 @@ -3860,8 +3860,7 @@ public static final void gdk_drag_status(int /*long*/ context, int action, int t } } /** - * @param drawable cast=(GdkDrawable *) - * @param gc cast=(GdkGC *) + * @method flags=dynamic * @param filled cast=(gint) * @param x cast=(gint) * @param y cast=(gint) |