atkrelationtype.h (6226B)
1 /* ATK - Accessibility Toolkit 2 * Copyright 2002 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 #if defined(ATK_DISABLE_SINGLE_INCLUDES) && !defined (__ATK_H_INSIDE__) && !defined (ATK_COMPILATION) 21 #error "Only <atk/atk.h> can be included directly." 22 #endif 23 24 #ifndef __ATK_RELATION_TYPE_H__ 25 #define __ATK_RELATION_TYPE_H__ 26 27 #include <glib.h> 28 29 G_BEGIN_DECLS 30 31 /** 32 *AtkRelationType: 33 *@ATK_RELATION_NULL: Not used, represens "no relationship" or an error condition. 34 *@ATK_RELATION_CONTROLLED_BY: Indicates an object controlled by one or more target objects. 35 *@ATK_RELATION_CONTROLLER_FOR: Indicates an object is an controller for one or more target objects. 36 *@ATK_RELATION_LABEL_FOR: Indicates an object is a label for one or more target objects. 37 *@ATK_RELATION_LABELLED_BY: Indicates an object is labelled by one or more target objects. 38 *@ATK_RELATION_MEMBER_OF: Indicates an object is a member of a group of one or more target objects. 39 *@ATK_RELATION_NODE_CHILD_OF: Indicates an object is a cell in a treetable which is displayed because a cell in the same column is expanded and identifies that cell. 40 *@ATK_RELATION_FLOWS_TO: Indicates that the object has content that flows logically to another 41 * AtkObject in a sequential way, (for instance text-flow). 42 *@ATK_RELATION_FLOWS_FROM: Indicates that the object has content that flows logically from 43 * another AtkObject in a sequential way, (for instance text-flow). 44 *@ATK_RELATION_SUBWINDOW_OF: Indicates a subwindow attached to a component but otherwise has no connection in the UI heirarchy to that component. 45 *@ATK_RELATION_EMBEDS: Indicates that the object visually embeds 46 * another object's content, i.e. this object's content flows around 47 * another's content. 48 *@ATK_RELATION_EMBEDDED_BY: Reciprocal of %ATK_RELATION_EMBEDS, indicates that 49 * this object's content is visualy embedded in another object. 50 *@ATK_RELATION_POPUP_FOR: Indicates that an object is a popup for another object. 51 *@ATK_RELATION_PARENT_WINDOW_OF: Indicates that an object is a parent window of another object. 52 *@ATK_RELATION_DESCRIBED_BY: Reciprocal of %ATK_RELATION_DESCRIPTION_FOR. Indicates that one 53 * or more target objects provide descriptive information about this object. This relation 54 * type is most appropriate for information that is not essential as its presentation may 55 * be user-configurable and/or limited to an on-demand mechanism such as an assistive 56 * technology command. For brief, essential information such as can be found in a widget's 57 * on-screen label, use %ATK_RELATION_LABELLED_BY. For an on-screen error message, use 58 * %ATK_RELATION_ERROR_MESSAGE. For lengthy extended descriptive information contained in 59 * an on-screen object, consider using %ATK_RELATION_DETAILS as assistive technologies may 60 * provide a means for the user to navigate to objects containing detailed descriptions so 61 * that their content can be more closely reviewed. 62 *@ATK_RELATION_DESCRIPTION_FOR: Reciprocal of %ATK_RELATION_DESCRIBED_BY. Indicates that this 63 * object provides descriptive information about the target object(s). See also 64 * %ATK_RELATION_DETAILS_FOR and %ATK_RELATION_ERROR_FOR. 65 *@ATK_RELATION_NODE_PARENT_OF: Indicates an object is a cell in a treetable and is expanded to display other cells in the same column. 66 *@ATK_RELATION_DETAILS: Reciprocal of %ATK_RELATION_DETAILS_FOR. Indicates that this object 67 * has a detailed or extended description, the contents of which can be found in the target 68 * object(s). This relation type is most appropriate for information that is sufficiently 69 * lengthy as to make navigation to the container of that information desirable. For less 70 * verbose information suitable for announcement only, see %ATK_RELATION_DESCRIBED_BY. If 71 * the detailed information describes an error condition, %ATK_RELATION_ERROR_FOR should be 72 * used instead. @Since: ATK-2.26. 73 *@ATK_RELATION_DETAILS_FOR: Reciprocal of %ATK_RELATION_DETAILS. Indicates that this object 74 * provides a detailed or extended description about the target object(s). See also 75 * %ATK_RELATION_DESCRIPTION_FOR and %ATK_RELATION_ERROR_FOR. @Since: ATK-2.26. 76 *@ATK_RELATION_ERROR_MESSAGE: Reciprocal of %ATK_RELATION_ERROR_FOR. Indicates that this object 77 * has one or more errors, the nature of which is described in the contents of the target 78 * object(s). Objects that have this relation type should also contain %ATK_STATE_INVALID_ENTRY 79 * in their #AtkStateSet. @Since: ATK-2.26. 80 *@ATK_RELATION_ERROR_FOR: Reciprocal of %ATK_RELATION_ERROR_MESSAGE. Indicates that this object 81 * contains an error message describing an invalid condition in the target object(s). @Since: 82 * ATK_2.26. 83 *@ATK_RELATION_LAST_DEFINED: Not used, this value indicates the end of the enumeration. 84 * 85 *Describes the type of the relation 86 **/ 87 typedef enum 88 { 89 ATK_RELATION_NULL = 0, 90 ATK_RELATION_CONTROLLED_BY, 91 ATK_RELATION_CONTROLLER_FOR, 92 ATK_RELATION_LABEL_FOR, 93 ATK_RELATION_LABELLED_BY, 94 ATK_RELATION_MEMBER_OF, 95 ATK_RELATION_NODE_CHILD_OF, 96 ATK_RELATION_FLOWS_TO, 97 ATK_RELATION_FLOWS_FROM, 98 ATK_RELATION_SUBWINDOW_OF, 99 ATK_RELATION_EMBEDS, 100 ATK_RELATION_EMBEDDED_BY, 101 ATK_RELATION_POPUP_FOR, 102 ATK_RELATION_PARENT_WINDOW_OF, 103 ATK_RELATION_DESCRIBED_BY, 104 ATK_RELATION_DESCRIPTION_FOR, 105 ATK_RELATION_NODE_PARENT_OF, 106 ATK_RELATION_DETAILS, 107 ATK_RELATION_DETAILS_FOR, 108 ATK_RELATION_ERROR_MESSAGE, 109 ATK_RELATION_ERROR_FOR, 110 ATK_RELATION_LAST_DEFINED 111 } AtkRelationType; 112 113 G_END_DECLS 114 115 #endif /* __ATK_RELATION_TYPE_H__ */