diff options
author | Tim Janik <timj@gtk.org> | 2001-06-28 22:49:20 +0000 |
---|---|---|
committer | Tim Janik <timj@src.gnome.org> | 2001-06-28 22:49:20 +0000 |
commit | 00f85bf815499a651ecec41fcccb234b56c2f383 (patch) | |
tree | 4069b72a22071efc323f61711e3a63ae22ff6e5f /gdk/gdkevents.h | |
parent | 10f047cf4ce86b7ff32050279214faac3c294f11 (diff) | |
download | gtk+-00f85bf815499a651ecec41fcccb234b56c2f383.tar.gz |
!GTK_OBJECT_DESTROYED() -> GTK_WIDGET_REALIZE() for resize queueing.
Thu Jun 28 23:53:31 2001 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
GTK_WIDGET_REALIZE() for resize queueing.
* gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
GTK_WIDGET_REALIZE() for post event delivery destruction upon
GDK_DESTROY.
* gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
sompensate for former (pre-2.0) connect_after() facility.
(gtk_widget_send_expose):
(gtk_widget_event): assert the widget is realized, since event delivery
to non-realized widgets is essentially a bug. event handlers should
be able to unconditionally rely on widget->window (unless they
emit events on their own which can trigger widget destruction).
(gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
logic. event delivery happens as follows:
a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
b) if !was_handled in (a) and the widget is still realized, emit event-
specific signal (RUN_LAST handler). returns was_handled.
c) emission of GtkWidget::event-after for notification if the widget is
still realized (regardless of was_handled from previous stages, no
class handler). no return value.
d) was_handled gets passed on to caller, to determine further
propagation. if the widget got unrealized meanwhile, was_handled
is returned as TRUE.
* gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
gdk_event_get_coords().
Diffstat (limited to 'gdk/gdkevents.h')
-rw-r--r-- | gdk/gdkevents.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gdk/gdkevents.h b/gdk/gdkevents.h index a1eeb02ed2..763c1a377a 100644 --- a/gdk/gdkevents.h +++ b/gdk/gdkevents.h @@ -456,10 +456,15 @@ void gdk_event_free (GdkEvent *event); guint32 gdk_event_get_time (GdkEvent *event); gboolean gdk_event_get_state (GdkEvent *event, GdkModifierType *state); +gboolean gdk_event_get_coords (GdkEvent *event, + gdouble *x_win, + gdouble *y_win); +gboolean gdk_event_get_root_coords (GdkEvent *event, + gdouble *x_root, + gdouble *y_root); gboolean gdk_event_get_axis (GdkEvent *event, GdkAxisUse axis_use, gdouble *value); - void gdk_event_handler_set (GdkEventFunc func, gpointer data, GDestroyNotify notify); |