atkobjectfactory.h (2551B)
1 /* ATK - Accessibility Toolkit 2 * Copyright 2001 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 Library 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 * Library General Public License for more details. 13 * 14 * You should have received a copy of the GNU Library 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 #ifndef __ATK_OBJECT_FACTORY_H__ 21 #define __ATK_OBJECT_FACTORY_H__ 22 23 #include <glib-object.h> 24 #include <atk/atkobject.h> 25 26 #ifdef __cplusplus 27 extern "C" { 28 #endif /* __cplusplus */ 29 30 #define ATK_TYPE_OBJECT_FACTORY (atk_object_factory_get_type ()) 31 #define ATK_OBJECT_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_OBJECT_FACTORY, AtkObjectFactory)) 32 #define ATK_OBJECT_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ATK_TYPE_OBJECT_FACTORY, AtkObjectFactoryClass)) 33 #define ATK_IS_OBJECT_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_OBJECT_FACTORY)) 34 #define ATK_IS_OBJECT_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ATK_TYPE_OBJECT_FACTORY)) 35 #define ATK_OBJECT_FACTORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ATK_TYPE_OBJECT_FACTORY, AtkObjectFactoryClass)) 36 37 typedef struct _AtkObjectFactory AtkObjectFactory; 38 typedef struct _AtkObjectFactoryClass AtkObjectFactoryClass; 39 40 struct _AtkObjectFactory 41 { 42 GObject parent; 43 }; 44 45 struct _AtkObjectFactoryClass 46 { 47 GObjectClass parent_class; 48 49 AtkObject* (* create_accessible) (GObject *obj); 50 void (* invalidate) (AtkObjectFactory *factory); 51 GType (* get_accessible_type) (void); 52 53 AtkFunction pad1; 54 AtkFunction pad2; 55 }; 56 57 GType atk_object_factory_get_type(void); 58 59 AtkObject* atk_object_factory_create_accessible (AtkObjectFactory *factory, GObject *obj); 60 void atk_object_factory_invalidate (AtkObjectFactory *factory); 61 GType atk_object_factory_get_accessible_type (AtkObjectFactory *factory); 62 #ifdef __cplusplus 63 } 64 #endif /* __cplusplus */ 65 66 67 #endif /* __GTK_OBJECT_FACTORY_H__ */