* update toolbars/menus for Maemo:
[modest] / src / widgets / modest-header-view.h
index 265f0fb..aeea0e5 100644 (file)
@@ -64,14 +64,14 @@ typedef enum _ModestHeaderViewColumn {
        MODEST_HEADER_VIEW_COLUMN_RECEIVED_DATE,
        MODEST_HEADER_VIEW_COLUMN_MSGTYPE,
        MODEST_HEADER_VIEW_COLUMN_ATTACH,
-
+       MODEST_HEADER_VIEW_COLUMN_SIZE,
        /*
         * these two are for compact display on small devices,
         * with two line display with all relevant headers
         */
        MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_IN,  /* incoming mail */
        MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_OUT, /* outgoing mail */
-       
+
        MODEST_HEADER_VIEW_COLUMN_NUM
 
 } ModestHeaderViewColumn;
@@ -81,8 +81,10 @@ typedef enum _ModestHeaderViewColumn {
  * to make a small-device specific display
  */
 typedef enum _ModestHeaderViewStyle {
-       MODEST_HEADER_VIEW_STYLE_SHOW_HEADERS = 0x01,
-       MODEST_HEADER_VIEW_STYLE_NORMAL       = 0x02,
+       MODEST_HEADER_VIEW_STYLE_DETAILS, /* many columns, single line, col headers visible */
+       MODEST_HEADER_VIEW_STYLE_TWOLINES, /* two-line headers, col headers invisible */
+
+       MODEST_HEADER_VIEW_STYLE_NUM    
 } ModestHeaderViewStyle;
 
 typedef enum _ModestItemType {
@@ -92,15 +94,6 @@ typedef enum _ModestItemType {
 } ModestItemType;
 
 
-typedef enum _ModestHeaderViewState {
-       MODEST_HEADER_VIEW_STATE_IS_EMPTY               = 0x01,
-       MODEST_HEADER_VIEW_STATE_HAS_CURSOR             = 0x02,
-       MODEST_HEADER_VIEW_STATE_HAS_SELECTION          = 0x04,
-       MODEST_HEADER_VIEW_STATE_HAS_MULTIPLE_SELECTION = 0x08,
-       MODEST_HEADER_VIEW_STATE_AT_FIRST_ITEM          = 0x0f,
-       MODEST_HEADER_VIEW_STATE_AT_LAST_ITEM           = 0x10
-} ModestHeaderViewState;
-
 struct _ModestHeaderViewClass {
        GtkTreeViewClass parent_class;
 
@@ -133,7 +126,6 @@ GType        modest_header_view_get_type    (void) G_GNUC_CONST;
 /**
  * modest_header_view_new:
  * @folder: a TnyMsgFolder object
- * @columns: a list of ModestHeaderViewColumn
  * @style: a ModestHeaderViewColumn with the style of this listview
  *  (  MODEST_HEADER_VIEW_STYLE_NORMAL or MODEST_HEADER_VIEW_STYLE_COMPACT)
  * 
@@ -142,7 +134,6 @@ GType        modest_header_view_get_type    (void) G_GNUC_CONST;
  * Returns: a new GtkWidget (a GtkTreeView-subclass)
  */
 GtkWidget*   modest_header_view_new        (TnyFolder *folder,
-                                           const GList *columns,
                                            ModestHeaderViewStyle style);
 
 /**
@@ -157,9 +148,6 @@ GtkWidget*   modest_header_view_new        (TnyFolder *folder,
 gboolean     modest_header_view_set_folder (ModestHeaderView *self,
                                            TnyFolder *folder);
 
-
-
-
 /**
  * modest_header_view_get_folder:
  * @self: a ModestHeaderView instance
@@ -195,20 +183,6 @@ gboolean modest_header_view_set_columns (ModestHeaderView *self,
  * You must free the list with g_list_free
  */
 GList*  modest_header_view_get_columns (ModestHeaderView *self);
-       
-
-
-/**
- * modest_header_view_get_state
- * @self: a ModestHeaderView instance
- * 
- * get the state for this header view; see the ModestHeaderViewState enum
- * for possible values.
- * 
- * Returns: the state for this header view
- */
-ModestHeaderViewState modest_header_view_get_state (ModestHeaderView *self);
-
 
 
 /**
@@ -233,8 +207,6 @@ gboolean   modest_header_view_set_style (ModestHeaderView *self,
  */
 ModestHeaderViewStyle   modest_header_view_get_style (ModestHeaderView *self);
 
-
-
 /**
  * modest_header_view_get_selected_headers:
  * @self: a ModestHeaderView instance
@@ -247,12 +219,27 @@ TnyList* modest_header_view_get_selected_headers (ModestHeaderView *self);
 
 
 /**
+ * modest_header_view_is_empty:
+ * @self: a valid ModestHeaderView instance
+ * 
+ * see if this header view is empty; use this function instead of
+ * using the GtkTreeView parent directly, as 'empty' in this case
+ * may mean that there is one "This is empty"-message, and of course
+ * GtkTreeView then thinks it is *not* empty
+ *  
+ * Returns: TRUE if the header view is empty, FALSE otherwise
+ */
+gboolean  modest_header_view_is_empty (ModestHeaderView *self);
+
+
+
+/**
  * modest_header_view_select_next:
  * @self: a #ModestHeaderView
  * 
  * Selects the header next to the current selected one
  **/
-void     modest_header_view_select_next          (ModestHeaderView *self);
+void         modest_header_view_select_next          (ModestHeaderView *self);
 
 
 /* PROTECTED method. It's useful when we want to force a given