2008-05-28 Mark Doffman <mark.doffman@codethink.co.uk>
[platform/core/uifw/at-spi2-atk.git] / tests / dummyatk / my-atk-component.h
1 #ifndef MY_ATK_COMPONENT_H
2 #define MY_ATK_COMPONENT_H
3 /*
4  * MyAtkComponent: derives AtkObject(with parent-child accessibilities)
5  * and implements AtkComponent.
6  */
7 #include <atk/atk.h>
8
9 #include "my-atk-object.h"
10
11 #define MY_TYPE_ATK_COMPONENT             (my_atk_component_get_type ())
12 #define MY_ATK_COMPONENT(obj)             (G_TYPE_CHECK_INSTANCE_CAST ((obj), MY_TYPE_ATK_COMPONENT, MyAtkComponent))
13 #define MY_ATK_COMPONENT_CLASS(vtable)    (G_TYPE_CHECK_CLASS_CAST ((vtable), MY_TYPE_ATK_COMPONENT, MyAtkComponentClass))
14 #define MY_IS_ATK_COMPONENT(obj)          (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MY_TYPE_ATK_COMPONENT))
15 #define MY_IS_ATK_COMPONENT_CLASS(vtable) (G_TYPE_CHECK_CLASS_TYPE ((vtable), MY_TYPE_ATK_COMPONENT))
16 #define MY_ATK_COMPONENT_GET_CLASS(inst)  (G_TYPE_INSTANCE_GET_CLASS ((inst), MY_TYPE_ATK_COMPONENT, MyAtkComponentClass))
17
18 typedef struct _MyAtkComponent MyAtkComponent;
19 typedef struct _MyAtkComponentClass MyAtkComponentClass;
20
21 struct _MyAtkComponent
22 {
23     MyAtkObject parent;
24     //relative coordinates, which coincides with absolute ones
25     AtkRectangle extent;
26     //whether component may be relocated
27     gboolean is_extent_may_changed;
28     //for emit "active-descendant-changed" signal
29     gboolean is_manage_descendants;
30     //
31     AtkLayer layer;
32     gint zorder;
33 };
34
35 struct _MyAtkComponentClass
36 {
37     MyAtkObjectClass parent;
38 };
39
40 GType my_atk_component_get_type();
41 #endif /*MY_ATK_COMPONENT_H*/