mirror of
https://github.com/classilla/tenfourfox.git
synced 2025-02-07 09:31:28 +00:00
68 lines
1.5 KiB
C
68 lines
1.5 KiB
C
|
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||
|
/* vim: set ts=2 et sw=2 tw=80: */
|
||
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||
|
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||
|
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||
|
|
||
|
#ifndef _mozilla_a11y_aria_ARIAStateMap_h_
|
||
|
#define _mozilla_a11y_aria_ARIAStateMap_h_
|
||
|
|
||
|
#include <stdint.h>
|
||
|
|
||
|
namespace mozilla {
|
||
|
|
||
|
namespace dom {
|
||
|
class Element;
|
||
|
}
|
||
|
|
||
|
namespace a11y {
|
||
|
namespace aria {
|
||
|
|
||
|
/**
|
||
|
* List of the ARIA state mapping rules.
|
||
|
*/
|
||
|
enum EStateRule
|
||
|
{
|
||
|
eARIANone,
|
||
|
eARIAAutoComplete,
|
||
|
eARIABusy,
|
||
|
eARIACheckableBool,
|
||
|
eARIACheckableMixed,
|
||
|
eARIACheckedMixed,
|
||
|
eARIADisabled,
|
||
|
eARIAExpanded,
|
||
|
eARIAHasPopup,
|
||
|
eARIAInvalid,
|
||
|
eARIAModal,
|
||
|
eARIAMultiline,
|
||
|
eARIAMultiSelectable,
|
||
|
eARIAOrientation,
|
||
|
eARIAPressed,
|
||
|
eARIAReadonly,
|
||
|
eARIAReadonlyOrEditable,
|
||
|
eARIAReadonlyOrEditableIfDefined,
|
||
|
eARIARequired,
|
||
|
eARIASelectable,
|
||
|
eARIASelectableIfDefined,
|
||
|
eReadonlyUntilEditable,
|
||
|
eIndeterminateIfNoValue,
|
||
|
eFocusableUntilDisabled
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* Expose the accessible states for the given element accordingly to state
|
||
|
* mapping rule.
|
||
|
*
|
||
|
* @param aRule [in] state mapping rule ID
|
||
|
* @param aElement [in] node of the accessible
|
||
|
* @param aState [in/out] accessible states
|
||
|
* @return true if state map rule ID is valid
|
||
|
*/
|
||
|
bool MapToState(EStateRule aRule, dom::Element* aElement, uint64_t* aState);
|
||
|
|
||
|
} // namespace aria
|
||
|
} // namespace a11y
|
||
|
} // namespace mozilla
|
||
|
|
||
|
#endif
|