typedef struct _ModestAccountMgr ModestAccountMgr;
typedef struct _ModestAccountMgrClass ModestAccountMgrClass;
-
struct _ModestAccountMgr {
GObject parent;
};
struct _ModestAccountMgrClass {
GObjectClass parent_class;
- void (* account_removed) (ModestAccountMgr *obj, const gchar* account,
- gboolean server_account, gpointer user_data);
- void (* account_changed) (ModestAccountMgr *obj, const gchar* account,
- const gchar* key, gboolean server_account,
+ void (* account_removed) (ModestAccountMgr *obj,
+ const gchar* account,
+ gboolean server_account,
+ gpointer user_data);
+ void (* account_changed) (ModestAccountMgr *obj,
+ const gchar* account,
+ const GSList* key,
+ gboolean server_account,
gpointer user_data);
};
* @name: name (id) of the account, which is a valid UTF8 string that does not contain '/'
* @store_name: the store account (ie. POP/IMAP)
* @transport_name: the transport account (ie. sendmail/SMTP)
- * @err: a GError ptr, or NULL to ignore.
+ * @enabled: Whether the account should be enabled initially.
*
* Create a new account. The account with @name should not already exist. The @name will
* be used as the initial display name of the new account.
*
* Returns: TRUE if the creation succeeded, FALSE otherwise,
- * @err gives details in case of error
*/
gboolean modest_account_mgr_add_account (ModestAccountMgr *self,
const gchar* name,
const gchar* store_name,
- const gchar* transport_name);
+ const gchar* transport_name,
+ gboolean enabled);
/**
* modest_account_mgr_add_server_account:
* @self: a ModestAccountMgr instance
* @name: name (id) of the account, which is a valid UTF8 string that does not contain '/'
* @hostname: the hostname
+ * @portnumber: the portnumber, or 0 for default
* @username: the username
* @password: the password
* @proto: the protocol (imap, smtp, ...) used for this account
gboolean modest_account_mgr_add_server_account (ModestAccountMgr *self,
const gchar *name,
const gchar *hostname,
+ const guint portnumber,
const gchar *username,
const gchar *password,
- ModestProtocol proto,
- ModestProtocol security,
- ModestProtocol auth);
+ ModestTransportStoreProtocol proto,
+ ModestConnectionProtocol security,
+ ModestAuthProtocol auth);
/**
*/
gboolean modest_account_mgr_add_server_account_uri (ModestAccountMgr *self,
const gchar *name,
- ModestProtocol proto,
+ ModestTransportStoreProtocol proto,
const gchar* uri);
/**
/**
* modest_account_mgr_account_names:
* @self: a ModestAccountMgr instance
+ * @only_enabled: Whether only enabled accounts should be returned.
*
* list all account names
*
* because this is implemented via gconf_client_all_dirs() which also requires a deep free,
* though that's not documented. murrayc.
*/
-GSList* modest_account_mgr_account_names (ModestAccountMgr *self);
-
+GSList* modest_account_mgr_account_names (ModestAccountMgr *self,
+ gboolean only_enabled);
+#if 0
+/* Not used. */
/**
* modest_account_mgr_search_server_account:
* @self: a ModestAccountMgr instance
* @account_name: get only server accounts for @account_name, or NULL for any
* @type: get only server accounts from protocol type @type, or MODEST_PROTOCOL_TYPE_UNKNOWN
- * @proto: get only server account with protocol @proto, or MODEST_PROTOCOL_UNKNOWN for any
+ * @proto: get only server account with protocol @proto, or MODEST_PROTOCOL_TRANSPORT_STORE_UNKNOWN for any
*
* List all the server account names, optionally narrowing the result down to one account.
*
GSList* modest_account_mgr_search_server_accounts (ModestAccountMgr *self,
const gchar* account_name,
ModestProtocolType type,
- ModestProtocol proto);
+ ModestTransportStoreProtocol proto);
+#endif
/**
* modest_account_mgr_account_exists:
const gchar *key,
gboolean server_account);
+/**
+ * modest_account_mgr_has_accounts:
+ * @self: a ModestAccountMgr instance
+ * @enabled: TRUE to search for enabled accounts only
+ *
+ * Checks if any accounts exist
+ *
+ * Returns: TRUE if accounts exist, FALSE otherwise
+ */
+
+gboolean modest_account_mgr_has_accounts (ModestAccountMgr* self, gboolean enabled);
+
G_END_DECLS
#endif /* __MODEST_ACCOUNT_MGR_H__ */