2007-07-31 Philip Van Hoof <pvanhoof@gnome.org>
[modest] / src / widgets / modest-window.h
index 4ea979b..be1c722 100644 (file)
@@ -39,6 +39,8 @@ G_BEGIN_DECLS
 #include <config.h>
 #endif /*HAVE_CONFIG_H*/
 
+#include <gtk/gtk.h>
+
 /* 
  * admittedly, the ifdefs for gtk and maemo are rather ugly; still
  * this way is probably the easiest to maintain
@@ -50,15 +52,20 @@ typedef GtkWindowClass ModestWindowParentClass;
 #endif /* MODEST_PLATFORM_GNOME */
 
 #ifdef MODEST_PLATFORM_MAEMO
+#ifdef MODEST_HAVE_HILDON0_WIDGETS
 #include <hildon-widgets/hildon-window.h>
+#else
+#include <hildon/hildon-window.h>
+#endif /*MODEST_HAVE_HILDON0_WIDGETS*/
 typedef HildonWindow      ModestWindowParent;
 typedef HildonWindowClass ModestWindowParentClass;
-#endif /*MODEST_PLATFORM_MAEMO */
 
 #ifndef GTK_STOCK_FULLSCREEN
 #define GTK_STOCK_FULLSCREEN ""
 #endif /*GTK_STOCK_FULLSCREEN*/
 
+#endif /*MODEST_PLATFORM_MAEMO */
+
 /* convenience macros */
 #define MODEST_TYPE_WINDOW             (modest_window_get_type())
 #define MODEST_WINDOW(obj)             (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_WINDOW,ModestWindow))
@@ -82,9 +89,9 @@ struct _ModestWindowClass {
        gdouble (*get_zoom_func) (ModestWindow *self);
        gboolean (*zoom_plus_func) (ModestWindow *self);
        gboolean (*zoom_minus_func) (ModestWindow *self);
-       /* Used by view_toolbar, with no public interface */
-       void (*create_toolbar_func) (ModestWindow *self);
        void (*show_toolbar_func) (ModestWindow *self, gboolean show_toolbar);
+       void (*save_state_func) (ModestWindow *self);
+       void (*disconnect_signals_func) (ModestWindow *self);
 };
 
 /**
@@ -161,14 +168,73 @@ gboolean modest_window_zoom_minus (ModestWindow *window);
 
 
 /**
- * modest_window_view_toolbar:
+ * modest_window_show_toolbar:
  * @window: 
  * @view_toolbar: whether or not the toolbar should be shown
  * 
  * shows/hides the window toolbar
  **/
-void     modest_window_view_toolbar (ModestWindow *window, 
-                                    gboolean view_toolbar);
+void     modest_window_show_toolbar (ModestWindow *window, 
+                                    gboolean show_toolbar);
+                                    
+/**
+ * modest_window_save_state:
+ * @window: 
+ * 
+ * Ask the window to save its settings for loading again later.
+ * This actually invokes the save_setting_func vfunc, which 
+ * derived windows should implement.
+ **/
+void     modest_window_save_state (ModestWindow *window);
+
+
+/**
+ * modest_window_get_action:
+ * @window: a #ModestWindow instance object
+ * @action_path: the full path of required action.
+ * 
+ * Get an action from ui manager, using @action_path parameter,
+ * which represent the full path to the required action into UIManager 
+ * xml definition.
+ **/
+GtkAction * modest_window_get_action (ModestWindow *window, const gchar *action_path); 
+
+/**
+ * modest_window_get_action_widget:
+ * @window: a #ModestWindow instance object
+ * @action_path: the full path of required action.
+ * 
+ * Get action widget from ui manager, using @action_path parameter,
+ * which represent the full path to the required action into UIManager 
+ * xml definition.
+ **/
+GtkWidget *modest_window_get_action_widget (ModestWindow *window, 
+                                           const gchar *action_path);
+
+/**
+ * modest_window_check_dimming_rules:
+ * @self: a #ModestWindow instance object
+ * 
+ * Calls UI Dimming Manager of @self window to check all dimming rules.
+ * 
+ **/
+void modest_window_check_dimming_rules (ModestWindow *self);
+
+/**
+ * modest_window_check_dimming_rules:
+ * @self: a #ModestWindow instance object
+ * @group: a #ModestWindow instance object
+ * 
+ * Calls UI Dimming Manager of @self window to check @group_name specific
+ * dimming rules.
+ * 
+ **/
+void modest_window_check_dimming_rules_group (ModestWindow *self,
+                                             const gchar *group_name);
+
+
+void modest_window_disconnect_signals (ModestWindow *self);
+
 
 G_END_DECLS