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,
50 MODEST_TNY_HEADER_TREE_VIEW_COLUMN_NUM
52 typedef guint ModestTnyHeaderTreeViewColumn;
55 MODEST_TNY_HEADER_TREE_VIEW_STYLE_NORMAL,
56 MODEST_TNY_HEADER_TREE_VIEW_STYLE_COMPACT,
58 MODEST_TNY_HEADER_TREE_VIEW_STYLE_NUM
60 typedef guint ModestTnyHeaderTreeViewStyle;
65 * modest_tny_header_tree_view_get_type:
67 * get the GType for ModestTnyHeaderTreeView
71 GType modest_tny_header_tree_view_get_type (void) G_GNUC_CONST;
75 * modest_tny_header_tree_view_new:
76 * @folder: a TnyMsgFolderIface object
77 * @columns: a list of ModestTnyHeaderTreeViewColumn
78 * @style: a ModestTnyHeaderTreeViewColumn with the style of this listview
79 * ( MODEST_TNY_HEADER_TREE_VIEW_STYLE_NORMAL or MODEST_TNY_HEADER_TREE_VIEW_STYLE_COMPACT)
81 * create a new ModestTnyHeaderTreeView instance, based on a folder iface
83 * Returns: a new GtkWidget (a GtkTreeView-subclass)
85 GtkWidget* modest_tny_header_tree_view_new (TnyMsgFolderIface *folder,
87 ModestTnyHeaderTreeViewStyle style);
90 * modest_tny_header_tree_view_set_folder:
91 * @self: a ModestTnyHeaderTreeView instance
92 * @folder: a TnyMsgFolderIface object
94 * set the folder for this ModestTnyHeaderTreeView
96 * Returns: TRUE if it succeeded, FALSE otherwise
98 gboolean modest_tny_header_tree_view_set_folder (ModestTnyHeaderTreeView *self,
99 TnyMsgFolderIface *folder);
103 * modest_tny_header_tree_view_set_columns:
104 * @self: a ModestTnyHeaderTreeView instance
105 * @columns: a list of ModestTnyHeaderTreeViewColumn
107 * set the columns for this ModestTnyHeaderTreeView
109 * Returns: TRUE if it succeeded, FALSE otherwise
111 gboolean modest_tny_header_tree_view_set_columns (ModestTnyHeaderTreeView *self,
114 * modest_tny_header_tree_view_get_columns:
115 * @self: a ModestTnyHeaderTreeView instance
116 * @folder: a TnyMsgFolderIface object
118 * get the columns for this ModestTnyHeaderTreeView
120 * Returns: list of columms, or NULL in case of no columns or error
122 const GSList* modest_tny_header_tree_view_get_columns (ModestTnyHeaderTreeView *self);
126 * modest_tny_header_tree_view_set_style:
127 * @self: a ModestTnyHeaderTreeView instance
128 * @style: the style for this tree view
130 * set the folder for this ModestTnyHeaderTreeView
132 * Returns: TRUE if it succeeded, FALSE otherwise
134 gboolean modest_tny_header_tree_view_set_style (ModestTnyHeaderTreeView *self,
135 ModestTnyHeaderTreeViewStyle style);
138 * modest_tny_header_tree_view_set_folder:
139 * @self: a ModestTnyHeaderTreeView instance
140 * @folder: a TnyMsgFolderIface object
142 * set the folder for this ModestTnyHeaderTreeView
144 * Returns: TRUE if it succeeded, FALSE otherwise
146 ModestTnyHeaderTreeViewStyle modest_tny_header_tree_view_get_style (ModestTnyHeaderTreeView *self);
154 #endif /* __MODEST_TNY_HEADER_TREE_VIEW_H__ */