X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-defs.h;h=c12252f3259a29943ef2b7b2f1bbd4e21570568a;hp=2aa0e9985690124578127c441d407e270ec720bf;hb=96d9a8c787c693406a0f26e3d3a00065c7236fe5;hpb=6ad0c7e0fbf8462c0a41c0a42bf34adbb127fe4e diff --git a/src/modest-defs.h b/src/modest-defs.h index 2aa0e99..c12252f 100644 --- a/src/modest-defs.h +++ b/src/modest-defs.h @@ -31,66 +31,144 @@ #ifndef __MODEST_DEFS_H__ #define __MODEST_DEFS_H__ +#include -/* exit codes for the modest executable*/ -enum { - MODEST_ERR_NONE = 0, /* no error */ - MODEST_ERR_OPTIONS, /* error in the options */ - MODEST_ERR_CONF, /* error getting confuration db */ - MODEST_ERR_UI, /* error in the UI */ - MODEST_ERR_HILDON, /* error with Hildon (maemo-only) */ - MODEST_ERR_RUN, /* errr running */ - MODEST_ERR_SEND, /* error sending mail */ - MODEST_ERR_INIT /* error in initialization */ -}; - - -/* some interesting dirs. NOTE, they should be prefixed - * with $HOME; also, except MODEST_DIR itself, they +/* Some interesting directories. NOTE, they should be prefixed + * with $HOME; Also, except for MODEST_DIR itself, they * need to be prefixed with MODEST_DIR; - * why these seperate things? well, this is for crossplatform - * building of dirs from their components.. + * The parts of the path are separate for crossplatform + * building of dirs from their components. * g_build_dir is your friend */ #define MODEST_DIR ".modest" #define MODEST_CACHE_DIR "cache" -#define MODEST_LOCAL_FOLDERS_MAILDIR "local_folders" -#define MODEST_LOCAL_FOLDERS_ACCOUNT_NAME "local_folders" + +/** Sent, Drafts, etc, + * but not outbox, because outbox is a virtual folder merged from the + * various outboxes//outbox folders. + */ +#define MODEST_ACTUAL_LOCAL_FOLDERS_ACCOUNT_ID "local_folders" +#define MODEST_LOCAL_FOLDERS_ACCOUNT_NAME MODEST_ACTUAL_LOCAL_FOLDERS_ACCOUNT_ID +#define MODEST_LOCAL_FOLDERS_MAILDIR MODEST_ACTUAL_LOCAL_FOLDERS_ACCOUNT_ID + +/** There is an outboxes//outbox/ folder for each account, + * though we merge them so that the user sees only one outbox. + */ +#define MODEST_PER_ACCOUNT_LOCAL_OUTBOX_FOLDER_ACCOUNT_ID_PREFIX "outboxes" +#define MODEST_PER_ACCOUNT_LOCAL_OUTBOX_FOLDERS_MAILDIR MODEST_PER_ACCOUNT_LOCAL_OUTBOX_FOLDER_ACCOUNT_ID_PREFIX + +#define MODEST_MMC_ACCOUNT_ID "mcc" +#define MODEST_MCC_ACCOUNT_MAILDIR "/media/mmc1/.Maildir" /* configuration key definitions for modest */ #define MODEST_CONF_NAMESPACE "/apps/modest" +/* configuration key definitions for modest */ +#define MODEST_ACCOUNT_NAMESPACE MODEST_CONF_NAMESPACE "/accounts" +#define MODEST_CONF_DEFAULT_ACCOUNT MODEST_CONF_NAMESPACE "/default_account" + +#define MODEST_CONF_CONNECT_AT_STARTUP MODEST_CONF_NAMESPACE "/connect_at_startup" + +#define MODEST_CONF_SHOW_CC MODEST_CONF_NAMESPACE "/show_cc" +#define MODEST_CONF_SHOW_BCC MODEST_CONF_NAMESPACE "/show_bcc" +#define MODEST_CONF_SHOW_TOOLBAR MODEST_CONF_NAMESPACE "/show_toolbar" +#define MODEST_CONF_SHOW_TOOLBAR_FULLSCREEN MODEST_CONF_NAMESPACE "/show_toolbar_fullscreen" + +/* This is the alarmd cookie, obtained from alarm_event_add(), + * which apparently remains valid between application instances. + * We store it so that we can remove it later. + */ +#define MODEST_CONF_ALARM_ID MODEST_CONF_NAMESPACE "/alarm_id" + +/* + * in the maemo case, we try to replace this + * with the device name + */ +#define MODEST_LOCAL_FOLDERS_DEFAULT_DISPLAY_NAME N_("Local folders") + +/* the name of the device; in case of maemo this is set and updated + * using dbus; see modest-maemo-utils.[ch] + */ +#define MODEST_CONF_DEVICE_NAME MODEST_CONF_NAMESPACE "/device_name" + + /* place for widget settings */ #define MODEST_CONF_WIDGET_NAMESPACE MODEST_CONF_NAMESPACE "/widgets" - -/* configuration key definitions for modest */ -#define MODEST_ACCOUNT_NAMESPACE MODEST_CONF_NAMESPACE "/" "accounts" -#define MODEST_CONF_DEFAULT_ACCOUNT MODEST_CONF_NAMESPACE "/" "default_account" +#define MODEST_CONF_FOLDER_VIEW_KEY "folder-view" +#define MODEST_CONF_HEADER_VIEW_KEY "header-view" +#define MODEST_CONF_MAIN_PANED_KEY "modest-main-paned" +#define MODEST_CONF_MSG_PANED_KEY "modest-msg-paned" +#define MODEST_CONF_FOLDER_PANED_KEY "modest-folder-paned" +#define MODEST_CONF_MAIN_WINDOW_KEY "modest-main-window" +#define MODEST_CONF_EDIT_WINDOW_KEY "modest-edit-msg-window" +#define MODEST_CONF_MSG_VIEW_WINDOW_KEY "modest-msg-view-window" #define MODEST_SERVER_ACCOUNT_NAMESPACE MODEST_CONF_NAMESPACE "/" "server_accounts" -#define MODEST_CONF_REPLY_TYPE "reply_type" /* int */ -#define MODEST_CONF_FORWARD_TYPE "forward_type" /* int */ /* per-account data */ #define MODEST_ACCOUNT_DISPLAY_NAME "display_name" /* string */ #define MODEST_ACCOUNT_STORE_ACCOUNT "store_account" /* string */ #define MODEST_ACCOUNT_TRANSPORT_ACCOUNT "transport_account" /* string */ -#define MODEST_ACCOUNT_FULLNAME "fullname" -#define MODEST_ACCOUNT_EMAIL "email" +#define MODEST_ACCOUNT_FULLNAME "fullname" /* string */ +#define MODEST_ACCOUNT_EMAIL "email" /* string */ + +/* This is a list of strings, with each strings, + * alernating between a connection name, followed by a corresponding server account name. + * That's not pretty, but it's nicer than dealing with escaping of a = separator if + * putting them both in one string. */ +#define MODEST_ACCOUNT_CONNECTION_SPECIFIC_SMTP_LIST "specific_smtp" /* server account keys */ #define MODEST_ACCOUNT_PASSWORD "password" /* string */ -#define MDOEST_ACCOUNT_REMEMBER_PWD "remember_pwd" /* boolean */ +#define MODEST_ACCOUNT_REMEMBER_PWD "remember_pwd" /* boolean */ #define MODEST_ACCOUNT_HOSTNAME "hostname" /* string */ #define MODEST_ACCOUNT_USERNAME "username" /* string */ +#define MODEST_ACCOUNT_USERNAME_HAS_SUCCEEDED "username_succeeded" /* string */ +#define MODEST_ACCOUNT_USE_SIGNATURE "use_signature" /* boolean */ +#define MODEST_ACCOUNT_SIGNATURE "signature" /* string */ + +/* Only used for mbox and maildir accounts: */ +#define MODEST_ACCOUNT_URI "uri" /* string */ + #define MODEST_ACCOUNT_PROTO "proto" /* string */ #define MODEST_ACCOUNT_ENABLED "enabled" /* boolean */ #define MODEST_ACCOUNT_TYPE "type" /* string */ +#define MODEST_ACCOUNT_LAST_UPDATED "last_updated" /* int */ #define MODEST_ACCOUNT_LEAVE_ON_SERVER "leave_on_server" /* boolean */ #define MODEST_ACCOUNT_PREFERRED_CNX "preferred_cnx" /* string */ -#define MODEST_ACCOUNT_OPTIONS "options" /* list */ - +#define MODEST_ACCOUNT_PORT "port" /* int */ + +#define MODEST_ACCOUNT_AUTH_MECH "auth_mech" /* string */ +#define MODEST_ACCOUNT_AUTH_MECH_VALUE_NONE "none" +#define MODEST_ACCOUNT_AUTH_MECH_VALUE_PASSWORD "password" +#define MODEST_ACCOUNT_AUTH_MECH_VALUE_CRAMMD5 "cram-md5" + +#define MODEST_ACCOUNT_RETRIEVE "retrieve" /* string */ +#define MODEST_ACCOUNT_RETRIEVE_VALUE_HEADERS_ONLY "headers-only" +#define MODEST_ACCOUNT_RETRIEVE_VALUE_MESSAGES "messages" +#define MODEST_ACCOUNT_RETRIEVE_VALUE_MESSAGES_AND_ATTACHMENTS "messages-and-attachments" + +#define MODEST_ACCOUNT_LIMIT_RETRIEVE "limit-retrieve" /* int */ + +#define MODEST_ACCOUNT_SECURITY "security" +#define MODEST_ACCOUNT_SECURITY_VALUE_NONE "none" +#define MODEST_ACCOUNT_SECURITY_VALUE_NORMAL "normal" +#define MODEST_ACCOUNT_SECURITY_VALUE_SSL "ssl" + +/* Macros for different text formats in mail editor */ +#define MODEST_FILE_FORMAT_PLAIN_TEXT 0 +#define MODEST_FILE_FORMAT_FORMATTED_TEXT 1 + +/* Global settings */ +#define MODEST_CONF_AUTO_UPDATE MODEST_CONF_NAMESPACE "/auto_update" /* bool */ +#define MODEST_CONF_UPDATE_WHEN_CONNECTED_BY MODEST_CONF_NAMESPACE "/update_when_connected_by" /* int */ +#define MODEST_CONF_UPDATE_INTERVAL MODEST_CONF_NAMESPACE "/update_interval" /* int */ +#define MODEST_CONF_MSG_SIZE_LIMIT MODEST_CONF_NAMESPACE "/msg_size_limit" /* int */ +#define MODEST_CONF_PLAY_SOUND_MSG_ARRIVE MODEST_CONF_NAMESPACE "/play_sound_msg_arrive" /* bool */ +#define MODEST_CONF_PREFER_FORMATTED_TEXT MODEST_CONF_NAMESPACE "/prefer_formatted_text" /* bool */ +#define MODEST_CONF_REPLY_TYPE MODEST_CONF_NAMESPACE "/reply_type" /* int */ +#define MODEST_CONF_FORWARD_TYPE MODEST_CONF_NAMESPACE "/forward_type" /* int */ #endif /*__MODEST_DEFS_H__*/