
2001-12-19 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (composer_get_message): Add the auto-cc/bcc recipients here. The problem with setting them in the composer is that what if the user changes which account he wants to use? We'd either have to clear the cc/bcc lists *or* we'd have to leave them alone. Either way is bad. We can't just clear the entries because the user may have added addresses since the composer was opened. We don't want to leave any old auto-cc/bcc addresses there because that isn't desirable either. So we give up and add them here after the user has already hit the send button. * mail-config.c (account_copy): Update to copy the always-[b]cc options. (account_destroy): Update to destroy the above options. (config_read): Update to read in those values. (mail_config_write): Save those options. * mail-account-gui.c (mail_account_gui_new): Setup Always Cc/Bcc widgets. (mail_account_gui_save): Get the user-entered values for the always-cc/bcc stuff. svn path=/trunk/; revision=15189
131 lines
3.5 KiB
C
131 lines
3.5 KiB
C
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
|
/*
|
|
* Authors:
|
|
* Jeffrey Stedfast <fejj@ximian.com>
|
|
* Dan Winship <danw@ximian.com>
|
|
*
|
|
* Copyright 2001 Ximian, Inc. (www.ximian.com)
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of version 2 of the GNU 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 General Public
|
|
* License along with this program; if not, write to the
|
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
* Boston, MA 02111-1307, USA.
|
|
*
|
|
*/
|
|
|
|
#ifndef MAIL_ACCOUNT_GUI_H
|
|
#define MAIL_ACCOUNT_GUI_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#pragma }
|
|
#endif /* __cplusplus */
|
|
|
|
#include <gtk/gtk.h>
|
|
#include <libgnomeui/gnome-file-entry.h>
|
|
#include <glade/glade-xml.h>
|
|
#include <camel/camel-provider.h>
|
|
|
|
#include "mail-config.h"
|
|
|
|
typedef struct {
|
|
GtkOptionMenu *type;
|
|
GtkLabel *description;
|
|
GtkEntry *hostname;
|
|
GtkEntry *username;
|
|
GtkEntry *path;
|
|
GtkToggleButton *use_ssl;
|
|
GtkWidget *no_ssl;
|
|
GtkOptionMenu *authtype;
|
|
GtkWidget *authitem;
|
|
GtkToggleButton *remember;
|
|
GtkButton *check_supported;
|
|
|
|
CamelProvider *provider;
|
|
CamelProviderType provider_type;
|
|
} MailAccountGuiService;
|
|
|
|
typedef struct {
|
|
char *name, *uri;
|
|
} MailAccountGuiFolder;
|
|
|
|
typedef struct {
|
|
GtkWidget *top;
|
|
MailConfigAccount *account;
|
|
GladeXML *xml;
|
|
|
|
/* identity */
|
|
GtkEntry *full_name;
|
|
GtkEntry *email_address;
|
|
GtkEntry *organization;
|
|
GnomeFileEntry *signature;
|
|
GnomeFileEntry *html_signature;
|
|
GtkToggleButton *has_html_signature;
|
|
GtkButton *edit_signature;
|
|
GtkButton *edit_html_signature;
|
|
|
|
/* incoming mail */
|
|
MailAccountGuiService source;
|
|
GtkToggleButton *source_auto_check;
|
|
GtkSpinButton *source_auto_check_min;
|
|
|
|
/* extra incoming config */
|
|
GHashTable *extra_config;
|
|
|
|
/* outgoing mail */
|
|
MailAccountGuiService transport;
|
|
GtkToggleButton *transport_needs_auth;
|
|
|
|
/* account management */
|
|
GtkEntry *account_name;
|
|
GtkToggleButton *default_account;
|
|
|
|
/* special folders */
|
|
GtkButton *drafts_folder_button;
|
|
MailAccountGuiFolder drafts_folder;
|
|
GtkButton *sent_folder_button;
|
|
MailAccountGuiFolder sent_folder;
|
|
|
|
/* always cc/bcc */
|
|
GtkToggleButton *always_cc;
|
|
GtkEntry *cc_addrs;
|
|
GtkToggleButton *always_bcc;
|
|
GtkEntry *bcc_addrs;
|
|
|
|
/* Security */
|
|
GtkEntry *pgp_key;
|
|
GtkToggleButton *pgp_encrypt_to_self;
|
|
GtkToggleButton *pgp_always_sign;
|
|
GtkEntry *smime_key;
|
|
GtkToggleButton *smime_encrypt_to_self;
|
|
GtkToggleButton *smime_always_sign;
|
|
} MailAccountGui;
|
|
|
|
|
|
MailAccountGui *mail_account_gui_new (MailConfigAccount *account);
|
|
void mail_account_gui_setup (MailAccountGui *gui, GtkWidget *top);
|
|
gboolean mail_account_gui_save (MailAccountGui *gui);
|
|
void mail_account_gui_destroy (MailAccountGui *gui);
|
|
|
|
gboolean mail_account_gui_identity_complete (MailAccountGui *gui, GtkWidget **incomplete);
|
|
gboolean mail_account_gui_source_complete (MailAccountGui *gui, GtkWidget **incomplete);
|
|
gboolean mail_account_gui_transport_complete (MailAccountGui *gui, GtkWidget **incomplete);
|
|
gboolean mail_account_gui_management_complete (MailAccountGui *gui, GtkWidget **incomplete);
|
|
|
|
void mail_account_gui_build_extra_conf (MailAccountGui *gui, const char *url);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif /* __cplusplus */
|
|
|
|
#endif /* MAIL_ACCOUNT_GUI_H */
|