enter/leave events on click?



Hi folks,

Can anyone tell me why, with the following program, clicking in the event box
gives me enter and leave events? For one of my projects I need to turn specific
behavior on when the pointer is over a certain widget and off when the pointer
leaves, but the enter/leave events I'm getting from clicks are making that very
hard.

This is with gtk+-2.0.

Many thanks,
-lars

#include <stdio.h>
#include <stdlib.h>
#include <gtk/gtk.h>

gint enter_event(GtkWidget *widget, GdkEventCrossing *event)
{
    printf("enter\n");
    return TRUE;
}

gint leave_event(GtkWidget *widget, GdkEventCrossing *event)
{
    printf("leave\n");
    return TRUE;
}

int main( int argc,
          char *argv[] )
{
    GtkWidget *window;
    GtkWidget *event_box;

    gtk_init (&argc, &argv);

    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_widget_set_usize(window, 50, 50);
    gtk_window_set_title (GTK_WINDOW (window), "Event Box");
    g_signal_connect (G_OBJECT (window), "destroy",
              G_CALLBACK (exit), NULL);
    gtk_container_set_border_width (GTK_CONTAINER (window), 10);

    event_box = gtk_event_box_new ();
    gtk_container_add (GTK_CONTAINER (window), event_box);
    gtk_widget_show (event_box);
    g_signal_connect (G_OBJECT (event_box), "enter_notify_event",
              G_CALLBACK (enter_event), NULL);
    g_signal_connect (G_OBJECT (event_box), "leave_notify_event",
              G_CALLBACK (leave_event), NULL);
    gtk_widget_show (window);
    gtk_main ();
    return 0;
}

___________________________________________________________
lars damerow
button pusher
pixar animation studios
lars pixar com

"Even a stopped clock gives the right time twice a day."



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