aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-account-gui.h
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2001-03-27 13:23:27 +0800
committerDan Winship <danw@src.gnome.org>2001-03-27 13:23:27 +0800
commit6dd8aabeeee1945c4d96af5e045b75995db56517 (patch)
treeda872e79836a7a5237ed5e37cefe71a789f66ca0 /mail/mail-account-gui.h
parent0b8af6dc0a87c119bf91b7aa62157d627cf573d0 (diff)
downloadgsoc2013-evolution-6dd8aabeeee1945c4d96af5e045b75995db56517.tar.gz
gsoc2013-evolution-6dd8aabeeee1945c4d96af5e045b75995db56517.tar.zst
gsoc2013-evolution-6dd8aabeeee1945c4d96af5e045b75995db56517.zip
Probably the very last new config dialog ever. (Ha ha). From Anna, based
* mail-config.glade: Probably the very last new config dialog ever. (Ha ha). From Anna, based on a story by me. * mail-account-gui.c: New code for the new mail-config.glade. This abstracts out all of the common code between the account editor and the druid. It also handles the spiffy new provider-specific config stuff. FIXME: The code to check if a service is ok or not is no longer there... waiting until the online/offline stuff from the shell appears. * mail-account-editor.c, mail-config-druid.c: These are much smaller now, since most of the interesting bits moved to mail-account-gui.c * mail-accounts.c: Add an enabled/disabled column/button to replace the checkbox that used to be in the editor, because it really makes more sense to have it out here. This looks ugly. Probably ought to ETable it... (load_accounts): Fill in the enabled column. (mail_select, mail_unselect): toggle the sensitivity and name of the Enable/Disable button appropriately (mail_able): Handle the enable/disable button. * mail-config.c: Remove reply-to from MailConfigIdentity since it didn't belong there (and wasn't being saved anyway). (mail_config_check_service): Simplify this a bit. This really needs to pop up a dialog with a "connecting..." message and a cancel button. svn path=/trunk/; revision=8971
Diffstat (limited to 'mail/mail-account-gui.h')
-rw-r--r--mail/mail-account-gui.h99
1 files changed, 99 insertions, 0 deletions
diff --git a/mail/mail-account-gui.h b/mail/mail-account-gui.h
new file mode 100644
index 0000000000..2684dd934c
--- /dev/null
+++ b/mail/mail-account-gui.h
@@ -0,0 +1,99 @@
+/* -*- 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 the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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 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;
+ GtkEntry *hostname;
+ GtkEntry *username;
+ GtkEntry *path;
+ GtkToggleButton *use_ssl;
+ GtkOptionMenu *authtype;
+ GtkWidget *authitem;
+ GtkToggleButton *remember;
+ GtkButton *check_supported;
+
+ CamelProvider *provider;
+} MailAccountGuiService;
+
+typedef struct {
+ GtkWidget *top;
+ MailConfigAccount *account;
+ GladeXML *xml;
+
+ /* identity */
+ GtkEntry *full_name;
+ GtkEntry *email_address;
+ GtkEntry *organization;
+ GnomeFileEntry *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;
+} 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);
+gboolean mail_account_gui_source_complete (MailAccountGui *gui);
+gboolean mail_account_gui_transport_complete (MailAccountGui *gui);
+gboolean mail_account_gui_management_complete (MailAccountGui *gui);
+
+void mail_account_gui_build_extra_conf (MailAccountGui *gui, const char *url);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* MAIL_ACCOUNT_GUI_H */