michael@0: /* ATK - Accessibility Toolkit michael@0: * Copyright 2009 Novell, Inc. michael@0: * michael@0: * This library is free software; you can redistribute it and/or michael@0: * modify it under the terms of the GNU Library General Public michael@0: * License as published by the Free Software Foundation; either michael@0: * version 2 of the License, or (at your option) any later version. michael@0: * michael@0: * This library is distributed in the hope that it will be useful, michael@0: * but WITHOUT ANY WARRANTY; without even the implied warranty of michael@0: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU michael@0: * Library General Public License for more details. michael@0: * michael@0: * You should have received a copy of the GNU Library General Public michael@0: * License along with this library; if not, write to the michael@0: * Free Software Foundation, Inc., 59 Temple Place - Suite 330, michael@0: * Boston, MA 02111-1307, USA. michael@0: */ michael@0: michael@0: #if defined(ATK_DISABLE_SINGLE_INCLUDES) && !defined (__ATK_H_INSIDE__) && !defined (ATK_COMPILATION) michael@0: #error "Only can be included directly." michael@0: #endif michael@0: michael@0: #ifndef __ATK_PLUG_H__ michael@0: #define __ATK_PLUG_H__ michael@0: michael@0: G_BEGIN_DECLS michael@0: michael@0: #define ATK_TYPE_PLUG (atk_plug_get_type ()) michael@0: #define ATK_PLUG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_PLUG, AtkPlug)) michael@0: #define ATK_IS_PLUG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_PLUG)) michael@0: #define ATK_PLUG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ATK_TYPE_PLUG, AtkPlugClass)) michael@0: #define ATK_IS_PLUG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ATK_TYPE_PLUG)) michael@0: #define ATK_PLUG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ATK_TYPE_PLUG, AtkPlugClass)) michael@0: michael@0: typedef struct _AtkPlug AtkPlug; michael@0: typedef struct _AtkPlugClass AtkPlugClass; michael@0: michael@0: struct _AtkPlug michael@0: { michael@0: AtkObject parent; michael@0: }; michael@0: michael@0: GType atk_plug_get_type (void); michael@0: michael@0: struct _AtkPlugClass michael@0: { michael@0: AtkObjectClass parent_class; michael@0: michael@0: /* to be subscribed to by atk-bridge */ michael@0: michael@0: /*< protected >*/ michael@0: gchar* (* get_object_id) (AtkPlug* obj); michael@0: }; michael@0: michael@0: AtkObject* atk_plug_new (void); michael@0: gchar* atk_plug_get_id (AtkPlug* plug); michael@0: michael@0: G_END_DECLS michael@0: michael@0: #endif /* __ATK_PLUG_H__ */