]> Pileus Git - ~andy/gtk/blob - gtk/a11y/tests/README
gail: No need to include modules/other in CFLAGS anymore
[~andy/gtk] / gtk / a11y / tests / README
1
2 ============================
3 GAIL README
4 Last Updated: August 2, 2001
5 ============================
6
7
8 General Info
9 ============
10
11 This README describes how to use the various test programs
12 in the gail/tests directory.
13
14 To run the various test programs described in this README,
15 the test libraries must be built and installed.  Running
16 "make", then "make install" in the gail top-level directory
17 will take care of this.  Then do the following:
18
19 1. Set the environment variable GTK_MODULES to
20    "libgail:lib<testname>"
21
22    For example, for ferret, it would be "libgail:libferret"
23
24 2. Run the GTK+ test program specified.  These test programs
25    are found in the GTK+ build directory in the subdirectory
26    called "tests".
27
28 Most test programs will display output directly to the 
29 terminal window where the GTK+ test program was launched.
30 Some test programs (testtable and testtext) will launch a
31 test GUI program which allows more interactive testing.
32
33 The test GUI has two windows.  The first window is the
34 "Test Control" window and the second window is the
35 "Test Output" window.  In the "Test Control" window,
36 press the button(s) that corresponds to the tests to run
37 and press the "Run Tests" button at the bottom of the
38 screen.  Some tests have associated text entry fields
39 which become active when the button is toggled on.  These
40 text entry fields correspond to arguments that affect how
41 the test is executed.  They are pre-filled with default
42 values but the user can change them if desired.  The
43 output from the tests is displayed in the "Test Output"
44 window.
45
46
47 testlib
48 =======
49
50 Contains general purpose functionality that is used by the
51 various tests.  These include functions that find a specific
52 widget/AtkObject in the test program, and functions used by
53 tests that use the Gail Test GUI.
54
55
56 ferret
57 ======
58
59 Ferret is a passive in-process test tool for ATK and GAIL.
60
61 Run a GTK+-2.0 application such as "testgtk", and ferret will
62 display a window on screen.   In this window accessibility
63 information about the GTK+ widgets will appear as they
64 receive focus.
65
66 The ferret window has several tabs, one for each of the
67 following ATK interfaces.
68
69   Object
70   Action
71   Component
72   Image
73   Table
74   Text
75   Value
76
77 Tabs that do not apply to the current widget in focus will be
78 displayed as inactive.  Clicking on an active tab will display
79 information about the AtkObject accessed via the ATK API.  In the
80 Action tab the various actions are displayed as buttons.  When
81 a button is clicked, the action specified on the button's
82 label is performed.
83
84 If you have installed the "festival" speech synthesis system,
85 running festival in server mode (festival --server) and turning
86 on Ferret's Festival support will cause the following to happen:
87
88 1. AtkObject accessible names, roles, and keybindings will be
89    spoken as they receive focus.
90 2. When the caret (cursor) is moved in a text field, the 
91    current line will be spoken, unless the caret is moved
92    just a single character.  In the later case, only the
93    single character after the caret will be spoken.
94
95 Festival support can be turned on by checking "Festival" in the
96 menu, or by setting the environment variable FERRET_FESTIVAL
97 prior to starting the test.  By checking "Festival Terse" or
98 by setting the environment variable FERRET_TERSE, only the
99 name of the AtkObject will be spoken (and not the roles and
100 keybindings).
101
102 A magnifier can be turned on to enlarge the widget in focus
103 by checking "Magnifier" in the menu, or by setting the
104 environment variable FERRET_MAGNIFIER.  This requires that
105 the magnifier standalone code is running.
106
107 Checking "Track Mouse in the menu or by setting the environment
108 variable FERRET_MOUSETRACK causes ferret to display information
109 about the widget that is under the mouse rather than the widget
110 that has focus.  The mouse is tracked via GtkWidget
111 "enter_notify_event" signals, so flyweight objects are not tracked.
112
113 Checking "Terminal Output" in the menu or by setting the 
114 environment variable FERRET_ASCII will display the information
115 that is normally displayed to the ferret GUI window to the
116 terminal screen.
117
118 Checking "No ATK Signals" in the menu or by setting the
119 environment variable FERRET_NOSIGNALS will cause ferret to
120 ignore any ATK signals, and it will not update its display
121 when such signals occur.
122
123
124 testaction
125 ==========
126
127 This is a GTK+ module used to test the implementation of the ATK
128 interface AtkAction, except for atk_action_do_action() in the GAIL 
129 library. It is normally used with the GTK+ test program testgtk.
130
131
132 testbutton
133 ==========
134
135 This is a GTK+ module used to test the accessible implementation 
136 for buttons. It is normally used with the GTK+ test program testgtk.
137
138 Set the TEST_ACCESSIBLE_NAME environment variable to have the test
139 driver attach to a widget by widget name (compared via the 
140 gtk_widget_get_name function call).
141
142 Set the environment variable TEST_ACCESSIBLE_AUTO and the program
143 will execute the action defined for a GailButton once.
144
145
146 testcombo
147 =========
148
149 This is a GTK+ module used to test the implementation of the ATK action
150 interfaces on GailCombo. It is normally used with the GTK+ test program 
151 testgtk by putting the focus in the GtkCombo in entry window.
152
153
154 testcomponent
155 =============
156
157 This is a GTK+ module used to test the implementation of the ATK
158 interface AtkComponent in the GAIL library. It is normally used with the 
159 GTK+ test program testgtk.
160
161
162 testimage
163 =========
164
165 This is a GTK+ module used to test the implementation of the ATK
166 interface AtkImage in the GAIL library. It is normally used with the GTK+
167 test program testgtk, but can also be used with testdnd when you want
168 to test GtkPixmap. This modules pops up an extra dialog on startup , containing
169 GtkArrows and a GtkImage. This dialog has to be closed before control is returned to main window.
170
171
172 testmenuitem
173 ============
174
175 This is a GTK+ module used to test the accessible implementation 
176 for menu items. It is normally used with the GTK+ test program testgtk.
177
178 Set the TEST_ACCESSIBLE_NAME environment variable to have the test
179 driver attach to a widget by widget name (compared via the 
180 gtk_widget_get_name function call).
181
182 Set the environment variable TEST_ACCESSIBLE_AUTO and the program
183 will execute the action defined for a GailButton once.
184
185
186 testnotebook
187 =============
188
189 This is a GTK+ module used to test the implementation of the ATK
190 interface AtkSelection for GailNotebook. It is normally used with the 
191 GTK+ test program testgtk.
192
193
194 testobject
195 ==========
196
197 This is a GTK+ module used to test the implementation of the ATK
198 interface in atkobject.h in the GAIL library. It is normally used with the 
199 GTK+ test program testgtk.
200
201
202 testpaned
203 =========
204
205 This is a GTK+ module used to test the implementation of the ATK
206 interface AtkValue for GailPaned. It is normally used with the 
207 GTK+ test program testgtk. It checks the setting of the position 
208 programmatically and that notification is received if the position
209 is changed interactively.
210
211
212 testprops
213 ==========
214
215 This is a GTK+ module used to test the implementation of ATK properties 
216 and property change handlers in the GAIL library. It is normally used with 
217 the GTK+ test program testgtk. To see the changing of the state
218 ATK_STATE_SHOWING use menus in "progress bar". To see the changing of the
219 state ATK_STATE_SENSITIVE uses "labels". To see changing of child and parent
220 use resize check box in "panes".
221
222 Set the TEST_ACCESSIBLE_NAME environment variable to have the test
223 driver attach to a widget by widget name (compared via the 
224 gtk_widget_get_name function call).
225
226
227 testselection
228 =============
229
230 This is a GTK+ module used to test the implementation of the AtkSelection
231 interface works for the GAIL library. It is normally used with the GTK+ 
232 test program testgtk and clicking on the menus option. It can also be used
233 with the GtkCombo which can be accessed by clicking on the entry option.
234
235
236 teststatusbar
237 =============
238
239 This is a GTK+ module used to test that the text on the statusbar
240 can be retrieved using GailStatusbar. It is normally used with the GTK+ 
241 test program testgtk and clicking on statusbar button.
242
243
244 testtable
245 =========
246
247 This is GTK+ module used to test the implementation of AtkTable
248 interfaces.  It can be used with GailTreeView, for example.  It
249 can be used with any of the following GTK+ test programs:
250 testtreecolumns, testtreefocus, testtreesort, testtreeview,
251 or treestoretest.
252
253 Set the TEST_ACCESSIBLE_NO_PROPERTIES environment variable
254 to not receive information about property values changing
255 (like cell state changes).
256
257 Set the TEST_ACCESSIBLE_NO_GUI environment variable to run the
258 test without the GUI program.
259
260
261 testtext
262 ========
263
264 This is a GTK+ module used to test the implementation of AtkText and 
265 AtkEditableText interfaces on GailTextView.  It is normally used with 
266 the GTK+ test program testtext started with a text file loaded.
267 It can also be used with the GTK+ test program testgtk, and then
268 click on the "entry" or "label" button.
269
270 Set the TEST_ACCESSIBLE_NAME environment variable to have the test
271 driver attach to a widget by widget name (compared via the 
272 gtk_widget_get_name function call).
273
274 Set the TEST_ACCESSIBLE_DELAY environment variable to an integer
275 and the test driver will attach to only a widget on the nth screen
276 that is displayed.
277
278
279 testtoplevel
280 ============
281
282 This test exercises the AtkUtil functions.  It accesses the
283 atk_get_root() toplevel object, sets/removes global listeners,
284 and displays the ATK implementation name/version.
285
286 Set the TEST_ACCESSIBLE_DEPTH environment variable to control
287 how deep the children of the toplevel object are displayed.
288 The default is a depth of 2.  Specifying a depth of -1 will
289 show the complete hierarchy.
290
291
292 testvalues
293 ==========
294
295 This is a GTK+ module used to test the implementation of AtkValue interface
296 works for the GAIL library. GailProgressbar, GailSpinbutton and GailRange
297 can all be tested using this module.
298
299
300 GAIL README Authors
301 ===================
302
303 -Brian Cameron (brian.cameron@sun.com)
304 -Bill Haneman (bill.haneman@sun.com)
305 -Padraig O'Briain (padraig.obriain@sun.com)
306