aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--widgets/e-table/ChangeLog5
-rw-r--r--widgets/e-table/e-table-item.c10
-rw-r--r--widgets/table/e-table-item.c10
3 files changed, 21 insertions, 4 deletions
diff --git a/widgets/e-table/ChangeLog b/widgets/e-table/ChangeLog
index c21d0c47ba..365dfe2a30 100644
--- a/widgets/e-table/ChangeLog
+++ b/widgets/e-table/ChangeLog
@@ -1,5 +1,10 @@
2000-08-24 Christopher James Lahey <clahey@helixcode.com>
+ * e-table-item.c: Pay attention to the return value from the click
+ signal.
+
+2000-08-24 Christopher James Lahey <clahey@helixcode.com>
+
* e-table-group-container.c, e-table-group-leaf.c,
e-table-group.c, e-table-group.h, e-table-item.c, e-table-item.h,
e-table.c, e-table.h: Added a click signal which gets sent if the
diff --git a/widgets/e-table/e-table-item.c b/widgets/e-table/e-table-item.c
index fdc5f1b36b..88b771bc2c 100644
--- a/widgets/e-table/e-table-item.c
+++ b/widgets/e-table/e-table-item.c
@@ -1418,6 +1418,14 @@ eti_event (GnomeCanvasItem *item, GdkEvent *e)
if (!find_cell (eti, e->button.x, e->button.y, &col, &row, &x1, &y1))
return TRUE;
+ return_val = FALSE;
+
+ gtk_signal_emit (GTK_OBJECT (eti), eti_signals [CLICK],
+ row, col, e, &return_val);
+
+ if (return_val)
+ return TRUE;
+
e_table_selection_model_do_something(eti->selection, view_to_model_row(eti, row), view_to_model_col(eti, col), e->button.state);
gtk_object_get(GTK_OBJECT(eti->selection),
@@ -1442,8 +1450,6 @@ eti_event (GnomeCanvasItem *item, GdkEvent *e)
e_cell_event (ecell_view, e, view_to_model_col(eti, col), col, row);
}
- gtk_signal_emit (GTK_OBJECT (eti), eti_signals [RIGHT_CLICK],
- row, col, e, &return_val);
break;
case 3:
gnome_canvas_item_w2i (item, &e->button.x, &e->button.y);
diff --git a/widgets/table/e-table-item.c b/widgets/table/e-table-item.c
index fdc5f1b36b..88b771bc2c 100644
--- a/widgets/table/e-table-item.c
+++ b/widgets/table/e-table-item.c
@@ -1418,6 +1418,14 @@ eti_event (GnomeCanvasItem *item, GdkEvent *e)
if (!find_cell (eti, e->button.x, e->button.y, &col, &row, &x1, &y1))
return TRUE;
+ return_val = FALSE;
+
+ gtk_signal_emit (GTK_OBJECT (eti), eti_signals [CLICK],
+ row, col, e, &return_val);
+
+ if (return_val)
+ return TRUE;
+
e_table_selection_model_do_something(eti->selection, view_to_model_row(eti, row), view_to_model_col(eti, col), e->button.state);
gtk_object_get(GTK_OBJECT(eti->selection),
@@ -1442,8 +1450,6 @@ eti_event (GnomeCanvasItem *item, GdkEvent *e)
e_cell_event (ecell_view, e, view_to_model_col(eti, col), col, row);
}
- gtk_signal_emit (GTK_OBJECT (eti), eti_signals [RIGHT_CLICK],
- row, col, e, &return_val);
break;
case 3:
gnome_canvas_item_w2i (item, &e->button.x, &e->button.y);