From bb7cb1d677117a938ae18d9cae7acc7a56678b6f Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Wed, 17 Sep 2008 15:07:13 +0000 Subject: Massive address book refactoring. Things are mostly working again. Also, begin documenting the new shell API, and provide a Gtk-Doc framework. svn path=/branches/kill-bonobo/; revision=36359 --- addressbook/gui/widgets/e-addressbook-view.h | 159 +++++++++++---------------- 1 file changed, 67 insertions(+), 92 deletions(-) (limited to 'addressbook/gui/widgets/e-addressbook-view.h') diff --git a/addressbook/gui/widgets/e-addressbook-view.h b/addressbook/gui/widgets/e-addressbook-view.h index 4b3504d87f..bdae1d553a 100644 --- a/addressbook/gui/widgets/e-addressbook-view.h +++ b/addressbook/gui/widgets/e-addressbook-view.h @@ -19,35 +19,35 @@ * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) * */ -#ifndef EAB_VIEW_H -#define EAB_VIEW_H +#ifndef E_ADDRESSBOOK_VIEW_H +#define E_ADDRESSBOOK_VIEW_H -#include -#include -#include +#include #include +#include +#include + #include "e-addressbook-model.h" #include "eab-contact-display.h" -#include "misc/e-search-bar.h" /* Standard GObject macros */ -#define E_TYPE_AB_VIEW \ - (eab_view_get_type ()) -#define EAB_VIEW(obj) \ +#define E_TYPE_ADDRESSBOOK_VIEW \ + (e_addressbook_view_get_type ()) +#define E_ADDRESSBOOK_VIEW(obj) \ (G_TYPE_CHECK_INSTANCE_CAST \ - ((obj), E_TYPE_AB_VIEW, EABView)) -#define EAB_VIEW_CLASS(cls) \ + ((obj), E_TYPE_ADDRESSBOOK_VIEW, EAddressbookView)) +#define E_ADDRESSBOOK_VIEW_CLASS(cls) \ (G_TYPE_CHECK_CLASS_CAST \ - ((cls), E_TYPE_AB_VIEW, EABViewClass)) + ((cls), E_TYPE_ADDRESSBOOK_VIEW, EAddressbookViewClass)) #define E_IS_ADDRESSBOOK_VIEW(obj) \ (G_TYPE_CHECK_INSTANCE_TYPE \ - ((obj), E_TYPE_AB_VIEW)) + ((obj), E_TYPE_ADDRESSBOOK_VIEW)) #define E_IS_ADDRESSBOOK_VIEW_CLASS(cls) \ (G_TYPE_CHECK_CLASS_TYPE \ - ((obj), E_TYPE_AB_VIEW)) + ((obj), E_TYPE_ADDRESSBOOK_VIEW)) #define E_ADDRESSBOOK_VIEW_GET_CLASS(obj) \ (G_TYPE_INSTANCE_GET_CLASS \ - ((obj), E_TYPE_AB_VIEW, EABViewClass)) + ((obj), E_TYPE_ADDRESSBOOK_VIEW, EAddressbookViewClass)) G_BEGIN_DECLS @@ -55,99 +55,74 @@ struct _EABMenu; struct _EABMenuTargetSelect; typedef enum { - EAB_VIEW_NONE, /* initialized to this */ - EAB_VIEW_MINICARD, - EAB_VIEW_TABLE, -} EABViewType; - + E_ADDRESSBOOK_VIEW_NONE, /* initialized to this */ + E_ADDRESSBOOK_VIEW_MINICARD, + E_ADDRESSBOOK_VIEW_TABLE, +} EAddressbookViewType; -typedef struct _EABView EABView; -typedef struct _EABViewClass EABViewClass; +typedef struct _EAddressbookView EAddressbookView; +typedef struct _EAddressbookViewClass EAddressbookViewClass; +typedef struct _EAddressbookViewPrivate EAddressbookViewPrivate; -struct _EABView { +struct _EAddressbookView { GtkVBox parent; - - /* item specific fields */ - EABViewType view_type; - - EABModel *model; - - GtkWidget *invisible; - GList *clipboard_contacts; - - EBook *book; - ESource *source; - char *query; - guint editable : 1; - - gint displayed_contact; - - GObject *object; - GtkWidget *widget; - - GtkWidget *contact_display_window; - GtkWidget *contact_display; - GtkWidget *paned; - - /* Menus handler and the view instance */ - GalViewInstance *view_instance; - /*GalViewMenus *view_menus;*/ - GalView *current_view; + EAddressbookViewPrivate *priv; }; -struct _EABViewClass { +struct _EAddressbookViewClass { GtkVBoxClass parent_class; /* Signals */ - void (*status_message) (EABView *view, const gchar *message); - void (*search_result) (EABView *view, EBookViewStatus status); - void (*folder_bar_message) (EABView *view, const gchar *message); - void (*command_state_change) (EABView *view); + void (*status_message) (EAddressbookView *view, + const gchar *message); + void (*folder_bar_message) (EAddressbookView *view, + const gchar *message); + void (*command_state_change) (EAddressbookView *view); + void (*preview_contact) (EAddressbookView *view, + EContact *contact); }; -GType eab_view_get_type (void); -GtkWidget * eab_view_new (void); -void eab_view_show_contact_preview (EABView *view, - gboolean show); -void eab_view_save_as (EABView *view, +GType e_addressbook_view_get_type (void); +GtkWidget * e_addressbook_view_new (EShellView *shell_view); +EAddressbookModel * + e_addressbook_view_get_model (EAddressbookView *view); +GalViewInstance * + e_addressbook_view_get_view_instance + (EAddressbookView *view); +GObject * e_addressbook_view_get_view_object + (EAddressbookView *view); +GtkWidget * e_addressbook_view_get_view_widget + (EAddressbookView *view); +ESelectionModel * + e_addressbook_view_get_selection_model + (EAddressbookView *view); +EShellView * e_addressbook_view_get_shell_view + (EAddressbookView *view); +void e_addressbook_view_save_as (EAddressbookView *view, gboolean all); -void eab_view_view (EABView *view); -void eab_view_send (EABView *view); -void eab_view_send_to (EABView *view); -void eab_view_print (EABView *view, +void e_addressbook_view_view (EAddressbookView *view); +void e_addressbook_view_send (EAddressbookView *view); +void e_addressbook_view_send_to (EAddressbookView *view); +void e_addressbook_view_print (EAddressbookView *view, GtkPrintOperationAction action); -void eab_view_delete_selection (EABView *view, +void e_addressbook_view_delete_selection + (EAddressbookView *view, gboolean is_delete); -void eab_view_cut (EABView *view); -void eab_view_copy (EABView *view); -void eab_view_paste (EABView *view); -void eab_view_select_all (EABView *view); -void eab_view_show_all (EABView *view); -void eab_view_stop (EABView *view); -void eab_view_copy_to_folder (EABView *view, +void e_addressbook_view_cut (EAddressbookView *view); +void e_addressbook_view_copy (EAddressbookView *view); +void e_addressbook_view_paste (EAddressbookView *view); +void e_addressbook_view_select_all (EAddressbookView *view); +void e_addressbook_view_show_all (EAddressbookView *view); +void e_addressbook_view_stop (EAddressbookView *view); +void e_addressbook_view_copy_to_folder + (EAddressbookView *view, gboolean all); -void eab_view_move_to_folder (EABView *view, +void e_addressbook_view_move_to_folder + (EAddressbookView *view, gboolean all); -gboolean eab_view_can_create (EABView *view); -gboolean eab_view_can_print (EABView *view); -gboolean eab_view_can_save_as (EABView *view); -gboolean eab_view_can_view (EABView *view); -gboolean eab_view_can_send (EABView *view); -gboolean eab_view_can_send_to (EABView *view); -gboolean eab_view_can_delete (EABView *view); -gboolean eab_view_can_cut (EABView *view); -gboolean eab_view_can_copy (EABView *view); -gboolean eab_view_can_paste (EABView *view); -gboolean eab_view_can_select_all (EABView *view); -gboolean eab_view_can_stop (EABView *view); -gboolean eab_view_can_copy_to_folder (EABView *view); -gboolean eab_view_can_move_to_folder (EABView *view); - -struct _EABMenuTargetSelect * - eab_view_get_menu_target (EABView *view, - struct _EABMenu *menu); +gboolean e_addressbook_view_can_create (EAddressbookView *view); G_END_DECLS -#endif /* EAB_VIEW_H */ +#endif /* E_ADDRESSBOOK_VIEW_H */ -- cgit v1.2.3