1 /* -*-mode:c; c-style:k&r; c-basic-offset:4; -*- */ 2 /* Balsa E-Mail Client 3 * Copyright (C) 1997-2013 Stuart Parmenter and others, 4 * See the file AUTHORS for a list. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2, or (at your option) 9 * any later version. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with this program; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 19 * 02111-1307, USA. 20 */ 21 22 #ifndef __AB_WINDOW_H__ 23 #define __AB_WINDOW_H__ 24 25 #include <gtk/gtk.h> 26 #include <libbalsa.h> 27 28 #define BALSA_TYPE_AB_WINDOW (balsa_ab_window_get_type ()) 29 #define BALSA_AB_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BALSA_TYPE_AB_WINDOW, BalsaAbWindow)) 30 #define BALSA_AB_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BALSA_TYPE_AB_WINDOW, BalsaAbWindowClass)) 31 #define BALSA_IS_AB_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BALSA_TYPE_AB_WINDOW)) 32 #define BALSA_IS_AB_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BALSA_TYPE_AB_WINDOW)) 33 34 35 typedef struct _BalsaAbWindow BalsaAbWindow; 36 typedef struct _BalsaAbWindowClass BalsaAbWindowClass; 37 38 struct _BalsaAbWindow 39 { 40 GtkDialog parent; 41 42 /* Are we composing? */ 43 gboolean composing; 44 45 /* The current address book */ 46 LibBalsaAddressBook *current_address_book; 47 48 /* the filter entry */ 49 GtkWidget *filter_entry; 50 51 /* The address list */ 52 GtkWidget *address_list; 53 54 /* The send to list */ 55 GtkWidget *recipient_list; 56 57 /* Radio buttons for dist list mode */ 58 GtkWidget *single_address_mode_radio; 59 GtkWidget *dist_address_mode_radio; 60 guint toggle_handler_id; 61 62 /* Stuff to hide when not in compose mode */ 63 GtkWidget *send_to_label; 64 GtkWidget *send_to_list; 65 GtkWidget *arrow_box; 66 67 /* The address book list */ 68 GtkWidget *combo_box; 69 }; 70 71 GType balsa_ab_window_get_type(void); 72 GtkWidget *balsa_ab_window_new(gboolean composing, GtkWindow* parent); 73 74 gchar *balsa_ab_window_get_recipients(BalsaAbWindow *ab); 75 76 77 #endif /* __ADDRESS_BOOK_H__ */ 78