aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/gui/widgets/eab-popup.h
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2004-10-06 11:22:22 +0800
committerMichael Zucci <zucchi@src.gnome.org>2004-10-06 11:22:22 +0800
commitf745553229591ed3f620761b91e7ed447d1800fa (patch)
treebeae7ddecdf59e907a4fea5d300ae38e9c58cc46 /addressbook/gui/widgets/eab-popup.h
parentd80f89af7503afd6460698e7cc0f84cf84a6eb4d (diff)
downloadgsoc2013-evolution-f745553229591ed3f620761b91e7ed447d1800fa.tar
gsoc2013-evolution-f745553229591ed3f620761b91e7ed447d1800fa.tar.gz
gsoc2013-evolution-f745553229591ed3f620761b91e7ed447d1800fa.tar.bz2
gsoc2013-evolution-f745553229591ed3f620761b91e7ed447d1800fa.tar.lz
gsoc2013-evolution-f745553229591ed3f620761b91e7ed447d1800fa.tar.xz
gsoc2013-evolution-f745553229591ed3f620761b91e7ed447d1800fa.tar.zst
gsoc2013-evolution-f745553229591ed3f620761b91e7ed447d1800fa.zip
convert to using EABPopup. (sources): remove dead code.
2004-10-01 Not Zed <NotZed@Ximian.com> * gui/widgets/e-addressbook-view.c (do_popup_menu): convert to using EABPopup. (sources): remove dead code. (has_email_address_1, get_has_email_address): removed now redundant code. (save_as, send_as, send_to, print, copy, paste, cut, delete) (copy_to_folder, move_to_folder, new_card, new_list): new api. (free_popup_info): dead. (print_envelope): not pining. (get_contact_list): take a popup target instead, don't ref. (get_contact_list_1): not required no more. (contact_and_book_free): same. (delete): call eab_view_delete_selection. (eab_view_delete_selection): do the actual delete here. * gui/widgets/eab-popup.c (eab_popup_target_new_select): implement. 2004-10-01 Not Zed <NotZed@Ximian.com> * gui/widgets/eab-popup.[ch]: addressbook popup driver. * gui/component/addressbook-view.c (delete_addressbook_cb): use e-error for the message prompt. don't bother keeping it around, it can never be re-sensitised anyway. (book_removed): no longer destroy the original dialogue. * addressbook-errors.xml: add ask-delete for deleting addressbooks. * gui/component/addressbook-view.c (addressbook_view_init): connect to popup_event rather than fill_popup_menu now. (fill_popup_menu_callback): renamed to popup_event_callback, changed to use epopup. (add_popup_menu_item): remove, no longer needed. svn path=/trunk/; revision=27466
Diffstat (limited to 'addressbook/gui/widgets/eab-popup.h')
-rw-r--r--addressbook/gui/widgets/eab-popup.h151
1 files changed, 151 insertions, 0 deletions
diff --git a/addressbook/gui/widgets/eab-popup.h b/addressbook/gui/widgets/eab-popup.h
new file mode 100644
index 0000000000..996cf78d6d
--- /dev/null
+++ b/addressbook/gui/widgets/eab-popup.h
@@ -0,0 +1,151 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Authors: Michael Zucchi <notzed@ximian.com>
+ *
+ * Copyright 2004 Novell, Inc. (www.novell.com)
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
+ *
+ */
+
+#ifndef __EAB_POPUP_H__
+#define __EAB_POPUP_H__
+
+#include <glib-object.h>
+
+#include "e-util/e-popup.h"
+
+#ifdef __cplusplus
+extern "C" {
+#pragma }
+#endif /* __cplusplus */
+
+typedef struct _EABPopup EABPopup;
+typedef struct _EABPopupClass EABPopupClass;
+
+/**
+ * enum _eab_popup_target_t - A list of mail popup target types.
+ *
+ * @EAB_POPUP_TARGET_SELECT: A selection of cards
+ * @EAB_POPUP_TARGET_SOURCE: A source selection.
+ *
+ * Defines the value of the targetid for all EABPopup target types.
+ **/
+enum _eab_popup_target_t {
+ EAB_POPUP_TARGET_SELECT,
+ EAB_POPUP_TARGET_SOURCE,
+};
+
+/**
+ * enum _eab_popup_target_select_t - EABPopupTargetSelect qualifiers.
+ *
+ * @EAB_POPUP_SELECT_ONE: Only one item is selected.
+ * @EAB_POPUP_SELECT_MANY: One ore more items are selected.
+ * @EAB_POPUP_SELECT_EDITABLE: Read/writable source.
+ * @EAB_POPUP_SELECT_EMAIL: Has an email address.
+ **/
+enum _eab_popup_target_select_t {
+ EAB_POPUP_SELECT_ONE = 1<<0,
+ EAB_POPUP_SELECT_MANY = 1<<1,
+ EAB_POPUP_SELECT_EDITABLE = 1<<2,
+ EAB_POPUP_SELECT_EMAIL = 1<<3,
+};
+
+/**
+ * enum _eab_popup_target_source_t - EABPopupTargetSource qualifiers.
+ *
+ * @EAB_POPUP_SOURCE_PRIMARY: Has a primary selection.
+ * @EAB_POPUP_SOURCE_SYSTEM: Is a 'system' folder.
+ *
+ **/
+enum _eab_popup_target_source_t {
+ EAB_POPUP_SOURCE_PRIMARY = 1<<0,
+ EAB_POPUP_SOURCE_SYSTEM = 1<<1, /* system folder */
+ EAB_POPUP_SOURCE_USER = 1<<2, /* user folder (!system) */
+};
+
+typedef struct _EABPopupTargetSelect EABPopupTargetSelect;
+typedef struct _EABPopupTargetSource EABPopupTargetSource;
+
+/**
+ * struct _EABPopupTargetSelect - A list of address cards.
+ *
+ * @target: Superclass.
+ * @book: Book the cards belong to.
+ * @cards: All selected cards.
+ *
+ * Used to represent a selection of cards as context for a popup
+ * menu.
+ **/
+struct _EABPopupTargetSelect {
+ EPopupTarget target;
+
+ struct _EBook *book;
+ GPtrArray *cards;
+};
+
+/**
+ * struct _EABPopupTargetSource - A source target.
+ *
+ * @target: Superclass.
+ * @selector: Selector holding the source selection.
+ *
+ * This target is used to represent a source selection.
+ **/
+struct _EABPopupTargetSource {
+ EPopupTarget target;
+
+ struct _ESourceSelector *selector;
+};
+
+typedef struct _EPopupItem EABPopupItem;
+
+/* The object */
+struct _EABPopup {
+ EPopup popup;
+
+ struct _EABPopupPrivate *priv;
+};
+
+struct _EABPopupClass {
+ EPopupClass popup_class;
+};
+
+GType eab_popup_get_type(void);
+
+EABPopup *eab_popup_new(const char *menuid);
+
+EABPopupTargetSelect *eab_popup_target_new_select(EABPopup *eabp, struct _EBook *book, int readonly, GPtrArray *cards);
+EABPopupTargetSource *eab_popup_target_new_source(EABPopup *eabp, struct _ESourceSelector *selector);
+
+/* ********************************************************************** */
+
+typedef struct _EABPopupHook EABPopupHook;
+typedef struct _EABPopupHookClass EABPopupHookClass;
+
+struct _EABPopupHook {
+ EPopupHook hook;
+};
+
+struct _EABPopupHookClass {
+ EPopupHookClass hook_class;
+};
+
+GType eab_popup_hook_get_type(void);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* __EAB_POPUP_H__ */