Estructuras de datos de la API de Java Access Bridge
Las estructuras de datos de la API de Java Access Bridge están incluidas en el
archivo AccessBridgePackages.h.
#define MAX_STRING_SIZE 1024
#define SHORT_STRING_SIZE 256
typedef struct AccessibleContextInfoTag {
wchar_ name[MAX_STRING_SIZE]; // the AccessibleName of the object
wchar_ description[MAX_STRING_SIZE]; // the AccessibleDescription of the object
wchar_ role[SHORT_STRING_SIZE]; // localized AccesibleRole string
wchar_ states[SHORT_STRING_SIZE]; // localized AccesibleStateSet string
// (comma separated)
jint indexInParent // index of object in parent
jint childrenCount // # of children, if any
jint x; // screen x-axis co-ordinate in pixels
jint y; // screen y-axis co-ordinate in pixels
jint width; // pixel width of object
jint height; // pixel height of object
BOOL accessibleComponent; // flags for various additional
BOOL accessibleAction; // Java Accessibility interfaces
BOOL accessibleSelection; // FALSE if this object doesn't
BOOL accessibleText; // implement the additional interface
BOOL accessibleInterfaces; // new bitfield containing additional
// interface flags
} AccessibleContextInfo;
typedef struct AccessibleTextInfoTag {
jint charCount; // # of characters in this text object
jint caretIndex; // index of caret
jint indexAtPoint; // index at the passsed in point
} AccessibleTextInfo;
typedef struct AccessibleTextItemsInfoTag {
wchar_t letter;
wchar_t word[SHORT_STRING_SIZE];
wchar_t sentence[MAX_STRING_SIZE];
} AccessibleTextItemsInfo;
typedef struct AccessibleTextSelectionInfoTag {
jint selectionStartIndex;
jint selectionEndIndex;
wchar_t selectedText[MAX_STRING_SIZE];
} AccessibleTextSelectionInfo;
typedef struct AccessibleTextRectInfoTag {
jint x; // bounding rectangle of char at index, x-axis co-ordinate
jint y; // y-axis co-ordinate
jint width; // bounding rectangle width
jint height; // bounding rectangle height
} AccessibleTextRectInfo;
typedef struct AccessibleTextAttributesInfoTag {
BOOL bold;
BOOL italic;
BOOL underline;
BOOL strikethrough;
BOOL superscript;
BOOL subscript;
wchar_t backgroundColor[SHORT_STRING_SIZE];
wchar_t foregroundColor[SHORT_STRING_SIZE];
wchar_t fontFamily[SHORT_STRING_SIZE];
jint fontSize;
jint alignment;
jint bidiLevel;
jfloat firstLineIndent;
jfloat leftIndent;
jfloat rightIndent;
jfloat lineSpacing;
jfloat spaceAbove;
jfloat spaceBelow;
wchar_t fullAttributesString[MAX_STRING_SIZE];
} AccessibleTextAttributesInfo;
typedef struct AccessibleTableInfoTag {
JOBJECT64 caption; // AccesibleContext
JOBJECT64 summary; // AccessibleContext
jint rowCount;
jint columnCount;
JOBJECT64 accessibleContext;
JOBJECT64 accessibleTable;
} AccessibleTableInfo;
typedef struct AccessibleTableCellInfoTag {
JOBJECT64 accessibleContext;
jint index;
jint row;
jint column;
jint rowExtent;
jint columnExtent;
jboolean isSelected;
} AccessibleTableCellInfo;
typedef struct AccessibleRelationSetInfoTag {
jint relationCount;
AccessibleRelationInfo relations[MAX_RELATIONS];
} AccessibleRelationSetInfo;
typedef struct AccessibleRelationInfoTag {
wchar_t key[SHORT_STRING_SIZE];
jint targetCount;
JOBJECT64 targets[MAX_RELATION_TARGETS]; // AccessibleContexts
} AccessibleRelationInfo;
typedef struct AccessibleHypertextInfoTag {
jint linkCount; // number of hyperlinks
AccessibleHyperlinkInfo links[MAX_HYPERLINKS]; // the hyperlinks
JOBJECT64 accessibleHypertext; // AccessibleHypertext object
} AccessibleHypertextInfo;
typedef struct AccessibleHyperlinkInfoTag {
wchar_t text[SHORT_STRING_SIZE]; // the hyperlink text
jint startIndex; // index in the hypertext document where the link begins
jint endIndex; // index in the hypertext document where the link ends
JOBJECT64 accessibleHyperlink; // AccessibleHyperlink object
} AccessibleHyperlinkInfo;
typedef struct AccessibleKeyBindingsTag {
int keyBindingsCount; // number of key bindings
AccessibleKeyBindingInfo keyBindingInfo[MAX_KEY_BINDINGS];
} AccessibleKeyBindings;
typedef struct AccessibleKeyBindingInfoTag {
jchar character; // the key character
jint modifiers; // the key modifiers
} AccessibleKeyBindingInfo;
typedef struct AccessibleIconsTag {
jint iconsCount; // number of icons
AccessibleIconInfo iconInfo[MAX_ICON_INFO]; // the icons
} AccessibleIcons;
typedef struct AccessibleIconInfoTag {
wchar_t description[SHORT_STRING_SIZE]; // icon description
jint height; // icon height
jint width; // icon width
} AccessibleIconInfo;
typedef struct AccessibleActionsTag {
jint actionsCount; // number of actions
AccessibleActionInfo actionInfo[MAX_ACTION_INFO]; // the action information
} AccessibleActions;
typedef struct AccessibleActionInfoTag {
wchar_t name[SHORT_STRING_SIZE]; // action name
} AccessibleActionInfo;
typedef struct AccessibleActionsToDoTag {
jint actionsCount; // number of actions to do
AccessibleActionInfo actions[MAX_ACTIONS_TO_DO]; // the accessible actions to do
} AccessibleActionsToDo;
typedef struct VisibleChildenInfoTag {
int returnedChildrenCount; // number of children returned
AccessibleContext children[MAX_VISIBLE_CHILDREN]; // the visible children
} VisibleChildenInfo;
Comentarios
Publicar un comentario