* step 2 of the account fixes; for now, account changes
[modest] / src / modest-tny-account.h
index 867f19a..8cbcc72 100644 (file)
 
 G_BEGIN_DECLS
 
+
+
+
+
 /**
  * modest_tny_account_new_from_account:
  * @account_mgr: a valid account mgr instance
@@ -52,7 +56,6 @@ G_BEGIN_DECLS
  * @forget_pass_func: the forget-password function
  * 
  * get a tnyaccount corresponding to the server_accounts (store or transport) for this account.
- * NOTE: this function does not set the camel session or the get/forget password functions
  * 
  * Returns: a new TnyAccount or NULL in case of error.
  */
@@ -65,6 +68,22 @@ modest_tny_account_new_from_account (ModestAccountMgr *account_mgr, const gchar
 
 
 /**
+ * modest_tny_account_update_from_account:
+ * @tny_account: a valid tny_account
+ * @account_mgr: a valid account mgr instance
+ * @account_name: the modest account name for which to create a corresponding tny account of the given type.
+ * @type: the type of account to create (TNY_ACCOUNT_TYPE_STORE or TNY_ACCOUNT_TYPE_TRANSPORT)
+ * 
+ * update a tnyaccount corresponding to the server_accounts (store or transport) for this account.
+ * 
+ * Returns: a TRUE or FALSE in case of error.
+ */
+gboolean
+modest_tny_account_update_from_account (TnyAccount *tny_account, ModestAccountMgr *account_mgr,
+                                       const gchar *account_name, TnyAccountType type);
+
+
+/**
  * modest_tny_account_new_for_local_folders:
  * @account_mgr: a valid account mgr instance
  * @session: a tny camel session
@@ -102,8 +121,24 @@ TnyAccount* modest_tny_account_new_for_per_account_local_outbox_folder (
  */
 TnyAccount*
 modest_tny_account_new_from_server_account_name (ModestAccountMgr *account_mgr, 
-       TnySessionCamel *session, const gchar* server_account_name);
-       
+                                                TnySessionCamel *session,
+                                                const gchar* server_account_name);
+
+/**
+ * modest_tny_account_new_from_server_account_name:
+ * @tny_account: a valid tny account
+ * @account_mgr: a valid account mgr instance
+ * @server_account_name: the name of a server account in the configuration system.
+ *
+ * update the given tny account; note that you cannot change the protocol type
+ * 
+ * Returns: a new TnyAccount or NULL in case of error.
+ */
+gboolean modest_tny_account_update_from_server_account_name (TnyAccount *tny_account,
+                                                            ModestAccountMgr *account_mgr,
+                                                            const gchar *server_account_name);
+
+
 /**
  * modest_tny_account_get_special_folder:
  * @self: a TnyAccount
@@ -173,7 +208,28 @@ typedef void (*ModestTnyAccountGetMmcAccountNameCallback) (TnyStoreAccount* self
  * calling the callback (if not NULL) to notify that the name is changed.
  * if the name was changed. The callback will not be called if the name was not changed.
  */
-void modest_tny_account_get_mmc_account_name (TnyStoreAccount* self, ModestTnyAccountGetMmcAccountNameCallback callback, gpointer user_data);
+void modest_tny_account_get_mmc_account_name (TnyStoreAccount* self, 
+                                             ModestTnyAccountGetMmcAccountNameCallback callback, 
+                                             gpointer user_data);
+
+
+/** modest_tny_account_is_virtual_local_folders:
+ * @self A TnyAccount.
+ * 
+ * A convenience function to identify whether TnyAccount 
+ * is the virtual local folders account, containing the folders from local_folders/
+ * and the outboxes from outboxes/<account-name>/.
+ **/
+gboolean modest_tny_account_is_virtual_local_folders (TnyAccount *self);
+
+/** modest_tny_account_is_memory_card_account:
+ * @self A TnyAccount.
+ * 
+ * A convenience function to identify whether TnyAccount 
+ * is the memory card account.
+ **/
+gboolean modest_tny_account_is_memory_card_account (TnyAccount *self);
+
 
 G_END_DECLS