[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Little gtkWindow merge from libgcj
From: |
Mark Wielaard |
Subject: |
Little gtkWindow merge from libgcj |
Date: |
Fri, 12 Mar 2004 22:40:58 +0100 |
Hi,
Without this patch from libgcj our TestAWT program wouldn't work so I
add it to make it possible for people to at least try the new AWT
goodness out with 0.08.
2004-03-12 Thomas Fitzsimmons <address@hidden>
* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
(connectJObject): Replace printf calls with g_assert statements.
Move property-notify-event signal connection to ...
(connectSignals): Connect property-notify-event signal. Iterate
through the vbox's children to find layout.
Cheers,
Mark
Index: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
===================================================================
RCS file:
/cvs/gcc/gcc/libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c 22 Jan 2004 09:54:19
-0000 1.19
+++ jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c 22 Jan 2004 20:17:43
-0000 1.20
@@ -190,11 +190,8 @@
children = gtk_container_get_children(GTK_CONTAINER(ptr));
vbox = children->data;
+ g_assert (GTK_IS_VBOX(vbox));
- if(!GTK_IS_VBOX(vbox))
- {
- printf("*** this is not a vbox\n");
- }
children = gtk_container_get_children(GTK_CONTAINER(vbox));
do
{
@@ -202,11 +199,7 @@
children = children->next;
}
while (!GTK_IS_LAYOUT (layout) && children != NULL);
-
- if(!GTK_IS_LAYOUT(layout))
- {
- printf("*** widget is not a layout ***");
- }
+ g_assert (GTK_IS_LAYOUT(layout));
gtk_widget_realize (layout);
@@ -216,9 +209,6 @@
connect_awt_hook (env, obj, 1, GTK_WIDGET (ptr)->window);
- g_signal_connect (G_OBJECT (ptr), "property-notify-event",
- G_CALLBACK (window_property_changed_cb), obj);
-
gdk_threads_leave ();
}
@@ -239,10 +229,16 @@
/* Receive events from the GtkLayout too */
children = gtk_container_get_children(GTK_CONTAINER(ptr));
vbox = children->data;
- g_assert(GTK_IS_VBOX(vbox));
+ g_assert (GTK_IS_VBOX (vbox));
+
children = gtk_container_get_children(GTK_CONTAINER(vbox));
- layout = children->data;
- g_assert(GTK_IS_LAYOUT(layout));
+ do
+ {
+ layout = children->data;
+ children = children->next;
+ }
+ while (!GTK_IS_LAYOUT (layout) && children != NULL);
+ g_assert (GTK_IS_LAYOUT (layout));
g_signal_connect (GTK_OBJECT (layout), "event",
G_CALLBACK (pre_event_handler), *gref);
@@ -265,6 +261,9 @@
g_signal_connect (G_OBJECT (ptr), "window-state-event",
G_CALLBACK (window_window_state_cb), *gref);
+
+ g_signal_connect (G_OBJECT (ptr), "property-notify-event",
+ G_CALLBACK (window_property_changed_cb), *gref);
gdk_threads_leave ();
signature.asc
Description: This is a digitally signed message part
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Little gtkWindow merge from libgcj,
Mark Wielaard <=