aboutsummaryrefslogtreecommitdiffstats
path: root/mail/e-mail-session.h
diff options
context:
space:
mode:
Diffstat (limited to 'mail/e-mail-session.h')
-rw-r--r--mail/e-mail-session.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/mail/e-mail-session.h b/mail/e-mail-session.h
index 165b335a19..e10e3c3d1f 100644
--- a/mail/e-mail-session.h
+++ b/mail/e-mail-session.h
@@ -26,6 +26,8 @@
#define E_MAIL_SESSION_H
#include <camel/camel.h>
+#include <mail/e-mail-enums.h>
+#include <mail/e-mail-account-store.h>
#include <mail/mail-folder-cache.h>
/* Standard GObject macros */
@@ -47,8 +49,15 @@
(G_TYPE_INSTANCE_GET_CLASS \
((obj), E_TYPE_MAIL_SESSION, EMailSessionClass))
+/* Built-in CamelServices */
+#define E_MAIL_SESSION_LOCAL_UID "local" /* "On This Computer" */
+#define E_MAIL_SESSION_VFOLDER_UID "vfolder" /* "Search Folders" */
+
G_BEGIN_DECLS
+/* Avoids a circular dependency. */
+typedef struct _EMailAccountStore EMailAccountStore;
+
typedef struct _EMailSession EMailSession;
typedef struct _EMailSessionClass EMailSessionClass;
typedef struct _EMailSessionPrivate EMailSessionPrivate;
@@ -64,8 +73,19 @@ struct _EMailSessionClass {
GType e_mail_session_get_type (void);
EMailSession * e_mail_session_new (void);
+EMailAccountStore *
+ e_mail_session_get_account_store
+ (EMailSession *session);
MailFolderCache *
e_mail_session_get_folder_cache (EMailSession *session);
+CamelStore * e_mail_session_get_local_store (EMailSession *session);
+CamelStore * e_mail_session_get_vfolder_store
+ (EMailSession *session);
+CamelFolder * e_mail_session_get_local_folder (EMailSession *session,
+ EMailLocalFolder type);
+const gchar * e_mail_session_get_local_folder_uri
+ (EMailSession *session,
+ EMailLocalFolder type);
GList * e_mail_session_get_available_junk_filters
(EMailSession *session);
CamelFolder * e_mail_session_get_inbox_sync (EMailSession *session,