X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-presets.h;h=96e90d140c5654529a459bd1b5d1a42b0255530b;hp=307d9f02d245c40ce18ae339cdb78ee6d1a2b166;hb=HEAD;hpb=cd391684b9e177e208e90bcd53da83e871e06de5 diff --git a/src/modest-presets.h b/src/modest-presets.h index 307d9f0..96e90d1 100644 --- a/src/modest-presets.h +++ b/src/modest-presets.h @@ -31,6 +31,7 @@ #define __MODEST_PRESETS_H__ #include +#include struct _ModestPresets { /* private data: don't touch */ @@ -38,21 +39,6 @@ struct _ModestPresets { }; typedef struct _ModestPresets ModestPresets; -typedef enum _ModestPresetsInfo { - /* two bits for the server type */ - MODEST_PRESETS_INFO_NONE = 0x0000, - MODEST_PRESETS_INFO_IMAP = 0x0001, - MODEST_PRESETS_INFO_POP = 0x0002, - MODEST_PRESETS_INFO_SMTP = 0x0003, - - /* one bit for each of these */ - MODEST_PRESETS_INFO_APOP = 0x0004, - MODEST_PRESETS_INFO_SECURE_SMTP = 0x0008, - MODEST_PRESETS_INFO_SECURE_INCOMING = 0x000f -} ModestPresetsInfo; - -/* typedef enum _ModestPresetsInfo ModestPresetsInfo; */ - /** * modest_presets_new: @@ -69,23 +55,25 @@ ModestPresets* modest_presets_new (const gchar *presetfil * modest_presets_get_providers: * @self: a valid ModestPresets instance * @mcc: limit the search to providers with this mcc (Mobile Country Code), - * or <0 to get all - * @include_globals: include providers without MCC (such as GMail, Yahoo) if @mcc != 0? + * or 0 to get all + * @include_globals: include (global) providers without MCC (such as GMail, Yahoo) + * @provider_ids: Output parameter, which will be set to a newly allocated array of strings, or NULL in case of error. * - * get a list of providers + * get a list of providers matching certian criteria * - * Returns: a newly allocated array of strings, or NULL in case of error - * should be freed with g_strvfree + * Returns: The provider names, as a newly allocated array of strings, or NULL in case of error + * should be freed with g_strfreev * **/ -gchar ** modest_presets_get_providers (ModestPresets *self, gint mcc, - gboolean include_globals); +gchar ** modest_presets_get_providers (ModestPresets *self, guint mcc, + gboolean include_globals, gchar ***provider_ids); /** * modest_presets_get_server: * @self: a valid ModestPresets instance - * @provider: name of the provider - * @incoming: get the incoming mailserver if TRUE, get the outgoing server otherwise + * @provider_id: ID of the provider + * @incoming_server: get the incoming mailserver if TRUE, get the + * outgoing server otherwise * * get the name of a incoming or outgoing mailserver * @@ -94,28 +82,102 @@ gchar ** modest_presets_get_providers (ModestPresets *self, g * non-standard port, the port number is appended to the name, eg. pop.foo.fi:995 */ gchar * modest_presets_get_server (ModestPresets *self, - const gchar *provider, + const gchar *provider_id, gboolean incoming_server); + +/** + * modest_presets_get_domain: + * @self: a valid ModestPresets instance + * @provider_id: ID of the provider + * + * Get the name of the most-used domain for theis provider. For instance. hotmail.com + * + * Returns: a newly allocated string with the domain name, or NULL in case + * of error. + */ +gchar * modest_presets_get_domain (ModestPresets *self, + const gchar *provider_id); + /** - * modest_presets_get_info: + * modest_presets_get_info_server_type: * @self: a valid ModestPresets instance - * @provider: name of the provider - * @incoming: get the incoming mailserver if TRUE, get the outgoing server otherwise + * @provider_id: ID of the provider + * @incoming_server: get the incoming mailserver if TRUE, get the + * outgoing server otherwise * * get information about some incoming or outgoing mailserver * - * Returns: a ModestPresetsInfo with the required information + * Returns: a #ModestProtocolType with the required information */ -ModestPresetsInfo modest_presets_get_info (ModestPresets *self, - const gchar *provider, - gboolean incoming_server); +ModestProtocolType modest_presets_get_info_server_type (ModestPresets *self, + const gchar *provider_id, + gboolean incoming_server); /** - * modest_presets_destroy: + * modest_presets_get_info_server_security: * @self: a valid ModestPresets instance + * @provider_id: ID of the provider + * @incoming_server: get the incoming mailserver if TRUE, get the + * outgoing server otherwise * - * destroy ModestPresets instance; this is required after you're done with it. + * get information about some incoming or outgoing mailserver * + * Returns: #ModestProtocolType with server auth + */ +ModestProtocolType modest_presets_get_info_server_auth (ModestPresets *self, + const gchar *provider_id, + gboolean incoming_server); + +/** + * modest_presets_get_info_server_security: + * @self: a valid ModestPresets instance + * @provider_id: ID of the provider + * @incoming_server: get the incoming mailserver if TRUE, get the + * outgoing server otherwise + * + * get information about some incoming or outgoing mailserver + * + * Returns: #ModestProtocolType with server security + */ +ModestProtocolType modest_presets_get_info_server_security (ModestPresets *self, + const gchar *provider_id, + gboolean incoming_server); + +/** + * modest_presets_get_info_server_security: + * @self: a valid ModestPresets instance + * @provider_id: ID of the provider + * @incoming_server: get the incoming mailserver if TRUE, get the + * outgoing server otherwise + * + * get information about some incoming or outgoing mailserver + * + * Returns: %TRUE if we should use the alternate port. + */ +gboolean modest_presets_get_info_server_use_alternate_port (ModestPresets *self, + const gchar *provider_id, + gboolean incoming_server); + + +/** + * modest_presets_get_port: + * @self: a valid ModestPresets instance + * @provider_id: ID of the provider + * @incoming_server: get port# for the incoming mailserver if TRUE, for the outgoing server otherwise + * + * Returns: the specific port number for some provider + * function return 0 if the normal port number is valid + * + */ +guint modest_presets_get_port (ModestPresets *self, const gchar* provider_id, + gboolean incoming_server); + + +/** + * modest_presets_destroy: + * @self: a valid ModestPresets instance (ie. must not be NULL) + * + * destroy ModestPresets instance; this is required after you're done with it. */ void modest_presets_destroy (ModestPresets *self);