1 /* modest-tny-header-tree-view.h */
2 /* insert (c)/licensing information) */
4 #ifndef __MODEST_TNY_HEADER_TREE_VIEW_H__
5 #define __MODEST_TNY_HEADER_TREE_VIEW_H__
8 #include <tny-msg-folder-iface.h>
9 #include <tny-account-tree-model.h>
10 #include <tny-msg-iface.h>
11 #include <tny-msg-header-iface.h>
12 #include <tny-msg-header-list-model.h>
16 /* convenience macros */
17 #define MODEST_TYPE_TNY_HEADER_TREE_VIEW (modest_tny_header_tree_view_get_type())
18 #define MODEST_TNY_HEADER_TREE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MODEST_TYPE_TNY_HEADER_TREE_VIEW,ModestTnyHeaderTreeView))
19 #define MODEST_TNY_HEADER_TREE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),MODEST_TYPE_TNY_HEADER_TREE_VIEW,ModestTnyHeaderTreeViewClass))
20 #define MODEST_IS_TNY_HEADER_TREE_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),MODEST_TYPE_TNY_HEADER_TREE_VIEW))
21 #define MODEST_IS_TNY_HEADER_TREE_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),MODEST_TYPE_TNY_HEADER_TREE_VIEW))
22 #define MODEST_TNY_HEADER_TREE_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),MODEST_TYPE_TNY_HEADER_TREE_VIEW,ModestTnyHeaderTreeViewClass))
24 typedef struct _ModestTnyHeaderTreeView ModestTnyHeaderTreeView;
25 typedef struct _ModestTnyHeaderTreeViewClass ModestTnyHeaderTreeViewClass;
27 struct _ModestTnyHeaderTreeView {
29 /* insert public members, if any */
32 struct _ModestTnyHeaderTreeViewClass {
33 GtkTreeViewClass parent_class;
35 void (*message_selected) (ModestTnyHeaderTreeView* self,
42 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_FROM,
43 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_TO,
44 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_SUBJECT,
45 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_SENT_DATE,
46 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_RECEIVED_DATE,
47 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_MSGTYPE,
48 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_ATTACH,
49 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_COMPACT_HEADER,
51 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_NUM
53 typedef guint ModestTnyHeaderTreeViewColumn;
56 MODEST_TNY_HEADER_TREE_VIEW_STYLE_NORMAL,
57 MODEST_TNY_HEADER_TREE_VIEW_STYLE_COMPACT,
59 MODEST_TNY_HEADER_TREE_VIEW_STYLE_NUM
61 typedef guint ModestTnyHeaderTreeViewStyle;
66 * modest_tny_header_tree_view_get_type:
68 * get the GType for ModestTnyHeaderTreeView
72 GType modest_tny_header_tree_view_get_type (void) G_GNUC_CONST;
76 * modest_tny_header_tree_view_new:
77 * @folder: a TnyMsgFolderIface object
78 * @columns: a list of ModestTnyHeaderTreeViewColumn
79 * @style: a ModestTnyHeaderTreeViewColumn with the style of this listview
80 * ( MODEST_TNY_HEADER_TREE_VIEW_STYLE_NORMAL or MODEST_TNY_HEADER_TREE_VIEW_STYLE_COMPACT)
82 * create a new ModestTnyHeaderTreeView instance, based on a folder iface
84 * Returns: a new GtkWidget (a GtkTreeView-subclass)
86 GtkWidget* modest_tny_header_tree_view_new (TnyMsgFolderIface *folder,
88 ModestTnyHeaderTreeViewStyle style);
91 * modest_tny_header_tree_view_set_folder:
92 * @self: a ModestTnyHeaderTreeView instance
93 * @folder: a TnyMsgFolderIface object
95 * set the folder for this ModestTnyHeaderTreeView
97 * Returns: TRUE if it succeeded, FALSE otherwise
99 gboolean modest_tny_header_tree_view_set_folder (ModestTnyHeaderTreeView *self,
100 TnyMsgFolderIface *folder);
104 * modest_tny_header_tree_view_set_columns:
105 * @self: a ModestTnyHeaderTreeView instance
106 * @columns: a list of ModestTnyHeaderTreeViewColumn
108 * set the columns for this ModestTnyHeaderTreeView
110 * Returns: TRUE if it succeeded, FALSE otherwise
112 gboolean modest_tny_header_tree_view_set_columns (ModestTnyHeaderTreeView *self,
115 * modest_tny_header_tree_view_get_columns:
116 * @self: a ModestTnyHeaderTreeView instance
117 * @folder: a TnyMsgFolderIface object
119 * get the columns for this ModestTnyHeaderTreeView
121 * Returns: list of columms, or NULL in case of no columns or error
123 const GSList* modest_tny_header_tree_view_get_columns (ModestTnyHeaderTreeView *self);
127 * modest_tny_header_tree_view_set_style:
128 * @self: a ModestTnyHeaderTreeView instance
129 * @style: the style for this tree view
131 * set the folder for this ModestTnyHeaderTreeView
133 * Returns: TRUE if it succeeded, FALSE otherwise
135 gboolean modest_tny_header_tree_view_set_style (ModestTnyHeaderTreeView *self,
136 ModestTnyHeaderTreeViewStyle style);
139 * modest_tny_header_tree_view_set_folder:
140 * @self: a ModestTnyHeaderTreeView instance
141 * @folder: a TnyMsgFolderIface object
143 * set the folder for this ModestTnyHeaderTreeView
145 * Returns: TRUE if it succeeded, FALSE otherwise
147 ModestTnyHeaderTreeViewStyle modest_tny_header_tree_view_get_style (ModestTnyHeaderTreeView *self);
155 #endif /* __MODEST_TNY_HEADER_TREE_VIEW_H__ */