b0cb60a108564353db01d279d1281aff9ec4aef3
[modest] / src / modest-tny-header-tree-view.h
1 /* modest-tny-header-tree-view.h */
2 /* insert (c)/licensing information) */
3
4 #ifndef __MODEST_TNY_HEADER_TREE_VIEW_H__
5 #define __MODEST_TNY_HEADER_TREE_VIEW_H__
6
7 #include <gtk/gtk.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>
13
14 G_BEGIN_DECLS
15
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))
23
24 typedef struct _ModestTnyHeaderTreeView      ModestTnyHeaderTreeView;
25 typedef struct _ModestTnyHeaderTreeViewClass ModestTnyHeaderTreeViewClass;
26
27 struct _ModestTnyHeaderTreeView {
28          GtkTreeView parent;
29         /* insert public members, if any */
30 };
31
32 struct _ModestTnyHeaderTreeViewClass {
33         GtkTreeViewClass parent_class;
34
35         void (*message_selected) (ModestTnyHeaderTreeView* self,
36                                   TnyMsgIface *msg,
37                                   gpointer user_data);
38 };
39
40
41 /**
42  * modest_tny_header_tree_view_get_type:
43  * 
44  * get the GType for ModestTnyHeaderTreeView
45  *  
46  * Returns: the GType
47  */
48 GType        modest_tny_header_tree_view_get_type    (void) G_GNUC_CONST;
49
50
51 /**
52  * modest_tny_header_tree_view_new:
53  * @folder: a TnyMsgFolderIface object
54  * 
55  * create a new ModestTnyHeaderTreeView instance, based on a folder iface
56  *  
57  * Returns: a new GtkWidget (a GtkTreeView-subclass)
58  */
59 GtkWidget*   modest_tny_header_tree_view_new        (TnyMsgFolderIface *folder);
60
61
62 /**
63  * modest_tny_header_tree_view_set_folder:
64  * @self: a ModestTnyHeaderTreeView instance
65  * @folder: a TnyMsgFolderIface object
66  * 
67  * set the folder for this ModestTnyHeaderTreeView
68  *  
69  * Returns: TRUE if it succeeded, FALSE otherwise
70  */
71 gboolean     modest_tny_header_tree_view_set_folder (ModestTnyHeaderTreeView *self,
72                                                       TnyMsgFolderIface *folder);
73
74 G_END_DECLS
75
76 #endif /* __MODEST_TNY_HEADER_TREE_VIEW_H__ */
77