aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/e-table/e-table-selection-model.h
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@helixcode.com>2000-07-27 04:33:39 +0800
committerChris Lahey <clahey@src.gnome.org>2000-07-27 04:33:39 +0800
commit32c3d29bbc14cc1d4c054eb9d6538b0199e90c61 (patch)
tree021834696ac26eae0b65be3e695f05a2afc030ad /widgets/e-table/e-table-selection-model.h
parent580e879674ea981023756e1bdaa8d7309223c86b (diff)
downloadgsoc2013-evolution-32c3d29bbc14cc1d4c054eb9d6538b0199e90c61.tar.gz
gsoc2013-evolution-32c3d29bbc14cc1d4c054eb9d6538b0199e90c61.tar.zst
gsoc2013-evolution-32c3d29bbc14cc1d4c054eb9d6538b0199e90c61.zip
Added "table_selection_model" argument. Removed foreach function and
2000-07-26 Christopher James Lahey <clahey@helixcode.com> * e-table-group-container.c, e-table-group-container.h, e-table-group-leaf.c, e-table-group-leaf.h: Added "table_selection_model" argument. Removed foreach function and selection notification. * e-table-group.c, e-table-group.h: Removed foreach function and selection notification. * e-table-header.c: Fixed header width calculation to include the last column. * e-table-item.c, e-table-item.h: Fixed this to use the new selection model. * e-table-scrolled.c, e-table-scrolled.h: Removed selection notification. * e-table-selection-model.c, e-table-selection-model.h: Finished notification signals and fixed a bunch of bit manipulations. Implemented do_something method. * e-table.c, e-table.h: Create an ETableSelectionModel and use it properly. svn path=/trunk/; revision=4363
Diffstat (limited to 'widgets/e-table/e-table-selection-model.h')
-rw-r--r--widgets/e-table/e-table-selection-model.h31
1 files changed, 19 insertions, 12 deletions
diff --git a/widgets/e-table/e-table-selection-model.h b/widgets/e-table/e-table-selection-model.h
index 2aaba021f8..251b1ceb00 100644
--- a/widgets/e-table/e-table-selection-model.h
+++ b/widgets/e-table/e-table-selection-model.h
@@ -19,13 +19,14 @@ typedef struct {
gint row_count;
guint32 *selection;
-
+
gint cursor_row;
gint cursor_col;
+ gint selection_start_row;
guint model_changed_id;
guint model_row_inserted_id, model_row_deleted_id;
-
+
guint frozen : 1;
guint selection_model_changed : 1;
guint group_info_changed : 1;
@@ -37,20 +38,26 @@ typedef struct {
/*
* Signals
*/
-#if 0
- void (*selection_model_changed) (ETableSelectionModel *selection);
- void (*group_model_changed) (ETableSelectionModel *selection);
-#endif
+
+ void (*cursor_changed) (ETableSelectionModel *selection, int row, int col);
+ void (*selection_changed) (ETableSelectionModel *selection);
+
} ETableSelectionModelClass;
GtkType e_table_selection_model_get_type (void);
-gboolean e_table_selection_model_is_row_selected (ETableSelectionModel *selection,
- guint n);
-void e_table_selection_model_foreach (ETableSelectionModel *selection,
- ETableForeachFunc callback,
- gpointer closure);
+gboolean e_table_selection_model_is_row_selected (ETableSelectionModel *selection,
+ gint n);
+void e_table_selection_model_foreach (ETableSelectionModel *selection,
+ ETableForeachFunc callback,
+ gpointer closure);
+
+void e_table_selection_model_do_something (ETableSelectionModel *selection,
+ guint row,
+ guint col,
+ gboolean shift_p,
+ gboolean ctrl_p);
-ETableSelectionModel *e_table_selection_model_new (void);
+ETableSelectionModel *e_table_selection_model_new (void);
#endif /* _E_TABLE_SELECTION_MODEL_H_ */