57550cbe719106c001acf91267dcdd241baa3abb
[modest] / src / modest-defs.h
1 /* Copyright (c) 2006, Nokia Corporation
2  * All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions are
6  * met:
7  *
8  * * Redistributions of source code must retain the above copyright
9  *   notice, this list of conditions and the following disclaimer.
10  * * Redistributions in binary form must reproduce the above copyright
11  *   notice, this list of conditions and the following disclaimer in the
12  *   documentation and/or other materials provided with the distribution.
13  * * Neither the name of the Nokia Corporation nor the names of its
14  *   contributors may be used to endorse or promote products derived from
15  *   this software without specific prior written permission.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
18  * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20  * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
21  * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
25  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
26  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28  */
29
30
31 #ifndef __MODEST_DEFS_H__
32 #define __MODEST_DEFS_H__
33
34 #include <glib/gi18n.h>
35
36 /* some interesting dirs. NOTE, they should be prefixed
37  * with $HOME; also, except MODEST_DIR itself, they
38  * need to be prefixed with MODEST_DIR;
39  * why these seperate things? well, this is for crossplatform
40  * building of dirs from their components..
41  * g_build_dir is your friend
42  */
43 #define MODEST_DIR                        ".modest"
44 #define MODEST_CACHE_DIR                  "cache"
45
46 #define MODEST_LOCAL_FOLDERS_ACCOUNT_ID   "local_folders"
47 #define MODEST_LOCAL_FOLDERS_ACCOUNT_NAME MODEST_LOCAL_FOLDERS_ACCOUNT_ID
48 #define MODEST_LOCAL_FOLDERS_MAILDIR      MODEST_LOCAL_FOLDERS_ACCOUNT_ID
49
50 #define MODEST_MMC_ACCOUNT_ID             "mcc"
51 #define MODEST_MCC_ACCOUNT_MAILDIR        "/media/mmc1/.Maildir"
52
53 /* configuration key definitions for modest */
54 #define MODEST_CONF_NAMESPACE           "/apps/modest"
55
56 /* configuration key definitions for modest */
57 #define MODEST_ACCOUNT_NAMESPACE         MODEST_CONF_NAMESPACE "/accounts"
58 #define MODEST_CONF_DEFAULT_ACCOUNT      MODEST_CONF_NAMESPACE "/default_account"
59
60 #define MODEST_CONF_REPLY_TYPE           MODEST_CONF_NAMESPACE "/reply_type"        /*  int  */
61 #define MODEST_CONF_FORWARD_TYPE         MODEST_CONF_NAMESPACE "/forward_type"      /*  int  */
62
63 #define MODEST_CONF_CONNECT_AT_STARTUP   MODEST_CONF_NAMESPACE "/connect_at_startup"      
64
65 #define MODEST_CONF_SHOW_CC              MODEST_CONF_NAMESPACE "/show_cc"           
66 #define MODEST_CONF_SHOW_BCC             MODEST_CONF_NAMESPACE "/show_bcc"           
67 #define MODEST_CONF_SHOW_TOOLBAR         MODEST_CONF_NAMESPACE "/show_toolbar"
68 #define MODEST_CONF_SHOW_TOOLBAR_FULLSCREEN         MODEST_CONF_NAMESPACE "/show_toolbar_fullscreen"
69
70 /*
71  * in the maemo case, we try to replace this
72  * with the device name
73  */
74 #define MODEST_LOCAL_FOLDERS_DEFAULT_DISPLAY_NAME  N_("Local folders")
75
76 /* the name of the device; in case of maemo this is set and updated
77  * using dbus; see modest-maemo-utils.[ch]
78  */
79 #define MODEST_CONF_DEVICE_NAME       MODEST_CONF_NAMESPACE "/device_name"
80
81
82 /* place for widget settings */
83 #define MODEST_CONF_WIDGET_NAMESPACE     MODEST_CONF_NAMESPACE "/widgets"
84
85 #define MODEST_SERVER_ACCOUNT_NAMESPACE  MODEST_CONF_NAMESPACE "/" "server_accounts"
86
87
88 /* per-account data */
89 #define MODEST_ACCOUNT_DISPLAY_NAME      "display_name"      /* string */
90 #define MODEST_ACCOUNT_STORE_ACCOUNT     "store_account"     /* string */
91 #define MODEST_ACCOUNT_TRANSPORT_ACCOUNT "transport_account" /* string */
92 #define MODEST_ACCOUNT_FULLNAME          "fullname"
93 #define MODEST_ACCOUNT_EMAIL             "email"
94
95 /* server account keys */
96 #define MODEST_ACCOUNT_PASSWORD          "password"          /* string */
97 #define MODEST_ACCOUNT_REMEMBER_PWD      "remember_pwd"      /* boolean */
98 #define MODEST_ACCOUNT_HOSTNAME          "hostname"          /* string */
99 #define MODEST_ACCOUNT_USERNAME          "username"          /* string */
100 #define MODEST_ACCOUNT_URI               "uri"               /* string */
101
102 #define MODEST_ACCOUNT_PROTO             "proto"             /* string */
103 #define MODEST_ACCOUNT_ENABLED           "enabled"           /* boolean */
104 #define MODEST_ACCOUNT_TYPE              "type"              /* string */
105 #define MODEST_ACCOUNT_LAST_UPDATED      "last_updated"      /* int */
106
107 #define MODEST_ACCOUNT_LEAVE_ON_SERVER   "leave_on_server"   /* boolean */
108 #define MODEST_ACCOUNT_PREFERRED_CNX     "preferred_cnx"     /* string */
109 #define MODEST_ACCOUNT_PORT                      "port"              /* int */
110 #define MODEST_ACCOUNT_OPTIONS           "options"           /* list */
111
112 #define MODEST_ACCOUNT_AUTH_MECH         "auth_mech"         /* string */
113 #define MODEST_ACCOUNT_AUTH_MECH_VALUE_NONE "none"
114 #define MODEST_ACCOUNT_AUTH_MECH_VALUE_PASSWORD "password"
115 #define MODEST_ACCOUNT_AUTH_MECH_VALUE_CRAMMD5 "cram-md5"
116
117 #define MODEST_ACCOUNT_RETRIEVE  "retrieve"          /* string */
118 #define MODEST_ACCOUNT_RETRIEVE_VALUE_HEADERS_ONLY "headers-only"
119 #define MODEST_ACCOUNT_RETRIEVE_VALUE_MESSAGES "messages"
120 #define MODEST_ACCOUNT_RETRIEVE_VALUE_MESSAGES_AND_ATTACHMENTS "messages-and-attachments"
121
122 #define MODEST_ACCOUNT_LIMIT_RETRIEVE    "limit-retrieve"            /* int */
123
124 /* Keys and values used in the text items in the options GSList: */
125 #define MODEST_ACCOUNT_OPTION_SECURITY "security"
126 #define MODEST_ACCOUNT_OPTION_SECURITY_VALUE_NONE "none"
127 #define MODEST_ACCOUNT_OPTION_SECURITY_VALUE_NORMAL "normal"
128 #define MODEST_ACCOUNT_OPTION_SECURITY_VALUE_SSL "ssl"
129
130
131 /* Options keys that correspond directly to camel options.
132  * These probably should not be written to user configuration, 
133  * because they are specific API implementation details. */
134 #define MODEST_ACCOUNT_OPTION_SSL "use_ssl"
135 #define MODEST_ACCOUNT_OPTION_SSL_NEVER "never"
136 #define MODEST_ACCOUNT_OPTION_SSL_ALWAYS "always"
137 #define MODEST_ACCOUNT_OPTION_SSL_WHEN_POSSIBLE "when-possible"
138
139 #define MODEST_ACCOUNT_OPTION_USE_LSUB "use_lsub"
140 #define MODEST_ACCOUNT_OPTION_CHECK_ALL "check_all"
141
142
143 #endif /*__MODEST_DEFS_H__*/