atkhypertext.h (2837B)
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_HYPERTEXT_H__ 21 #define __ATK_HYPERTEXT_H__ 22 23 #include <atk/atkobject.h> 24 #include <atk/atkhyperlink.h> 25 26 #ifdef __cplusplus 27 extern "C" { 28 #endif /* __cplusplus */ 29 30 /* 31 * The AtkHypertext interface provides standard mechanisms for manipulating 32 * hyperlinks. 33 */ 34 35 #define ATK_TYPE_HYPERTEXT (atk_hypertext_get_type ()) 36 #define ATK_IS_HYPERTEXT(obj) G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_HYPERTEXT) 37 #define ATK_HYPERTEXT(obj) G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_HYPERTEXT, AtkHypertext) 38 #define ATK_HYPERTEXT_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), ATK_TYPE_HYPERTEXT, AtkHypertextIface)) 39 40 #ifndef _TYPEDEF_ATK_HYPERTEXT_ 41 #define _TYPEDEF_ATK_HYPERTEXT_ 42 typedef struct _AtkHypertext AtkHypertext; 43 #endif 44 typedef struct _AtkHypertextIface AtkHypertextIface; 45 46 struct _AtkHypertextIface 47 { 48 GTypeInterface parent; 49 50 AtkHyperlink*(* get_link) (AtkHypertext *hypertext, 51 gint link_index); 52 gint (* get_n_links) (AtkHypertext *hypertext); 53 gint (* get_link_index) (AtkHypertext *hypertext, 54 gint char_index); 55 56 /* 57 * signal handlers 58 */ 59 void (* link_selected) (AtkHypertext *hypertext, 60 gint link_index); 61 62 AtkFunction pad1; 63 AtkFunction pad2; 64 AtkFunction pad3; 65 }; 66 GType atk_hypertext_get_type (void); 67 68 AtkHyperlink* atk_hypertext_get_link (AtkHypertext *hypertext, 69 gint link_index); 70 gint atk_hypertext_get_n_links (AtkHypertext *hypertext); 71 gint atk_hypertext_get_link_index (AtkHypertext *hypertext, 72 gint char_index); 73 74 75 #ifdef __cplusplus 76 } 77 #endif /* __cplusplus */ 78 79 80 #endif /* __ATK_HYPERTEXT_H__ */