Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/openjdk-multiarch-jdk8u
Path: blob/aarch64-shenandoah-jdk8u272-b10/jdk/src/windows/native/sun/bridge/AccessBridgePackages.h
32287 views
1
/*
2
* Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
3
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4
*
5
* This code is free software; you can redistribute it and/or modify it
6
* under the terms of the GNU General Public License version 2 only, as
7
* published by the Free Software Foundation. Oracle designates this
8
* particular file as subject to the "Classpath" exception as provided
9
* by Oracle in the LICENSE file that accompanied this code.
10
*
11
* This code is distributed in the hope that it will be useful, but WITHOUT
12
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14
* version 2 for more details (a copy is included in the LICENSE file that
15
* accompanied this code).
16
*
17
* You should have received a copy of the GNU General Public License version
18
* 2 along with this work; if not, write to the Free Software Foundation,
19
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20
*
21
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22
* or visit www.oracle.com if you need additional information or have any
23
* questions.
24
*/
25
26
/*
27
* Header file for packages of paramaters passed between Java Accessibility
28
* and native Assistive Technologies
29
*/
30
31
#ifndef __AccessBridgePackages_H__
32
#define __AccessBridgePackages_H__
33
34
#include <jni.h>
35
#include <windows.h>
36
37
#ifdef __cplusplus
38
extern "C" {
39
#endif
40
41
#ifdef ACCESSBRIDGE_ARCH_LEGACY
42
typedef jobject JOBJECT64;
43
typedef HWND ABHWND64;
44
#define ABHandleToLong
45
#define ABLongToHandle
46
#else
47
typedef jlong JOBJECT64;
48
typedef long ABHWND64;
49
#define ABHandleToLong HandleToLong
50
#define ABLongToHandle LongToHandle
51
#endif
52
53
#define MAX_BUFFER_SIZE 10240
54
#define MAX_STRING_SIZE 1024
55
#define SHORT_STRING_SIZE 256
56
57
// object types
58
typedef JOBJECT64 AccessibleContext;
59
typedef JOBJECT64 AccessibleText;
60
typedef JOBJECT64 AccessibleValue;
61
typedef JOBJECT64 AccessibleSelection;
62
typedef JOBJECT64 Java_Object;
63
typedef JOBJECT64 PropertyChangeEvent;
64
typedef JOBJECT64 FocusEvent;
65
typedef JOBJECT64 CaretEvent;
66
typedef JOBJECT64 MouseEvent;
67
typedef JOBJECT64 MenuEvent;
68
typedef JOBJECT64 AccessibleTable;
69
typedef JOBJECT64 AccessibleHyperlink;
70
typedef JOBJECT64 AccessibleHypertext;
71
72
/**
73
******************************************************
74
* Java event types
75
******************************************************
76
*/
77
78
#define cPropertyChangeEvent (jlong) 1 // 1
79
#define cFocusGainedEvent (jlong) 2 // 2
80
#define cFocusLostEvent (jlong) 4 // 4
81
#define cCaretUpdateEvent (jlong) 8 // 8
82
#define cMouseClickedEvent (jlong) 16 // 10
83
#define cMouseEnteredEvent (jlong) 32 // 20
84
#define cMouseExitedEvent (jlong) 64 // 40
85
#define cMousePressedEvent (jlong) 128 // 80
86
#define cMouseReleasedEvent (jlong) 256 // 100
87
#define cMenuCanceledEvent (jlong) 512 // 200
88
#define cMenuDeselectedEvent (jlong) 1024 // 400
89
#define cMenuSelectedEvent (jlong) 2048 // 800
90
#define cPopupMenuCanceledEvent (jlong) 4096 // 1000
91
#define cPopupMenuWillBecomeInvisibleEvent (jlong) 8192 // 2000
92
#define cPopupMenuWillBecomeVisibleEvent (jlong) 16384 // 4000
93
#define cJavaShutdownEvent (jlong) 32768 // 8000
94
95
/**
96
******************************************************
97
* Accessible Roles
98
* Defines all AccessibleRoles in Local.US
99
******************************************************
100
*/
101
102
/**
103
* Object is used to alert the user about something.
104
*/
105
#define ACCESSIBLE_ALERT L"alert"
106
107
/**
108
* The header for a column of data.
109
*/
110
#define ACCESSIBLE_COLUMN_HEADER L"column header"
111
112
/**
113
* Object that can be drawn into and is used to trap
114
* events.
115
* see ACCESSIBLE_FRAME
116
* see ACCESSIBLE_GLASS_PANE
117
* see ACCESSIBLE_LAYERED_PANE
118
*/
119
#define ACCESSIBLE_CANVAS L"canvas"
120
121
/**
122
* A list of choices the user can select from. Also optionally
123
* allows the user to enter a choice of their own.
124
*/
125
#define ACCESSIBLE_COMBO_BOX L"combo box"
126
127
/**
128
* An iconified internal frame in a DESKTOP_PANE.
129
* see ACCESSIBLE_DESKTOP_PANE
130
* see ACCESSIBLE_INTERNAL_FRAME
131
*/
132
#define ACCESSIBLE_DESKTOP_ICON L"desktop icon"
133
134
/**
135
* A frame-like object that is clipped by a desktop pane. The
136
* desktop pane, internal frame, and desktop icon objects are
137
* often used to create multiple document interfaces within an
138
* application.
139
* see ACCESSIBLE_DESKTOP_ICON
140
* see ACCESSIBLE_DESKTOP_PANE
141
* see ACCESSIBLE_FRAME
142
*/
143
#define ACCESSIBLE_INTERNAL_FRAME L"internal frame"
144
145
/**
146
* A pane that supports internal frames and
147
* iconified versions of those internal frames.
148
* see ACCESSIBLE_DESKTOP_ICON
149
* see ACCESSIBLE_INTERNAL_FRAME
150
*/
151
#define ACCESSIBLE_DESKTOP_PANE L"desktop pane"
152
153
/**
154
* A specialized pane whose primary use is inside a DIALOG
155
* see ACCESSIBLE_DIALOG
156
*/
157
#define ACCESSIBLE_OPTION_PANE L"option pane"
158
159
/**
160
* A top level window with no title or border.
161
* see ACCESSIBLE_FRAME
162
* see ACCESSIBLE_DIALOG
163
*/
164
#define ACCESSIBLE_WINDOW L"window"
165
166
/**
167
* A top level window with a title bar, border, menu bar, etc. It is
168
* often used as the primary window for an application.
169
* see ACCESSIBLE_DIALOG
170
* see ACCESSIBLE_CANVAS
171
* see ACCESSIBLE_WINDOW
172
*/
173
#define ACCESSIBLE_FRAME L"frame"
174
175
/**
176
* A top level window with title bar and a border. A dialog is similar
177
* to a frame, but it has fewer properties and is often used as a
178
* secondary window for an application.
179
* see ACCESSIBLE_FRAME
180
* see ACCESSIBLE_WINDOW
181
*/
182
#define ACCESSIBLE_DIALOG L"dialog"
183
184
/**
185
* A specialized dialog that lets the user choose a color.
186
*/
187
#define ACCESSIBLE_COLOR_CHOOSER L"color chooser"
188
189
190
/**
191
* A pane that allows the user to navigate through
192
* and select the contents of a directory. May be used
193
* by a file chooser.
194
* see ACCESSIBLE_FILE_CHOOSER
195
*/
196
#define ACCESSIBLE_DIRECTORY_PANE L"directory pane"
197
198
/**
199
* A specialized dialog that displays the files in the directory
200
* and lets the user select a file, browse a different directory,
201
* or specify a filename. May use the directory pane to show the
202
* contents of a directory.
203
* see ACCESSIBLE_DIRECTORY_PANE
204
*/
205
#define ACCESSIBLE_FILE_CHOOSER L"file chooser"
206
207
/**
208
* An object that fills up space in a user interface. It is often
209
* used in interfaces to tweak the spacing between components,
210
* but serves no other purpose.
211
*/
212
#define ACCESSIBLE_FILLER L"filler"
213
214
/**
215
* A hypertext anchor
216
*/
217
#define ACCESSIBLE_HYPERLINK L"hyperlink"
218
219
/**
220
* A small fixed size picture, typically used to decorate components.
221
*/
222
#define ACCESSIBLE_ICON L"icon"
223
224
/**
225
* An object used to present an icon or short string in an interface.
226
*/
227
#define ACCESSIBLE_LABEL L"label"
228
229
/**
230
* A specialized pane that has a glass pane and a layered pane as its
231
* children.
232
* see ACCESSIBLE_GLASS_PANE
233
* see ACCESSIBLE_LAYERED_PANE
234
*/
235
#define ACCESSIBLE_ROOT_PANE L"root pane"
236
237
/**
238
* A pane that is guaranteed to be painted on top
239
* of all panes beneath it.
240
* see ACCESSIBLE_ROOT_PANE
241
* see ACCESSIBLE_CANVAS
242
*/
243
#define ACCESSIBLE_GLASS_PANE L"glass pane"
244
245
/**
246
* A specialized pane that allows its children to be drawn in layers,
247
* providing a form of stacking order. This is usually the pane that
248
* holds the menu bar as well as the pane that contains most of the
249
* visual components in a window.
250
* see ACCESSIBLE_GLASS_PANE
251
* see ACCESSIBLE_ROOT_PANE
252
*/
253
#define ACCESSIBLE_LAYERED_PANE L"layered pane"
254
255
/**
256
* An object that presents a list of objects to the user and allows the
257
* user to select one or more of them. A list is usually contained
258
* within a scroll pane.
259
* see ACCESSIBLE_SCROLL_PANE
260
* see ACCESSIBLE_LIST_ITEM
261
*/
262
#define ACCESSIBLE_LIST L"list"
263
264
/**
265
* An object that presents an element in a list. A list is usually
266
* contained within a scroll pane.
267
* see ACCESSIBLE_SCROLL_PANE
268
* see ACCESSIBLE_LIST
269
*/
270
#define ACCESSIBLE_LIST_ITEM L"list item"
271
272
/**
273
* An object usually drawn at the top of the primary dialog box of
274
* an application that contains a list of menus the user can choose
275
* from. For example, a menu bar might contain menus for "File,"
276
* "Edit," and "Help."
277
* see ACCESSIBLE_MENU
278
* see ACCESSIBLE_POPUP_MENU
279
* see ACCESSIBLE_LAYERED_PANE
280
*/
281
#define ACCESSIBLE_MENU_BAR L"menu bar"
282
283
/**
284
* A temporary window that is usually used to offer the user a
285
* list of choices, and then hides when the user selects one of
286
* those choices.
287
* see ACCESSIBLE_MENU
288
* see ACCESSIBLE_MENU_ITEM
289
*/
290
#define ACCESSIBLE_POPUP_MENU L"popup menu"
291
292
/**
293
* An object usually found inside a menu bar that contains a list
294
* of actions the user can choose from. A menu can have any object
295
* as its children, but most often they are menu items, other menus,
296
* or rudimentary objects such as radio buttons, check boxes, or
297
* separators. For example, an application may have an "Edit" menu
298
* that contains menu items for "Cut" and "Paste."
299
* see ACCESSIBLE_MENU_BAR
300
* see ACCESSIBLE_MENU_ITEM
301
* see ACCESSIBLE_SEPARATOR
302
* see ACCESSIBLE_RADIO_BUTTON
303
* see ACCESSIBLE_CHECK_BOX
304
* see ACCESSIBLE_POPUP_MENU
305
*/
306
#define ACCESSIBLE_MENU L"menu"
307
308
/**
309
* An object usually contained in a menu that presents an action
310
* the user can choose. For example, the "Cut" menu item in an
311
* "Edit" menu would be an action the user can select to cut the
312
* selected area of text in a document.
313
* see ACCESSIBLE_MENU_BAR
314
* see ACCESSIBLE_SEPARATOR
315
* see ACCESSIBLE_POPUP_MENU
316
*/
317
#define ACCESSIBLE_MENU_ITEM L"menu item"
318
319
/**
320
* An object usually contained in a menu to provide a visual
321
* and logical separation of the contents in a menu. For example,
322
* the "File" menu of an application might contain menu items for
323
* "Open," "Close," and "Exit," and will place a separator between
324
* "Close" and "Exit" menu items.
325
* see ACCESSIBLE_MENU
326
* see ACCESSIBLE_MENU_ITEM
327
*/
328
#define ACCESSIBLE_SEPARATOR L"separator"
329
330
/**
331
* An object that presents a series of panels (or page tabs), one at a
332
* time, through some mechanism provided by the object. The most common
333
* mechanism is a list of tabs at the top of the panel. The children of
334
* a page tab list are all page tabs.
335
* see ACCESSIBLE_PAGE_TAB
336
*/
337
#define ACCESSIBLE_PAGE_TAB_LIST L"page tab list"
338
339
/**
340
* An object that is a child of a page tab list. Its sole child is
341
* the panel that is to be presented to the user when the user
342
* selects the page tab from the list of tabs in the page tab list.
343
* see ACCESSIBLE_PAGE_TAB_LIST
344
*/
345
#define ACCESSIBLE_PAGE_TAB L"page tab"
346
347
/**
348
* A generic container that is often used to group objects.
349
*/
350
#define ACCESSIBLE_PANEL L"panel"
351
352
/**
353
* An object used to indicate how much of a task has been completed.
354
*/
355
#define ACCESSIBLE_PROGRESS_BAR L"progress bar"
356
357
/**
358
* A text object used for passwords, or other places where the
359
* text contents is not shown visibly to the user
360
*/
361
#define ACCESSIBLE_PASSWORD_TEXT L"password text"
362
363
/**
364
* An object the user can manipulate to tell the application to do
365
* something.
366
* see ACCESSIBLE_CHECK_BOX
367
* see ACCESSIBLE_TOGGLE_BUTTON
368
* see ACCESSIBLE_RADIO_BUTTON
369
*/
370
#define ACCESSIBLE_PUSH_BUTTON L"push button"
371
372
/**
373
* A specialized push button that can be checked or unchecked, but
374
* does not provide a separate indicator for the current state.
375
* see ACCESSIBLE_PUSH_BUTTON
376
* see ACCESSIBLE_CHECK_BOX
377
* see ACCESSIBLE_RADIO_BUTTON
378
*/
379
#define ACCESSIBLE_TOGGLE_BUTTON L"toggle button"
380
381
/**
382
* A choice that can be checked or unchecked and provides a
383
* separate indicator for the current state.
384
* see ACCESSIBLE_PUSH_BUTTON
385
* see ACCESSIBLE_TOGGLE_BUTTON
386
* see ACCESSIBLE_RADIO_BUTTON
387
*/
388
#define ACCESSIBLE_CHECK_BOX L"check box"
389
390
/**
391
* A specialized check box that will cause other radio buttons in the
392
* same group to become unchecked when this one is checked.
393
* see ACCESSIBLE_PUSH_BUTTON
394
* see ACCESSIBLE_TOGGLE_BUTTON
395
* see ACCESSIBLE_CHECK_BOX
396
*/
397
#define ACCESSIBLE_RADIO_BUTTON L"radio button"
398
399
/**
400
* The header for a row of data.
401
*/
402
#define ACCESSIBLE_ROW_HEADER L"row header"
403
404
/**
405
* An object that allows a user to incrementally view a large amount
406
* of information. Its children can include scroll bars and a viewport.
407
* see ACCESSIBLE_SCROLL_BAR
408
* see ACCESSIBLE_VIEWPORT
409
*/
410
#define ACCESSIBLE_SCROLL_PANE L"scroll pane"
411
412
/**
413
* An object usually used to allow a user to incrementally view a
414
* large amount of data. Usually used only by a scroll pane.
415
* see ACCESSIBLE_SCROLL_PANE
416
*/
417
#define ACCESSIBLE_SCROLL_BAR L"scroll bar"
418
419
/**
420
* An object usually used in a scroll pane. It represents the portion
421
* of the entire data that the user can see. As the user manipulates
422
* the scroll bars, the contents of the viewport can change.
423
* see ACCESSIBLE_SCROLL_PANE
424
*/
425
#define ACCESSIBLE_VIEWPORT L"viewport"
426
427
/**
428
* An object that allows the user to select from a bounded range. For
429
* example, a slider might be used to select a number between 0 and 100.
430
*/
431
#define ACCESSIBLE_SLIDER L"slider"
432
433
/**
434
* A specialized panel that presents two other panels at the same time.
435
* Between the two panels is a divider the user can manipulate to make
436
* one panel larger and the other panel smaller.
437
*/
438
#define ACCESSIBLE_SPLIT_PANE L"split pane"
439
440
/**
441
* An object used to present information in terms of rows and columns.
442
* An example might include a spreadsheet application.
443
*/
444
#define ACCESSIBLE_TABLE L"table"
445
446
/**
447
* An object that presents text to the user. The text is usually
448
* editable by the user as opposed to a label.
449
* see ACCESSIBLE_LABEL
450
*/
451
#define ACCESSIBLE_TEXT L"text"
452
453
/**
454
* An object used to present hierarchical information to the user.
455
* The individual nodes in the tree can be collapsed and expanded
456
* to provide selective disclosure of the tree's contents.
457
*/
458
#define ACCESSIBLE_TREE L"tree"
459
460
/**
461
* A bar or palette usually composed of push buttons or toggle buttons.
462
* It is often used to provide the most frequently used functions for an
463
* application.
464
*/
465
#define ACCESSIBLE_TOOL_BAR L"tool bar"
466
467
/**
468
* An object that provides information about another object. The
469
* accessibleDescription property of the tool tip is often displayed
470
* to the user in a small L"help bubble" when the user causes the
471
* mouse to hover over the object associated with the tool tip.
472
*/
473
#define ACCESSIBLE_TOOL_TIP L"tool tip"
474
475
/**
476
* An AWT component, but nothing else is known about it.
477
* see ACCESSIBLE_SWING_COMPONENT
478
* see ACCESSIBLE_UNKNOWN
479
*/
480
#define ACCESSIBLE_AWT_COMPONENT L"awt component"
481
482
/**
483
* A Swing component, but nothing else is known about it.
484
* see ACCESSIBLE_AWT_COMPONENT
485
* see ACCESSIBLE_UNKNOWN
486
*/
487
#define ACCESSIBLE_SWING_COMPONENT L"swing component"
488
489
/**
490
* The object contains some Accessible information, but its role is
491
* not known.
492
* see ACCESSIBLE_AWT_COMPONENT
493
* see ACCESSIBLE_SWING_COMPONENT
494
*/
495
#define ACCESSIBLE_UNKNOWN L"unknown"
496
497
/**
498
* A STATUS_BAR is an simple component that can contain
499
* multiple labels of status information to the user.
500
*/
501
#define ACCESSIBLE_STATUS_BAR L"status bar"
502
503
/**
504
* A DATE_EDITOR is a component that allows users to edit
505
* java.util.Date and java.util.Time objects
506
*/
507
#define ACCESSIBLE_DATE_EDITOR L"date editor"
508
509
/**
510
* A SPIN_BOX is a simple spinner component and its main use
511
* is for simple numbers.
512
*/
513
#define ACCESSIBLE_SPIN_BOX L"spin box"
514
515
/**
516
* A FONT_CHOOSER is a component that lets the user pick various
517
* attributes for fonts.
518
*/
519
#define ACCESSIBLE_FONT_CHOOSER L"font chooser"
520
521
/**
522
* A GROUP_BOX is a simple container that contains a border
523
* around it and contains components inside it.
524
*/
525
#define ACCESSIBLE_GROUP_BOX L"group box"
526
527
/**
528
* A text header
529
*/
530
#define ACCESSIBLE_HEADER L"header"
531
532
/**
533
* A text footer
534
*/
535
#define ACCESSIBLE_FOOTER L"footer"
536
537
/**
538
* A text paragraph
539
*/
540
#define ACCESSIBLE_PARAGRAPH L"paragraph"
541
542
/**
543
* A ruler is an object used to measure distance
544
*/
545
#define ACCESSIBLE_RULER L"ruler"
546
547
/**
548
* A role indicating the object acts as a formula for
549
* calculating a value. An example is a formula in
550
* a spreadsheet cell.
551
*/
552
#define ACCESSIBLE_EDITBAR L"editbar"
553
554
/**
555
* A role indicating the object monitors the progress
556
* of some operation.
557
*/
558
#define PROGRESS_MONITOR L"progress monitor"
559
560
561
/**
562
******************************************************
563
* Accessibility event types
564
******************************************************
565
*/
566
567
#define cPropertyNameChangeEvent (jlong) 1 // 1
568
#define cPropertyDescriptionChangeEvent (jlong) 2 // 2
569
#define cPropertyStateChangeEvent (jlong) 4 // 4
570
#define cPropertyValueChangeEvent (jlong) 8 // 8
571
#define cPropertySelectionChangeEvent (jlong) 16 // 10
572
#define cPropertyTextChangeEvent (jlong) 32 // 20
573
#define cPropertyCaretChangeEvent (jlong) 64 // 40
574
#define cPropertyVisibleDataChangeEvent (jlong) 128 // 80
575
#define cPropertyChildChangeEvent (jlong) 256 // 100
576
#define cPropertyActiveDescendentChangeEvent (jlong) 512 // 200
577
#define cPropertyTableModelChangeEvent (jlong) 1024 // 400
578
579
/**
580
******************************************************
581
* optional AccessibleContext interfaces
582
*
583
* This version of the bridge reuses the accessibleValue
584
* field in the AccessibleContextInfo struct to represent
585
* additional optional interfaces that are supported by
586
* the Java AccessibleContext. This is backwardly compatable
587
* because the old accessibleValue was set to the BOOL
588
* value TRUE (i.e., 1) if the AccessibleValue interface is
589
* supported.
590
******************************************************
591
*/
592
593
#define cAccessibleValueInterface (jlong) 1 // 1 << 1 (TRUE)
594
#define cAccessibleActionInterface (jlong) 2 // 1 << 2
595
#define cAccessibleComponentInterface (jlong) 4 // 1 << 3
596
#define cAccessibleSelectionInterface (jlong) 8 // 1 << 4
597
#define cAccessibleTableInterface (jlong) 16 // 1 << 5
598
#define cAccessibleTextInterface (jlong) 32 // 1 << 6
599
#define cAccessibleHypertextInterface (jlong) 64 // 1 << 7
600
601
602
/**
603
******************************************************
604
* Accessibility information bundles
605
******************************************************
606
*/
607
608
typedef struct AccessBridgeVersionInfoTag {
609
wchar_t VMversion[SHORT_STRING_SIZE]; // output of "java -version"
610
wchar_t bridgeJavaClassVersion[SHORT_STRING_SIZE]; // version of the AccessBridge.class
611
wchar_t bridgeJavaDLLVersion[SHORT_STRING_SIZE]; // version of JavaAccessBridge.dll
612
wchar_t bridgeWinDLLVersion[SHORT_STRING_SIZE]; // version of WindowsAccessBridge.dll
613
} AccessBridgeVersionInfo;
614
615
616
typedef struct AccessibleContextInfoTag {
617
wchar_t name[MAX_STRING_SIZE]; // the AccessibleName of the object
618
wchar_t description[MAX_STRING_SIZE]; // the AccessibleDescription of the object
619
620
wchar_t role[SHORT_STRING_SIZE]; // localized AccesibleRole string
621
wchar_t role_en_US[SHORT_STRING_SIZE]; // AccesibleRole string in the en_US locale
622
wchar_t states[SHORT_STRING_SIZE]; // localized AccesibleStateSet string (comma separated)
623
wchar_t states_en_US[SHORT_STRING_SIZE]; // AccesibleStateSet string in the en_US locale (comma separated)
624
625
jint indexInParent; // index of object in parent
626
jint childrenCount; // # of children, if any
627
628
jint x; // screen coords in pixels
629
jint y; // "
630
jint width; // pixel width of object
631
jint height; // pixel height of object
632
633
BOOL accessibleComponent; // flags for various additional
634
BOOL accessibleAction; // Java Accessibility interfaces
635
BOOL accessibleSelection; // FALSE if this object doesn't
636
BOOL accessibleText; // implement the additional interface
637
// in question
638
639
// BOOL accessibleValue; // old BOOL indicating whether AccessibleValue is supported
640
BOOL accessibleInterfaces; // new bitfield containing additional interface flags
641
642
} AccessibleContextInfo;
643
644
645
646
// AccessibleText packages
647
typedef struct AccessibleTextInfoTag {
648
jint charCount; // # of characters in this text object
649
jint caretIndex; // index of caret
650
jint indexAtPoint; // index at the passsed in point
651
} AccessibleTextInfo;
652
653
typedef struct AccessibleTextItemsInfoTag {
654
wchar_t letter;
655
wchar_t word[SHORT_STRING_SIZE];
656
wchar_t sentence[MAX_STRING_SIZE];
657
} AccessibleTextItemsInfo;
658
659
typedef struct AccessibleTextSelectionInfoTag {
660
jint selectionStartIndex;
661
jint selectionEndIndex;
662
wchar_t selectedText[MAX_STRING_SIZE];
663
} AccessibleTextSelectionInfo;
664
665
typedef struct AccessibleTextRectInfoTag {
666
jint x; // bounding rect of char at index
667
jint y; // "
668
jint width; // "
669
jint height; // "
670
} AccessibleTextRectInfo;
671
672
// standard attributes for text; note: tabstops are not supported
673
typedef struct AccessibleTextAttributesInfoTag {
674
BOOL bold;
675
BOOL italic;
676
BOOL underline;
677
BOOL strikethrough;
678
BOOL superscript;
679
BOOL subscript;
680
681
wchar_t backgroundColor[SHORT_STRING_SIZE];
682
wchar_t foregroundColor[SHORT_STRING_SIZE];
683
wchar_t fontFamily[SHORT_STRING_SIZE];
684
jint fontSize;
685
686
jint alignment;
687
jint bidiLevel;
688
689
jfloat firstLineIndent;
690
jfloat leftIndent;
691
jfloat rightIndent;
692
jfloat lineSpacing;
693
jfloat spaceAbove;
694
jfloat spaceBelow;
695
696
wchar_t fullAttributesString[MAX_STRING_SIZE];
697
} AccessibleTextAttributesInfo;
698
699
/**
700
******************************************************
701
* IPC management typedefs
702
******************************************************
703
*/
704
705
#define cMemoryMappedNameSize 255
706
707
/**
708
* sent by the WindowsDLL -> the memory-mapped file is setup
709
*
710
*/
711
typedef struct MemoryMappedFileCreatedPackageTag {
712
// HWND bridgeWindow; // redundant, but easier to get to here...
713
ABHWND64 bridgeWindow; // redundant, but easier to get to here...
714
char filename[cMemoryMappedNameSize];
715
} MemoryMappedFileCreatedPackage;
716
717
718
719
720
/**
721
* sent when a new JavaVM attaches to the Bridge
722
*
723
*/
724
typedef struct JavaVMCreatedPackageTag {
725
ABHWND64 bridgeWindow;
726
long vmID;
727
} JavaVMCreatedPackage;
728
729
/**
730
* sent when a JavaVM detatches from the Bridge
731
*
732
*/
733
typedef struct JavaVMDestroyedPackageTag {
734
ABHWND64 bridgeWindow;
735
} JavaVMDestroyedPackage;
736
737
/**
738
* sent when a new AT attaches to the Bridge
739
*
740
*/
741
typedef struct WindowsATCreatedPackageTag {
742
ABHWND64 bridgeWindow;
743
} WindowsATCreatedPackage;
744
745
/**
746
* sent when an AT detatches from the Bridge
747
*
748
*/
749
typedef struct WindowsATDestroyedPackageTag {
750
ABHWND64 bridgeWindow;
751
} WindowsATDestroyedPackage;
752
753
754
/**
755
* sent by JVM Bridges in response to a WindowsATCreate
756
* message; saying "howdy, welcome to the neighborhood"
757
*
758
*/
759
typedef struct JavaVMPresentNotificationPackageTag {
760
ABHWND64 bridgeWindow;
761
long vmID;
762
} JavaVMPresentNotificationPackage;
763
764
/**
765
* sent by AT Bridges in response to a JavaVMCreate
766
* message; saying "howdy, welcome to the neighborhood"
767
*
768
*/
769
typedef struct WindowsATPresentNotificationPackageTag {
770
ABHWND64 bridgeWindow;
771
} WindowsATPresentNotificationPackage;
772
773
774
/**
775
******************************************************
776
* Core packages
777
******************************************************
778
*/
779
780
typedef struct ReleaseJavaObjectPackageTag {
781
long vmID;
782
JOBJECT64 object;
783
} ReleaseJavaObjectPackage;
784
785
typedef struct GetAccessBridgeVersionPackageTag {
786
long vmID; // can't get VM info w/out a VM!
787
AccessBridgeVersionInfo rVersionInfo;
788
} GetAccessBridgeVersionPackage;
789
790
typedef struct IsSameObjectPackageTag {
791
long vmID;
792
JOBJECT64 obj1;
793
JOBJECT64 obj2;
794
jboolean rResult;
795
} IsSameObjectPackage;
796
797
/**
798
******************************************************
799
* Windows packages
800
******************************************************
801
*/
802
803
typedef struct IsJavaWindowPackageTag {
804
jint window;
805
jboolean rResult;
806
} IsJavaWindowPackage;
807
808
typedef struct GetAccessibleContextFromHWNDPackageTag {
809
jint window;
810
long rVMID;
811
JOBJECT64 rAccessibleContext;
812
} GetAccessibleContextFromHWNDPackage;
813
814
typedef struct GetHWNDFromAccessibleContextPackageTag {
815
JOBJECT64 accessibleContext;
816
ABHWND64 rHWND;
817
} GetHWNDFromAccessibleContextPackage;
818
819
/**
820
******************************************************
821
* AccessibleContext packages
822
******************************************************
823
*/
824
825
typedef struct GetAccessibleContextAtPackageTag {
826
jint x;
827
jint y;
828
long vmID;
829
JOBJECT64 AccessibleContext; // look within this AC
830
JOBJECT64 rAccessibleContext;
831
} GetAccessibleContextAtPackage;
832
833
typedef struct GetAccessibleContextWithFocusPackageTag {
834
long rVMID;
835
JOBJECT64 rAccessibleContext;
836
} GetAccessibleContextWithFocusPackage;
837
838
typedef struct GetAccessibleContextInfoPackageTag {
839
long vmID;
840
JOBJECT64 AccessibleContext;
841
AccessibleContextInfo rAccessibleContextInfo;
842
} GetAccessibleContextInfoPackage;
843
844
typedef struct GetAccessibleChildFromContextPackageTag {
845
long vmID;
846
JOBJECT64 AccessibleContext;
847
jint childIndex;
848
JOBJECT64 rAccessibleContext;
849
} GetAccessibleChildFromContextPackage;
850
851
typedef struct GetAccessibleParentFromContextPackageTag {
852
long vmID;
853
JOBJECT64 AccessibleContext;
854
JOBJECT64 rAccessibleContext;
855
} GetAccessibleParentFromContextPackage;
856
857
/**
858
******************************************************
859
* AccessibleTable packages
860
******************************************************
861
*/
862
863
#define MAX_TABLE_SELECTIONS 64
864
865
// table information
866
typedef struct AccessibleTableInfoTag {
867
JOBJECT64 caption; // AccesibleContext
868
JOBJECT64 summary; // AccessibleContext
869
jint rowCount;
870
jint columnCount;
871
JOBJECT64 accessibleContext;
872
JOBJECT64 accessibleTable;
873
} AccessibleTableInfo;
874
875
typedef struct GetAccessibleTableInfoPackageTag {
876
long vmID;
877
JOBJECT64 accessibleContext;
878
AccessibleTableInfo rTableInfo;
879
} GetAccessibleTableInfoPackage;
880
881
// table cell information
882
typedef struct AccessibleTableCellInfoTag {
883
JOBJECT64 accessibleContext;
884
jint index;
885
jint row;
886
jint column;
887
jint rowExtent;
888
jint columnExtent;
889
jboolean isSelected;
890
} AccessibleTableCellInfo;
891
892
typedef struct GetAccessibleTableCellInfoPackageTag {
893
long vmID;
894
JOBJECT64 accessibleTable;
895
jint row;
896
jint column;
897
AccessibleTableCellInfo rTableCellInfo;
898
} GetAccessibleTableCellInfoPackage;
899
900
typedef struct GetAccessibleTableRowHeaderPackageTag {
901
long vmID;
902
JOBJECT64 accessibleContext;
903
AccessibleTableInfo rTableInfo;
904
} GetAccessibleTableRowHeaderPackage;
905
906
typedef struct GetAccessibleTableColumnHeaderPackageTag {
907
long vmID;
908
JOBJECT64 accessibleContext;
909
AccessibleTableInfo rTableInfo;
910
} GetAccessibleTableColumnHeaderPackage;
911
912
typedef struct GetAccessibleTableRowDescriptionPackageTag {
913
long vmID;
914
JOBJECT64 accessibleContext;
915
jint row;
916
JOBJECT64 rAccessibleContext;
917
} GetAccessibleTableRowDescriptionPackage;
918
919
typedef struct GetAccessibleTableColumnDescriptionPackageTag {
920
long vmID;
921
JOBJECT64 accessibleContext;
922
jint column;
923
JOBJECT64 rAccessibleContext;
924
} GetAccessibleTableColumnDescriptionPackage;
925
926
typedef struct GetAccessibleTableRowSelectionCountPackageTag {
927
long vmID;
928
JOBJECT64 accessibleTable;
929
jint rCount;
930
} GetAccessibleTableRowSelectionCountPackage;
931
932
typedef struct IsAccessibleTableRowSelectedPackageTag {
933
long vmID;
934
JOBJECT64 accessibleTable;
935
jint row;
936
jboolean rResult;
937
} IsAccessibleTableRowSelectedPackage;
938
939
typedef struct GetAccessibleTableRowSelectionsPackageTag {
940
long vmID;
941
JOBJECT64 accessibleTable;
942
jint count;
943
jint rSelections[MAX_TABLE_SELECTIONS];
944
} GetAccessibleTableRowSelectionsPackage;
945
946
typedef struct GetAccessibleTableColumnSelectionCountPackageTag {
947
long vmID;
948
JOBJECT64 accessibleTable;
949
jint rCount;
950
} GetAccessibleTableColumnSelectionCountPackage;
951
952
typedef struct IsAccessibleTableColumnSelectedPackageTag {
953
long vmID;
954
JOBJECT64 accessibleTable;
955
jint column;
956
jboolean rResult;
957
} IsAccessibleTableColumnSelectedPackage;
958
959
typedef struct GetAccessibleTableColumnSelectionsPackageTag {
960
long vmID;
961
JOBJECT64 accessibleTable;
962
jint count;
963
jint rSelections[MAX_TABLE_SELECTIONS];
964
} GetAccessibleTableColumnSelectionsPackage;
965
966
967
typedef struct GetAccessibleTableRowPackageTag {
968
long vmID;
969
JOBJECT64 accessibleTable;
970
jint index;
971
jint rRow;
972
} GetAccessibleTableRowPackage;
973
974
typedef struct GetAccessibleTableColumnPackageTag {
975
long vmID;
976
JOBJECT64 accessibleTable;
977
jint index;
978
jint rColumn;
979
} GetAccessibleTableColumnPackage;
980
981
typedef struct GetAccessibleTableIndexPackageTag {
982
long vmID;
983
JOBJECT64 accessibleTable;
984
jint row;
985
jint column;
986
jint rIndex;
987
} GetAccessibleTableIndexPackage;
988
989
990
/**
991
******************************************************
992
* AccessibleRelationSet packages
993
******************************************************
994
*/
995
996
#define MAX_RELATION_TARGETS 25
997
#define MAX_RELATIONS 5
998
999
typedef struct AccessibleRelationInfoTag {
1000
wchar_t key[SHORT_STRING_SIZE];
1001
jint targetCount;
1002
JOBJECT64 targets[MAX_RELATION_TARGETS]; // AccessibleContexts
1003
} AccessibleRelationInfo;
1004
1005
typedef struct AccessibleRelationSetInfoTag {
1006
jint relationCount;
1007
AccessibleRelationInfo relations[MAX_RELATIONS];
1008
} AccessibleRelationSetInfo;
1009
1010
typedef struct GetAccessibleRelationSetPackageTag {
1011
long vmID;
1012
JOBJECT64 accessibleContext;
1013
AccessibleRelationSetInfo rAccessibleRelationSetInfo;
1014
} GetAccessibleRelationSetPackage;
1015
1016
/**
1017
******************************************************
1018
* AccessibleHypertext packagess
1019
******************************************************
1020
*/
1021
1022
#define MAX_HYPERLINKS 64 // maximum number of hyperlinks returned
1023
1024
// hyperlink information
1025
typedef struct AccessibleHyperlinkInfoTag {
1026
wchar_t text[SHORT_STRING_SIZE]; // the hyperlink text
1027
jint startIndex; //index in the hypertext document where the link begins
1028
jint endIndex; //index in the hypertext document where the link ends
1029
JOBJECT64 accessibleHyperlink; // AccessibleHyperlink object
1030
} AccessibleHyperlinkInfo;
1031
1032
// hypertext information
1033
typedef struct AccessibleHypertextInfoTag {
1034
jint linkCount; // number of hyperlinks
1035
AccessibleHyperlinkInfo links[MAX_HYPERLINKS]; // the hyperlinks
1036
JOBJECT64 accessibleHypertext; // AccessibleHypertext object
1037
} AccessibleHypertextInfo;
1038
1039
// struct for sending a message to get the hypertext for an AccessibleContext
1040
typedef struct GetAccessibleHypertextPackageTag {
1041
long vmID; // the virtual machine ID
1042
JOBJECT64 accessibleContext; // AccessibleContext with hypertext
1043
AccessibleHypertextInfo rAccessibleHypertextInfo; // returned hypertext
1044
} GetAccessibleHypertextPackage;
1045
1046
// struct for sending an message to activate a hyperlink
1047
typedef struct ActivateAccessibleHyperlinkPackageTag {
1048
long vmID; // the virtual machine ID
1049
JOBJECT64 accessibleContext; // AccessibleContext containing the link
1050
JOBJECT64 accessibleHyperlink; // the link to activate
1051
BOOL rResult; // hyperlink activation return value
1052
} ActivateAccessibleHyperlinkPackage;
1053
1054
// struct for sending a message to get the number of hyperlinks in a component
1055
typedef struct GetAccessibleHyperlinkCountPackageTag {
1056
long vmID; // the virtual machine ID
1057
JOBJECT64 accessibleContext; // AccessibleContext containing AccessibleHypertext
1058
jint rLinkCount; // link count return value
1059
} GetAccessibleHyperlinkCountPackage;
1060
1061
// struct for sending a message to get the hypertext for an AccessibleContext
1062
// starting at a specified index in the document
1063
typedef struct GetAccessibleHypertextExtPackageTag {
1064
long vmID; // the virtual machine ID
1065
JOBJECT64 accessibleContext; // AccessibleContext with hypertext
1066
jint startIndex; // start index in document
1067
AccessibleHypertextInfo rAccessibleHypertextInfo; // returned hypertext
1068
BOOL rSuccess; // whether call succeeded
1069
} GetAccessibleHypertextExtPackage;
1070
1071
// struct for sending a message to get the nth hyperlink in a document;
1072
// maps to AccessibleHypertext.getLink
1073
typedef struct GetAccessibleHyperlinkPackageTag {
1074
long vmID; // the virtual machine ID
1075
JOBJECT64 hypertext; // AccessibleHypertext
1076
jint linkIndex; // hyperlink index
1077
AccessibleHyperlinkInfo rAccessibleHyperlinkInfo; // returned hyperlink
1078
} GetAccessibleHyperlinkPackage;
1079
1080
// struct for sending a message to get the index into an array
1081
// of hyperlinks that is associated with a character index in a
1082
// document; maps to AccessibleHypertext.getLinkIndex
1083
typedef struct GetAccessibleHypertextLinkIndexPackageTag {
1084
long vmID; // the virtual machine ID
1085
JOBJECT64 hypertext; // AccessibleHypertext
1086
jint charIndex; // character index in document
1087
jint rLinkIndex; // returned hyperlink index
1088
} GetAccessibleHypertextLinkIndexPackage;
1089
1090
/**
1091
******************************************************
1092
* Accessible Key Bindings packages
1093
******************************************************
1094
*/
1095
1096
#define MAX_KEY_BINDINGS 10
1097
1098
// keyboard character modifiers
1099
#define ACCESSIBLE_SHIFT_KEYSTROKE 1
1100
#define ACCESSIBLE_CONTROL_KEYSTROKE 2
1101
#define ACCESSIBLE_META_KEYSTROKE 4
1102
#define ACCESSIBLE_ALT_KEYSTROKE 8
1103
#define ACCESSIBLE_ALT_GRAPH_KEYSTROKE 16
1104
#define ACCESSIBLE_BUTTON1_KEYSTROKE 32
1105
#define ACCESSIBLE_BUTTON2_KEYSTROKE 64
1106
#define ACCESSIBLE_BUTTON3_KEYSTROKE 128
1107
#define ACCESSIBLE_FKEY_KEYSTROKE 256 // F key pressed, character contains 1-24
1108
#define ACCESSIBLE_CONTROLCODE_KEYSTROKE 512 // Control code key pressed, character contains control code.
1109
1110
// The supported control code keys are:
1111
#define ACCESSIBLE_VK_BACK_SPACE 8
1112
#define ACCESSIBLE_VK_DELETE 127
1113
#define ACCESSIBLE_VK_DOWN 40
1114
#define ACCESSIBLE_VK_END 35
1115
#define ACCESSIBLE_VK_HOME 36
1116
#define ACCESSIBLE_VK_INSERT 155
1117
#define ACCESSIBLE_VK_KP_DOWN 225
1118
#define ACCESSIBLE_VK_KP_LEFT 226
1119
#define ACCESSIBLE_VK_KP_RIGHT 227
1120
#define ACCESSIBLE_VK_KP_UP 224
1121
#define ACCESSIBLE_VK_LEFT 37
1122
#define ACCESSIBLE_VK_PAGE_DOWN 34
1123
#define ACCESSIBLE_VK_PAGE_UP 33
1124
#define ACCESSIBLE_VK_RIGHT 39
1125
#define ACCESSIBLE_VK_UP 38
1126
1127
// a key binding associates with a component
1128
typedef struct AccessibleKeyBindingInfoTag {
1129
jchar character; // the key character
1130
jint modifiers; // the key modifiers
1131
} AccessibleKeyBindingInfo;
1132
1133
// all of the key bindings associated with a component
1134
typedef struct AccessibleKeyBindingsTag {
1135
int keyBindingsCount; // number of key bindings
1136
AccessibleKeyBindingInfo keyBindingInfo[MAX_KEY_BINDINGS];
1137
} AccessibleKeyBindings;
1138
1139
// struct to get the key bindings associated with a component
1140
typedef struct GetAccessibleKeyBindingsPackageTag {
1141
long vmID; // the virtual machine id
1142
JOBJECT64 accessibleContext; // the component
1143
AccessibleKeyBindings rAccessibleKeyBindings; // the key bindings
1144
} GetAccessibleKeyBindingsPackage;
1145
1146
/**
1147
******************************************************
1148
* AccessibleIcon packages
1149
******************************************************
1150
*/
1151
#define MAX_ICON_INFO 8
1152
1153
// an icon assocated with a component
1154
typedef struct AccessibleIconInfoTag {
1155
wchar_t description[SHORT_STRING_SIZE]; // icon description
1156
jint height; // icon height
1157
jint width; // icon width
1158
} AccessibleIconInfo;
1159
1160
// all of the icons associated with a component
1161
typedef struct AccessibleIconsTag {
1162
jint iconsCount; // number of icons
1163
AccessibleIconInfo iconInfo[MAX_ICON_INFO]; // the icons
1164
} AccessibleIcons;
1165
1166
// struct to get the icons associated with a component
1167
typedef struct GetAccessibleIconsPackageTag {
1168
long vmID; // the virtual machine id
1169
JOBJECT64 accessibleContext; // the component
1170
AccessibleIcons rAccessibleIcons; // the icons
1171
} GetAccessibleIconsPackage;
1172
1173
1174
/**
1175
******************************************************
1176
* AccessibleAction packages
1177
******************************************************
1178
*/
1179
#define MAX_ACTION_INFO 256
1180
#define MAX_ACTIONS_TO_DO 32
1181
1182
// an action assocated with a component
1183
typedef struct AccessibleActionInfoTag {
1184
wchar_t name[SHORT_STRING_SIZE]; // action name
1185
} AccessibleActionInfo;
1186
1187
// all of the actions associated with a component
1188
typedef struct AccessibleActionsTag {
1189
jint actionsCount; // number of actions
1190
AccessibleActionInfo actionInfo[MAX_ACTION_INFO]; // the action information
1191
} AccessibleActions;
1192
1193
// struct for requesting the actions associated with a component
1194
typedef struct GetAccessibleActionsPackageTag {
1195
long vmID;
1196
JOBJECT64 accessibleContext; // the component
1197
AccessibleActions rAccessibleActions; // the actions
1198
} GetAccessibleActionsPackage;
1199
1200
// list of AccessibleActions to do
1201
typedef struct AccessibleActionsToDoTag {
1202
jint actionsCount; // number of actions to do
1203
AccessibleActionInfo actions[MAX_ACTIONS_TO_DO];// the accessible actions to do
1204
} AccessibleActionsToDo;
1205
1206
// struct for sending an message to do one or more actions
1207
typedef struct DoAccessibleActionsPackageTag {
1208
long vmID; // the virtual machine ID
1209
JOBJECT64 accessibleContext; // component to do the action
1210
AccessibleActionsToDo actionsToDo; // the accessible actions to do
1211
BOOL rResult; // action return value
1212
jint failure; // index of action that failed if rResult is FALSE
1213
} DoAccessibleActionsPackage;
1214
1215
/**
1216
******************************************************
1217
* AccessibleText packages
1218
******************************************************
1219
*/
1220
1221
typedef struct GetAccessibleTextInfoPackageTag {
1222
long vmID;
1223
JOBJECT64 AccessibleContext;
1224
jint x;
1225
jint y;
1226
AccessibleTextInfo rTextInfo;
1227
} GetAccessibleTextInfoPackage;
1228
1229
typedef struct GetAccessibleTextItemsPackageTag {
1230
long vmID;
1231
JOBJECT64 AccessibleContext;
1232
jint index;
1233
AccessibleTextItemsInfo rTextItemsInfo;
1234
} GetAccessibleTextItemsPackage;
1235
1236
typedef struct GetAccessibleTextSelectionInfoPackageTag {
1237
long vmID;
1238
JOBJECT64 AccessibleContext;
1239
AccessibleTextSelectionInfo rTextSelectionItemsInfo;
1240
} GetAccessibleTextSelectionInfoPackage;
1241
1242
typedef struct GetAccessibleTextAttributeInfoPackageTag {
1243
long vmID;
1244
JOBJECT64 AccessibleContext;
1245
jint index;
1246
AccessibleTextAttributesInfo rAttributeInfo;
1247
} GetAccessibleTextAttributeInfoPackage;
1248
1249
typedef struct GetAccessibleTextRectInfoPackageTag {
1250
long vmID;
1251
JOBJECT64 AccessibleContext;
1252
jint index;
1253
AccessibleTextRectInfo rTextRectInfo;
1254
} GetAccessibleTextRectInfoPackage;
1255
1256
typedef struct GetCaretLocationPackageTag {
1257
long vmID;
1258
JOBJECT64 AccessibleContext;
1259
jint index;
1260
AccessibleTextRectInfo rTextRectInfo;
1261
} GetCaretLocationPackage;
1262
1263
typedef struct GetAccessibleTextLineBoundsPackageTag {
1264
long vmID;
1265
JOBJECT64 AccessibleContext;
1266
jint index;
1267
jint rLineStart;
1268
jint rLineEnd;
1269
} GetAccessibleTextLineBoundsPackage;
1270
1271
typedef struct GetAccessibleTextRangePackageTag {
1272
long vmID;
1273
JOBJECT64 AccessibleContext;
1274
jint start;
1275
jint end;
1276
wchar_t rText[MAX_BUFFER_SIZE];
1277
} GetAccessibleTextRangePackage;
1278
1279
/**
1280
******************************************************
1281
*
1282
* Utility method packages
1283
******************************************************
1284
*/
1285
1286
typedef struct SetTextContentsPackageTag {
1287
long vmID;
1288
JOBJECT64 accessibleContext; // the text field
1289
wchar_t text[MAX_STRING_SIZE]; // the text
1290
BOOL rResult;
1291
} SetTextContentsPackage;
1292
1293
typedef struct GetParentWithRolePackageTag {
1294
long vmID;
1295
JOBJECT64 accessibleContext;
1296
wchar_t role[SHORT_STRING_SIZE]; // one of Accessible Roles above
1297
JOBJECT64 rAccessibleContext;
1298
} GetParentWithRolePackage;
1299
1300
typedef struct GetTopLevelObjectPackageTag {
1301
long vmID;
1302
JOBJECT64 accessibleContext;
1303
JOBJECT64 rAccessibleContext;
1304
} GetTopLevelObjectPackage;
1305
1306
typedef struct GetParentWithRoleElseRootPackageTag {
1307
long vmID;
1308
JOBJECT64 accessibleContext;
1309
wchar_t role[SHORT_STRING_SIZE]; // one of Accessible Roles above
1310
JOBJECT64 rAccessibleContext;
1311
} GetParentWithRoleElseRootPackage;
1312
1313
typedef struct GetObjectDepthPackageTag {
1314
long vmID;
1315
JOBJECT64 accessibleContext;
1316
jint rResult;
1317
} GetObjectDepthPackage;
1318
1319
typedef struct GetActiveDescendentPackageTag {
1320
long vmID;
1321
JOBJECT64 accessibleContext;
1322
JOBJECT64 rAccessibleContext;
1323
} GetActiveDescendentPackage;
1324
1325
/**
1326
******************************************************
1327
* AccessibleValue packages
1328
******************************************************
1329
*/
1330
1331
typedef struct GetCurrentAccessibleValueFromContextPackageTag {
1332
long vmID;
1333
JOBJECT64 AccessibleContext;
1334
wchar_t rValue[SHORT_STRING_SIZE];
1335
} GetCurrentAccessibleValueFromContextPackage;
1336
1337
typedef struct GetMaximumAccessibleValueFromContextPackageTag {
1338
long vmID;
1339
JOBJECT64 AccessibleContext;
1340
wchar_t rValue[SHORT_STRING_SIZE];
1341
} GetMaximumAccessibleValueFromContextPackage;
1342
1343
typedef struct GetMinimumAccessibleValueFromContextPackageTag {
1344
long vmID;
1345
JOBJECT64 AccessibleContext;
1346
wchar_t rValue[SHORT_STRING_SIZE];
1347
} GetMinimumAccessibleValueFromContextPackage;
1348
1349
1350
/**
1351
******************************************************
1352
* AccessibleSelection packages
1353
******************************************************
1354
*/
1355
1356
typedef struct AddAccessibleSelectionFromContextPackageTag {
1357
long vmID;
1358
JOBJECT64 AccessibleContext;
1359
jint index;
1360
} AddAccessibleSelectionFromContextPackage;
1361
1362
typedef struct ClearAccessibleSelectionFromContextPackageTag {
1363
long vmID;
1364
JOBJECT64 AccessibleContext;
1365
} ClearAccessibleSelectionFromContextPackage;
1366
1367
typedef struct GetAccessibleSelectionFromContextPackageTag {
1368
long vmID;
1369
JOBJECT64 AccessibleContext;
1370
jint index;
1371
JOBJECT64 rAccessibleContext;
1372
} GetAccessibleSelectionFromContextPackage;
1373
1374
typedef struct GetAccessibleSelectionCountFromContextPackageTag {
1375
long vmID;
1376
JOBJECT64 AccessibleContext;
1377
jint rCount;
1378
} GetAccessibleSelectionCountFromContextPackage;
1379
1380
typedef struct IsAccessibleChildSelectedFromContextPackageTag {
1381
long vmID;
1382
JOBJECT64 AccessibleContext;
1383
jint index;
1384
jboolean rResult;
1385
} IsAccessibleChildSelectedFromContextPackage;
1386
1387
typedef struct RemoveAccessibleSelectionFromContextPackageTag {
1388
long vmID;
1389
JOBJECT64 AccessibleContext;
1390
jint index;
1391
} RemoveAccessibleSelectionFromContextPackage;
1392
1393
typedef struct SelectAllAccessibleSelectionFromContextPackageTag {
1394
long vmID;
1395
JOBJECT64 AccessibleContext;
1396
} SelectAllAccessibleSelectionFromContextPackage;
1397
1398
1399
/**
1400
******************************************************
1401
* Java Event Notification Registration packages
1402
******************************************************
1403
*/
1404
1405
typedef struct AddJavaEventNotificationPackageTag {
1406
jlong type;
1407
//HWND DLLwindow;
1408
ABHWND64 DLLwindow;
1409
} AddJavaEventNotificationPackage;
1410
1411
typedef struct RemoveJavaEventNotificationPackageTag {
1412
jlong type;
1413
//HWND DLLwindow;
1414
ABHWND64 DLLwindow;
1415
} RemoveJavaEventNotificationPackage;
1416
1417
1418
/**
1419
******************************************************
1420
* Accessibility Event Notification Registration packages
1421
******************************************************
1422
*/
1423
1424
typedef struct AddAccessibilityEventNotificationPackageTag {
1425
jlong type;
1426
//HWND DLLwindow;
1427
ABHWND64 DLLwindow;
1428
} AddAccessibilityEventNotificationPackage;
1429
1430
typedef struct RemoveAccessibilityEventNotificationPackageTag {
1431
jlong type;
1432
//HWND DLLwindow;
1433
ABHWND64 DLLwindow;
1434
} RemoveAccessibilityEventNotificationPackage;
1435
1436
1437
/**
1438
******************************************************
1439
* Accessibility Property Change Event packages
1440
******************************************************
1441
*/
1442
1443
typedef struct PropertyCaretChangePackageTag {
1444
long vmID;
1445
JOBJECT64 Event;
1446
JOBJECT64 AccessibleContextSource;
1447
jint oldPosition;
1448
jint newPosition;
1449
} PropertyCaretChangePackage;
1450
1451
typedef struct PropertyDescriptionChangePackageTag {
1452
long vmID;
1453
JOBJECT64 Event;
1454
JOBJECT64 AccessibleContextSource;
1455
wchar_t oldDescription[SHORT_STRING_SIZE];
1456
wchar_t newDescription[SHORT_STRING_SIZE];
1457
} PropertyDescriptionChangePackage;
1458
1459
typedef struct PropertyNameChangePackageTag {
1460
long vmID;
1461
JOBJECT64 Event;
1462
JOBJECT64 AccessibleContextSource;
1463
wchar_t oldName[SHORT_STRING_SIZE];
1464
wchar_t newName[SHORT_STRING_SIZE];
1465
} PropertyNameChangePackage;
1466
1467
typedef struct PropertySelectionChangePackageTag {
1468
long vmID;
1469
JOBJECT64 Event;
1470
JOBJECT64 AccessibleContextSource;
1471
} PropertySelectionChangePackage;
1472
1473
typedef struct PropertyStateChangePackageTag {
1474
long vmID;
1475
JOBJECT64 Event;
1476
JOBJECT64 AccessibleContextSource;
1477
wchar_t oldState[SHORT_STRING_SIZE];
1478
wchar_t newState[SHORT_STRING_SIZE];
1479
} PropertyStateChangePackage;
1480
1481
typedef struct PropertyTextChangePackageTag {
1482
long vmID;
1483
JOBJECT64 Event;
1484
JOBJECT64 AccessibleContextSource;
1485
} PropertyTextChangePackage;
1486
1487
typedef struct PropertyValueChangePackageTag {
1488
long vmID;
1489
JOBJECT64 Event;
1490
JOBJECT64 AccessibleContextSource;
1491
wchar_t oldValue[SHORT_STRING_SIZE];
1492
wchar_t newValue[SHORT_STRING_SIZE];
1493
} PropertyValueChangePackage;
1494
1495
typedef struct PropertyVisibleDataChangePackageTag {
1496
long vmID;
1497
JOBJECT64 Event;
1498
JOBJECT64 AccessibleContextSource;
1499
} PropertyVisibleDataChangePackage;
1500
1501
typedef struct PropertyChildChangePackageTag {
1502
long vmID;
1503
JOBJECT64 Event;
1504
JOBJECT64 AccessibleContextSource;
1505
JOBJECT64 oldChildAccessibleContext;
1506
JOBJECT64 newChildAccessibleContext;
1507
} PropertyChildChangePackage;
1508
1509
typedef struct PropertyActiveDescendentChangePackageTag {
1510
long vmID;
1511
JOBJECT64 Event;
1512
JOBJECT64 AccessibleContextSource;
1513
JOBJECT64 oldActiveDescendentAccessibleContext;
1514
JOBJECT64 newActiveDescendentAccessibleContext;
1515
} PropertyActiveDescendentChangePackage;
1516
1517
1518
// String format for newValue is:
1519
// "type" one of "INSERT", "UPDATE" or "DELETE"
1520
// "firstRow"
1521
// "lastRow"
1522
// "firstColumn"
1523
// "lastColumn"
1524
//
1525
// oldValue is currently unused
1526
//
1527
typedef struct PropertyTableModelChangePackageTag {
1528
long vmID;
1529
JOBJECT64 Event;
1530
JOBJECT64 AccessibleContextSource;
1531
wchar_t oldValue[SHORT_STRING_SIZE];
1532
wchar_t newValue[SHORT_STRING_SIZE];
1533
} PropertyTableModelChangePackage;
1534
1535
1536
/**
1537
******************************************************
1538
* Property Change Event packages
1539
******************************************************
1540
*/
1541
1542
/*
1543
typedef struct PropertyChangePackageTag {
1544
long vmID;
1545
jobject Event;
1546
jobject AccessibleContextSource;
1547
char propertyName[SHORT_STRING_SIZE];
1548
char oldValue[SHORT_STRING_SIZE]; // PropertyChangeEvent().getOldValue().toString()
1549
char newValue[SHORT_STRING_SIZE]; // PropertyChangeEvent().getNewValue().toString()
1550
} PropertyChangePackage;
1551
*/
1552
1553
/*
1554
* Java shutdown event package
1555
*/
1556
typedef struct JavaShutdownPackageTag {
1557
long vmID;
1558
} JavaShutdownPackage;
1559
1560
1561
/**
1562
******************************************************
1563
* Focus Event packages
1564
******************************************************
1565
*/
1566
1567
typedef struct FocusGainedPackageTag {
1568
long vmID;
1569
JOBJECT64 Event;
1570
JOBJECT64 AccessibleContextSource;
1571
} FocusGainedPackage;
1572
1573
typedef struct FocusLostPackageTag {
1574
long vmID;
1575
JOBJECT64 Event;
1576
JOBJECT64 AccessibleContextSource;
1577
} FocusLostPackage;
1578
1579
1580
/**
1581
******************************************************
1582
* Caret Event packages
1583
******************************************************
1584
*/
1585
1586
typedef struct CaretUpdatePackageTag {
1587
long vmID;
1588
JOBJECT64 Event;
1589
JOBJECT64 AccessibleContextSource;
1590
} CaretUpdatePackage;
1591
1592
1593
/**
1594
******************************************************
1595
* Mouse Event packages
1596
******************************************************
1597
*/
1598
1599
typedef struct MouseClickedPackageTag {
1600
long vmID;
1601
JOBJECT64 Event;
1602
JOBJECT64 AccessibleContextSource;
1603
} MouseClickedPackage;
1604
1605
typedef struct MouseEnteredPackageTag {
1606
long vmID;
1607
JOBJECT64 Event;
1608
JOBJECT64 AccessibleContextSource;
1609
} MouseEnteredPackage;
1610
1611
typedef struct MouseExitedPackageTag {
1612
long vmID;
1613
JOBJECT64 Event;
1614
JOBJECT64 AccessibleContextSource;
1615
} MouseExitedPackage;
1616
1617
typedef struct MousePressedPackageTag {
1618
long vmID;
1619
JOBJECT64 Event;
1620
JOBJECT64 AccessibleContextSource;
1621
} MousePressedPackage;
1622
1623
typedef struct MouseReleasedPackageTag {
1624
long vmID;
1625
JOBJECT64 Event;
1626
JOBJECT64 AccessibleContextSource;
1627
} MouseReleasedPackage;
1628
1629
1630
/**
1631
******************************************************
1632
* Menu/PopupMenu Event packages
1633
******************************************************
1634
*/
1635
1636
typedef struct MenuCanceledPackageTag {
1637
long vmID;
1638
JOBJECT64 Event;
1639
JOBJECT64 AccessibleContextSource;
1640
} MenuCanceledPackage;
1641
1642
typedef struct MenuDeselectedPackageTag {
1643
long vmID;
1644
JOBJECT64 Event;
1645
JOBJECT64 AccessibleContextSource;
1646
} MenuDeselectedPackage;
1647
1648
typedef struct MenuSelectedPackageTag {
1649
long vmID;
1650
JOBJECT64 Event;
1651
JOBJECT64 AccessibleContextSource;
1652
} MenuSelectedPackage;
1653
1654
1655
typedef struct PopupMenuCanceledPackageTag {
1656
long vmID;
1657
JOBJECT64 Event;
1658
JOBJECT64 AccessibleContextSource;
1659
} PopupMenuCanceledPackage;
1660
1661
typedef struct PopupMenuWillBecomeInvisiblePackageTag {
1662
long vmID;
1663
JOBJECT64 Event;
1664
JOBJECT64 AccessibleContextSource;
1665
} PopupMenuWillBecomeInvisiblePackage;
1666
1667
typedef struct PopupMenuWillBecomeVisiblePackageTag {
1668
long vmID;
1669
JOBJECT64 Event;
1670
JOBJECT64 AccessibleContextSource;
1671
} PopupMenuWillBecomeVisiblePackage;
1672
1673
/**
1674
******************************************************
1675
* Additional methods for Teton
1676
******************************************************
1677
*/
1678
1679
/**
1680
* Gets the AccessibleName for a component based upon the JAWS algorithm. Returns
1681
* whether successful.
1682
*
1683
* Bug ID 4916682 - Implement JAWS AccessibleName policy
1684
*/
1685
typedef struct GetVirtualAccessibleNamePackageTag {
1686
long vmID;
1687
AccessibleContext accessibleContext;
1688
wchar_t rName[MAX_STRING_SIZE];
1689
int len;
1690
} GetVirtualAccessibleNamePackage;
1691
1692
/**
1693
* Request focus for a component. Returns whether successful;
1694
*
1695
* Bug ID 4944757 - requestFocus method needed
1696
*/
1697
typedef struct RequestFocusPackageTag {
1698
long vmID;
1699
AccessibleContext accessibleContext;
1700
} RequestFocusPackage;
1701
1702
/**
1703
* Selects text between two indices. Selection includes the text at the start index
1704
* and the text at the end index. Returns whether successful;
1705
*
1706
* Bug ID 4944758 - selectTextRange method needed
1707
*/
1708
typedef struct SelectTextRangePackageTag {
1709
long vmID;
1710
AccessibleContext accessibleContext;
1711
jint startIndex;
1712
jint endIndex;
1713
} SelectTextRangePackage;
1714
1715
/**
1716
* Gets the number of contiguous characters with the same attributes.
1717
*
1718
* Bug ID 4944761 - getTextAttributes between two indices method needed
1719
*/
1720
typedef struct GetTextAttributesInRangePackageTag {
1721
long vmID;
1722
AccessibleContext accessibleContext;
1723
jint startIndex; // start index (inclusive)
1724
jint endIndex; // end index (inclusive)
1725
AccessibleTextAttributesInfo attributes; // character attributes to match
1726
short rLength; // number of contiguous characters with matching attributes
1727
} GetTextAttributesInRangePackage;
1728
1729
#define MAX_VISIBLE_CHILDREN 256
1730
1731
// visible children information
1732
typedef struct VisibleChildenInfoTag {
1733
int returnedChildrenCount; // number of children returned
1734
AccessibleContext children[MAX_VISIBLE_CHILDREN]; // the visible children
1735
} VisibleChildrenInfo;
1736
1737
// struct for sending a message to get the number of visible children
1738
typedef struct GetVisibleChildrenCountPackageTag {
1739
long vmID; // the virtual machine ID
1740
JOBJECT64 accessibleContext; // AccessibleContext of parent component
1741
jint rChildrenCount; // visible children count return value
1742
} GetVisibleChildrenCountPackage;
1743
1744
// struct for sending a message to get the hypertext for an AccessibleContext
1745
// starting at a specified index in the document
1746
typedef struct GetVisibleChildrenPackageTag {
1747
long vmID; // the virtual machine ID
1748
JOBJECT64 accessibleContext; // AccessibleContext of parent component
1749
jint startIndex; // start index for retrieving children
1750
VisibleChildrenInfo rVisibleChildrenInfo; // returned info
1751
BOOL rSuccess; // whether call succeeded
1752
} GetVisibleChildrenPackage;
1753
1754
/**
1755
* Set the caret to a text position. Returns whether successful;
1756
*
1757
* Bug ID 4944770 - setCaretPosition method needed
1758
*/
1759
typedef struct SetCaretPositionPackageTag {
1760
long vmID;
1761
AccessibleContext accessibleContext;
1762
jint position;
1763
} SetCaretPositionPackage;
1764
1765
1766
/**
1767
******************************************************
1768
* Wrapping up all of the packages
1769
******************************************************
1770
*/
1771
1772
/**
1773
* What is the type of this package
1774
*/
1775
typedef enum PackageType {
1776
1777
cMemoryMappedFileCreatedPackage = 0x11000,
1778
1779
// many of these will go away...
1780
cJavaVMCreatedPackage = 0x10000,
1781
cJavaVMDestroyedPackage,
1782
cWindowsATCreatedPackage,
1783
cWindowsATDestroyedPackage,
1784
cJavaVMPresentNotificationPackage,
1785
cWindowsATPresentNotificationPackage,
1786
1787
cReleaseJavaObjectPackage = 1,
1788
cGetAccessBridgeVersionPackage = 2,
1789
1790
cGetAccessibleContextFromHWNDPackage = 0x10,
1791
cIsJavaWindowPackage,
1792
cGetHWNDFromAccessibleContextPackage,
1793
1794
cGetAccessibleContextAtPackage = 0x100,
1795
cGetAccessibleContextWithFocusPackage,
1796
cGetAccessibleContextInfoPackage,
1797
cGetAccessibleChildFromContextPackage,
1798
cGetAccessibleParentFromContextPackage,
1799
cIsSameObjectPackage,
1800
1801
cGetAccessibleTextInfoPackage = 0x200,
1802
cGetAccessibleTextItemsPackage,
1803
cGetAccessibleTextSelectionInfoPackage,
1804
cGetAccessibleTextAttributeInfoPackage,
1805
cGetAccessibleTextRectInfoPackage,
1806
cGetAccessibleTextLineBoundsPackage,
1807
cGetAccessibleTextRangePackage,
1808
1809
cGetCurrentAccessibleValueFromContextPackage = 0x300,
1810
cGetMaximumAccessibleValueFromContextPackage,
1811
cGetMinimumAccessibleValueFromContextPackage,
1812
1813
cAddAccessibleSelectionFromContextPackage = 0x400,
1814
cClearAccessibleSelectionFromContextPackage,
1815
cGetAccessibleSelectionFromContextPackage,
1816
cGetAccessibleSelectionCountFromContextPackage,
1817
cIsAccessibleChildSelectedFromContextPackage,
1818
cRemoveAccessibleSelectionFromContextPackage,
1819
cSelectAllAccessibleSelectionFromContextPackage,
1820
1821
cAddJavaEventNotificationPackage = 0x900,
1822
cRemoveJavaEventNotificationPackage,
1823
cAddAccessibilityEventNotificationPackage,
1824
cRemoveAccessibilityEventNotificationPackage,
1825
1826
cPropertyChangePackage = 0x1000,
1827
1828
cJavaShutdownPackage = 0x1010,
1829
cFocusGainedPackage,
1830
cFocusLostPackage,
1831
1832
cCaretUpdatePackage = 0x1020,
1833
1834
cMouseClickedPackage = 0x1030,
1835
cMouseEnteredPackage,
1836
cMouseExitedPackage,
1837
cMousePressedPackage,
1838
cMouseReleasedPackage,
1839
1840
cMenuCanceledPackage = 0x1040,
1841
cMenuDeselectedPackage,
1842
cMenuSelectedPackage,
1843
cPopupMenuCanceledPackage,
1844
cPopupMenuWillBecomeInvisiblePackage,
1845
cPopupMenuWillBecomeVisiblePackage,
1846
1847
cPropertyCaretChangePackage = 0x1100,
1848
cPropertyDescriptionChangePackage,
1849
cPropertyNameChangePackage,
1850
cPropertySelectionChangePackage,
1851
cPropertyStateChangePackage,
1852
cPropertyTextChangePackage,
1853
cPropertyValueChangePackage,
1854
cPropertyVisibleDataChangePackage,
1855
cPropertyChildChangePackage,
1856
cPropertyActiveDescendentChangePackage,
1857
1858
1859
// AccessibleTable
1860
cGetAccessibleTableInfoPackage = 0x1200,
1861
cGetAccessibleTableCellInfoPackage,
1862
1863
cGetAccessibleTableRowHeaderPackage,
1864
cGetAccessibleTableColumnHeaderPackage,
1865
1866
cGetAccessibleTableRowDescriptionPackage,
1867
cGetAccessibleTableColumnDescriptionPackage,
1868
1869
cGetAccessibleTableRowSelectionCountPackage,
1870
cIsAccessibleTableRowSelectedPackage,
1871
cGetAccessibleTableRowSelectionsPackage,
1872
1873
cGetAccessibleTableColumnSelectionCountPackage,
1874
cIsAccessibleTableColumnSelectedPackage,
1875
cGetAccessibleTableColumnSelectionsPackage,
1876
1877
cGetAccessibleTableRowPackage,
1878
cGetAccessibleTableColumnPackage,
1879
cGetAccessibleTableIndexPackage,
1880
1881
cPropertyTableModelChangePackage,
1882
1883
1884
// AccessibleRelationSet
1885
cGetAccessibleRelationSetPackage = 0x1300,
1886
1887
// AccessibleHypertext
1888
cGetAccessibleHypertextPackage = 0x1400,
1889
cActivateAccessibleHyperlinkPackage,
1890
cGetAccessibleHyperlinkCountPackage,
1891
cGetAccessibleHypertextExtPackage,
1892
cGetAccessibleHypertextLinkIndexPackage,
1893
cGetAccessibleHyperlinkPackage,
1894
1895
// Accessible KeyBinding, Icon and Action
1896
cGetAccessibleKeyBindingsPackage = 0x1500,
1897
cGetAccessibleIconsPackage,
1898
cGetAccessibleActionsPackage,
1899
cDoAccessibleActionsPackage,
1900
1901
// Utility methods
1902
cSetTextContentsPackage = 0x1600,
1903
cGetParentWithRolePackage,
1904
cGetTopLevelObjectPackage,
1905
cGetParentWithRoleElseRootPackage,
1906
cGetObjectDepthPackage,
1907
cGetActiveDescendentPackage,
1908
1909
// Additional methods for Teton
1910
cGetVirtualAccessibleNamePackage = 0x1700,
1911
cRequestFocusPackage,
1912
cSelectTextRangePackage,
1913
cGetTextAttributesInRangePackage,
1914
cGetSameTextAttributesInRangePackage,
1915
cGetVisibleChildrenCountPackage,
1916
cGetVisibleChildrenPackage,
1917
cSetCaretPositionPackage,
1918
cGetCaretLocationPackage
1919
1920
1921
} PackageType;
1922
1923
1924
/**
1925
* Union of all package contents
1926
*/
1927
typedef union AllPackagesTag {
1928
1929
// Initial Rendezvous packages
1930
MemoryMappedFileCreatedPackage memoryMappedFileCreatedPackage;
1931
1932
JavaVMCreatedPackage javaVMCreatedPackage;
1933
JavaVMDestroyedPackage javaVMDestroyedPackage;
1934
WindowsATCreatedPackage windowsATCreatedPackage;
1935
WindowsATDestroyedPackage windowsATDestroyedPackage;
1936
JavaVMPresentNotificationPackage javaVMPresentNotificationPackage;
1937
WindowsATPresentNotificationPackage windowsATPresentNotificationPackage;
1938
1939
// Core packages
1940
ReleaseJavaObjectPackage releaseJavaObject;
1941
GetAccessBridgeVersionPackage getAccessBridgeVersion;
1942
1943
// Window packages
1944
GetAccessibleContextFromHWNDPackage getAccessibleContextFromHWND;
1945
GetHWNDFromAccessibleContextPackage getHWNDFromAccessibleContext;
1946
1947
// AccessibleContext packages
1948
GetAccessibleContextAtPackage getAccessibleContextAt;
1949
GetAccessibleContextWithFocusPackage getAccessibleContextWithFocus;
1950
GetAccessibleContextInfoPackage getAccessibleContextInfo;
1951
GetAccessibleChildFromContextPackage getAccessibleChildFromContext;
1952
GetAccessibleParentFromContextPackage getAccessibleParentFromContext;
1953
1954
// AccessibleText packages
1955
GetAccessibleTextInfoPackage getAccessibleTextInfo;
1956
GetAccessibleTextItemsPackage getAccessibleTextItems;
1957
GetAccessibleTextSelectionInfoPackage getAccessibleTextSelectionInfo;
1958
GetAccessibleTextAttributeInfoPackage getAccessibleTextAttributeInfo;
1959
GetAccessibleTextRectInfoPackage getAccessibleTextRectInfo;
1960
GetAccessibleTextLineBoundsPackage getAccessibleTextLineBounds;
1961
GetAccessibleTextRangePackage getAccessibleTextRange;
1962
1963
// AccessibleValue packages
1964
GetCurrentAccessibleValueFromContextPackage getCurrentAccessibleValueFromContext;
1965
GetMaximumAccessibleValueFromContextPackage getMaximumAccessibleValueFromContext;
1966
GetMinimumAccessibleValueFromContextPackage getMinimumAccessibleValueFromContext;
1967
1968
// AccessibleSelection packages
1969
AddAccessibleSelectionFromContextPackage addAccessibleSelectionFromContext;
1970
ClearAccessibleSelectionFromContextPackage clearAccessibleSelectionFromContext;
1971
GetAccessibleSelectionFromContextPackage getAccessibleSelectionFromContext;
1972
GetAccessibleSelectionCountFromContextPackage getAccessibleSelectionCountFromContext;
1973
IsAccessibleChildSelectedFromContextPackage isAccessibleChildSelectedFromContext;
1974
RemoveAccessibleSelectionFromContextPackage removeAccessibleSelectionFromContext;
1975
SelectAllAccessibleSelectionFromContextPackage selectAllAccessibleSelectionFromContext;
1976
1977
// Event Notification Registration packages
1978
AddJavaEventNotificationPackage addJavaEventNotification;
1979
RemoveJavaEventNotificationPackage removeJavaEventNotification;
1980
AddAccessibilityEventNotificationPackage addAccessibilityEventNotification;
1981
RemoveAccessibilityEventNotificationPackage removeAccessibilityEventNotification;
1982
1983
// Event contents packages
1984
// PropertyChangePackage propertyChange;
1985
PropertyCaretChangePackage propertyCaretChangePackage;
1986
PropertyDescriptionChangePackage propertyDescriptionChangePackage;
1987
PropertyNameChangePackage propertyNameChangePackage;
1988
PropertySelectionChangePackage propertySelectionChangePackage;
1989
PropertyStateChangePackage propertyStateChangePackage;
1990
PropertyTextChangePackage propertyTextChangePackage;
1991
PropertyValueChangePackage propertyValueChangePackage;
1992
PropertyVisibleDataChangePackage propertyVisibleDataChangePackage;
1993
PropertyChildChangePackage propertyChildChangePackage;
1994
PropertyActiveDescendentChangePackage propertyActiveDescendentChangePackage;
1995
1996
PropertyTableModelChangePackage propertyTableModelChangePackage;
1997
1998
JavaShutdownPackage JavaShutdown;
1999
FocusGainedPackage focusGained;
2000
FocusLostPackage focusLost;
2001
2002
CaretUpdatePackage caretUpdate;
2003
2004
MouseClickedPackage mouseClicked;
2005
MouseEnteredPackage mouseEntered;
2006
MouseExitedPackage mouseExited;
2007
MousePressedPackage mousePressed;
2008
MouseReleasedPackage mouseReleased;
2009
2010
MenuCanceledPackage menuCanceled;
2011
MenuDeselectedPackage menuDeselected;
2012
MenuSelectedPackage menuSelected;
2013
PopupMenuCanceledPackage popupMenuCanceled;
2014
PopupMenuWillBecomeInvisiblePackage popupMenuWillBecomeInvisible;
2015
PopupMenuWillBecomeVisiblePackage popupMenuWillBecomeVisible;
2016
2017
// AccessibleRelationSet
2018
GetAccessibleRelationSetPackage getAccessibleRelationSet;
2019
2020
// AccessibleHypertext
2021
GetAccessibleHypertextPackage _getAccessibleHypertext;
2022
ActivateAccessibleHyperlinkPackage _activateAccessibleHyperlink;
2023
GetAccessibleHyperlinkCountPackage _getAccessibleHyperlinkCount;
2024
GetAccessibleHypertextExtPackage _getAccessibleHypertextExt;
2025
GetAccessibleHypertextLinkIndexPackage _getAccessibleHypertextLinkIndex;
2026
GetAccessibleHyperlinkPackage _getAccessibleHyperlink;
2027
2028
// Accessible KeyBinding, Icon and Action
2029
GetAccessibleKeyBindingsPackage getAccessibleKeyBindings;
2030
GetAccessibleIconsPackage getAccessibleIcons;
2031
GetAccessibleActionsPackage getAccessibleActions;
2032
DoAccessibleActionsPackage doAccessibleActions;
2033
2034
// utility methods
2035
SetTextContentsPackage _setTextContents;
2036
GetParentWithRolePackage _getParentWithRole;
2037
GetTopLevelObjectPackage _getTopLevelObject;
2038
GetParentWithRoleElseRootPackage _getParentWithRoleElseRoot;
2039
GetObjectDepthPackage _getObjectDepth;
2040
GetActiveDescendentPackage _getActiveDescendent;
2041
2042
// Additional methods for Teton
2043
GetVirtualAccessibleNamePackage _getVirtualAccessibleName;
2044
RequestFocusPackage _requestFocus;
2045
SelectTextRangePackage _selectTextRange;
2046
GetTextAttributesInRangePackage _getTextAttributesInRange;
2047
GetVisibleChildrenCountPackage _getVisibleChildrenCount;
2048
GetVisibleChildrenPackage _getVisibleChildren;
2049
SetCaretPositionPackage _setCaretPosition;
2050
2051
} AllPackages;
2052
2053
2054
/**
2055
* Union of all Java-initiated package contents
2056
*/
2057
typedef union JavaInitiatedPackagesTag {
2058
2059
// Initial Rendezvous packages
2060
JavaVMCreatedPackage javaVMCreatedPackage;
2061
JavaVMDestroyedPackage javaVMDestroyedPackage;
2062
JavaVMPresentNotificationPackage javaVMPresentNotificationPackage;
2063
2064
// Event contents packages
2065
PropertyCaretChangePackage propertyCaretChangePackage;
2066
PropertyDescriptionChangePackage propertyDescriptionChangePackage;
2067
PropertyNameChangePackage propertyNameChangePackage;
2068
PropertySelectionChangePackage propertySelectionChangePackage;
2069
PropertyStateChangePackage propertyStateChangePackage;
2070
PropertyTextChangePackage propertyTextChangePackage;
2071
PropertyValueChangePackage propertyValueChangePackage;
2072
PropertyVisibleDataChangePackage propertyVisibleDataChangePackage;
2073
PropertyChildChangePackage propertyChildChangePackage;
2074
PropertyActiveDescendentChangePackage propertyActiveDescendentChangePackage;
2075
2076
PropertyTableModelChangePackage propertyTableModelChangePackage;
2077
2078
JavaShutdownPackage JavaShutdown;
2079
FocusGainedPackage focusGained;
2080
FocusLostPackage focusLost;
2081
2082
CaretUpdatePackage caretUpdate;
2083
2084
MouseClickedPackage mouseClicked;
2085
MouseEnteredPackage mouseEntered;
2086
MouseExitedPackage mouseExited;
2087
MousePressedPackage mousePressed;
2088
MouseReleasedPackage mouseReleased;
2089
2090
MenuCanceledPackage menuCanceled;
2091
MenuDeselectedPackage menuDeselected;
2092
MenuSelectedPackage menuSelected;
2093
PopupMenuCanceledPackage popupMenuCanceled;
2094
PopupMenuWillBecomeInvisiblePackage popupMenuWillBecomeInvisible;
2095
PopupMenuWillBecomeVisiblePackage popupMenuWillBecomeVisible;
2096
2097
} JavaInitiatedPackages;
2098
2099
2100
/**
2101
* Union of all Windows-initiated package contents
2102
*/
2103
typedef union WindowsInitiatedPackagesTag {
2104
2105
// Initial Rendezvous packages
2106
MemoryMappedFileCreatedPackage memoryMappedFileCreatedPackage;
2107
2108
WindowsATCreatedPackage windowsATCreatedPackage;
2109
WindowsATDestroyedPackage windowsATDestroyedPackage;
2110
WindowsATPresentNotificationPackage windowsATPresentNotificationPackage;
2111
2112
// Core packages
2113
ReleaseJavaObjectPackage releaseJavaObject;
2114
GetAccessBridgeVersionPackage getAccessBridgeVersion;
2115
2116
// Window packages
2117
GetAccessibleContextFromHWNDPackage getAccessibleContextFromHWND;
2118
GetHWNDFromAccessibleContextPackage getHWNDFromAccessibleContext;
2119
2120
// AccessibleContext packages
2121
GetAccessibleContextAtPackage getAccessibleContextAt;
2122
GetAccessibleContextWithFocusPackage getAccessibleContextWithFocus;
2123
GetAccessibleContextInfoPackage getAccessibleContextInfo;
2124
GetAccessibleChildFromContextPackage getAccessibleChildFromContext;
2125
GetAccessibleParentFromContextPackage getAccessibleParentFromContext;
2126
2127
// AccessibleText packages
2128
GetAccessibleTextInfoPackage getAccessibleTextInfo;
2129
GetAccessibleTextItemsPackage getAccessibleTextItems;
2130
GetAccessibleTextSelectionInfoPackage getAccessibleTextSelectionInfo;
2131
GetAccessibleTextAttributeInfoPackage getAccessibleTextAttributeInfo;
2132
GetAccessibleTextRectInfoPackage getAccessibleTextRectInfo;
2133
GetAccessibleTextLineBoundsPackage getAccessibleTextLineBounds;
2134
GetAccessibleTextRangePackage getAccessibleTextRange;
2135
2136
// AccessibleValue packages
2137
GetCurrentAccessibleValueFromContextPackage getCurrentAccessibleValueFromContext;
2138
GetMaximumAccessibleValueFromContextPackage getMaximumAccessibleValueFromContext;
2139
GetMinimumAccessibleValueFromContextPackage getMinimumAccessibleValueFromContext;
2140
2141
// AccessibleSelection packages
2142
AddAccessibleSelectionFromContextPackage addAccessibleSelectionFromContext;
2143
ClearAccessibleSelectionFromContextPackage clearAccessibleSelectionFromContext;
2144
GetAccessibleSelectionFromContextPackage getAccessibleSelectionFromContext;
2145
GetAccessibleSelectionCountFromContextPackage getAccessibleSelectionCountFromContext;
2146
IsAccessibleChildSelectedFromContextPackage isAccessibleChildSelectedFromContext;
2147
RemoveAccessibleSelectionFromContextPackage removeAccessibleSelectionFromContext;
2148
SelectAllAccessibleSelectionFromContextPackage selectAllAccessibleSelectionFromContext;
2149
2150
// Event Notification Registration packages
2151
AddJavaEventNotificationPackage addJavaEventNotification;
2152
RemoveJavaEventNotificationPackage removeJavaEventNotification;
2153
AddAccessibilityEventNotificationPackage addAccessibilityEventNotification;
2154
RemoveAccessibilityEventNotificationPackage removeAccessibilityEventNotification;
2155
2156
// AccessibleTable
2157
GetAccessibleTableInfoPackage _getAccessibleTableInfo;
2158
GetAccessibleTableCellInfoPackage _getAccessibleTableCellInfo;
2159
2160
GetAccessibleTableRowHeaderPackage _getAccessibleTableRowHeader;
2161
GetAccessibleTableColumnHeaderPackage _getAccessibleTableColumnHeader;
2162
2163
GetAccessibleTableRowDescriptionPackage _getAccessibleTableRowDescription;
2164
GetAccessibleTableColumnDescriptionPackage _getAccessibleTableColumnDescription;
2165
2166
GetAccessibleTableRowSelectionCountPackage _getAccessibleTableRowSelectionCount;
2167
IsAccessibleTableRowSelectedPackage _isAccessibleTableRowSelected;
2168
GetAccessibleTableRowSelectionsPackage _getAccessibleTableRowSelections;
2169
2170
GetAccessibleTableColumnSelectionCountPackage _getAccessibleTableColumnSelectionCount;
2171
IsAccessibleTableColumnSelectedPackage _isAccessibleTableColumnSelected;
2172
GetAccessibleTableColumnSelectionsPackage _getAccessibleTableColumnSelections;
2173
2174
GetAccessibleTableRowPackage _getAccessibleTableRow;
2175
GetAccessibleTableColumnPackage _getAccessibleTableColumn;
2176
GetAccessibleTableIndexPackage _getAccessibleTableIndex;
2177
2178
// AccessibleRelationSet
2179
GetAccessibleRelationSetPackage _getAccessibleRelationSet;
2180
2181
// Accessible KeyBindings, Icons and Actions
2182
GetAccessibleKeyBindingsPackage _getAccessibleKeyBindings;
2183
GetAccessibleIconsPackage _getAccessibleIcons;
2184
GetAccessibleActionsPackage _getAccessibleActions;
2185
DoAccessibleActionsPackage _doAccessibleActions;
2186
2187
2188
IsSameObjectPackage _isSameObject;
2189
2190
// utility methods
2191
SetTextContentsPackage _setTextContents;
2192
GetParentWithRolePackage _getParentWithRole;
2193
GetTopLevelObjectPackage _getTopLevelObject;
2194
GetParentWithRoleElseRootPackage _getParentWithRoleElseRoot;
2195
GetObjectDepthPackage _getObjectDepth;
2196
GetActiveDescendentPackage _getActiveDescendent;
2197
2198
// Additional methods for Teton
2199
GetVirtualAccessibleNamePackage _getVirtualAccessibleName;
2200
RequestFocusPackage _requestFocus;
2201
SelectTextRangePackage _selectTextRange;
2202
GetTextAttributesInRangePackage _getTextAttributesInRange;
2203
GetVisibleChildrenCountPackage _getVisibleChildrenCount;
2204
GetVisibleChildrenPackage _getVisibleChildren;
2205
SetCaretPositionPackage _setCaretPosition;
2206
2207
2208
} WindowsInitiatedPackages;
2209
2210
2211
#ifdef __cplusplus
2212
}
2213
#endif
2214
2215
#endif
2216
2217