diff options
Diffstat (limited to 'widgets/table/e-table.h')
-rw-r--r-- | widgets/table/e-table.h | 164 |
1 files changed, 86 insertions, 78 deletions
diff --git a/widgets/table/e-table.h b/widgets/table/e-table.h index d5462ce65c..933f0f5155 100644 --- a/widgets/table/e-table.h +++ b/widgets/table/e-table.h @@ -11,6 +11,7 @@ #include <gal/e-table/e-table-sort-info.h> #include <gal/e-table/e-table-item.h> #include <gal/e-table/e-table-selection-model.h> +#include <gal/e-table/e-table-extras.h> #include <gal/widgets/e-printable.h> BEGIN_GNOME_DECLS @@ -156,103 +157,110 @@ typedef struct { guint time); } ETableClass; -GtkType e_table_get_type (void); - -ETable *e_table_construct (ETable *e_table, ETableHeader *full_header, ETableModel *etm, - const char *spec); -GtkWidget *e_table_new (ETableHeader *full_header, ETableModel *etm, - const char *spec); - -ETable *e_table_construct_from_spec_file (ETable *e_table, - ETableHeader *full_header, - ETableModel *etm, - const char *filename); -GtkWidget *e_table_new_from_spec_file (ETableHeader *full_header, - ETableModel *etm, - const char *filename); - -gchar *e_table_get_specification (ETable *e_table); -void e_table_save_specification (ETable *e_table, gchar *filename); -/* note that it is more efficient to provide the spec at creation time */ -int e_table_set_specification (ETable *e_table, const char *spec); -int e_table_load_specification (ETable *e_table, gchar *filename); - -void e_table_set_cursor_row (ETable *e_table, - int row); +GtkType e_table_get_type (void); + +ETable *e_table_construct (ETable *e_table, + ETableModel *etm, + ETableExtras *ete, + const char *spec, + const char *state); +GtkWidget *e_table_new (ETableModel *etm, + ETableExtras *ete, + const char *spec, + const char *state); + +/* Create an ETable using files. */ +ETable *e_table_construct_from_spec_file (ETable *e_table, + ETableModel *etm, + ETableExtras *ete, + const char *spec_fn, + const char *state_fn); +GtkWidget *e_table_new_from_spec_file (ETableModel *etm, + ETableExtras *ete, + const char *spec_fn, + const char *state_fn); + +/* To save the state */ +gchar *e_table_get_state (ETable *e_table); +void e_table_save_state (ETable *e_table, + const gchar *filename); + +/* note that it is more efficient to provide the state at creation time */ +void e_table_set_state (ETable *e_table, + const gchar *state); +void e_table_load_state (ETable *e_table, + const gchar *filename); + +void e_table_set_cursor_row (ETable *e_table, + int row); + /* -1 means we don't have the cursor. */ -int e_table_get_cursor_row (ETable *e_table); -void e_table_selected_row_foreach (ETable *e_table, - ETableForeachFunc callback, - gpointer closure); -EPrintable *e_table_get_printable (ETable *e_table); +int e_table_get_cursor_row (ETable *e_table); +void e_table_selected_row_foreach (ETable *e_table, + ETableForeachFunc callback, + gpointer closure); +EPrintable *e_table_get_printable (ETable *e_table); -gint e_table_get_next_row (ETable *e_table, - gint model_row); -gint e_table_get_prev_row (ETable *e_table, - gint model_row); +gint e_table_get_next_row (ETable *e_table, + gint model_row); +gint e_table_get_prev_row (ETable *e_table, + gint model_row); -gint e_table_model_to_view_row (ETable *e_table, - gint model_row); -gint e_table_view_to_model_row (ETable *e_table, - gint view_row); +gint e_table_model_to_view_row (ETable *e_table, + gint model_row); +gint e_table_view_to_model_row (ETable *e_table, + gint view_row); /* Drag & drop stuff. */ /* Target */ -void e_table_drag_get_data (ETable *table, - int row, - int col, - GdkDragContext *context, - GdkAtom target, - guint32 time); - -void e_table_drag_highlight (ETable *table, - int row, - int col); /* col == -1 to highlight entire row. */ -void e_table_drag_unhighlight (ETable *table); - -void e_table_drag_dest_set (ETable *table, - GtkDestDefaults flags, - const GtkTargetEntry *targets, - gint n_targets, - GdkDragAction actions); - -void e_table_drag_dest_set_proxy (ETable *table, - GdkWindow *proxy_window, - GdkDragProtocol protocol, - gboolean use_coordinates); +void e_table_drag_get_data (ETable *table, + int row, + int col, + GdkDragContext *context, + GdkAtom target, + guint32 time); +void e_table_drag_highlight (ETable *table, + int row, + int col); /* col == -1 to highlight entire row. */ +void e_table_drag_unhighlight (ETable *table); +void e_table_drag_dest_set (ETable *table, + GtkDestDefaults flags, + const GtkTargetEntry *targets, + gint n_targets, + GdkDragAction actions); +void e_table_drag_dest_set_proxy (ETable *table, + GdkWindow *proxy_window, + GdkDragProtocol protocol, + gboolean use_coordinates); /* There probably should be functions for setting the targets * as a GtkTargetList */ - -void e_table_drag_dest_unset (GtkWidget *widget); +void e_table_drag_dest_unset (GtkWidget *widget); /* Source side */ - -void e_table_drag_source_set (ETable *table, - GdkModifierType start_button_mask, - const GtkTargetEntry *targets, - gint n_targets, - GdkDragAction actions); - -void e_table_drag_source_unset (ETable *table); +void e_table_drag_source_set (ETable *table, + GdkModifierType start_button_mask, + const GtkTargetEntry *targets, + gint n_targets, + GdkDragAction actions); +void e_table_drag_source_unset (ETable *table); /* There probably should be functions for setting the targets * as a GtkTargetList */ - -GdkDragContext *e_table_drag_begin (ETable *table, - int row, - int col, - GtkTargetList *targets, - GdkDragAction actions, - gint button, - GdkEvent *event); +GdkDragContext *e_table_drag_begin (ETable *table, + int row, + int col, + GtkTargetList *targets, + GdkDragAction actions, + gint button, + GdkEvent *event); /* selection stuff */ -void e_table_select_all (ETable *table); -void e_table_invert_selection (ETable *table); +void e_table_select_all (ETable *table); +void e_table_invert_selection (ETable *table); END_GNOME_DECLS |