BEAST - Free Software Audio Synthesizer and Tracker  0.9.2
gxklistwrapper.hh
Go to the documentation of this file.
1  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
2 #ifndef __GXK_LIST_WRAPPER_H__
3 #define __GXK_LIST_WRAPPER_H__
4 
5 #include <gtk/gtktreemodel.h>
6 
7 G_BEGIN_DECLS
8 
9 /* --- type macros --- */
10 #define GXK_TYPE_LIST_WRAPPER (gxk_list_wrapper_get_type ())
11 #define GXK_LIST_WRAPPER(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GXK_TYPE_LIST_WRAPPER, GxkListWrapper))
12 #define GXK_LIST_WRAPPER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GXK_TYPE_LIST_WRAPPER, GxkListWrapperClass))
13 #define GXK_IS_LIST_WRAPPER(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GXK_TYPE_LIST_WRAPPER))
14 #define GXK_IS_LIST_WRAPPER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GXK_TYPE_LIST_WRAPPER))
15 #define GXK_LIST_WRAPPER_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), GXK_TYPE_LIST_WRAPPER, GxkListWrapperClass))
16 
17 
18 /* --- structures & typedefs --- */
19 typedef struct _GxkListWrapper GxkListWrapper;
20 typedef struct _GxkListWrapperClass GxkListWrapperClass;
22 {
23  GObject parent_instance;
24 
25  guint n_rows;
26  guint n_cols;
27  GType *column_types;
28 
29  /*< private >*/
30  guint stamp;
31 };
33 {
34  GObjectClass parent_class;
35 
36  void (*fill_value) (GxkListWrapper *self,
37  guint column,
38  guint row,
39  GValue *value);
40  void (*row_change) (GxkListWrapper *self,
41  gint row);
42 };
43 
44 
45 /* --- prototypes --- */
46 GType gxk_list_wrapper_get_type (void);
47 GxkListWrapper* gxk_list_wrapper_new (guint n_cols,
48  GType first_column_type,
49  ...);
50 GxkListWrapper* gxk_list_wrapper_newv (guint n_cols,
51  GType *column_types);
52 void gxk_list_wrapper_notify_insert (GxkListWrapper *self,
53  guint nth_row);
54 void gxk_list_wrapper_notify_change (GxkListWrapper *self,
55  guint nth_row);
56 void gxk_list_wrapper_notify_delete (GxkListWrapper *self,
57  guint nth_row);
58 void gxk_list_wrapper_notify_prepend (GxkListWrapper *self,
59  guint n_rows);
60 void gxk_list_wrapper_notify_append (GxkListWrapper *self,
61  guint n_rows);
62 void gxk_list_wrapper_notify_clear (GxkListWrapper *self);
63 guint gxk_list_wrapper_get_index (GxkListWrapper *self,
64  GtkTreeIter *iter);
65 void gxk_list_wrapper_get_iter_at (GxkListWrapper *self,
66  GtkTreeIter *iter,
67  guint index);
68 
69 G_END_DECLS
70 
71 #endif /* __GXK_LIST_WRAPPER_H__ */
Definition: gxklistwrapper.hh:21
Definition: gxklistwrapper.hh:32