1 /* ATK - Accessibility Toolkit
2 * Copyright 2001, 2002, 2003 Sun Microsystems Inc.
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 * Boston, MA 02111-1307, USA.
21 #include "atknoopobject.h"
23 static void atk_no_op_object_class_init (AtkNoOpObjectClass
*klass
);
25 static gpointer parent_class
= NULL
;
29 atk_no_op_object_get_type (void)
31 static GType type
= 0;
35 static const GTypeInfo tinfo
=
37 sizeof (AtkObjectClass
),
38 (GBaseInitFunc
) NULL
, /* base init */
39 (GBaseFinalizeFunc
) NULL
, /* base finalize */
40 (GClassInitFunc
) atk_no_op_object_class_init
, /* class init */
41 (GClassFinalizeFunc
) NULL
, /* class finalize */
42 NULL
, /* class data */
43 sizeof (AtkNoOpObject
), /* instance size */
45 (GInstanceInitFunc
) NULL
, /* instance init */
46 NULL
/* value table */
49 static const GInterfaceInfo atk_component_info
=
51 (GInterfaceInitFunc
) NULL
,
52 (GInterfaceFinalizeFunc
) NULL
,
56 static const GInterfaceInfo atk_action_info
=
58 (GInterfaceInitFunc
) NULL
,
59 (GInterfaceFinalizeFunc
) NULL
,
63 static const GInterfaceInfo atk_editable_text_info
=
65 (GInterfaceInitFunc
) NULL
,
66 (GInterfaceFinalizeFunc
) NULL
,
70 static const GInterfaceInfo atk_image_info
=
72 (GInterfaceInitFunc
) NULL
,
73 (GInterfaceFinalizeFunc
) NULL
,
77 static const GInterfaceInfo atk_selection_info
=
79 (GInterfaceInitFunc
) NULL
,
80 (GInterfaceFinalizeFunc
) NULL
,
84 static const GInterfaceInfo atk_table_info
=
86 (GInterfaceInitFunc
) NULL
,
87 (GInterfaceFinalizeFunc
) NULL
,
91 static const GInterfaceInfo atk_text_info
=
93 (GInterfaceInitFunc
) NULL
,
94 (GInterfaceFinalizeFunc
) NULL
,
98 static const GInterfaceInfo atk_hypertext_info
=
100 (GInterfaceInitFunc
) NULL
,
101 (GInterfaceFinalizeFunc
) NULL
,
105 static const GInterfaceInfo atk_value_info
=
107 (GInterfaceInitFunc
) NULL
,
108 (GInterfaceFinalizeFunc
) NULL
,
112 static const GInterfaceInfo atk_document_info
=
114 (GInterfaceInitFunc
) NULL
,
115 (GInterfaceFinalizeFunc
) NULL
,
119 type
= g_type_register_static (ATK_TYPE_OBJECT
,
120 "AtkNoOpObject", &tinfo
, 0);
121 g_type_add_interface_static (type
, ATK_TYPE_COMPONENT
,
122 &atk_component_info
);
123 g_type_add_interface_static (type
, ATK_TYPE_ACTION
,
125 g_type_add_interface_static (type
, ATK_TYPE_EDITABLE_TEXT
,
126 &atk_editable_text_info
);
127 g_type_add_interface_static (type
, ATK_TYPE_IMAGE
,
129 g_type_add_interface_static (type
, ATK_TYPE_SELECTION
,
130 &atk_selection_info
);
131 g_type_add_interface_static (type
, ATK_TYPE_TABLE
,
133 g_type_add_interface_static (type
, ATK_TYPE_TEXT
,
135 g_type_add_interface_static (type
, ATK_TYPE_HYPERTEXT
,
136 &atk_hypertext_info
);
137 g_type_add_interface_static (type
, ATK_TYPE_VALUE
,
139 g_type_add_interface_static (type
, ATK_TYPE_DOCUMENT
,
146 atk_no_op_object_class_init (AtkNoOpObjectClass
*klass
)
148 parent_class
= g_type_class_peek_parent (klass
);
152 * atk_no_op_object_new:
155 * Provides a default (non-functioning stub) #AtkObject.
156 * Application maintainers should not use this method.
158 * Returns: a default (non-functioning stub) #AtkObject
161 atk_no_op_object_new (GObject
*obj
)
163 AtkObject
*accessible
;
165 g_return_val_if_fail (obj
!= NULL
, NULL
);
167 accessible
= g_object_new (ATK_TYPE_NO_OP_OBJECT
, NULL
);
168 g_return_val_if_fail (accessible
!= NULL
, NULL
);
170 accessible
->role
= ATK_ROLE_INVALID
;
171 accessible
->layer
= ATK_LAYER_INVALID
;