aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-tree.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2010-02-19 00:48:37 +0800
committerMatthew Barnes <mbarnes@redhat.com>2010-02-19 00:48:37 +0800
commit29a48cb2cee59ddb42c6afb7f87a01e6a37a9895 (patch)
tree123d5303c58995f8be0a7da273780eac29b3b3f5 /widgets/table/e-tree.c
parente9dc381d3ace3404d0eafe94eb6da3b9a843abb8 (diff)
downloadgsoc2013-evolution-29a48cb2cee59ddb42c6afb7f87a01e6a37a9895.tar
gsoc2013-evolution-29a48cb2cee59ddb42c6afb7f87a01e6a37a9895.tar.gz
gsoc2013-evolution-29a48cb2cee59ddb42c6afb7f87a01e6a37a9895.tar.bz2
gsoc2013-evolution-29a48cb2cee59ddb42c6afb7f87a01e6a37a9895.tar.lz
gsoc2013-evolution-29a48cb2cee59ddb42c6afb7f87a01e6a37a9895.tar.xz
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.c30
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",