From 89beb886b9c5e242e7a426e51d2d9d4810a79cd4 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Thu, 2 Nov 2000 17:28:16 +0000 Subject: Updated these unused glade files to better match the versions in the code. 2000-11-02 Christopher James Lahey * e-table-config.glade, e-table-config.glade.h: Updated these unused glade files to better match the versions in the code. * e-table.c, e-table.h: Added e_table_selected_count and "selection_change" signal. * e-tree-model.c: Fixed an out of order svn path=/trunk/; revision=6354 --- widgets/table/e-table-config.glade | 158 +++++++++++++++++------------------ widgets/table/e-table-config.glade.h | 8 +- widgets/table/e-table.c | 60 +++++++++---- widgets/table/e-table.h | 2 + widgets/table/e-tree-model.c | 2 +- 5 files changed, 130 insertions(+), 100 deletions(-) diff --git a/widgets/table/e-table-config.glade b/widgets/table/e-table-config.glade index 823992af39..3cc9c0e8e7 100644 --- a/widgets/table/e-table-config.glade +++ b/widgets/table/e-table-config.glade @@ -178,85 +178,6 @@ - - GtkLabel - label5 - - GTK_JUSTIFY_CENTER - False - 0.5 - 0.5 - 0 - 0 - - 1 - 2 - 0 - 1 - 0 - 0 - False - False - False - False - False - False - - - - - GtkLabel - label6 - - GTK_JUSTIFY_CENTER - False - 0.5 - 0.5 - 0 - 0 - - 1 - 2 - 1 - 2 - 0 - 0 - False - False - False - False - False - False - - - - - GtkLabel - label7 - - GTK_JUSTIFY_CENTER - False - 0.5 - 0.5 - 0 - 0 - - 1 - 2 - 2 - 3 - 0 - 0 - False - False - False - False - False - False - - - GtkButton button15 @@ -340,6 +261,85 @@ Full Name, Company, False + + + GtkLabel + label5 + + GTK_JUSTIFY_CENTER + False + 0.5 + 0.5 + 0 + 0 + + 1 + 2 + 0 + 1 + 0 + 0 + False + False + False + False + True + True + + + + + GtkLabel + label6 + + GTK_JUSTIFY_CENTER + False + 0.5 + 0.5 + 0 + 0 + + 1 + 2 + 1 + 2 + 0 + 0 + False + False + False + False + True + True + + + + + GtkLabel + label7 + + GTK_JUSTIFY_CENTER + False + 0.5 + 0.5 + 0 + 0 + + 1 + 2 + 2 + 3 + 0 + 0 + False + False + False + False + True + True + + diff --git a/widgets/table/e-table-config.glade.h b/widgets/table/e-table-config.glade.h index ce5520bb27..de73232529 100644 --- a/widgets/table/e-table-config.glade.h +++ b/widgets/table/e-table-config.glade.h @@ -6,13 +6,13 @@ gchar *s = N_("View Summary"); gchar *s = N_("Description"); -gchar *s = N_("Icon, Attachment, Flag Status,\n" - "Full Name, Company, "); -gchar *s = N_("None"); -gchar *s = N_("File As (ascending"); gchar *s = N_("_Fields..."); gchar *s = N_("_Sort..."); gchar *s = N_("_Group By..."); +gchar *s = N_("Icon, Attachment, Flag Status,\n" + "Full Name, Company, "); +gchar *s = N_("None"); +gchar *s = N_("File As (ascending)"); gchar *s = N_("Show Fields"); gchar *s = N_("A_vailable Fields:"); gchar *s = N_("Sh_ow these fields in order:"); diff --git a/widgets/table/e-table.c b/widgets/table/e-table.c index 88e305b88d..6da35fea39 100644 --- a/widgets/table/e-table.c +++ b/widgets/table/e-table.c @@ -41,6 +41,7 @@ static GtkObjectClass *e_table_parent_class; enum { CURSOR_CHANGE, + SELECTION_CHANGE, DOUBLE_CLICK, RIGHT_CLICK, CLICK, @@ -837,6 +838,12 @@ void e_table_save_state (ETable *e_table gtk_object_sink(GTK_OBJECT(state)); } +static void +et_selection_model_selection_change (ETableGroup *etg, ETable *et) +{ + gtk_signal_emit (GTK_OBJECT (et), + et_signals [SELECTION_CHANGE]); +} static ETable * et_real_construct (ETable *e_table, ETableModel *etm, ETableExtras *ete, @@ -880,6 +887,9 @@ et_real_construct (ETable *e_table, ETableModel *etm, ETableExtras *ete, "sorter", e_table->sorter, NULL); + gtk_signal_connect(GTK_OBJECT(e_table->selection), "selection_changed", + GTK_SIGNAL_FUNC(et_selection_model_selection_change), e_table); + if (!specification->no_headers) { e_table_setup_header (e_table); } @@ -1204,6 +1214,15 @@ e_table_selected_row_foreach (ETable *e_table, closure); } +gint +e_table_selected_count (ETable *e_table) +{ + g_return_val_if_fail(e_table != NULL, -1); + g_return_val_if_fail(E_IS_TABLE(e_table), -1); + + return e_table_selection_model_selected_count(e_table->selection); +} + void e_table_select_all (ETable *table) { @@ -1887,25 +1906,26 @@ e_table_class_init (GtkObjectClass *object_class) e_table_parent_class = gtk_type_class (PARENT_TYPE); - object_class->destroy = et_destroy; - object_class->set_arg = et_set_arg; - object_class->get_arg = et_get_arg; + object_class->destroy = et_destroy; + object_class->set_arg = et_set_arg; + object_class->get_arg = et_get_arg; - klass->cursor_change = NULL; - klass->double_click = NULL; - klass->right_click = NULL; - klass->click = NULL; - klass->key_press = NULL; + klass->cursor_change = NULL; + klass->selection_change = NULL; + klass->double_click = NULL; + klass->right_click = NULL; + klass->click = NULL; + klass->key_press = NULL; - klass->table_drag_begin = NULL; - klass->table_drag_end = NULL; - klass->table_drag_data_get = NULL; - klass->table_drag_data_delete = NULL; + klass->table_drag_begin = NULL; + klass->table_drag_end = NULL; + klass->table_drag_data_get = NULL; + klass->table_drag_data_delete = NULL; - klass->table_drag_leave = NULL; - klass->table_drag_motion = NULL; - klass->table_drag_drop = NULL; - klass->table_drag_data_received = NULL; + klass->table_drag_leave = NULL; + klass->table_drag_motion = NULL; + klass->table_drag_drop = NULL; + klass->table_drag_data_received = NULL; et_signals [CURSOR_CHANGE] = gtk_signal_new ("cursor_change", @@ -1915,6 +1935,14 @@ e_table_class_init (GtkObjectClass *object_class) gtk_marshal_NONE__INT, GTK_TYPE_NONE, 1, GTK_TYPE_INT); + et_signals [SELECTION_CHANGE] = + gtk_signal_new ("selection_change", + GTK_RUN_LAST, + object_class->type, + GTK_SIGNAL_OFFSET (ETableClass, selection_change), + gtk_marshal_NONE__NONE, + GTK_TYPE_NONE, 0); + et_signals [DOUBLE_CLICK] = gtk_signal_new ("double_click", GTK_RUN_LAST, diff --git a/widgets/table/e-table.h b/widgets/table/e-table.h index 2d115e54fb..9954c934f7 100644 --- a/widgets/table/e-table.h +++ b/widgets/table/e-table.h @@ -101,6 +101,7 @@ typedef struct { GtkTableClass parent_class; void (*cursor_change) (ETable *et, int row); + void (*selection_change) (ETable *et); void (*double_click) (ETable *et, int row); gint (*right_click) (ETable *et, int row, int col, GdkEvent *event); gint (*click) (ETable *et, int row, int col, GdkEvent *event); @@ -207,6 +208,7 @@ int e_table_get_cursor_row (ETable *e_table void e_table_selected_row_foreach (ETable *e_table, ETableForeachFunc callback, gpointer closure); +gint e_table_selected_count (ETable *e_table); EPrintable *e_table_get_printable (ETable *e_table); gint e_table_get_next_row (ETable *e_table, diff --git a/widgets/table/e-tree-model.c b/widgets/table/e-tree-model.c index 2b5f3fa6b0..6e8c7856dd 100644 --- a/widgets/table/e-tree-model.c +++ b/widgets/table/e-tree-model.c @@ -994,8 +994,8 @@ e_tree_model_node_remove (ETreeModel *etree, ETreePath *path) if (parent) { if (e_tree_model_node_is_visible (etree, path)) { int row = e_tree_model_row_of_node (etree, path); - e_table_model_row_deleted (E_TABLE_MODEL (etree), row); priv->row_array = g_array_remove_index (priv->row_array, row); + e_table_model_row_deleted (E_TABLE_MODEL (etree), row); /* we need to iterate back up to the root, incrementing the number of visible descendents */ -- cgit v1.2.3