# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1035150646 0 # Node ID 594307469c79da537cc3f32b8eceb13fd483fb1a # Parent 54014258099a98f15d018126e6baeb5366a47423 Signal handler code cleanups for GTK 2.0. diff -r 54014258099a -r 594307469c79 gtk/dw.c --- a/gtk/dw.c Sun Oct 20 13:07:08 2002 +0000 +++ b/gtk/dw.c Sun Oct 20 21:50:46 2002 +0000 @@ -82,15 +82,15 @@ gint _key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer data); gint _generic_event(GtkWidget *widget, gpointer data); gint _configure_event(GtkWidget *widget, GdkEventConfigure *event, gpointer data); -void _activate_event(GtkWidget *widget, gpointer data); -void _container_select_event(GtkWidget *widget, GdkEventButton *event, gpointer data); -void _container_context_event(GtkWidget *widget, GdkEventButton *event, gpointer data); -void _item_select_event(GtkWidget *widget, GtkWidget *child, gpointer data); -void _expose_event(GtkWidget *widget, GdkEventExpose *event, gpointer data); -void _set_focus_event(GtkWindow *window, GtkWidget *widget, gpointer data); -void _tree_select_event(GtkTree *tree, GtkWidget *child, gpointer data); -void _tree_context_event(GtkWidget *widget, GdkEventButton *event, gpointer data); -void _value_changed_event(GtkAdjustment *adjustment, gpointer user_data); +gint _activate_event(GtkWidget *widget, gpointer data); +gint _container_select_event(GtkWidget *widget, GdkEventButton *event, gpointer data); +gint _container_context_event(GtkWidget *widget, GdkEventButton *event, gpointer data); +gint _item_select_event(GtkWidget *widget, GtkWidget *child, gpointer data); +gint _expose_event(GtkWidget *widget, GdkEventExpose *event, gpointer data); +gint _set_focus_event(GtkWindow *window, GtkWidget *widget, gpointer data); +gint _tree_select_event(GtkTree *tree, GtkWidget *child, gpointer data); +gint _tree_context_event(GtkWidget *widget, GdkEventButton *event, gpointer data); +gint _value_changed_event(GtkAdjustment *adjustment, gpointer user_data); void msleep(long period); @@ -150,21 +150,24 @@ return NULL; } -void _set_focus_event(GtkWindow *window, GtkWidget *widget, gpointer data) +gint _set_focus_event(GtkWindow *window, GtkWidget *widget, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { int (*setfocusfunc)(HWND, void *) = work->func; - setfocusfunc((HWND)window, work->data); - } + retval = setfocusfunc((HWND)window, work->data); + } + return retval; } gint _button_press_event(GtkWidget *widget, GdkEventButton *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { @@ -176,14 +179,15 @@ else if(event->button == 2) mybutton = 3; - buttonfunc(widget, event->x, event->y, mybutton, work->data); - } - return TRUE; + retval = buttonfunc(widget, event->x, event->y, mybutton, work->data); + } + return retval; } gint _button_release_event(GtkWidget *widget, GdkEventButton *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { @@ -195,14 +199,15 @@ else if(event->button == 2) mybutton = 3; - buttonfunc(widget, event->x, event->y, mybutton, work->data); - } - return TRUE; + retval = buttonfunc(widget, event->x, event->y, mybutton, work->data); + } + return retval; } gint _motion_notify_event(GtkWidget *widget, GdkEventMotion *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { @@ -226,79 +231,85 @@ if (state & GDK_BUTTON2_MASK) keys |= DW_BUTTON3_MASK; - motionfunc(widget, x, y, keys, work->data); - } - return TRUE; + retval = motionfunc(widget, x, y, keys, work->data); + } + return retval; } gint _delete_event(GtkWidget *widget, GdkEvent *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { int (*closefunc)(HWND, void *) = work->func; - closefunc(widget, work->data); - } - return TRUE; + retval = closefunc(widget, work->data); + } + return retval; } gint _key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { int (*keypressfunc)(HWND, int, void *) = work->func; - keypressfunc(widget, *event->string, work->data); - } - return TRUE; + retval = keypressfunc(widget, *event->string, work->data); + } + return retval; } gint _generic_event(GtkWidget *widget, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { int (*genericfunc)(HWND, void *) = work->func; - genericfunc(widget, work->data); - } - return TRUE; -} - -void _activate_event(GtkWidget *widget, gpointer data) + retval = genericfunc(widget, work->data); + } + return retval; +} + +gint _activate_event(GtkWidget *widget, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work && !_dw_ignore_click) { - void (*activatefunc)(HWND, void *) = work->func; - - activatefunc(popup ? popup : work->window, work->data); - } - return; + int (*activatefunc)(HWND, void *) = work->func; + + retval = activatefunc(popup ? popup : work->window, work->data); + } + return retval; } gint _configure_event(GtkWidget *widget, GdkEventConfigure *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { int (*sizefunc)(HWND, int, int, void *) = work->func; - sizefunc(widget, event->width, event->height, work->data); - } - return TRUE; -} - -void _expose_event(GtkWidget *widget, GdkEventExpose *event, gpointer data) + retval = sizefunc(widget, event->width, event->height, work->data); + } + return retval; +} + +gint _expose_event(GtkWidget *widget, GdkEventExpose *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { @@ -309,17 +320,19 @@ exp.y = event->area.y; exp.width = event->area.width; exp.height = event->area.height; - exposefunc(widget, &exp, work->data); - } -} - -void _item_select_event(GtkWidget *widget, GtkWidget *child, gpointer data) + retval = exposefunc(widget, &exp, work->data); + } + return retval; +} + +gint _item_select_event(GtkWidget *widget, GtkWidget *child, gpointer data) { SignalHandler *work = (SignalHandler *)data; static int _dw_recursing = 0; + int retval = FALSE; if(_dw_recursing) - return; + return FALSE; if(work) { @@ -334,7 +347,7 @@ else if(GTK_IS_LIST(widget)) list = GTK_LIST(widget)->children; else - return; + return FALSE; while(list) { @@ -344,7 +357,7 @@ { gtk_object_set_data(GTK_OBJECT(work->window), "item", (gpointer)item); if(selectfunc) - selectfunc(work->window, item, work->data); + retval = selectfunc(work->window, item, work->data); } break; } @@ -353,37 +366,41 @@ } _dw_recursing = 0; } -} - -void _container_context_event(GtkWidget *widget, GdkEventButton *event, gpointer data) + return retval; +} + +gint _container_context_event(GtkWidget *widget, GdkEventButton *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { if(event->button == 3) { - void (*contextfunc)(HWND, char *, int, int, void *) = work->func; + int (*contextfunc)(HWND, char *, int, int, void *) = work->func; char *text; int row, col; gtk_clist_get_selection_info(GTK_CLIST(widget), event->x, event->y, &row, &col); text = (char *)gtk_clist_get_row_data(GTK_CLIST(widget), row); - contextfunc(work->window, text, event->x, event->y, work->data); + retval = contextfunc(work->window, text, event->x, event->y, work->data); } } -} - -void _tree_context_event(GtkWidget *widget, GdkEventButton *event, gpointer data) + return retval; +} + +gint _tree_context_event(GtkWidget *widget, GdkEventButton *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { if(event->button == 3) { - void (*contextfunc)(HWND, char *, int, int, void *, void *) = work->func; + int (*contextfunc)(HWND, char *, int, int, void *, void *) = work->func; char *text = (char *)gtk_object_get_data(GTK_OBJECT(widget), "text"); void *itemdata = (void *)gtk_object_get_data(GTK_OBJECT(widget), "itemdata"); @@ -403,15 +420,17 @@ } } - contextfunc(work->window, text, event->x, event->y, work->data, itemdata); + retval = contextfunc(work->window, text, event->x, event->y, work->data, itemdata); } } -} - -void _tree_select_event(GtkTree *tree, GtkWidget *child, gpointer data) + return retval; +} + +gint _tree_select_event(GtkTree *tree, GtkWidget *child, gpointer data) { SignalHandler *work = (SignalHandler *)data; GtkWidget *treeroot = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(child), "tree"); + int retval = FALSE; if(treeroot && GTK_IS_TREE(treeroot)) { @@ -423,34 +442,37 @@ if(work) { - void (*treeselectfunc)(HWND, HWND, char *, void *, void *) = work->func; + int (*treeselectfunc)(HWND, HWND, char *, void *, void *) = work->func; char *text = (char *)gtk_object_get_data(GTK_OBJECT(child), "text"); void *itemdata = (char *)gtk_object_get_data(GTK_OBJECT(child), "itemdata"); - treeselectfunc(work->window, child, text, itemdata, work->data); - } -} - -void _container_select_event(GtkWidget *widget, GdkEventButton *event, gpointer data) + retval = treeselectfunc(work->window, child, text, itemdata, work->data); + } + return retval; +} + +gint _container_select_event(GtkWidget *widget, GdkEventButton *event, gpointer data) { SignalHandler *work = (SignalHandler *)data; + int retval = FALSE; if(work) { if(event->button == 1 && event->type == GDK_2BUTTON_PRESS) { - void (*contextfunc)(HWND, char *, void *) = work->func; + int (*contextfunc)(HWND, char *, void *) = work->func; char *text; int row, col; gtk_clist_get_selection_info(GTK_CLIST(widget), event->x, event->y, &row, &col); text = (char *)gtk_clist_get_row_data(GTK_CLIST(widget), row); - contextfunc(work->window, text, work->data); + retval = contextfunc(work->window, text, work->data); } } -} - -void _select_row(GtkWidget *widget, gint row, gint column, GdkEventButton *event, gpointer data) + return retval; +} + +gint _select_row(GtkWidget *widget, gint row, gint column, GdkEventButton *event, gpointer data) { GList *tmp = (GList *)gtk_object_get_data(GTK_OBJECT(widget), "selectlist"); char *rowdata = gtk_clist_get_row_data(GTK_CLIST(widget), row); @@ -467,16 +489,16 @@ tmp = g_list_append(tmp, rowdata); gtk_object_set_data(GTK_OBJECT(widget), "selectlist", tmp); } - -} - -void _unselect_row(GtkWidget *widget, gint row, gint column, GdkEventButton *event, gpointer data) + return FALSE; +} + +gint _unselect_row(GtkWidget *widget, gint row, gint column, GdkEventButton *event, gpointer data) { GList *tmp; char *rowdata; if(_dw_unselecting) - return; + return FALSE; tmp = (GList *)gtk_object_get_data(GTK_OBJECT(widget), "selectlist"); rowdata = gtk_clist_get_row_data(GTK_CLIST(widget), row); @@ -486,6 +508,7 @@ tmp = g_list_remove(tmp, rowdata); gtk_object_set_data(GTK_OBJECT(widget), "selectlist", tmp); } + return FALSE; } int _round_value(gfloat val) @@ -498,7 +521,7 @@ return newval; } -void _value_changed_event(GtkAdjustment *adjustment, gpointer data) +gint _value_changed_event(GtkAdjustment *adjustment, gpointer data) { GtkWidget *slider = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(adjustment), "slider"); SignalHandler *work = (SignalHandler *)data; @@ -519,6 +542,7 @@ valuechangedfunc(work->window, val, work->data); } } + return FALSE; } gint _default_key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer data) @@ -535,7 +559,7 @@ gtk_widget_grab_focus(next); } } - return TRUE; + return FALSE; } GdkPixmap *_find_pixmap(GdkBitmap **bitmap, long id, HWND handle, unsigned long *userwidth, unsigned long *userheight)