diff options
Diffstat (limited to 'addressbook/demo/e-test-model.h')
-rw-r--r-- | addressbook/demo/e-test-model.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/addressbook/demo/e-test-model.h b/addressbook/demo/e-test-model.h new file mode 100644 index 0000000000..dd3f8e0fa9 --- /dev/null +++ b/addressbook/demo/e-test-model.h @@ -0,0 +1,64 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +#ifndef _E_TEST_MODEL_H_ +#define _E_TEST_MODEL_H_ + +#include "e-table-model.h" + +#define E_TEST_MODEL_TYPE (e_test_model_get_type ()) +#define E_TEST_MODEL(o) (GTK_CHECK_CAST ((o), E_TEST_MODEL_TYPE, ETestModel)) +#define E_TEST_MODEL_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_TEST_MODEL_TYPE, ETestModelClass)) +#define E_IS_TEST_MODEL(o) (GTK_CHECK_TYPE ((o), E_TEST_MODEL_TYPE)) +#define E_IS_TEST_MODEL_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TEST_MODEL_TYPE)) + +/* Virtual Column list: + 0 Email + 1 Full Name + 2 Street + 3 Phone +*/ +typedef struct _Address Address; +typedef enum _Rows Rows; + + +struct _Address { + gchar *email; + gchar *full_name; + gchar *street; + gchar *phone; +}; + +enum _Rows { + EMAIL, + FULL_NAME, + STREET, + PHONE, + LAST_COL +}; + + + +typedef struct { + ETableModel parent; + + Address **data; + int data_count; + + char *filename; + int idle; +} ETestModel; + + +typedef struct { + ETableModelClass parent_class; +} ETestModelClass; + + +GtkType e_test_model_get_type (void); +ETableModel *e_test_model_new (char *filename); + +void e_test_model_queue_save(ETestModel *model); +void e_test_model_add_column (ETestModel *model, Address *newadd); + + +#endif /* _E_TEST_MODEL_H_ */ + |