1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24#ifndef __com_sun_star_accessibility_AccessibleStateType_idl__ 25#define __com_sun_star_accessibility_AccessibleStateType_idl__ 26 27module com { module sun { module star { module accessibility { 28 29/** Collection of state types. 30 31 <p>This list of constants defines the available set of states that an 32 object that implements <type>XAccessibleContext</type> can be in.</p> 33 34 <p>The comments describing the states is taken verbatim from the Java 35 Accessibility API 1.4 documentation.</p> 36 37 <p>We are using constants instead of a more typesafe enum. The reason 38 for this is that IDL enums may not be extended. Therefore, in order to 39 include future extensions to the set of roles we have to use constants 40 here.</p> 41 42 @since OOo 1.1.2 43*/ 44published constants AccessibleStateType 45{ 46 /** Indicates an invalid state. 47 */ 48 const short INVALID = 0; 49 50 /** Indicates a window is currently the active window. 51 */ 52 const short ACTIVE = 1; 53 54 /** Indicates that the object is armed. 55 */ 56 const short ARMED = 2; 57 58 /** Indicates the current object is busy. 59 */ 60 const short BUSY = 3; 61 62 /** Indicates this object is currently checked. 63 */ 64 const short CHECKED = 4; 65 66 /** User interface object corresponding to this object no longer exists. 67 68 <p>Indicates the user interface object corresponding to this object 69 no longer exists.</p> 70 */ 71 const short DEFUNC = 5; 72 73 /** Indicates the user can change the contents of this object. 74 */ 75 const short EDITABLE = 6; 76 77 /** Indicates this object is enabled. 78 */ 79 const short ENABLED = 7; 80 81 /** Indicates this object allows progressive disclosure of its children. 82 */ 83 const short EXPANDABLE = 8; 84 85 /** Indicates this object is expanded. 86 */ 87 const short EXPANDED = 9; 88 89 /** Object can accept the keyboard focus. 90 91 <p>Indicates this object can accept keyboard focus, which means all 92 events resulting from typing on the keyboard will normally be passed 93 to it when it has focus.</p> 94 */ 95 const short FOCUSABLE = 10; 96 97 /** Indicates this object currently has the keyboard focus. 98 */ 99 const short FOCUSED = 11; 100 101 /** Indicates the orientation of this object is horizontal. 102 */ 103 const short HORIZONTAL = 12; 104 105 /** Indicates this object is minimized and is represented only by an 106 icon. 107 */ 108 const short ICONIFIED = 13; 109 110 /** Sometimes UI elements can have a state indeterminate. 111 This can happen e.g. if a check box reflects the bold state of text in a text processor. 112 When the current selection contains text which is bold and also text which is not bold, the state is indeterminate. 113 114 */ 115 const short INDETERMINATE = 14; 116 117 /** Indicates the most (all) children are transient and it is not 118 necessary to add listener to the children. Only the active descendant 119 (given by the event) should be not transient to make it possible 120 to add listener to this object and recognize changes in this object. 121 122 The state is added to make a performance improvment. Now it is no 123 longer necessary to iterate over all children to find out whether 124 they are transient or not to decide whether to add listener or not. 125 If there is a object with this state no one should iterate over the 126 children to add listener. Only the active descendant should get 127 listener if it is not transient. 128 */ 129 const short MANAGES_DESCENDANTS = 15; 130 131 /** Object is modal. 132 133 <p>Indicates something must be done with this object before the user 134 can interact with an object in a different window.</p> 135 */ 136 const short MODAL = 16; 137 138 /** Indicates this (text) object can contain multiple lines of text 139 */ 140 const short MULTI_LINE = 17; 141 142 /** More than one child may be selected at the same time. 143 144 <p>Indicates this object allows more than one of its children to be 145 selected at the same time.</p> 146 */ 147 const short MULTI_SELECTABLE = 18; 148 149 /** Indicates this object paints every pixel within its rectangular 150 region. 151 */ 152 const short OPAQUE = 19; 153 154 /** Indicates this object is currently pressed. 155 */ 156 const short PRESSED = 20; 157 158 /** Indicates the size of this object is not fixed. 159 */ 160 const short RESIZABLE = 21; 161 162 /** Object is selectable. 163 164 <p>Indicates this object is the child of an object that allows its 165 children to be selected, and that this child is one of those 166 children that can be selected.</p> 167 */ 168 const short SELECTABLE = 22; 169 170 /** Object is selected. 171 172 <p>Indicates this object is the child of an object that allows its 173 children to be selected, and that this child is one of those 174 children that has been selected.</p> 175 */ 176 const short SELECTED = 23; 177 178 /** Indicates this object is sensitive. 179 */ 180 const short SENSITIVE = 24; 181 182 /** Object is displayed on the screen. 183 184 <p>An object has set the <const>SHOWING</const> state if itself and 185 all of its parents have set the <const>VISIBLE</const> state and it 186 lies at least partly inside the visible area of its parent. It is, 187 though, not necessarily visible on the screen because it may be 188 ocluded by other objects.</p> 189 */ 190 const short SHOWING = 25; 191 192 /** Indicates this (text) object can contain only a single line of text 193 */ 194 const short SINGLE_LINE = 26; 195 196 /** ??? 197 */ 198 const short STALE = 27; 199 200 /** Indicates this object is transient. 201 */ 202 const short TRANSIENT= 28; 203 204 /** Indicates the orientation of this object is vertical. 205 */ 206 const short VERTICAL = 29; 207 208 /** Object wants to be displayed on the screen. 209 210 <p>A set <const>VISIBLE</const> state indicates that an object wants 211 to be displayed on the screen. It is displayed, as indicated by a 212 set <const>SHOWING</const> state, if all of its parents have also 213 set the <const>VISIBLE</const> state and the object lies at least 214 partly in the visible area of its parent.</p> 215 */ 216 const short VISIBLE = 30; 217 218 // The following constants have been introduced with the IA2 CWS: 219 220 // MOVEABLE only exists in MSAA/IA2, but not in ATK/JAA/NSAccessibility. 221 /** Indicates the position of the object is not fixed. 222 */ 223 const short MOVEABLE = 31; 224 225 // DEFAULT exists in MSAA/IA2, and now also in ATK and NSAccessibility. 226 /** Indicates the object is the default button in a window 227 */ 228 const short DEFAULT = 32; 229 230 // OFFSCREEN only exists in MSAA/IA2, but not in ATK/JAA/NSAccessibility. 231 // MT: Shouldn't this be the same like !SHOWING in UAA/ATK? 232 const short OFFSCREEN = 33; 233 234 // COLLAPSED exists in MSAA/IA2, and now also in JAA, but not in ATK/NSAccessibility. In NSAccessibility, there is a notification for collapse. 235 // In opposite to MSAA, UAA has EXPANDABLE, so EXPANDABLE && !EXPANDED should be the same like COLLAPSED. 236 const short COLLAPSE = 34; 237 238}; 239 240}; }; }; }; 241 242#endif 243