Index: webkit/glue/webaccessibility.h |
=================================================================== |
--- webkit/glue/webaccessibility.h (revision 0) |
+++ webkit/glue/webaccessibility.h (revision 0) |
@@ -0,0 +1,155 @@ |
+// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef WEBKIT_GLUE_WEBACCESSIBILITY_H_ |
+#define WEBKIT_GLUE_WEBACCESSIBILITY_H_ |
+ |
+#include "base/string16.h" |
+ |
+namespace webkit_glue { |
+ |
+class WebAccessibility { |
+ public: |
+ // This defines an enumeration of IDs that can uniquely identify a call to a |
+ // specific accessibility information function. Should match the support |
+ // implemented in WebKit and GlueAccessibilityObject (functions marked with |
+ // return value E_NOTIMPL in WebKit are also excluded). |
+ enum Function { |
+ FUNCTION_NONE = 0, |
+ |
+ // Supported accessibility information retrieval functions. |
+ FUNCTION_DODEFAULTACTION, |
+ FUNCTION_HITTEST, |
+ FUNCTION_LOCATION, |
+ FUNCTION_NAVIGATE, |
+ FUNCTION_GETCHILD, |
+ FUNCTION_CHILDCOUNT, |
+ FUNCTION_DEFAULTACTION, |
+ FUNCTION_DESCRIPTION, |
+ FUNCTION_GETFOCUSEDCHILD, |
+ FUNCTION_HELPTEXT, |
+ FUNCTION_KEYBOARDSHORTCUT, |
+ FUNCTION_NAME, |
+ FUNCTION_GETPARENT, |
+ FUNCTION_ROLE, |
+ FUNCTION_STATE, |
+ FUNCTION_VALUE |
+ |
+ // The deprecated put_accName and put_accValue (IAccessible) are not |
+ // supported here, nor is accSelect, get_accHelpTopic and get_accSelection |
+ // (matching WebKit's support for IAccessible). |
+ }; |
+ |
+ // This defines an enumeration of navigation directions based on (but |
+ // independent of) the MSAA Navigation Constants. However, to avoid the use of |
+ // COM in our Glue layer, we use this as a substitute with a one-to-one |
+ // conversion between Browser side (has COM) and Glue. |
+ enum Direction { |
+ DIRECTION_NONE = 0, |
+ |
+ // Valid directions. |
+ DIRECTION_UP, |
+ DIRECTION_DOWN, |
+ DIRECTION_LEFT, |
+ DIRECTION_RIGHT, |
+ DIRECTION_NEXT, |
+ DIRECTION_PREVIOUS, |
+ DIRECTION_FIRSTCHILD, |
+ DIRECTION_LASTCHILD |
+ }; |
+ |
+ // This defines an enumeration of the supported accessibility roles in our |
+ // Glue layer (used in GlueAccessibilityObject::Role). Any interface using |
+ // roles must provide a conversion to its own roles (see e.g. |
+ // BrowserAccessibility::get_accRole and BrowserAccessibility::MSAARole). |
+ enum Role { |
+ ROLE_PUSHBUTTON, |
+ ROLE_RADIOBUTTON, |
+ ROLE_CHECKBUTTON, |
+ ROLE_SLIDER, |
+ ROLE_PAGETABLIST, |
+ ROLE_TEXT, |
+ ROLE_STATICTEXT, |
+ ROLE_OUTLINE, |
+ ROLE_COLUMN, |
+ ROLE_ROW, |
+ ROLE_GROUPING, |
+ ROLE_LIST, |
+ ROLE_TABLE, |
+ ROLE_LINK, |
+ ROLE_GRAPHIC, |
+ ROLE_CLIENT |
+ }; |
+ |
+ // This defines an enumeration of the supported accessibility states in our |
+ // Glue layer (used in GlueAccessibilityObject::State). Any interface using |
+ // states must provide a conversion to its own states (see e.g. |
+ // BrowserAccessibility::get_accState and BrowserAccessibility::MSAAState). |
+ enum State { |
+ STATE_LINKED, |
+ STATE_HOTTRACKED, |
+ STATE_UNAVAILABLE, |
+ STATE_READONLY, |
+ STATE_OFFSCREEN, |
+ STATE_MULTISELECTABLE, |
+ STATE_PROTECTED, |
+ STATE_INDETERMINATE, |
+ STATE_CHECKED, |
+ STATE_PRESSED, |
+ STATE_FOCUSED, |
+ STATE_TRAVERSED, |
+ STATE_FOCUSABLE |
+ }; |
+ |
+ // Parameters structure to hold a union of the possible accessibility function |
+ // INPUT variables, with the unused fields always set to default value. Used |
+ // in ViewMsg_GetAccessibilityInfo, as only parameter. |
+ struct InParams { |
+ // Identifier to uniquely distinguish which instance of accessibility |
+ // information is being called upon on the renderer side. |
+ int object_id; |
+ |
+ // Identifier to resolve which accessibility information retrieval function |
+ // is being called. |
+ int function_id; |
+ |
+ // Id of accessible child, whose information is being requested. |
+ int child_id; |
+ |
+ // LONG input parameters, used differently depending on the function called. |
+ long input_long1; |
+ long input_long2; |
+ }; |
+ |
+ // Parameters structure to hold a union of the possible accessibility function |
+ // OUTPUT variables, with the unused fields always set to default value. Used |
+ // in ViewHostMsg_GetAccessibilityInfoResponse, as only parameter. |
+ struct OutParams { |
+ // Identifier to uniquely distinguish which instance of accessibility |
+ // information is being called upon on the renderer side. |
+ int object_id; |
+ |
+ // LONG output parameters, used differently depending on the function |
+ // called. [output_long1] can in some cases be set to -1 to indicate that |
+ // the child object found by the called IAccessible function is not a simple |
+ // object. |
+ long output_long1; |
+ long output_long2; |
+ long output_long3; |
+ long output_long4; |
+ |
+ // String output parameter. |
+ string16 output_string; |
+ |
+ // Return code, either true (MSAA S_OK) or false (MSAA S_FALSE). |
+ // Interface-specific error return codes (e.g. MSAA's E_POINTER, |
+ // E_INVALIDARG, E_FAIL, E_NOTIMPL) must be handled on the browser side by |
+ // input validation. |
+ bool return_code; |
+ }; |
+}; |
+ |
+} // namespace webkit_glue |
+ |
+#endif // WEBKIT_GLUE_WEBACCESSIBILITY_H_ |
Property changes on: webkit\glue\webaccessibility.h |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |