diff options
Diffstat (limited to 'addressbook/gui/component/select-names/e-select-names-model.h')
-rw-r--r-- | addressbook/gui/component/select-names/e-select-names-model.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/addressbook/gui/component/select-names/e-select-names-model.h b/addressbook/gui/component/select-names/e-select-names-model.h new file mode 100644 index 0000000000..20c90818f7 --- /dev/null +++ b/addressbook/gui/component/select-names/e-select-names-model.h @@ -0,0 +1,67 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* + * Authors: + * Chris Lahey <clahey@helixcode.com> + * + * Copyright (C) 2000 Helix Code, Inc. + */ + +#ifndef __E_SELECT_NAMES_MODEL_H__ +#define __E_SELECT_NAMES_MODEL_H__ + +#include <time.h> +#include <gtk/gtk.h> +#include <stdio.h> +#include <e-util/e-list.h> +#include <addressbook/backend/ebook/e-card.h> + +#define E_TYPE_SELECT_NAMES_MODEL (e_select_names_model_get_type ()) +#define E_SELECT_NAMES_MODEL(obj) (GTK_CHECK_CAST ((obj), E_TYPE_SELECT_NAMES_MODEL, ESelectNamesModel)) +#define E_SELECT_NAMES_MODEL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), E_TYPE_SELECT_NAMES_MODEL, ESelectNamesModelClass)) +#define E_IS_SELECT_NAMES_MODEL(obj) (GTK_CHECK_TYPE ((obj), E_TYPE_SELECT_NAMES_MODEL)) +#define E_IS_SELECT_NAMES_MODEL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), E_TYPE_SELECT_NAMES_MODEL)) + +typedef enum _ESelectNamesModelDataType ESelectNamesModelDataType; +typedef struct _ESelectNamesModelData ESelectNamesModelData; +typedef struct _ESelectNamesModel ESelectNamesModel; +typedef struct _ESelectNamesModelClass ESelectNamesModelClass; + +enum _ESelectNamesModelDataType { + E_SELECT_NAMES_MODEL_DATA_TYPE_CARD, + E_SELECT_NAMES_MODEL_DATA_TYPE_STRING_ADDRESS, + E_SELECT_NAMES_MODEL_DATA_TYPE_SEPARATION_MATERIAL, +}; + +struct _ESelectNamesModelData { + ESelectNamesModelDataType type; + ECard *card; + char *string; +}; + +struct _ESelectNamesModel { + GtkObject object; + + char *id; + char *title; + + EList *data; /* Of type ESelectNamesModelData. */ +}; + +struct _ESelectNamesModelClass { + GtkObjectClass parent_class; + + void (*changed) (ESelectNamesModel *model); +}; + +ESelectNamesModel *e_select_names_model_new (void); + +/* Of type ECard */ +EList *e_select_names_model_get_cards (ESelectNamesModel *model); + +/* Of type ESelectNamesModelData */ +EList *e_select_names_model_get_data (ESelectNamesModel *model); + +/* Standard Gtk function */ +GtkType e_select_names_model_get_type (void); + +#endif /* ! __E_SELECT_NAMES_MODEL_H__ */ |