classpath-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cp-patches] GTK 2.4 scrollbar support


From: Thomas Fitzsimmons
Subject: [cp-patches] GTK 2.4 scrollbar support
Date: Wed, 29 Jun 2005 16:13:36 -0400

Hi,

I committed this patch to mainline.  It re-adds support for the GTK 2.4
scrollbar API.  This ifdefs the last GTK >= 2.6 code so that we only
require GTK 2.4 now.

Tom

2005-06-29  Thomas Fitzsimmons  <address@hidden>

        * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c:
        Re-add GTK 2.4 support.

Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c
===================================================================
RCS file: 
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c,v
retrieving revision 1.14
diff -u -r1.14 gnu_java_awt_peer_gtk_GtkScrollBarPeer.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c        25 May 
2005 08:23:23 -0000      1.14
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c        29 Jun 
2005 20:10:36 -0000
@@ -41,10 +41,15 @@
 #include "gnu_java_awt_peer_gtk_GtkComponentPeer.h"
 #include "gnu_java_awt_peer_gtk_GtkScrollbarPeer.h"
 
+#if GTK_MINOR_VERSION > 4
 static gboolean slider_moved_cb (GtkRange *range,
                                  GtkScrollType scroll,
                                  gdouble value,
                                  jobject obj);
+#else
+static void post_change_event (GtkRange *range,
+                              jobject peer);
+#endif
 
 JNIEXPORT void JNICALL
 Java_gnu_java_awt_peer_gtk_GtkScrollbarPeer_create
@@ -92,8 +97,13 @@
 
   gdk_threads_enter ();
 
+#if GTK_MINOR_VERSION > 4
   g_signal_connect (G_OBJECT (ptr), "change-value",
                     GTK_SIGNAL_FUNC (slider_moved_cb), *gref);
+#else
+  g_signal_connect (G_OBJECT (ptr), "value-changed",
+                    G_CALLBACK (post_change_event), *gref);
+#endif
 
   gdk_threads_leave ();
 
@@ -157,6 +167,7 @@
   gdk_threads_leave ();
 }
 
+#if GTK_MINOR_VERSION > 4
 static gboolean
 slider_moved_cb (GtkRange *range,
                  GtkScrollType scroll,
@@ -212,3 +223,13 @@
     }
   return FALSE;
 }
+#else
+static void
+post_change_event (GtkRange *range, jobject peer)
+{
+  GtkAdjustment *adj;
+  adj = gtk_range_get_adjustment (range);
+  (*gdk_env())->CallVoidMethod (gdk_env(), peer, postAdjustmentEventID,
+                               AWT_ADJUSTMENT_TRACK, (jint) adj->value);
+}
+#endif

reply via email to

[Prev in Thread] Current Thread [Next in Thread]