diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2008-04-03 02:37:22 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2008-04-03 02:37:22 +0800 |
commit | 16068d9b4191ea142a9e75a50eb8d260ed2bb406 (patch) | |
tree | 835a7909cd8b352d8c414986f1f5e27697b4de98 /widgets | |
parent | ee50e5d68e4f1a793541f1ee4979818ed4940173 (diff) | |
download | gsoc2013-evolution-16068d9b4191ea142a9e75a50eb8d260ed2bb406.tar gsoc2013-evolution-16068d9b4191ea142a9e75a50eb8d260ed2bb406.tar.gz gsoc2013-evolution-16068d9b4191ea142a9e75a50eb8d260ed2bb406.tar.bz2 gsoc2013-evolution-16068d9b4191ea142a9e75a50eb8d260ed2bb406.tar.lz gsoc2013-evolution-16068d9b4191ea142a9e75a50eb8d260ed2bb406.tar.xz gsoc2013-evolution-16068d9b4191ea142a9e75a50eb8d260ed2bb406.tar.zst gsoc2013-evolution-16068d9b4191ea142a9e75a50eb8d260ed2bb406.zip |
** Merge the mbarnes-composer branch
2008-04-02 Matthew Barnes <mbarnes@redhat.com>
** Merge the mbarnes-composer branch
* configure.in:
Bump libgtkhtml requirement to 3.19.1.
Add gtkhtml-editor dependency for addressbook, calendar and mail.
Remove print-message plugin; new composer implements this natively.
* tools/Makefile.am:
Remove CORBA rules for the old composer.
* addressbook/gui/widgets/Makefile.am:
Remove CORBA rules for the old composer.
* addressbook/gui/widgets/eab-gui-util.c
(eab_send_to_contact_and_email_num_list),
(eab_send_contact_list_as_attachment):
Adapt to new Bonobo-less composer widget.
* calendar/gui/Makefile.am:
Remove CORBA rules for the old composer.
* calendar/gui/itip-utils.c (comp_from), (comp_to_list),
(comp_subject), (comp_content_type), (comp_filename),
(comp_description), (append_cal_attachments), (itip_send_comp),
(reply_to_calendar_comp):
Adapt to new Bonobo-less composer widget.
* composer/Makefile.am:
Remove CORBA rules for the old composer.
* composer/e-msg-composer.c:
* composer/e-msg-composer.h:
EMsgComposer is now a subclass of GtkhtmlEditor.
Extensive refactoring and cleanup, too much to list in detail.
* composer/e-composer-header.c:
* composer/e-composer-header.h:
Add "sensitive" property along with get/set functions.
* composer/e-composer-from-header.c:
* composer/e-composer-from-header.h:
Propagate "refreshed" signal from EAccountComboBox.
Add function e_composer_from_header_get_account_list().
* composer/e-composer-private.c:
* composer/e-composer-private.h:
New files manage composer's private data.
Allows other composer files to manipulate private data.
* composer/e-msg-composer-hdrs.c:
* composer/e-msg-composer-hdrs.h:
Remove these files; replaced by EComposerHeaderTable widget.
* composer/evolution-composer.c:
* composer/evolution-composer.h:
Remove these files; composer is now a subclass of GtkhtmlEditor.
* composer/e-msg-composer-select-file.c:
* composer/e-msg-composer-select-file.h:
Remove these files; logic moved to e-msg-composer.c.
* composer/listener.c:
* composer/listener.h:
Remove these files; event handlers moved to e-msg-composer.c.
* composer/Composer.idl:
* composer/Evolution-Composer.idl:
Remove these files; composer is no longer a Bonobo object.
* mail/em-composer-prefs (sig_edit_cb),
(em_composer_prefs_new_signature):
Adapt to new Bonobo-less signature editor.
* mail/mail-signature-editor.c:
* mail/mail-signature-editor.h:
Rewrite the signature editor as a subclass of GtkhtmlEditor.
Eliminates Bonobo from the equation.
* mail/em-composer-utils.c (composer_get_message),
(em_utils_composer_send_cb), (save_draft_done),
(em_utils_composer_save_draft_cb), (create_new_composer),
(em_utils_compose_new_message),
(em_utils_compose_new_message_with_mailto), (em_utils_post_to_folder),
(em_utils_post_to_url), (edit_message), (forward_attached),
(forward_non_attached), (reply_get_composer), (composer_set_body),
(em_utils_reply_to_message), (post_reply_to_message):
Adapt to new Bonobo-less composer.
* mail/mail-component-factory.c:
Composer is no longer needs a Bonobo factory.
* mail/mail-config.c:
Fix style pattern for EMsgComposer widgets.
* plugins/groupwise/mail-send-options.c
(org_gnome_composer_send_options):
Adapt to streamlined EMsgComposer API.
* plugins/exchange-operations/Makefile.am:
Add EVOLUTION_MAIL_CFLAGS and EVOLUTION_MAIL_LIBS.
* plugins/exchange-operations/exchange-mail-send-options.c
(append_to_header), (org_gnome_exchange_send_options):
Adapt to streamlined EMsgComposer API.
* plugins/mailing-list-actions/mailing-list-actions.c
(emla_list_action_do):
Adapt to streamlined EMsgComposer API.
* po/POTFILES.in: Update file list for new composer.
* ui/evolution-composer-entries.xml:
Remove this file; obsoleted by new composer.
* widgets/misc/Makefile.am:
Add EVOLUTION_MAIL_LIBS.
* widgets/misc/e-account-combo-box.c:
* widgets/misc/e-account-combo-box.h:
New function e_account_combo_box_get_account_list().
Emit a "refreshed" signal when the EAccountList changes.
Add an internal reverse-lookup index.
* widgets/misc/e-charset-picker.c (e_charser_add_radio_actions):
New function adds radio actions to an action group.
Will eventually replace e_charset_picker_bonobo_ui_populate().
* widgets/misc/e-signature-combo-box.c:
* widgets/misc/e-signature-combo-box.h:
New function e_signature_combo_box_get_signature_list().
... separate issue ...
* configure.in:
Bump eds_minimum_version to 2.23.1 for
CAMEL_FOLDER_JUNKED_NOT_DELETED symbol.
svn path=/trunk/; revision=35313
Diffstat (limited to 'widgets')
-rw-r--r-- | widgets/misc/ChangeLog | 19 | ||||
-rw-r--r-- | widgets/misc/Makefile.am | 1 | ||||
-rw-r--r-- | widgets/misc/e-account-combo-box.c | 86 | ||||
-rw-r--r-- | widgets/misc/e-account-combo-box.h | 21 | ||||
-rw-r--r-- | widgets/misc/e-charset-picker.c | 130 | ||||
-rw-r--r-- | widgets/misc/e-charset-picker.h | 42 | ||||
-rw-r--r-- | widgets/misc/e-signature-combo-box.c | 27 | ||||
-rw-r--r-- | widgets/misc/e-signature-combo-box.h | 25 |
8 files changed, 306 insertions, 45 deletions
diff --git a/widgets/misc/ChangeLog b/widgets/misc/ChangeLog index 13270f833d..e5e59a03e0 100644 --- a/widgets/misc/ChangeLog +++ b/widgets/misc/ChangeLog @@ -1,3 +1,22 @@ +2008-04-02 Matthew Barnes <mbarnes@redhat.com> + + * Makefile.am: + Add EVOLUTION_MAIL_LIBS. + + * e-account-combo-box.c: + * e-account-combo-box.h: + New function e_account_combo_box_get_account_list(). + Emit a "refreshed" signal when the EAccountList changes. + Add an internal reverse-lookup index. + + * e-charset-picker.c (e_charser_add_radio_actions): + New function adds radio actions to an action group. + Will eventually replace e_charset_picker_bonobo_ui_populate(). + + * e-signature-combo-box.c: + * e-signature-combo-box.h: + New function e_signature_combo_box_get_signature_list(). + 2008-03-27 Milan Crha <mcrha@redhat.com> ** Fix for bug #507526 diff --git a/widgets/misc/Makefile.am b/widgets/misc/Makefile.am index ea02028595..bb3d131ffb 100644 --- a/widgets/misc/Makefile.am +++ b/widgets/misc/Makefile.am @@ -138,6 +138,7 @@ libemiscwidgets_la_LIBADD = $(top_builddir)/e-util/libeutil.la \ $(top_builddir)/a11y/libevolution-a11y.la \ $(EVOLUTION_MAIL_LIBS) \ $(GNOME_PLATFORM_LIBS) \ + $(EVOLUTON_MAIL_LIBS) \ $(ICONV_LIBS) libefilterbar_la_SOURCES = \ diff --git a/widgets/misc/e-account-combo-box.c b/widgets/misc/e-account-combo-box.c index 6a96644bfd..37b13866f6 100644 --- a/widgets/misc/e-account-combo-box.c +++ b/widgets/misc/e-account-combo-box.c @@ -1,3 +1,22 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2008 Novell, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of version 2 of the GNU Lesser General Public + * License as published by the Free Software Foundation. + * + * 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 Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + #include "e-account-combo-box.h" #include <string.h> @@ -12,12 +31,19 @@ enum { COLUMN_ACCOUNT }; +enum { + REFRESHED, + LAST_SIGNAL +}; + struct _EAccountComboBoxPrivate { EAccountList *account_list; + GHashTable *index; }; static gpointer parent_class; static CamelSession *camel_session; +static guint signal_ids[LAST_SIGNAL]; static gboolean account_combo_box_has_dupes (GList *list, @@ -86,15 +112,9 @@ account_combo_box_refresh_cb (EAccountList *account_list, store = gtk_list_store_new (2, G_TYPE_STRING, E_TYPE_ACCOUNT); model = GTK_TREE_MODEL (store); + index = combo_box->priv->index; - /* Embed a reverse-lookup index into the list store. */ - index = g_hash_table_new_full ( - g_direct_hash, g_direct_equal, - (GDestroyNotify) g_object_unref, - (GDestroyNotify) gtk_tree_row_reference_free); - g_object_set_data_full ( - G_OBJECT (combo_box), "index", index, - (GDestroyNotify) g_hash_table_destroy); + g_hash_table_remove_all (index); if (account_list == NULL) goto skip; @@ -161,6 +181,8 @@ skip: e_account_combo_box_set_active (combo_box, account); if (account != NULL) g_object_unref (account); + + g_signal_emit (combo_box, signal_ids[REFRESHED], 0); } static GObject * @@ -200,11 +222,26 @@ account_combo_box_dispose (GObject *object) priv->account_list = NULL; } + g_hash_table_remove_all (priv->index); + /* Chain up to parent's dispose() method. */ G_OBJECT_CLASS (parent_class)->dispose (object); } static void +account_combo_box_finalize (GObject *object) +{ + EAccountComboBoxPrivate *priv; + + priv = E_ACCOUNT_COMBO_BOX_GET_PRIVATE (object); + + g_hash_table_destroy (priv->index); + + /* Chain up to parent's finalize() method. */ + G_OBJECT_CLASS (parent_class)->finalize (object); +} + +static void account_combo_box_class_init (EAccountComboBoxClass *class) { GObjectClass *object_class; @@ -215,12 +252,30 @@ account_combo_box_class_init (EAccountComboBoxClass *class) object_class = G_OBJECT_CLASS (class); object_class->constructor = account_combo_box_constructor; object_class->dispose = account_combo_box_dispose; + object_class->finalize = account_combo_box_finalize; + + signal_ids[REFRESHED] = g_signal_new ( + "refreshed", + G_TYPE_FROM_CLASS (class), + G_SIGNAL_RUN_LAST, + 0, NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); } static void account_combo_box_init (EAccountComboBox *combo_box) { + GHashTable *index; + + /* Reverse-lookup index */ + index = g_hash_table_new_full ( + g_direct_hash, g_direct_equal, + (GDestroyNotify) g_object_unref, + (GDestroyNotify) gtk_tree_row_reference_free); + combo_box->priv = E_ACCOUNT_COMBO_BOX_GET_PRIVATE (combo_box); + combo_box->priv->index = index; } GType @@ -273,6 +328,14 @@ e_account_combo_box_set_session (CamelSession *session) camel_session = session; } +EAccountList * +e_account_combo_box_get_account_list (EAccountComboBox *combo_box) +{ + g_return_val_if_fail (E_IS_ACCOUNT_COMBO_BOX (combo_box), NULL); + + return combo_box->priv->account_list; +} + void e_account_combo_box_set_account_list (EAccountComboBox *combo_box, EAccountList *account_list) @@ -337,7 +400,6 @@ gboolean e_account_combo_box_set_active (EAccountComboBox *combo_box, EAccount *account) { - GHashTable *index; EAccountList *account_list; GtkTreeRowReference *reference; GtkTreeModel *model; @@ -353,10 +415,6 @@ e_account_combo_box_set_active (EAccountComboBox *combo_box, account_list = combo_box->priv->account_list; g_return_val_if_fail (account_list != NULL, FALSE); - /* Failure here indicates a programming error. */ - index = g_object_get_data (G_OBJECT (combo_box), "index"); - g_assert (index != NULL); - /* NULL means select the default account. */ /* XXX EAccountList misuses const. */ if (account == NULL) @@ -364,7 +422,7 @@ e_account_combo_box_set_active (EAccountComboBox *combo_box, e_account_list_get_default (account_list); /* Lookup the tree row reference for the account. */ - reference = g_hash_table_lookup (index, account); + reference = g_hash_table_lookup (combo_box->priv->index, account); if (reference == NULL) return FALSE; diff --git a/widgets/misc/e-account-combo-box.h b/widgets/misc/e-account-combo-box.h index a4363cf2e2..d5dd26780e 100644 --- a/widgets/misc/e-account-combo-box.h +++ b/widgets/misc/e-account-combo-box.h @@ -1,3 +1,22 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2008 Novell, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of version 2 of the GNU Lesser General Public + * License as published by the Free Software Foundation. + * + * 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 Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + #ifndef E_ACCOUNT_COMBO_BOX_H #define E_ACCOUNT_COMBO_BOX_H @@ -43,6 +62,8 @@ struct _EAccountComboBoxClass { GType e_account_combo_box_get_type (void); GtkWidget * e_account_combo_box_new (void); void e_account_combo_box_set_session (CamelSession *session); +EAccountList * e_account_combo_box_get_account_list + (EAccountComboBox *combo_box); void e_account_combo_box_set_account_list (EAccountComboBox *combo_box, EAccountList *account_list); diff --git a/widgets/misc/e-charset-picker.c b/widgets/misc/e-charset-picker.c index 3254c9d42f..2efffdd8b8 100644 --- a/widgets/misc/e-charset-picker.c +++ b/widgets/misc/e-charset-picker.c @@ -28,15 +28,6 @@ #include <string.h> #include <iconv.h> -#include <gtk/gtkhbox.h> -#include <gtk/gtkvbox.h> -#include <gtk/gtkentry.h> -#include <gtk/gtkstock.h> -#include <gtk/gtklabel.h> -#include <gtk/gtkmenuitem.h> -#include <gtk/gtkoptionmenu.h> -#include <gtk/gtksignal.h> - #include <glib/gi18n.h> #include <bonobo/bonobo-ui-node.h> @@ -446,6 +437,127 @@ e_charset_picker_dialog (const char *title, const char *prompt, } /** + * e_charset_add_radio_actions: + * @action_group: a #GtkActionGroup + * @default_charset: the default character set, or %NULL to use the + * locale character set + * @callback: a callback function for actions in the group, or %NULL + * @user_data: user data to be passed to @callback, or %NULL + * + * Adds a set of #GtkRadioActions for available character sets to + * @action_group. The @default_charset (or locale character set if + * @default_charset is %NULL) will be added first, and selected by + * default (except that iso-8859-1 will always be used instead of + * US-ASCII). Any other character sets of the same language class as + * the default will be added next, followed by the remaining character + * sets. + **/ +void +e_charset_add_radio_actions (GtkActionGroup *action_group, + const gchar *default_charset, + GCallback callback, + gpointer user_data) +{ + GtkRadioAction *action = NULL; + GSList *group = NULL; + const gchar *locale_charset; + gint def, ii; + + g_return_if_fail (GTK_IS_ACTION_GROUP (action_group)); + + /* XXX I could try to factor out code common to this + * function and e_charset_picker_bonobo_ui_populate() + * instead of duplicating it, but I expect the latter + * function to be obsolete in the foreseeable future. */ + + g_get_charset (&locale_charset); + if (!g_ascii_strcasecmp (locale_charset, "US-ASCII")) + locale_charset = "iso-8859-1"; + + if (default_charset == NULL) + default_charset = locale_charset; + for (def = 0; def < G_N_ELEMENTS (charsets); def++) + if (!g_ascii_strcasecmp (charsets[def].name, default_charset)) + break; + + for (ii = 0; ii < G_N_ELEMENTS (charsets); ii++) { + gchar *escaped_name; + gchar *charset_label; + gchar **str_array; + + /* Escape underlines in the character set name so + * they're not treated as GtkLabel mnemonics. */ + str_array = g_strsplit (charsets[ii].name, "_", -1); + escaped_name = g_strjoinv ("__", str_array); + g_strfreev (str_array); + + if (charsets[ii].subclass != NULL) + charset_label = g_strdup_printf ( + "%s, %s (%s)", + gettext (classnames[charsets[ii].class]), + gettext (charsets[ii].subclass), + escaped_name); + else if (charsets[ii].class != E_CHARSET_UNKNOWN) + charset_label = g_strdup_printf ( + "%s (%s)", + gettext (classnames[charsets[ii].class]), + escaped_name); + else + charset_label = g_strdup (escaped_name); + + action = gtk_radio_action_new ( + charsets[ii].name, charset_label, NULL, NULL, ii); + + gtk_radio_action_set_group (action, group); + group = gtk_radio_action_get_group (action); + + if (callback != NULL) + g_signal_connect ( + action, "changed", callback, user_data); + + gtk_action_group_add_action ( + action_group, GTK_ACTION (action)); + + g_object_unref (action); + + g_free (escaped_name); + g_free (charset_label); + } + + if (def == G_N_ELEMENTS (charsets)) { + gchar *charset_label; + gchar **str_array; + + /* Escape underlines in the character set name so + * they're not treated as GtkLabel mnemonics. */ + str_array = g_strsplit (default_charset, "_", -1); + charset_label = g_strjoinv ("__", str_array); + g_strfreev (str_array); + + action = gtk_radio_action_new ( + default_charset, charset_label, NULL, NULL, def); + + gtk_radio_action_set_group (action, group); + group = gtk_radio_action_get_group (action); + + if (callback != NULL) + g_signal_connect ( + action, "changed", callback, user_data); + + gtk_action_group_add_action ( + action_group, GTK_ACTION (action)); + + g_object_unref (action); + + g_free (charset_label); + } + + /* Any of the actions in the action group will do. */ + if (action != NULL) + gtk_radio_action_set_current_value (action, def); +} + +/** * e_charset_picker_bonobo_ui_populate: * @uic: Bonobo UI Component * @path: menu path diff --git a/widgets/misc/e-charset-picker.h b/widgets/misc/e-charset-picker.h index 78de722483..35abff0241 100644 --- a/widgets/misc/e-charset-picker.h +++ b/widgets/misc/e-charset-picker.h @@ -18,31 +18,33 @@ * */ -#ifndef _E_CHARSETPICKER_H_ -#define _E_CHARSETPICKER_H_ +#ifndef E_CHARSETPICKER_H +#define E_CHARSETPICKER_H -#include <gtk/gtkwindow.h> +#include <gtk/gtk.h> #include <bonobo/bonobo-ui-component.h> -#ifdef __cplusplus -extern "C" { -#pragma } -#endif /* __cplusplus */ +G_BEGIN_DECLS -GtkWidget *e_charset_picker_new (const char *default_charset); -char *e_charset_picker_get_charset (GtkWidget *picker); +GtkWidget * e_charset_picker_new (const char *default_charset); +char * e_charset_picker_get_charset (GtkWidget *picker); +char * e_charset_picker_dialog (const char *title, + const char *prompt, + const char *default_charset, + GtkWindow *parent); -char *e_charset_picker_dialog (const char *title, const char *prompt, - const char *default_charset, - GtkWindow *parent); +void e_charset_add_radio_actions (GtkActionGroup *action_group, + const gchar *default_charset, + GCallback callback, + gpointer user_data); -/* bonobo equivalents */ -void e_charset_picker_bonobo_ui_populate (BonoboUIComponent *uic, const char *path, - const char *default_charset, - BonoboUIListenerFn cb, gpointer user_data); +void e_charset_picker_bonobo_ui_populate + (BonoboUIComponent *uic, + const char *path, + const char *default_charset, + BonoboUIListenerFn cb, + gpointer user_data); -#ifdef __cplusplus -} -#endif /* __cplusplus */ +G_END_DECLS -#endif /* _E_CHARSETPICKER_H_ */ +#endif /* E_CHARSETPICKER_H */ diff --git a/widgets/misc/e-signature-combo-box.c b/widgets/misc/e-signature-combo-box.c index be19755ef6..3edcc2b364 100644 --- a/widgets/misc/e-signature-combo-box.c +++ b/widgets/misc/e-signature-combo-box.c @@ -1,3 +1,22 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2008 Novell, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of version 2 of the GNU Lesser General Public + * License as published by the Free Software Foundation. + * + * 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 Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + #include "e-signature-combo-box.h" #include <glib/gi18n.h> @@ -233,6 +252,14 @@ e_signature_combo_box_new (void) return g_object_new (E_TYPE_SIGNATURE_COMBO_BOX, NULL); } +ESignatureList * +e_signature_combo_box_get_signature_list (ESignatureComboBox *combo_box) +{ + g_return_val_if_fail (E_IS_SIGNATURE_COMBO_BOX (combo_box), NULL); + + return combo_box->priv->signature_list; +} + void e_signature_combo_box_set_signature_list (ESignatureComboBox *combo_box, ESignatureList *signature_list) diff --git a/widgets/misc/e-signature-combo-box.h b/widgets/misc/e-signature-combo-box.h index 31786978ef..4208265911 100644 --- a/widgets/misc/e-signature-combo-box.h +++ b/widgets/misc/e-signature-combo-box.h @@ -1,9 +1,28 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2008 Novell, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of version 2 of the GNU Lesser General Public + * License as published by the Free Software Foundation. + * + * 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 Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + #ifndef E_SIGNATURE_COMBO_BOX_H #define E_SIGNATURE_COMBO_BOX_H #include <gtk/gtk.h> -#include "e-util/e-signature.h" -#include "e-util/e-signature-list.h" +#include <e-util/e-signature.h> +#include <e-util/e-signature-list.h> /* Standard GObject macros */ #define E_TYPE_SIGNATURE_COMBO_BOX \ @@ -41,6 +60,8 @@ struct _ESignatureComboBoxClass { GType e_signature_combo_box_get_type (void); GtkWidget * e_signature_combo_box_new (void); +ESignatureList *e_signature_combo_box_get_signature_list + (ESignatureComboBox *combo_box); void e_signature_combo_box_set_signature_list (ESignatureComboBox *combo_box, ESignatureList *signature_list); |