diff options
author | Christopher James Lahey <clahey@helixcode.com> | 2000-05-30 21:19:32 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2000-05-30 21:19:32 +0800 |
commit | a076f5b58f51b45bf5308f7b077d6314dc893f29 (patch) | |
tree | a9a9c17a8db8028145847823e3e04f747882684c /widgets/table/e-table-item.h | |
parent | bdf6f37a8afa9988de108ac207b48de01fee6141 (diff) | |
download | gsoc2013-evolution-a076f5b58f51b45bf5308f7b077d6314dc893f29.tar gsoc2013-evolution-a076f5b58f51b45bf5308f7b077d6314dc893f29.tar.gz gsoc2013-evolution-a076f5b58f51b45bf5308f7b077d6314dc893f29.tar.bz2 gsoc2013-evolution-a076f5b58f51b45bf5308f7b077d6314dc893f29.tar.lz gsoc2013-evolution-a076f5b58f51b45bf5308f7b077d6314dc893f29.tar.xz gsoc2013-evolution-a076f5b58f51b45bf5308f7b077d6314dc893f29.tar.zst gsoc2013-evolution-a076f5b58f51b45bf5308f7b077d6314dc893f29.zip |
Fixed a bunch of selection bugs. Removed "spreadsheet" argument (for now.)
2000-05-30 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, e-table-group.c,
e-table-group.h, e-table-item.c, e-table-item.h, e-table.c,
e-table.h, test-check.c, test-cols.c, test-table.c: Fixed a bunch
of selection bugs. Removed "spreadsheet" argument (for now.)
Added "cursor_mode" argument. Added "cursor_change" signal.
Temporarily removed "selection_mode" argument.
svn path=/trunk/; revision=3277
Diffstat (limited to 'widgets/table/e-table-item.h')
-rw-r--r-- | widgets/table/e-table-item.h | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/widgets/table/e-table-item.h b/widgets/table/e-table-item.h index 1e9b6a46d6..b466824bd7 100644 --- a/widgets/table/e-table-item.h +++ b/widgets/table/e-table-item.h @@ -12,6 +12,13 @@ #define E_IS_TABLE_ITEM(o) (GTK_CHECK_TYPE ((o), E_TABLE_ITEM_TYPE)) #define E_IS_TABLE_ITEM_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TABLE_ITEM_TYPE)) +/* list selection modes */ +typedef enum +{ + E_TABLE_CURSOR_LINE, + E_TABLE_CURSOR_SIMPLE, +} ETableCursorMode; + typedef struct { GnomeCanvasItem parent; ETableModel *table_model; @@ -40,12 +47,12 @@ typedef struct { unsigned int draw_grid:1; unsigned int draw_focus:1; - unsigned int mode_spreadsheet:1; unsigned int renderers_can_change_size:1; unsigned int cell_views_realized:1; - int focused_col, focused_row; - + guint needs_redraw : 1; + guint needs_compute_height : 1; + guint needs_compute_width : 1; /* * Realized views, per column */ @@ -61,30 +68,36 @@ typedef struct { * the size */ int length_threshold; + + gint cursor_row; + gint cursor_col; + ETableCursorMode cursor_mode; +#if 0 GSList *selection; - GtkSelectionMode selection_mode; + gint selection_count; + GtkSelectionMode selection_mode; +#endif /* * During edition */ int editing_col, editing_row; void *edit_ctx; - guint needs_redraw : 1; - guint needs_compute_height : 1; - guint needs_compute_width : 1; } ETableItem; typedef struct { GnomeCanvasItemClass parent_class; void (*row_selection) (ETableItem *eti, int row, gboolean selected); + void (*cursor_change) (ETableItem *eti, int row); void (*double_click) (ETableItem *eti, int row); } ETableItemClass; GtkType e_table_item_get_type (void); + /* * Focus */ @@ -93,6 +106,7 @@ void e_table_item_unfocus (ETableItem *eti); gint e_table_item_get_focused_column (ETableItem *eti); +#if 0 /* * Selection */ @@ -109,6 +123,7 @@ void e_table_item_set_selection_mode (ETableItem *e_table_Item, GtkSelectionMode selection_mode); gboolean e_table_item_is_row_selected (ETableItem *e_table_Item, int row); +#endif void e_table_item_leave_edit (ETableItem *eti); void e_table_item_enter_edit (ETableItem *eti, int col, int row); |