diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-02-19 00:48:37 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-02-19 00:48:37 +0800 |
commit | 29a48cb2cee59ddb42c6afb7f87a01e6a37a9895 (patch) | |
tree | 123d5303c58995f8be0a7da273780eac29b3b3f5 /widgets/table/e-tree.c | |
parent | e9dc381d3ace3404d0eafe94eb6da3b9a843abb8 (diff) | |
download | gsoc2013-evolution-29a48cb2cee59ddb42c6afb7f87a01e6a37a9895.tar.gz gsoc2013-evolution-29a48cb2cee59ddb42c6afb7f87a01e6a37a9895.tar.zst gsoc2013-evolution-29a48cb2cee59ddb42c6afb7f87a01e6a37a9895.zip |
Fix ETable/ETree signal signatures.
To avoid another case like bug #587014, add GSignalAccumulator functions
to all ETable and ETree signals that return a flag to indicate the signal
has been handled.
See commit e9dc381d3ace3404d0eafe94eb6da3b9a843abb8 for an example of
the kind of problems not having a GSignalAccumulator can cause.
Signals changed:
ETree::click
ETree::right-click
ETree::white-space-event
ETable::click
ETable::key-press
ETable::right-click
ETable::start-drag
ETable::white-space-event
ETableItem::click
ETableItem::right-click
ETableItem::start-drag
ETableGroup::click
ETableGroup::key-press
ETableGroup::right-click
ETableGroup::start-drag
Diffstat (limited to 'widgets/table/e-tree.c')
-rw-r--r-- | widgets/table/e-tree.c | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/widgets/table/e-tree.c b/widgets/table/e-tree.c index ddfb85abe8..783d17491a 100644 --- a/widgets/table/e-tree.c +++ b/widgets/table/e-tree.c @@ -852,10 +852,10 @@ item_double_click (ETableItem *eti, gint row, gint col, GdkEvent *event, ETree * row, path, col, event); } -static gint +static gboolean item_right_click (ETableItem *eti, gint row, gint col, GdkEvent *event, ETree *et) { - gint return_val = 0; + gboolean return_val = 0; ETreePath path = e_tree_table_adapter_node_at_row(et->priv->etta, row); g_signal_emit (et, et_signals [RIGHT_CLICK], 0, @@ -863,10 +863,10 @@ item_right_click (ETableItem *eti, gint row, gint col, GdkEvent *event, ETree *e return return_val; } -static gint +static gboolean item_click (ETableItem *eti, gint row, gint col, GdkEvent *event, ETree *et) { - gint return_val = 0; + gboolean return_val = 0; ETreePath path = e_tree_table_adapter_node_at_row(et->priv->etta, row); g_signal_emit (et, et_signals [CLICK], 0, @@ -1035,10 +1035,10 @@ et_canvas_style_set (GtkWidget *widget, GtkStyle *prev_style) NULL); } -static gint +static gboolean white_item_event (GnomeCanvasItem *white_item, GdkEvent *event, ETree *e_tree) { - gint return_val = 0; + gboolean return_val = 0; g_signal_emit (e_tree, et_signals [WHITE_SPACE_EVENT], 0, event, &return_val); @@ -3181,9 +3181,9 @@ e_tree_class_init (ETreeClass *class) G_OBJECT_CLASS_TYPE (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (ETreeClass, right_click), - NULL, NULL, - e_marshal_INT__INT_POINTER_INT_BOXED, - G_TYPE_INT, 4, G_TYPE_INT, G_TYPE_POINTER, + g_signal_accumulator_true_handled, NULL, + e_marshal_BOOLEAN__INT_POINTER_INT_BOXED, + G_TYPE_BOOLEAN, 4, G_TYPE_INT, G_TYPE_POINTER, G_TYPE_INT, GDK_TYPE_EVENT); et_signals [CLICK] = @@ -3191,9 +3191,9 @@ e_tree_class_init (ETreeClass *class) G_OBJECT_CLASS_TYPE (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (ETreeClass, click), - NULL, NULL, - e_marshal_INT__INT_POINTER_INT_BOXED, - G_TYPE_INT, 4, G_TYPE_INT, G_TYPE_POINTER, + g_signal_accumulator_true_handled, NULL, + e_marshal_BOOLEAN__INT_POINTER_INT_BOXED, + G_TYPE_BOOLEAN, 4, G_TYPE_INT, G_TYPE_POINTER, G_TYPE_INT, GDK_TYPE_EVENT); et_signals [KEY_PRESS] = @@ -3230,9 +3230,9 @@ e_tree_class_init (ETreeClass *class) G_OBJECT_CLASS_TYPE (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (ETreeClass, white_space_event), - NULL, NULL, - e_marshal_INT__POINTER, - G_TYPE_INT, 1, GDK_TYPE_EVENT); + g_signal_accumulator_true_handled, NULL, + e_marshal_BOOLEAN__POINTER, + G_TYPE_BOOLEAN, 1, GDK_TYPE_EVENT); et_signals[TREE_DRAG_BEGIN] = g_signal_new ("tree_drag_begin", |