04b0c787f4985679c2601ff91a6c633d0cdc7f97
[platform/core/uifw/at-spi2-atk.git] / tests / dummyatk / my-atk-object.h
1 #ifndef MY_ATK_OBJECT_H
2 #define MY_ATK_OBJECT_H
3
4 #include <atk/atk.h>
5
6 #define MY_TYPE_ATK_OBJECT             (my_atk_object_get_type ())
7 #define MY_ATK_OBJECT(obj)             (G_TYPE_CHECK_INSTANCE_CAST ((obj), MY_TYPE_ATK_OBJECT, MyAtkObject))
8 #define MY_ATK_OBJECT_CLASS(vtable)    (G_TYPE_CHECK_CLASS_CAST ((vtable), MY_TYPE_ATK_OBJECT, MyAtkObjectClass))
9 #define MY_IS_ATK_OBJECT(obj)          (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MY_TYPE_ATK_OBJECT))
10 #define MY_IS_ATK_OBJECT_CLASS(vtable) (G_TYPE_CHECK_CLASS_TYPE ((vtable), MY_TYPE_ATK_OBJECT))
11 #define MY_ATK_OBJECT_GET_CLASS(inst)  (G_TYPE_INSTANCE_GET_CLASS ((inst), MY_TYPE_ATK_OBJECT, MyAtkObjectClass))
12
13 typedef struct _MyAtkObject MyAtkObject;
14 typedef struct _MyAtkObjectClass MyAtkObjectClass;
15
16 struct _MyAtkObject
17 {
18     AtkObject parent;
19     //array of children
20     GPtrArray* children;
21     gint id;
22 };
23
24 struct _MyAtkObjectClass
25 {
26     AtkObjectClass parent;
27 };
28
29 GType my_atk_object_get_type();
30
31 void my_atk_object_add_child(MyAtkObject* parent, MyAtkObject* child);
32
33 void my_atk_object_remove_child(MyAtkObject* parent, MyAtkObject* child);
34
35 #endif /*MY_ATK_OBJECT_H*/