aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/e-table/e-table-model.c
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@helixcode.com>2000-08-03 00:56:26 +0800
committerChris Lahey <clahey@src.gnome.org>2000-08-03 00:56:26 +0800
commit5fbcc4828efb084344e9c5fd42ebccb288ee492f (patch)
treeba3fe53ec556c7548b6517c24925ada769d3c079 /widgets/e-table/e-table-model.c
parent2c7ed49b25b0ab36e003427083b331bd5bc4a61f (diff)
downloadgsoc2013-evolution-5fbcc4828efb084344e9c5fd42ebccb288ee492f.tar.gz
gsoc2013-evolution-5fbcc4828efb084344e9c5fd42ebccb288ee492f.tar.zst
gsoc2013-evolution-5fbcc4828efb084344e9c5fd42ebccb288ee492f.zip
Add a handler for "model_pre_change" and properly stop editing.
2000-08-02 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c, e-table-item.h: Add a handler for "model_pre_change" and properly stop editing. * e-table-model.c, e-table-model.h: Added a "model_pre_change" signal that gets sent before any row numbers are changed. * e-table-sorted-variable.c, e-table-subset-variable.c: Emit "model_pre_change" signals as appropriate. * e-table-subset.c, e-table-subset.h: Proxy "model_pre_changed" signals. svn path=/trunk/; revision=4472
Diffstat (limited to 'widgets/e-table/e-table-model.c')
-rw-r--r--widgets/e-table/e-table-model.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/widgets/e-table/e-table-model.c b/widgets/e-table/e-table-model.c
index 7f07bd9787..f47fb7afb2 100644
--- a/widgets/e-table/e-table-model.c
+++ b/widgets/e-table/e-table-model.c
@@ -20,6 +20,7 @@ static GtkObjectClass *e_table_model_parent_class;
enum {
MODEL_CHANGED,
+ MODEL_PRE_CHANGE,
MODEL_ROW_CHANGED,
MODEL_CELL_CHANGED,
MODEL_ROW_INSERTED,
@@ -176,6 +177,14 @@ e_table_model_class_init (GtkObjectClass *object_class)
gtk_marshal_NONE__NONE,
GTK_TYPE_NONE, 0);
+ e_table_model_signals [MODEL_PRE_CHANGE] =
+ gtk_signal_new ("model_pre_change",
+ GTK_RUN_LAST,
+ object_class->type,
+ GTK_SIGNAL_OFFSET (ETableModelClass, model_pre_change),
+ gtk_marshal_NONE__NONE,
+ GTK_TYPE_NONE, 0);
+
e_table_model_signals [MODEL_ROW_CHANGED] =
gtk_signal_new ("model_row_changed",
GTK_RUN_LAST,
@@ -256,6 +265,16 @@ e_table_model_get_type (void)
}
void
+e_table_model_pre_change (ETableModel *e_table_model)
+{
+ g_return_if_fail (e_table_model != NULL);
+ g_return_if_fail (E_IS_TABLE_MODEL (e_table_model));
+
+ gtk_signal_emit (GTK_OBJECT (e_table_model),
+ e_table_model_signals [MODEL_PRE_CHANGE]);
+}
+
+void
e_table_model_changed (ETableModel *e_table_model)
{
g_return_if_fail (e_table_model != NULL);