aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/e-table.h
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/e-table.h')
-rw-r--r--widgets/e-table.h51
1 files changed, 49 insertions, 2 deletions
diff --git a/widgets/e-table.h b/widgets/e-table.h
index 0847ddde6c..eb089781b9 100644
--- a/widgets/e-table.h
+++ b/widgets/e-table.h
@@ -1,6 +1,53 @@
#ifndef _E_TABLE_H_
#define _E_TABLE_H_
-GtkType e_table_get_type (void);
-ETable *
+#include <libgnomeui/gnome-canvas.h>
+#include <gtk/gtktable.h>
+#include "e-table-model.h"
+#include "e-table-header.h"
+
+BEGIN_GNOME_DECLS
+
+#define E_TABLE_TYPE (e_table_get_type ())
+#define E_TABLE(o) (GTK_CHECK_CAST ((o), E_TABLE_TYPE, ETable))
+#define E_TABLE_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_TABLE_TYPE, ETableClass))
+#define E_IS_TABLE(o) (GTK_CHECK_TYPE ((o), E_TABLE_TYPE))
+#define E_IS_TABLE_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TABLE_TYPE))
+
+typedef struct {
+ GtkTable parent;
+
+ ETableModel *model;
+
+ ETableHeader *full_header, *header;
+
+ GnomeCanvas *header_canvas, *table_canvas;
+
+ GnomeCanvasItem *header_item, *root;
+
+ guint draw_grid:1;
+ guint draw_focus:1;
+ guint spreadsheet:1;
+
+ char *group_spec;
+
+ /*
+ * Used during table generation
+ */
+ int gen_header_width;
+} ETable;
+
+typedef struct {
+ GtkTableClass parent_class;
+} ETableClass;
+
+GtkType e_table_get_type (void);
+void e_table_construct (ETable *e_table, ETableHeader *full_header, ETableModel *etm,
+ const char *cols_spec, const char *group_spec);
+GtkWidget *e_table_new (ETableHeader *full_header, ETableModel *etm,
+ const char *cols_spec, const char *group_spec);
+
+
+END_GNOME_DECLS
+
#endif /* _E_TABLE_H_ */