* @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
+ * 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:
* @server_account: TRUE if the account to remove is a server account
* @err: a #GError ptr, or NULL to ignore.
*
- * remove an existing account. the account with @name should already exist
+ * remove an existing account. the account with @name should already exist; note
+ * that when deleting an account, also the corresponding server accounts will
+ * be deleted
*
* Returns: TRUE if the creation succeeded, FALSE otherwise,
* @err gives details in case of error
/**
* 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);
/**
* @name: the account name to check
* @server_account: if TRUE, this is a server account
*
- * check whether account @name exists
+ * check whether account @name exists. Note that this does not check the display name.
*
* Returns: TRUE if the account with name @name exists, FALSE otherwise (or in case of error)
*/
const gchar *name,
gboolean server_account);
+/**
+ * modest_account_mgr_account_exists:
+ * @self: a ModestAccountMgr instance
+ * @name: the account name to check
+ *
+ * check whether a non-server account with the @display_name exists.
+ *
+ * Returns: TRUE if the account with name @name exists, FALSE otherwise (or in case of error)
+ */
+gboolean modest_account_mgr_account_with_display_name_exists (ModestAccountMgr *self,
+ const gchar *display_name);
+
/**
* modest_account_mgr_get_string: