Updated Polish translation
[platform/upstream/atk.git] / atk / atknoopobject.c
1 /* ATK -  Accessibility Toolkit
2  * Copyright 2001, 2002, 2003 Sun Microsystems Inc.
3  *
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.
8  *
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.
13  *
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.
18  */
19
20 #include "atk.h"
21 #include "atknoopobject.h"
22
23 static void atk_no_op_object_class_init (AtkNoOpObjectClass *klass);
24
25 static gpointer parent_class = NULL;
26
27
28 GType
29 atk_no_op_object_get_type (void)
30 {
31   static GType type = 0;
32
33   if (!type)
34   {
35     static const GTypeInfo tinfo =
36     {
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 */
44       0, /* nb preallocs */
45       (GInstanceInitFunc) NULL, /* instance init */
46       NULL /* value table */
47     };
48
49     static const GInterfaceInfo atk_component_info =
50     {
51         (GInterfaceInitFunc) NULL,
52         (GInterfaceFinalizeFunc) NULL,
53         NULL
54     };
55
56     static const GInterfaceInfo atk_action_info =
57     {
58         (GInterfaceInitFunc) NULL,
59         (GInterfaceFinalizeFunc) NULL,
60         NULL
61     };
62
63     static const GInterfaceInfo atk_editable_text_info =
64     {
65         (GInterfaceInitFunc) NULL,
66         (GInterfaceFinalizeFunc) NULL,
67         NULL
68     };
69
70     static const GInterfaceInfo atk_image_info =
71     {
72         (GInterfaceInitFunc) NULL,
73         (GInterfaceFinalizeFunc) NULL,
74         NULL
75     };
76
77     static const GInterfaceInfo atk_selection_info =
78     {
79         (GInterfaceInitFunc) NULL,
80         (GInterfaceFinalizeFunc) NULL,
81         NULL
82     };
83
84     static const GInterfaceInfo atk_table_info =
85     {
86         (GInterfaceInitFunc) NULL,
87         (GInterfaceFinalizeFunc) NULL,
88         NULL
89     };
90
91     static const GInterfaceInfo atk_text_info =
92     {
93         (GInterfaceInitFunc) NULL,
94         (GInterfaceFinalizeFunc) NULL,
95         NULL
96     };
97
98     static const GInterfaceInfo atk_hypertext_info =
99     {
100         (GInterfaceInitFunc) NULL,
101         (GInterfaceFinalizeFunc) NULL,
102         NULL
103     };
104
105     static const GInterfaceInfo atk_value_info =
106     {
107         (GInterfaceInitFunc) NULL,
108         (GInterfaceFinalizeFunc) NULL,
109         NULL
110     };
111
112     static const GInterfaceInfo atk_document_info =
113     {
114         (GInterfaceInitFunc) NULL,
115         (GInterfaceFinalizeFunc) NULL,
116         NULL
117     };
118
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,
124                                  &atk_action_info);
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,
128                                  &atk_image_info);
129     g_type_add_interface_static (type, ATK_TYPE_SELECTION,
130                                  &atk_selection_info);
131     g_type_add_interface_static (type, ATK_TYPE_TABLE,
132                                  &atk_table_info);
133     g_type_add_interface_static (type, ATK_TYPE_TEXT,
134                                  &atk_text_info);
135     g_type_add_interface_static (type, ATK_TYPE_HYPERTEXT,
136                                  &atk_hypertext_info);
137     g_type_add_interface_static (type, ATK_TYPE_VALUE,
138                                  &atk_value_info);
139     g_type_add_interface_static (type, ATK_TYPE_DOCUMENT,
140                                  &atk_document_info);
141   }
142   return type;
143 }
144
145 static void
146 atk_no_op_object_class_init (AtkNoOpObjectClass *klass)
147 {
148   parent_class = g_type_class_peek_parent (klass);
149 }
150
151 /**
152  * atk_no_op_object_new:
153  * @obj: a #GObject
154  *
155  * Provides a default (non-functioning stub) #AtkObject.
156  * Application maintainers should not use this method. 
157  *
158  * Returns: a default (non-functioning stub) #AtkObject
159  **/
160 AtkObject*
161 atk_no_op_object_new (GObject *obj)
162 {
163   AtkObject *accessible;
164
165   g_return_val_if_fail (obj != NULL, NULL);
166
167   accessible = g_object_new (ATK_TYPE_NO_OP_OBJECT, NULL);
168   g_return_val_if_fail (accessible != NULL, NULL);
169
170   accessible->role = ATK_ROLE_INVALID;
171   accessible->layer = ATK_LAYER_INVALID;
172
173   return accessible;
174 }
175