a7af285d1a
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
450 lines
15 KiB
TeX
450 lines
15 KiB
TeX
%
|
|
% automatically generated by HelpGen $Revision$ from
|
|
% access.h at 11/Apr/03 12:31:15
|
|
%
|
|
|
|
\section{\class{wxAccessible}}\label{wxaccessible}
|
|
|
|
The wxAccessible class allows wxWidgets applications, and
|
|
wxWidgets itself, to return extended information about user interface elements
|
|
to client applications such as screen readers. This is the
|
|
main way in which wxWidgets implements accessibility features.
|
|
|
|
At present, only Microsoft Active Accessibility is supported
|
|
by this class.
|
|
|
|
To use this class, derive from wxAccessible, implement appropriate
|
|
functions, and associate an object of the class with a
|
|
window using \helpref{wxWindow::SetAccessible}{wxwindowsetaccessible}.
|
|
|
|
All functions return an indication of success, failure, or not implemented
|
|
using values of the wxAccStatus enum type.
|
|
|
|
If you return wxACC\_NOT\_IMPLEMENTED from any function, the system will try to
|
|
implement the appropriate functionality. However this will not work with
|
|
all functions.
|
|
|
|
Most functions work with an {\it object id}, which can be zero to refer to
|
|
'this' UI element, or greater than zero to refer to the nth child element.
|
|
This allows you to specify elements that don't have a corresponding wxWindow or
|
|
wxAccessible; for example, the sash of a splitter window.
|
|
|
|
For details on the semantics of functions and types, please refer to the
|
|
Microsoft Active Accessibility 1.2 documentation.
|
|
|
|
This class is compiled into wxWidgets only if the wxUSE\_ACCESSIBILITY setup
|
|
symbol is set to 1.
|
|
|
|
\wxheading{Derived from}
|
|
|
|
\helpref{wxObject}{wxobject}
|
|
|
|
\wxheading{Include files}
|
|
|
|
<wx/access.h>
|
|
|
|
\wxheading{Library}
|
|
|
|
\helpref{wxCore}{librarieslist}
|
|
|
|
\wxheading{Data structures}
|
|
|
|
Functions return a wxAccStatus error code, which
|
|
may be one of the following:
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
typedef enum
|
|
{
|
|
wxACC_FAIL, // The function failed
|
|
wxACC_FALSE, // The function returned false
|
|
wxACC_OK, // The function completed successfully
|
|
wxACC_NOT_IMPLEMENTED, // The function is not implemented
|
|
wxACC_NOT_SUPPORTED // The function is not supported
|
|
} wxAccStatus
|
|
\end{verbatim}
|
|
}
|
|
|
|
Directions of navigation are represented by
|
|
the following:
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
typedef enum
|
|
{
|
|
wxNAVDIR_DOWN,
|
|
wxNAVDIR_FIRSTCHILD,
|
|
wxNAVDIR_LASTCHILD,
|
|
wxNAVDIR_LEFT,
|
|
wxNAVDIR_NEXT,
|
|
wxNAVDIR_PREVIOUS,
|
|
wxNAVDIR_RIGHT,
|
|
wxNAVDIR_UP
|
|
} wxNavDir
|
|
\end{verbatim}
|
|
}
|
|
|
|
The role of a user interface element is represented
|
|
by the following type:
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
typedef enum {
|
|
wxROLE_NONE,
|
|
wxROLE_SYSTEM_ALERT,
|
|
wxROLE_SYSTEM_ANIMATION,
|
|
wxROLE_SYSTEM_APPLICATION,
|
|
wxROLE_SYSTEM_BORDER,
|
|
wxROLE_SYSTEM_BUTTONDROPDOWN,
|
|
wxROLE_SYSTEM_BUTTONDROPDOWNGRID,
|
|
wxROLE_SYSTEM_BUTTONMENU,
|
|
wxROLE_SYSTEM_CARET,
|
|
wxROLE_SYSTEM_CELL,
|
|
wxROLE_SYSTEM_CHARACTER,
|
|
wxROLE_SYSTEM_CHART,
|
|
wxROLE_SYSTEM_CHECKBUTTON,
|
|
wxROLE_SYSTEM_CLIENT,
|
|
wxROLE_SYSTEM_CLOCK,
|
|
wxROLE_SYSTEM_COLUMN,
|
|
wxROLE_SYSTEM_COLUMNHEADER,
|
|
wxROLE_SYSTEM_COMBOBOX,
|
|
wxROLE_SYSTEM_CURSOR,
|
|
wxROLE_SYSTEM_DIAGRAM,
|
|
wxROLE_SYSTEM_DIAL,
|
|
wxROLE_SYSTEM_DIALOG,
|
|
wxROLE_SYSTEM_DOCUMENT,
|
|
wxROLE_SYSTEM_DROPLIST,
|
|
wxROLE_SYSTEM_EQUATION,
|
|
wxROLE_SYSTEM_GRAPHIC,
|
|
wxROLE_SYSTEM_GRIP,
|
|
wxROLE_SYSTEM_GROUPING,
|
|
wxROLE_SYSTEM_HELPBALLOON,
|
|
wxROLE_SYSTEM_HOTKEYFIELD,
|
|
wxROLE_SYSTEM_INDICATOR,
|
|
wxROLE_SYSTEM_LINK,
|
|
wxROLE_SYSTEM_LIST,
|
|
wxROLE_SYSTEM_LISTITEM,
|
|
wxROLE_SYSTEM_MENUBAR,
|
|
wxROLE_SYSTEM_MENUITEM,
|
|
wxROLE_SYSTEM_MENUPOPUP,
|
|
wxROLE_SYSTEM_OUTLINE,
|
|
wxROLE_SYSTEM_OUTLINEITEM,
|
|
wxROLE_SYSTEM_PAGETAB,
|
|
wxROLE_SYSTEM_PAGETABLIST,
|
|
wxROLE_SYSTEM_PANE,
|
|
wxROLE_SYSTEM_PROGRESSBAR,
|
|
wxROLE_SYSTEM_PROPERTYPAGE,
|
|
wxROLE_SYSTEM_PUSHBUTTON,
|
|
wxROLE_SYSTEM_RADIOBUTTON,
|
|
wxROLE_SYSTEM_ROW,
|
|
wxROLE_SYSTEM_ROWHEADER,
|
|
wxROLE_SYSTEM_SCROLLBAR,
|
|
wxROLE_SYSTEM_SEPARATOR,
|
|
wxROLE_SYSTEM_SLIDER,
|
|
wxROLE_SYSTEM_SOUND,
|
|
wxROLE_SYSTEM_SPINBUTTON,
|
|
wxROLE_SYSTEM_STATICTEXT,
|
|
wxROLE_SYSTEM_STATUSBAR,
|
|
wxROLE_SYSTEM_TABLE,
|
|
wxROLE_SYSTEM_TEXT,
|
|
wxROLE_SYSTEM_TITLEBAR,
|
|
wxROLE_SYSTEM_TOOLBAR,
|
|
wxROLE_SYSTEM_TOOLTIP,
|
|
wxROLE_SYSTEM_WHITESPACE,
|
|
wxROLE_SYSTEM_WINDOW
|
|
} wxAccRole
|
|
\end{verbatim}
|
|
}
|
|
|
|
Objects are represented by the following type:
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
typedef enum {
|
|
wxOBJID_WINDOW = 0x00000000,
|
|
wxOBJID_SYSMENU = 0xFFFFFFFF,
|
|
wxOBJID_TITLEBAR = 0xFFFFFFFE,
|
|
wxOBJID_MENU = 0xFFFFFFFD,
|
|
wxOBJID_CLIENT = 0xFFFFFFFC,
|
|
wxOBJID_VSCROLL = 0xFFFFFFFB,
|
|
wxOBJID_HSCROLL = 0xFFFFFFFA,
|
|
wxOBJID_SIZEGRIP = 0xFFFFFFF9,
|
|
wxOBJID_CARET = 0xFFFFFFF8,
|
|
wxOBJID_CURSOR = 0xFFFFFFF7,
|
|
wxOBJID_ALERT = 0xFFFFFFF6,
|
|
wxOBJID_SOUND = 0xFFFFFFF5
|
|
} wxAccObject
|
|
\end{verbatim}
|
|
}
|
|
|
|
Selection actions are identified by
|
|
this type:
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
typedef enum
|
|
{
|
|
wxACC_SEL_NONE = 0,
|
|
wxACC_SEL_TAKEFOCUS = 1,
|
|
wxACC_SEL_TAKESELECTION = 2,
|
|
wxACC_SEL_EXTENDSELECTION = 4,
|
|
wxACC_SEL_ADDSELECTION = 8,
|
|
wxACC_SEL_REMOVESELECTION = 16
|
|
} wxAccSelectionFlags
|
|
\end{verbatim}
|
|
}
|
|
|
|
States are represented by the following:
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
#define wxACC_STATE_SYSTEM_ALERT_HIGH 0x00000001
|
|
#define wxACC_STATE_SYSTEM_ALERT_MEDIUM 0x00000002
|
|
#define wxACC_STATE_SYSTEM_ALERT_LOW 0x00000004
|
|
#define wxACC_STATE_SYSTEM_ANIMATED 0x00000008
|
|
#define wxACC_STATE_SYSTEM_BUSY 0x00000010
|
|
#define wxACC_STATE_SYSTEM_CHECKED 0x00000020
|
|
#define wxACC_STATE_SYSTEM_COLLAPSED 0x00000040
|
|
#define wxACC_STATE_SYSTEM_DEFAULT 0x00000080
|
|
#define wxACC_STATE_SYSTEM_EXPANDED 0x00000100
|
|
#define wxACC_STATE_SYSTEM_EXTSELECTABLE 0x00000200
|
|
#define wxACC_STATE_SYSTEM_FLOATING 0x00000400
|
|
#define wxACC_STATE_SYSTEM_FOCUSABLE 0x00000800
|
|
#define wxACC_STATE_SYSTEM_FOCUSED 0x00001000
|
|
#define wxACC_STATE_SYSTEM_HOTTRACKED 0x00002000
|
|
#define wxACC_STATE_SYSTEM_INVISIBLE 0x00004000
|
|
#define wxACC_STATE_SYSTEM_MARQUEED 0x00008000
|
|
#define wxACC_STATE_SYSTEM_MIXED 0x00010000
|
|
#define wxACC_STATE_SYSTEM_MULTISELECTABLE 0x00020000
|
|
#define wxACC_STATE_SYSTEM_OFFSCREEN 0x00040000
|
|
#define wxACC_STATE_SYSTEM_PRESSED 0x00080000
|
|
#define wxACC_STATE_SYSTEM_PROTECTED 0x00100000
|
|
#define wxACC_STATE_SYSTEM_READONLY 0x00200000
|
|
#define wxACC_STATE_SYSTEM_SELECTABLE 0x00400000
|
|
#define wxACC_STATE_SYSTEM_SELECTED 0x00800000
|
|
#define wxACC_STATE_SYSTEM_SELFVOICING 0x01000000
|
|
#define wxACC_STATE_SYSTEM_UNAVAILABLE 0x02000000
|
|
\end{verbatim}
|
|
}
|
|
|
|
Event identifiers that can be sent via \helpref{wxAccessible::NotifyEvent}{wxaccessiblenotifyevent} are
|
|
as follows:
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
#define wxACC_EVENT_SYSTEM_SOUND 0x0001
|
|
#define wxACC_EVENT_SYSTEM_ALERT 0x0002
|
|
#define wxACC_EVENT_SYSTEM_FOREGROUND 0x0003
|
|
#define wxACC_EVENT_SYSTEM_MENUSTART 0x0004
|
|
#define wxACC_EVENT_SYSTEM_MENUEND 0x0005
|
|
#define wxACC_EVENT_SYSTEM_MENUPOPUPSTART 0x0006
|
|
#define wxACC_EVENT_SYSTEM_MENUPOPUPEND 0x0007
|
|
#define wxACC_EVENT_SYSTEM_CAPTURESTART 0x0008
|
|
#define wxACC_EVENT_SYSTEM_CAPTUREEND 0x0009
|
|
#define wxACC_EVENT_SYSTEM_MOVESIZESTART 0x000A
|
|
#define wxACC_EVENT_SYSTEM_MOVESIZEEND 0x000B
|
|
#define wxACC_EVENT_SYSTEM_CONTEXTHELPSTART 0x000C
|
|
#define wxACC_EVENT_SYSTEM_CONTEXTHELPEND 0x000D
|
|
#define wxACC_EVENT_SYSTEM_DRAGDROPSTART 0x000E
|
|
#define wxACC_EVENT_SYSTEM_DRAGDROPEND 0x000F
|
|
#define wxACC_EVENT_SYSTEM_DIALOGSTART 0x0010
|
|
#define wxACC_EVENT_SYSTEM_DIALOGEND 0x0011
|
|
#define wxACC_EVENT_SYSTEM_SCROLLINGSTART 0x0012
|
|
#define wxACC_EVENT_SYSTEM_SCROLLINGEND 0x0013
|
|
#define wxACC_EVENT_SYSTEM_SWITCHSTART 0x0014
|
|
#define wxACC_EVENT_SYSTEM_SWITCHEND 0x0015
|
|
#define wxACC_EVENT_SYSTEM_MINIMIZESTART 0x0016
|
|
#define wxACC_EVENT_SYSTEM_MINIMIZEEND 0x0017
|
|
#define wxACC_EVENT_OBJECT_CREATE 0x8000
|
|
#define wxACC_EVENT_OBJECT_DESTROY 0x8001
|
|
#define wxACC_EVENT_OBJECT_SHOW 0x8002
|
|
#define wxACC_EVENT_OBJECT_HIDE 0x8003
|
|
#define wxACC_EVENT_OBJECT_REORDER 0x8004
|
|
#define wxACC_EVENT_OBJECT_FOCUS 0x8005
|
|
#define wxACC_EVENT_OBJECT_SELECTION 0x8006
|
|
#define wxACC_EVENT_OBJECT_SELECTIONADD 0x8007
|
|
#define wxACC_EVENT_OBJECT_SELECTIONREMOVE 0x8008
|
|
#define wxACC_EVENT_OBJECT_SELECTIONWITHIN 0x8009
|
|
#define wxACC_EVENT_OBJECT_STATECHANGE 0x800A
|
|
#define wxACC_EVENT_OBJECT_LOCATIONCHANGE 0x800B
|
|
#define wxACC_EVENT_OBJECT_NAMECHANGE 0x800C
|
|
#define wxACC_EVENT_OBJECT_DESCRIPTIONCHANGE 0x800D
|
|
#define wxACC_EVENT_OBJECT_VALUECHANGE 0x800E
|
|
#define wxACC_EVENT_OBJECT_PARENTCHANGE 0x800F
|
|
#define wxACC_EVENT_OBJECT_HELPCHANGE 0x8010
|
|
#define wxACC_EVENT_OBJECT_DEFACTIONCHANGE 0x8011
|
|
#define wxACC_EVENT_OBJECT_ACCELERATORCHANGE 0x8012
|
|
\end{verbatim}
|
|
}
|
|
|
|
\latexignore{\rtfignore{\wxheading{Members}}}
|
|
|
|
\membersection{wxAccessible::wxAccessible}\label{wxaccessiblewxaccessible}
|
|
|
|
\func{}{wxAccessible}{\param{wxWindow* }{win = NULL}}
|
|
|
|
Constructor, taking an optional window. The object can be associated with
|
|
a window later.
|
|
|
|
\membersection{wxAccessible::\destruct{wxAccessible}}\label{wxaccessibledtor}
|
|
|
|
\func{}{\destruct{wxAccessible}}{\void}
|
|
|
|
Destructor.
|
|
|
|
\membersection{wxAccessible::DoDefaultAction}\label{wxaccessibledodefaultaction}
|
|
|
|
\func{virtual wxAccStatus}{DoDefaultAction}{\param{int }{childId}}
|
|
|
|
Performs the default action for the object. {\it childId} is 0 (the action for this object)
|
|
or greater than 0 (the action for a child). Return wxACC\_NOT\_SUPPORTED if there
|
|
is no default action for this window (e.g. an edit control).
|
|
|
|
\membersection{wxAccessible::GetChild}\label{wxaccessiblegetchild}
|
|
|
|
\func{virtual wxAccStatus}{GetChild}{\param{int }{childId}, \param{wxAccessible** }{child}}
|
|
|
|
Gets the specified child (starting from 1). If {\it child} is NULL and the return value is wxACC\_OK,
|
|
this means that the child is a simple element and not an accessible object.
|
|
|
|
\membersection{wxAccessible::GetChildCount}\label{wxaccessiblegetchildcount}
|
|
|
|
\func{virtual wxAccStatus}{GetChildCount}{\param{int* }{childCount}}
|
|
|
|
Returns the number of children in {\it childCount}.
|
|
|
|
\membersection{wxAccessible::GetDefaultAction}\label{wxaccessiblegetdefaultaction}
|
|
|
|
\func{virtual wxAccStatus}{GetDefaultAction}{\param{int }{childId}, \param{wxString* }{actionName}}
|
|
|
|
Gets the default action for this object (0) or a child (greater than 0).
|
|
Return wxACC\_OK even if there is no action. {\it actionName} is the action, or the empty
|
|
string if there is no action. The retrieved string describes the action that is performed on an object,
|
|
not what the object does as a result. For example, a toolbar button that prints
|
|
a document has a default action of "Press" rather than "Prints the current document."
|
|
|
|
\membersection{wxAccessible::GetDescription}\label{wxaccessiblegetdescription}
|
|
|
|
\func{virtual wxAccStatus}{GetDescription}{\param{int }{childId}, \param{wxString* }{description}}
|
|
|
|
Returns the description for this object or a child.
|
|
|
|
\membersection{wxAccessible::GetFocus}\label{wxaccessiblegetfocus}
|
|
|
|
\func{virtual wxAccStatus}{GetFocus}{\param{int* }{childId}, \param{wxAccessible** }{child}}
|
|
|
|
Gets the window with the keyboard focus. If childId is 0 and child is NULL, no object in
|
|
this subhierarchy has the focus. If this object has the focus, child should be 'this'.
|
|
|
|
\membersection{wxAccessible::GetHelpText}\label{wxaccessiblegethelptext}
|
|
|
|
\func{virtual wxAccStatus}{GetHelpText}{\param{int }{childId}, \param{wxString* }{helpText}}
|
|
|
|
Returns help text for this object or a child, similar to tooltip text.
|
|
|
|
\membersection{wxAccessible::GetKeyboardShortcut}\label{wxaccessiblegetkeyboardshortcut}
|
|
|
|
\func{virtual wxAccStatus}{GetKeyboardShortcut}{\param{int }{childId}, \param{wxString* }{shortcut}}
|
|
|
|
Returns the keyboard shortcut for this object or child.
|
|
Return e.g. ALT+K.
|
|
|
|
\membersection{wxAccessible::GetLocation}\label{wxaccessiblegetlocation}
|
|
|
|
\func{virtual wxAccStatus}{GetLocation}{\param{wxRect\& }{rect}, \param{int }{elementId}}
|
|
|
|
Returns the rectangle for this object (id is 0) or a child element (id is greater than 0).
|
|
{\it rect} is in screen coordinates.
|
|
|
|
\membersection{wxAccessible::GetName}\label{wxaccessiblegetname}
|
|
|
|
\func{virtual wxAccStatus}{GetName}{\param{int }{childId}, \param{wxString* }{name}}
|
|
|
|
Gets the name of the specified object.
|
|
|
|
\membersection{wxAccessible::GetParent}\label{wxaccessiblegetparent}
|
|
|
|
\func{virtual wxAccStatus}{GetParent}{\param{wxAccessible** }{parent}}
|
|
|
|
Returns the parent of this object, or NULL.
|
|
|
|
\membersection{wxAccessible::GetRole}\label{wxaccessiblegetrole}
|
|
|
|
\func{virtual wxAccStatus}{GetRole}{\param{int }{childId}, \param{wxAccRole* }{role}}
|
|
|
|
Returns a role constant describing this object. See \helpref{wxAccessible}{wxaccessible} for a list
|
|
of these roles.
|
|
|
|
\membersection{wxAccessible::GetSelections}\label{wxaccessiblegetselections}
|
|
|
|
\func{virtual wxAccStatus}{GetSelections}{\param{wxVariant* }{selections}}
|
|
|
|
Gets a variant representing the selected children
|
|
of this object.
|
|
|
|
Acceptable values are:
|
|
|
|
\begin{itemize}
|
|
\item a null variant (IsNull() returns TRUE)
|
|
\item a list variant (GetType() == wxT("list"))
|
|
\item an integer representing the selected child element,
|
|
or 0 if this object is selected (GetType() == wxT("long"))
|
|
\item a "void*" pointer to a wxAccessible child object
|
|
\end{itemize}
|
|
|
|
\membersection{wxAccessible::GetState}\label{wxaccessiblegetstate}
|
|
|
|
\func{virtual wxAccStatus}{GetState}{\param{int }{childId}, \param{long* }{state}}
|
|
|
|
Returns a state constant. See \helpref{wxAccessible}{wxaccessible} for a list
|
|
of these states.
|
|
|
|
\membersection{wxAccessible::GetValue}\label{wxaccessiblegetvalue}
|
|
|
|
\func{virtual wxAccStatus}{GetValue}{\param{int }{childId}, \param{wxString* }{strValue}}
|
|
|
|
Returns a localized string representing the value for the object
|
|
or child.
|
|
|
|
\membersection{wxAccessible::GetWindow}\label{wxaccessiblegetwindow}
|
|
|
|
\func{wxWindow*}{GetWindow}{\void}
|
|
|
|
Returns the window associated with this object.
|
|
|
|
\membersection{wxAccessible::HitTest}\label{wxaccessiblehittest}
|
|
|
|
\func{virtual wxAccStatus}{HitTest}{\param{const wxPoint\& }{pt}, \param{int* }{childId}, \param{wxAccessible** }{childObject}}
|
|
|
|
Returns a status value and object id to indicate whether the given point was on this or
|
|
a child object. Can return either a child object, or an integer
|
|
representing the child element, starting from 1.
|
|
|
|
{\it pt} is in screen coordinates.
|
|
|
|
\membersection{wxAccessible::Navigate}\label{wxaccessiblenavigate}
|
|
|
|
\func{virtual wxAccStatus}{Navigate}{\param{wxNavDir }{navDir}, \param{int }{fromId}, \param{int* }{toId}, \param{wxAccessible** }{toObject}}
|
|
|
|
Navigates from {\it fromId} to {\it toId}/{\it toObject}.
|
|
|
|
\membersection{wxAccessible::NotifyEvent}\label{wxaccessiblenotifyevent}
|
|
|
|
\func{virtual static void}{NotifyEvent}{\param{int}{ eventType}, \param{wxWindow* }{window}, \param{wxAccObject }{objectType}, \param{int }{objectType}}
|
|
|
|
Allows the application to send an event when something changes in an accessible object.
|
|
|
|
\membersection{wxAccessible::Select}\label{wxaccessibleselect}
|
|
|
|
\func{virtual wxAccStatus}{Select}{\param{int }{childId}, \param{wxAccSelectionFlags }{selectFlags}}
|
|
|
|
Selects the object or child. See \helpref{wxAccessible}{wxaccessible} for a list
|
|
of the selection actions.
|
|
|
|
\membersection{wxAccessible::SetWindow}\label{wxaccessiblesetwindow}
|
|
|
|
\func{void}{SetWindow}{\param{wxWindow* }{window}}
|
|
|
|
Sets the window associated with this object.
|
|
|