summaryrefslogtreecommitdiff
path: root/gtk/gtkmain.c
diff options
context:
space:
mode:
authorKristian Rietveld <kris@imendio.com>2007-02-06 10:25:21 +0000
committerKristian Rietveld <kristian@src.gnome.org>2007-02-06 10:25:21 +0000
commit0ef946ed64c746aa210f40884d5e082e9c3a6d01 (patch)
treee2e71072af6204dece9abb6a1892507065d66952 /gtk/gtkmain.c
parent47b8d98aba689af51337f34fe54ceb5e8390bfd1 (diff)
downloadgtk+-0ef946ed64c746aa210f40884d5e082e9c3a6d01.tar.gz
New tooltips API.
2007-02-06 Kristian Rietveld <kris@imendio.com> New tooltips API. * gtk/Makefile.am * gtk/gtk.h * gtk/gtk.symbols: build system foo. * gtk/gtkmain.c (gtk_main_do_event): call tooltip event handler hook for appropriate events. * gtk/gtkmarshalers.list: add BOOLEAN:INT,INT,BOOLEAN,OBJECT. * gtk/gtkrc.c: add style for gtk-tooltip. * gtk/gtksettings.c (gtk_settings_class_init): make the different tooltip timeouts configurable. * gtk/gtkwidget.[ch]: add new properties, signals, make sure tooltips are hidden on unmap, destroy, update window event mask on realize, hook into focus change and show help handlers. * gtk/gtkwindow.h: move GtkWindow typdef to gtkwidget.h ... * gtk/gtktooltip.[ch]: new files. * tests/Makefile.am * tests/testtooltips.c: add test application. svn path=/trunk/; revision=17264
Diffstat (limited to 'gtk/gtkmain.c')
-rw-r--r--gtk/gtkmain.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gtk/gtkmain.c b/gtk/gtkmain.c
index cbf393bf40..2480f72f35 100644
--- a/gtk/gtkmain.c
+++ b/gtk/gtkmain.c
@@ -65,6 +65,7 @@
#include "gtksettings.h"
#include "gtkwidget.h"
#include "gtkwindow.h"
+#include "gtktooltip.h"
#include "gtkprivate.h"
#include "gtkdebug.h"
#include "gtkalias.h"
@@ -1593,6 +1594,20 @@ gtk_main_do_event (GdkEvent *event)
g_assert_not_reached ();
break;
}
+
+ if (event->type == GDK_ENTER_NOTIFY
+ || event->type == GDK_LEAVE_NOTIFY
+ || event->type == GDK_BUTTON_PRESS
+ || event->type == GDK_2BUTTON_PRESS
+ || event->type == GDK_3BUTTON_PRESS
+ || event->type == GDK_KEY_PRESS
+ || event->type == GDK_DRAG_ENTER
+ || event->type == GDK_GRAB_BROKEN
+ || event->type == GDK_MOTION_NOTIFY
+ || event->type == GDK_SCROLL)
+ {
+ _gtk_tooltip_handle_event (event);
+ }
tmp_list = current_events;
current_events = g_list_remove_link (current_events, tmp_list);