michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
michael@0: /* vim: set ts=2 et sw=2 tw=80: */
michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public
michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this
michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
michael@0:
michael@0: #ifndef _role_h_
michael@0: #define _role_h_
michael@0:
michael@0: /**
michael@0: * @note Make sure to update the localized role names when changing the list.
michael@0: * @note When adding a new role, be sure to also add it to base/RoleMap.h and
michael@0: * update nsIAccessibleRole.
michael@0: */
michael@0:
michael@0: namespace mozilla {
michael@0: namespace a11y {
michael@0: namespace roles {
michael@0:
michael@0: enum Role {
michael@0: /**
michael@0: * Used when accessible hans't strong defined role.
michael@0: */
michael@0: NOTHING = 0,
michael@0:
michael@0: /**
michael@0: * Represents a title or caption bar for a window. It is used by MSAA only,
michael@0: * supported automatically by MS Windows.
michael@0: */
michael@0: TITLEBAR = 1,
michael@0:
michael@0: /**
michael@0: * Represents the menu bar (positioned beneath the title bar of a window)
michael@0: * from which menus are selected by the user. The role is used by
michael@0: * xul:menubar or role="menubar".
michael@0: */
michael@0: MENUBAR = 2,
michael@0:
michael@0: /**
michael@0: * Represents a vertical or horizontal scroll bar, which is part of the client
michael@0: * area or used in a control.
michael@0: */
michael@0: SCROLLBAR = 3,
michael@0:
michael@0: /**
michael@0: * Represents a special mouse pointer, which allows a user to manipulate user
michael@0: * interface elements such as windows. For example, a user clicks and drags
michael@0: * a sizing grip in the lower-right corner of a window to resize it.
michael@0: */
michael@0: GRIP = 4,
michael@0:
michael@0: /**
michael@0: * Represents a system sound, which is associated with various system events.
michael@0: */
michael@0: SOUND = 5,
michael@0:
michael@0: /**
michael@0: * Represents the system mouse pointer.
michael@0: */
michael@0: CURSOR = 6,
michael@0:
michael@0: /**
michael@0: * Represents the system caret. The role is supported for caret.
michael@0: */
michael@0: CARET = 7,
michael@0:
michael@0: /**
michael@0: * Represents an alert or a condition that a user should be notified about.
michael@0: * Assistive Technologies typically respond to the role by reading the entire
michael@0: * onscreen contents of containers advertising this role. Should be used for
michael@0: * warning dialogs, etc. The role is used by xul:browsermessage,
michael@0: * role="alert".
michael@0: */
michael@0: ALERT = 8,
michael@0:
michael@0: /**
michael@0: * Represents the window frame, which contains child objects such as
michael@0: * a title bar, client, and other objects contained in a window. The role
michael@0: * is supported automatically by MS Windows.
michael@0: */
michael@0: WINDOW = 9,
michael@0:
michael@0: /**
michael@0: * A sub-document ( or