diff options
author | Christopher James Lahey <clahey@helixcode.com> | 2000-07-10 19:04:18 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2000-07-10 19:04:18 +0800 |
commit | 23ca256b7dd10fea00e2914c968e797af6ea0622 (patch) | |
tree | 61744d8851107470ba8b85ccbfbfb6fe49536119 /widgets/table/e-table-scrolled.h | |
parent | 84ba8642c55c514b7fe23aa90fabdbd0d90250ab (diff) | |
download | gsoc2013-evolution-23ca256b7dd10fea00e2914c968e797af6ea0622.tar gsoc2013-evolution-23ca256b7dd10fea00e2914c968e797af6ea0622.tar.gz gsoc2013-evolution-23ca256b7dd10fea00e2914c968e797af6ea0622.tar.bz2 gsoc2013-evolution-23ca256b7dd10fea00e2914c968e797af6ea0622.tar.lz gsoc2013-evolution-23ca256b7dd10fea00e2914c968e797af6ea0622.tar.xz gsoc2013-evolution-23ca256b7dd10fea00e2914c968e797af6ea0622.tar.zst gsoc2013-evolution-23ca256b7dd10fea00e2914c968e797af6ea0622.zip |
Add e-table-scrolled.c and e-table-scrolled.h.
2000-07-09 Christopher James Lahey <clahey@helixcode.com>
* Makefile.am: Add e-table-scrolled.c and e-table-scrolled.h.
* e-table-item.c: Make sure that find_cell returns FALSE if the
item doesn't have any cells.
* e-table-scrolled.c, e-table-scrolled.h: Added a widget to
contain an ETable and provide scrollbars (for ease of use.)
* e-table.c, e-table.h: Make this support the scrollable interface
and not contain its own scrollbars.
svn path=/trunk/; revision=4031
Diffstat (limited to 'widgets/table/e-table-scrolled.h')
-rw-r--r-- | widgets/table/e-table-scrolled.h | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/widgets/table/e-table-scrolled.h b/widgets/table/e-table-scrolled.h new file mode 100644 index 0000000000..f527058ca7 --- /dev/null +++ b/widgets/table/e-table-scrolled.h @@ -0,0 +1,65 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +#ifndef _E_TABLE_SCROLLED_H_ +#define _E_TABLE_SCROLLED_H_ + +#include "widgets/misc/e-scroll-frame.h" +#include "e-table-model.h" +#include "e-table-header.h" +#include "e-table.h" +#include "e-util/e-printable.h" + +BEGIN_GNOME_DECLS + +#define E_TABLE_SCROLLED_TYPE (e_table_scrolled_get_type ()) +#define E_TABLE_SCROLLED(o) (GTK_CHECK_CAST ((o), E_TABLE_SCROLLED_TYPE, ETableScrolled)) +#define E_TABLE_SCROLLED_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_TABLE_SCROLLED_TYPE, ETableScrolledClass)) +#define E_IS_SCROLLED_TABLE(o) (GTK_CHECK_TYPE ((o), E_TABLE_SCROLLED_TYPE)) +#define E_IS_SCROLLED_TABLE_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TABLE_SCROLLED_TYPE)) + +typedef struct { + EScrollFrame parent; + + ETable *table; +} ETableScrolled; + +typedef struct { + GtkTableClass parent_class; + + void (*row_selection) (ETableScrolled *est, int row, gboolean selected); + void (*cursor_change) (ETableScrolled *est, int row); + void (*double_click) (ETableScrolled *est, int row); + gint (*right_click) (ETableScrolled *est, int row, int col, GdkEvent *event); + gint (*key_press) (ETableScrolled *est, int row, int col, GdkEvent *event); +} ETableScrolledClass; + +GtkType e_table_scrolled_get_type (void); + +ETableScrolled *e_table_scrolled_construct (ETableScrolled *ets, ETableHeader *full_header, ETableModel *etm, + const char *spec); +GtkWidget *e_table_scrolled_new (ETableHeader *full_header, ETableModel *etm, + const char *spec); + +ETableScrolled *e_table_scrolled_construct_from_spec_file (ETableScrolled *e_table_scrolled, + ETableHeader *full_header, + ETableModel *etm, + const char *filename); +GtkWidget *e_table_scrolled_new_from_spec_file (ETableHeader *full_header, + ETableModel *etm, + const char *filename); + +gchar *e_table_scrolled_get_specification (ETableScrolled *e_table_scrolled); +void e_table_scrolled_save_specification (ETableScrolled *e_table_scrolled, gchar *filename); + +void e_table_scrolled_set_cursor_row (ETableScrolled *e_table_scrolled, + int row); +/* -1 means we don't have the cursor. */ +int e_table_scrolled_get_cursor_row (ETableScrolled *e_table_scrolled); +void e_table_scrolled_selected_row_foreach (ETableScrolled *e_table_scrolled, + ETableForeachFunc callback, + gpointer closure); +EPrintable *e_table_scrolled_get_printable (ETableScrolled *e_table_scrolled); + +END_GNOME_DECLS + +#endif /* _E_TABLE_SCROLLED_H_ */ + |