aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/gui/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'addressbook/gui/widgets')
-rw-r--r--addressbook/gui/widgets/e-addressbook-view.c33
-rw-r--r--addressbook/gui/widgets/e-addressbook-view.h12
2 files changed, 41 insertions, 4 deletions
diff --git a/addressbook/gui/widgets/e-addressbook-view.c b/addressbook/gui/widgets/e-addressbook-view.c
index d0d6984faf..2eab704e37 100644
--- a/addressbook/gui/widgets/e-addressbook-view.c
+++ b/addressbook/gui/widgets/e-addressbook-view.c
@@ -29,6 +29,8 @@
#include <gal/e-table/e-table-model.h>
#include <gal/widgets/e-scroll-frame.h>
#include <gal/widgets/e-popup-menu.h>
+#include "widgets/menus/gal-view-menus.h"
+#include <gal/menus/gal-view-factory-etable.h>
#include "e-addressbook-model.h"
@@ -673,6 +675,37 @@ e_contact_print_button(GnomeDialog *dialog, gint button, gpointer data)
}
void
+e_addressbook_view_setup_menus (EAddressbookView *view,
+ BonoboUIComponent *uic)
+{
+ GalViewCollection *collection;
+ GalViewMenus *views;
+ GalViewFactory *factory;
+ ETableSpecification *spec;
+
+ collection = gal_view_collection_new();
+
+ spec = e_table_specification_new();
+ e_table_specification_load_from_string(spec, SPEC);
+
+ factory = gal_view_factory_etable_new(spec);
+ gal_view_collection_add_factory(collection, factory);
+ gtk_object_sink(GTK_OBJECT(factory));
+
+#if 0
+ factory = e_minicard_view_factory_new();
+ gal_view_collection_add_factory(collection, factory);
+ gtk_object_sink(GTK_OBJECT(factory));
+#endif
+
+ views = gal_view_menus_new(collection);
+ gal_view_menus_apply(views, uic, NULL);
+ gtk_object_sink(GTK_OBJECT(views));
+
+ gtk_object_sink(GTK_OBJECT(collection));
+}
+
+void
e_addressbook_view_print(EAddressbookView *view)
{
if (view->view_type == E_ADDRESSBOOK_VIEW_MINICARD) {
diff --git a/addressbook/gui/widgets/e-addressbook-view.h b/addressbook/gui/widgets/e-addressbook-view.h
index 60da283a75..28c70798fc 100644
--- a/addressbook/gui/widgets/e-addressbook-view.h
+++ b/addressbook/gui/widgets/e-addressbook-view.h
@@ -22,6 +22,7 @@
#define __E_ADDRESSBOOK_VIEW_H__
#include <gnome.h>
+#include <bonobo.h>
#include "addressbook/backend/ebook/e-book.h"
#ifdef __cplusplus
@@ -77,10 +78,13 @@ struct _EAddressbookViewClass
GtkWidget *e_addressbook_view_new (void);
GtkType e_addressbook_view_get_type (void);
-void e_addressbook_view_print (EAddressbookView *view);
-void e_addressbook_view_delete_selection (EAddressbookView *view);
-void e_addressbook_view_show_all (EAddressbookView *view);
-void e_addressbook_view_stop (EAddressbookView *view);
+void e_addressbook_view_setup_menus (EAddressbookView *view,
+ BonoboUIComponent *uic);
+
+void e_addressbook_view_print (EAddressbookView *view);
+void e_addressbook_view_delete_selection (EAddressbookView *view);
+void e_addressbook_view_show_all (EAddressbookView *view);
+void e_addressbook_view_stop (EAddressbookView *view);
#ifdef __cplusplus
}