diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2007-11-29 04:54:19 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2007-11-29 04:54:19 +0800 |
commit | 4bca50f1c5060efbfe2f0c9d011e4d51f1e8be0f (patch) | |
tree | 670e42776b90bc2b22ab060828d944b8b1c6af6d /addressbook/gui/contact-list-editor/e-contact-list-editor.h | |
parent | cfbb09abfdba072800304ab46146323b3b2ff785 (diff) | |
download | gsoc2013-evolution-4bca50f1c5060efbfe2f0c9d011e4d51f1e8be0f.tar gsoc2013-evolution-4bca50f1c5060efbfe2f0c9d011e4d51f1e8be0f.tar.gz gsoc2013-evolution-4bca50f1c5060efbfe2f0c9d011e4d51f1e8be0f.tar.bz2 gsoc2013-evolution-4bca50f1c5060efbfe2f0c9d011e4d51f1e8be0f.tar.lz gsoc2013-evolution-4bca50f1c5060efbfe2f0c9d011e4d51f1e8be0f.tar.xz gsoc2013-evolution-4bca50f1c5060efbfe2f0c9d011e4d51f1e8be0f.tar.zst gsoc2013-evolution-4bca50f1c5060efbfe2f0c9d011e4d51f1e8be0f.zip |
** Fixes bug #489652
2007-11-28 Matthew Barnes <mbarnes@redhat.com>
** Fixes bug #489652
Migrate the contact list editor from ETable to GtkTreeView and
fix some HIG issues.
* addressbook/gui/contact-list-editor/Makefile.am:
Remove e-contact-list-editor.etspec
Remove e-contact-list-editor-marshal.list
* addressbook/gui/contact-list-editor/contact-list-editor.glade:
Fix some HIG issues and give all the widgets proper names.
* addressbook/gui/contact-list-editor/e-contact-list-model.c:
* addressbook/gui/contact-list-editor/e-contact-list-model.h:
EContactListModel is now a subclass of GtkListStore.
* addressbook/gui/contact-list-editor/e-contact-list.c:
* addressbook/gui/contact-list-editor/e-contact-list.h:
Use a GtkTreeView instead of an ETable for displaying members.
Refactor everything; see bug #489652 for more details.
svn path=/trunk/; revision=34610
Diffstat (limited to 'addressbook/gui/contact-list-editor/e-contact-list-editor.h')
-rw-r--r-- | addressbook/gui/contact-list-editor/e-contact-list-editor.h | 110 |
1 files changed, 47 insertions, 63 deletions
diff --git a/addressbook/gui/contact-list-editor/e-contact-list-editor.h b/addressbook/gui/contact-list-editor/e-contact-list-editor.h index 00fb30fae1..41b6078f67 100644 --- a/addressbook/gui/contact-list-editor/e-contact-list-editor.h +++ b/addressbook/gui/contact-list-editor/e-contact-list-editor.h @@ -17,13 +17,13 @@ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. */ + #ifndef __E_CONTACT_LIST_EDITOR_H__ #define __E_CONTACT_LIST_EDITOR_H__ #include <libgnomeui/gnome-app.h> #include <libgnomeui/gnome-app-helper.h> #include <glade/glade.h> -#include <table/e-table-model.h> #include <libedataserverui/e-name-selector.h> #include "addressbook/gui/contact-editor/eab-editor.h" @@ -32,66 +32,34 @@ #include <libebook/e-contact.h> #include <libebook/e-destination.h> -G_BEGIN_DECLS +#define E_TYPE_CONTACT_LIST_EDITOR \ + (e_contact_list_editor_get_type ()) +#define E_CONTACT_LIST_EDITOR(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST \ + ((obj), E_TYPE_CONTACT_LIST_EDITOR, EContactListEditor)) +#define E_CONTACT_LIST_EDITOR_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_CAST \ + ((cls), E_TYPE_CONTACT_LIST_EDITOR, EContactListEditorClass)) +#define E_IS_CONTACT_LIST_EDITOR(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE \ + ((obj), E_TYPE_CONTACT_LIST_EDITOR)) +#define E_IS_CONTACT_LIST_EDITOR_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_TYPE \ + ((obj), E_TYPE_CONTACT_LIST_EDITOR)) +#define E_CONTACT_LIST_EDITOR_GET_CLASS(obj) \ + (G_TYPE_INSTANCE_GET_CLASS \ + ((obj), E_TYPE_CONTACT_LIST_EDITOR, EContactListEditorClass)) -#define E_TYPE_CONTACT_LIST_EDITOR (e_contact_list_editor_get_type ()) -#define E_CONTACT_LIST_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_CONTACT_LIST_EDITOR, EContactListEditor)) -#define E_CONTACT_LIST_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_CONTACT_LIST_EDITOR, EContactListEditorClass)) -#define E_IS_CONTACT_LIST_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_CONTACT_LIST_EDITOR)) -#define E_IS_CONTACT_LIST_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), E_TYPE_CONTACT_LIST_EDITOR)) +G_BEGIN_DECLS -typedef struct _EContactListEditor EContactListEditor; -typedef struct _EContactListEditorClass EContactListEditorClass; +typedef struct _EContactListEditor EContactListEditor; +typedef struct _EContactListEditorClass EContactListEditorClass; +typedef struct _EContactListEditorPrivate EContactListEditorPrivate; struct _EContactListEditor { EABEditor parent; - - /* item specific fields */ - EBook *book; - - EContact *contact; - - GladeXML *gui; - GtkWidget *app; - - GtkWidget *table; - ETableModel *model; - GtkWidget *email_entry; - GtkWidget *list_name_entry; - GtkWidget *add_button; - GtkWidget *remove_button; - GtkWidget *select_button; - GtkWidget *list_image_button; - GtkWidget *visible_addrs_checkbutton; - GtkWidget *list_image; - GtkWidget *source_menu; - GtkWidget *ok_button; - GtkWidget *cancel_button; - - ENameSelector *name_selector; - - /* Whether we are editing a new contact or an existing one */ - guint is_new_list : 1; - - /* Whether the image chooser widget has been changed. */ - guint image_set : 1; - - /* Whether the contact has been changed since bringing up the contact editor */ - guint changed : 1; - - /* Whether the contact editor will accept modifications */ - guint editable : 1; - - /* Whether the target book accepts storing of contact lists */ - guint allows_contact_lists : 1; - - /* Whether an async wombat call is in progress */ - guint in_async_call : 1; - - /* ID for async load_source call */ - guint load_source_id; - EBook *load_book; + EContactListEditorPrivate *priv; }; struct _EContactListEditorClass @@ -99,15 +67,31 @@ struct _EContactListEditorClass EABEditorClass parent_class; }; -EContactListEditor *e_contact_list_editor_new (EBook *book, - EContact *list_contact, - gboolean is_new_list, - gboolean editable); -GType e_contact_list_editor_get_type (void); - -gboolean e_contact_list_editor_request_close_all (void); +GType e_contact_list_editor_get_type (void); +EContactListEditor * e_contact_list_editor_new (EBook *book, + EContact *list_contact, + gboolean is_new_list, + gboolean editable); +EBook * e_contact_list_editor_get_book (EContactListEditor *editor); +void e_contact_list_editor_set_book (EContactListEditor *editor, + EBook *book); +EContact * e_contact_list_editor_get_contact + (EContactListEditor *editor); +void e_contact_list_editor_set_contact + (EContactListEditor *editor, + EContact *contact); +gboolean e_contact_list_editor_get_is_new_list + (EContactListEditor *editor); +void e_contact_list_editor_set_is_new_list + (EContactListEditor *editor, + gboolean is_new_list); +gboolean e_contact_list_editor_get_editable + (EContactListEditor *editor); +void e_contact_list_editor_set_editable + (EContactListEditor *editor, + gboolean editable); +gboolean e_contact_list_editor_request_close_all (void); G_END_DECLS - #endif /* __E_CONTACT_LIST_EDITOR_H__ */ |