/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* camel-session.h : Abstract class for an email session */ /* * * Author : * Bertrand Guiheneuf * * Copyright 1999, 2000 Helix Code, Inc. (http://www.helixcode.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 Place, Suite 330, Boston, MA 02111-1307 * USA */ #ifndef CAMEL_SESSION_H #define CAMEL_SESSION_H 1 #ifdef __cplusplus extern "C" { #pragma } #endif /* __cplusplus }*/ #include #include #define CAMEL_SESSION_TYPE (camel_session_get_type ()) #define CAMEL_SESSION(obj) (CAMEL_CHECK_CAST((obj), CAMEL_SESSION_TYPE, CamelSession)) #define CAMEL_SESSION_CLASS(k) (CAMEL_CHECK_CLASS_CAST ((k), CAMEL_SESSION_TYPE, CamelSessionClass)) #define CAMEL_IS_SESSION(o) (CAMEL_CHECK_TYPE((o), CAMEL_SESSION_TYPE)) typedef gboolean (*CamelTimeoutCallback) (gpointer data); typedef enum { CAMEL_SESSION_ALERT_INFO, CAMEL_SESSION_ALERT_WARNING, CAMEL_SESSION_ALERT_ERROR } CamelSessionAlertType; struct _CamelSession { CamelObject parent_object; struct _CamelSessionPrivate *priv; char *storage_path; GHashTable *providers, *modules; gboolean online; }; typedef struct { CamelObjectClass parent_class; void (*register_provider) (CamelSession *session, CamelProvider *provider); GList * (*list_providers) (CamelSession *session, gboolean load); CamelProvider * (*get_provider) (CamelSession *session, const char *url_string, CamelException *ex); CamelService * (*get_service) (CamelSession *session, const char *url_string, CamelProviderType type, CamelException *ex); char * (*get_storage_path) (CamelSession *session, CamelService *service, CamelException *ex); char * (*get_password) (CamelSession *session, const char *prompt, gboolean secret, CamelService *service, const char *item, CamelException *ex); void (*forget_password) (CamelSession *session, CamelService *service, const char *item, CamelException *ex); gboolean (*alert_user) (CamelSession *session, CamelSessionAlertType type, const char *prompt, gboolean cancel); guint (*register_timeout) (CamelSession *session, guint32 interval, CamelTimeoutCallback callback, gpointer user_data); gboolean (*remove_timeout) (CamelSession *session, guint handle); } CamelSessionClass; /* public methods */ /* Standard Camel function */ CamelType camel_session_get_type (void); void camel_session_construct (CamelSession *session, const char *storage_path); void camel_session_register_provider (CamelSession *session, CamelProvider *provider); GList * camel_session_list_providers (CamelSession *session, gboolean load); CamelProvider * camel_session_get_provider (CamelSession *session, const char *url_string, CamelException *ex); CamelService * camel_session_get_service (CamelSession *session, const char *url_string, CamelProviderType type, CamelException *ex); CamelService * camel_session_get_service_connected (CamelSession *session, const char *url_string, CamelProviderType type, CamelException *ex); #define camel_session_get_store(session, url_string, ex) \ ((CamelStore *) camel_session_get_service_connected (session, url_string, CAMEL_PROVIDER_STORE, ex)) #define camel_session_get_transport(session, url_string, ex) \ ((CamelTransport *) camel_session_get_service_connected (session, url_string, CAMEL_PROVIDER_TRANSPORT, ex)) char * camel_session_get_storage_path (CamelSession *session, CamelService *service, CamelException *ex); char * camel_session_get_password (CamelSession *session, const char *prompt, gboolean secret, CamelService *service, const char *item, CamelException *ex); void camel_session_forget_password (CamelSession *session, CamelService *service, const char *item, CamelException *ex); gboolean camel_session_alert_user (CamelSession *session, CamelSessionAlertType type, const char *prompt, gboolean cancel); guint camel_session_register_timeout (CamelSession *session, guint32 interval, CamelTimeoutCallback callback, gpointer user_data); gboolean camel_session_remove_timeout (CamelSession *session, guint handle); gboolean camel_session_is_online (CamelSession *session); void camel_session_set_online (CamelSession *session, gboolean online); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* CAMEL_SESSION_H */ /diff/chinese/kde3-i18n-zh_TW?h=gnome-3.24&id=fa126c6808e865bb3c6e27ffeb191fce65de284b'>diffstats
Commit message (Expand)AuthorAgeFilesLines
* Update to KDE 3.5.2lofi2006-03-312-64/+11
* Update to KDE 3.5.1.lofi2006-02-011-3/+3
* Update to KDE 3.5.0lofi2006-01-093-56/+30
* Update to KDE 3.4lofi2005-03-212-1/+7
* Add i18nized doc subdirs to kdehier and adjust i18n port plists accordingly.lofi2004-12-231-1/+0
* Fix kde3-i18n ports.lofi2004-12-161-2/+2
* Update to KDE 3.3.2lofi2004-12-141-2/+2
* Update to KDE 3.3.1lofi2004-11-081-2/+2
* Update to KDE 3.3lofi2004-08-313-4/+3
* Update to version 3.2.3lofi2004-06-101-2/+2
* Update to KDE 3.2.2lofi2004-04-202-18/+2
* Update to KDE 3.2.1 / QT 3.3.1lofi2004-03-102-2/+3
* Update to KDE 3.2.0lofi2004-02-053-20/+48
* Add USE_GETTEXT and bump PORTREVISION.marcus2004-02-041-2/+2
* Now gettext 0.12.1 is gettext-old.trevor2004-01-241-1/+1
* Translation update: fix checksum.will2003-09-221-1/+1
* Upgrade to Qt 3.2.1 / KDE 3.1.4. See x11/kde3/Makefile rev 1.64 for details.will2003-09-181-2/+1
* Update KDE to the latest official release, KDE 3.1.3lofi2003-07-291-1/+2
* Update to KDE 3.1.2lioux2003-05-202-4/+4
* Rejoice, for the long awaited upgrade to kde 3.1.1 is here!alane2003-04-061-1/+1
* pkg-comment police: Purge them in this category while I'm here.foxfair2003-02-262-1/+1
* Upgrade kde-i18n to 3.1. Note that the following modules did not get awill2003-01-292-8/+114
* Change main category to chinese so pkgdb doesn't get sick over a missingalane2002-10-161-1/+1
* 1. Removed comments from pkg-plist files per will's request.alane2002-10-111-1/+1
* Update to 3.0.3. Not much changed here: [1] i18n PKGNAMEs converted towill2002-08-252-4/+3
* 1. Changed the lib depends on gettext to a build depends. This will meanalane2002-08-031-2/+2
* Bump PORTREVISION. KDE is fragile enough in its dependencies; we don'talane2002-08-021-0/+1
* Chase shlib rev of devel/gettextade2002-08-021-1/+1
* Fix MASTER_SITE_SUBDIR.will2002-07-101-1/+1
* Update to 3.0.2 -- full log available in ports/x11/kde3/Makefile,v 1.51.will2002-07-053-69/+5
* Upgrade to KDE 3.0.1. The delay in this upgrade is mainly due to thewill2002-06-163-4/+54
* Please welcome Qt3/KDE3 to our ports tree. This includes work since thewill2002-04-225-9/+378
* Make this port support zh_TW.Big5 locale.clive2001-11-301-1/+1
* Remove directory missing in version 2.2demon2001-08-201-1/+1
* Fix typo (and make this work).demon2001-04-181-1/+1
* Include also Traditional Chinese into this port.demon2001-04-171-3/+2