X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-runtime.h;h=badd6c5895ac260c17dc44bdf4da159e3beb908f;hp=e0d9ee830e9153b03fb0fcda8744f2fb9b4567d7;hb=4d39841513a3a7f7aa9d38ab97cb9fcc9171e80b;hpb=74b77f6caf3fe1bc738e43fc6edf67b20f9b6d88 diff --git a/src/modest-runtime.h b/src/modest-runtime.h index e0d9ee8..badd6c5 100644 --- a/src/modest-runtime.h +++ b/src/modest-runtime.h @@ -35,10 +35,16 @@ #include #include #include +#include #include #include #include +#include #include +#include "widgets/modest-window-mgr.h" +#include +#include +#include G_BEGIN_DECLS @@ -47,9 +53,10 @@ G_BEGIN_DECLS typedef enum { MODEST_RUNTIME_DEBUG_ABORT_ON_WARNING = 1 << 0, MODEST_RUNTIME_DEBUG_LOG_ACTIONS = 1 << 1, /* not in use atm */ - MODEST_RUNTIME_DEBUG_DEBUG_OBJECTS = 1 << 2, /* for g_type_init */ - MODEST_RUNTIME_DEBUG_DEBUG_SIGNALS = 1 << 3, /* for g_type_init */ - MODEST_RUNTIME_DEBUG_FACTORY_SETTINGS = 1 << 4 /* reset to factory defaults */ + MODEST_RUNTIME_DEBUG_OBJECTS = 1 << 2, /* for g_type_init */ + MODEST_RUNTIME_DEBUG_SIGNALS = 1 << 3, /* for g_type_init */ + MODEST_RUNTIME_DEBUG_FACTORY_SETTINGS = 1 << 4, /* reset to factory defaults */ + MODEST_RUNTIME_DEBUG_CODE = 1 << 5 /* print various debugging messages */ } ModestRuntimeDebugFlags; /** @@ -59,25 +66,13 @@ typedef enum { * environment, instantiates singletons and so on) * modest_runtime_init should only be called once, and * when done with it, modest_runtime_uninit should be called - * + * * TRUE if this succeeded, FALSE otherwise. */ gboolean modest_runtime_init (void); /** - * modest_runtime_init_ui: - * @argc: the #argc argument to the main function - * @argv: the #argv argument to the main function - * - * initialize the modest UI; this replaces the call to - * gtk_init - * - * TRUE if this succeeded, FALSE otherwise. - */ -gboolean modest_runtime_init_ui (gint argc, gchar** argv); - -/** * modest_runtime_uinit: * * uninitialize the modest runtime system; free all the @@ -87,10 +82,9 @@ gboolean modest_runtime_init_ui (gint argc, gchar** argv); */ gboolean modest_runtime_uninit (void); - /** - * modest_runtime_get_debug_flags + * modest_runtime_get_debug_flags * * get the debug flags for modest; they are read from the MODEST_DEBUG * environment variable; the flags specified as strings, separated by ':'. @@ -131,6 +125,24 @@ ModestConf* modest_runtime_get_conf (void); ModestAccountMgr* modest_runtime_get_account_mgr (void); /** + * modest_runtime_get_images_cache: + * + * get the images #TnyStreamCache singleton instance + * + * Returns: the images #TnyStreamCache singleton. This should NOT be unref'd. + **/ +TnyStreamCache* modest_runtime_get_images_cache (void); + +/** + * modest_runtime_get_email_clipboard: + * + * get the #ModestEmailClipboard singleton instance + * + * Returns: the #ModestEamilClipboard singleton. This should NOT be unref'd. + **/ +ModestEmailClipboard* modest_runtime_get_email_clipboard (void); + +/** * modest_runtime_get_account_store: * * get the ModestTnyAccountStore singleton instance @@ -186,59 +198,76 @@ ModestMailOperationQueue* modest_runtime_get_mail_operation_queue (void); /** * modest_runtime_get_send_queue: * @account: a valid TnyTransportAccount + * @create: whether or not a new send queue should be created if it does not exist * * get the send queue for the given account * * Returns: the #ModestTnySendQueue singleton instance for this account * (ie., one singleton per account). This should NOT be unref'd. **/ -ModestTnySendQueue* modest_runtime_get_send_queue (TnyTransportAccount *account); - +ModestTnySendQueue* modest_runtime_get_send_queue (TnyTransportAccount *account, + gboolean create); +/** + * modest_runtime_remove_send_queue: + * @account: a #TnyTransportAccount + * + * Removes the send queue associated with the given transport account + **/ +void modest_runtime_remove_send_queue (TnyTransportAccount *account); /** - * modest_runtime_verify_object_death - * @OBJ: some (GObject) ptr - * @NAME: name of @OBJ + * modest_runtime_remove_all_send_queues: * - * macro to check whether @obj is 'dead', ie, it is no longer a valid GObject. If - * not, a g_warning will be issued on stderr. NOTE: this is only active - * when MODEST_DEBUG contains "debug-objects". + * Removes all send queues, ready for them to be recreated, for instance + * with a new connection. + **/ +void modest_runtime_remove_all_send_queues (); + +/** + * modest_runtime_get_window_mgr: + * + * get the #ModestWindowMgr singleton instance * - ***/ -#define modest_runtime_verify_object_death(OBJ,name) \ - do { \ - if (modest_runtime_get_debug_flags() & MODEST_RUNTIME_DEBUG_DEBUG_OBJECTS) \ - if (G_IS_OBJECT(OBJ)) \ - g_warning ("%s:%d: %s (" \ - #OBJ ") still holds a ref count of %d", \ - __FILE__,__LINE__,name, G_OBJECT(OBJ)->ref_count); \ - } while (0) + * Returns: the #ModestWindowMgr singleton. This should NOT be unref'd. + **/ +ModestWindowMgr* modest_runtime_get_window_mgr (void); +/** + * modest_runtime_get_protocol_registry: + * + * get the #ModestProtocolRegistry singleton instance + * + * Returns: the #ModestProtocolRegistry singleton. This should NOT be unref'd. + **/ +ModestProtocolRegistry* modest_runtime_get_protocol_registry (void); +/** + * modest_runtime_get_plugin_factory: + * + * get the #ModestPluginFactory singleton instance + * + * Returns: the #ModestPluginFactory singleton. This should NOT be unref'd. + **/ +ModestPluginFactory * modest_runtime_get_plugin_factory (void); /** - * modest_runtime_not_implemented - * @WIN: the parent GtkWindow, or NULL + * modest_runtime_get_allow_shutdown: * - * give a not-implemented-yet warning popup or g_warning + * tell if Modest will shutdown when window list and mail op queue are empty * - ***/ -#define modest_runtime_not_implemented(WIN) \ - do { \ - if (gtk_main_level() > 0) { \ - GtkWidget *popup; \ - popup = gtk_message_dialog_new (WIN,\ - GTK_DIALOG_MODAL|GTK_DIALOG_DESTROY_WITH_PARENT,\ - GTK_MESSAGE_WARNING, \ - GTK_BUTTONS_OK, \ - "Not yet implemented");\ - gtk_dialog_run (GTK_DIALOG(popup)); \ - gtk_widget_destroy (popup); \ - } else \ - g_warning ("%s:%d: Not yet implemented",__FILE__,__LINE__); \ - } while (0) \ + * Returns: %TRUE if modest shutdown is allowed, %FALSE otherwise + */ +gboolean modest_runtime_get_allow_shutdown (void); +/** + * modest_runtime_get_allow_shutdown: + * @allow: a #gboolean + * + * set if Modest will shutdown when window list and mail op queue are empty + * + */ +void modest_runtime_set_allow_shutdown (gboolean allow); G_END_DECLS