Line data Source code
1 : /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 : /* vim: set ts=2 et sw=2 tw=80: */
3 : /* This Source Code Form is subject to the terms of the Mozilla Public
4 : * License, v. 2.0. If a copy of the MPL was not distributed with this file,
5 : * You can obtain one at http://mozilla.org/MPL/2.0/. */
6 :
7 : #ifndef mozilla_a11y_xpcAccessibleHyperLink_h_
8 : #define mozilla_a11y_xpcAccessibleHyperLink_h_
9 :
10 : #include "nsIAccessibleHyperLink.h"
11 :
12 : class nsIAccessible;
13 :
14 : namespace mozilla {
15 : namespace a11y {
16 :
17 : class Accessible;
18 :
19 : /**
20 : * XPCOM nsIAccessibleHyperLink implementation, used by xpcAccessibleGeneric
21 : * class.
22 : */
23 : class xpcAccessibleHyperLink : public nsIAccessibleHyperLink
24 : {
25 : public:
26 : NS_IMETHOD GetAnchorCount(int32_t* aAnchorCount) final override;
27 : NS_IMETHOD GetStartIndex(int32_t* aStartIndex) final override;
28 : NS_IMETHOD GetEndIndex(int32_t* aEndIndex) final override;
29 : NS_IMETHOD GetURI(int32_t aIndex, nsIURI** aURI) final override;
30 : NS_IMETHOD GetAnchor(int32_t aIndex, nsIAccessible** aAccessible)
31 : final override;
32 : NS_IMETHOD GetValid(bool* aValid) final override;
33 :
34 : protected:
35 0 : xpcAccessibleHyperLink() { }
36 0 : virtual ~xpcAccessibleHyperLink() {}
37 :
38 : private:
39 : xpcAccessibleHyperLink(const xpcAccessibleHyperLink&) = delete;
40 : xpcAccessibleHyperLink& operator =(const xpcAccessibleHyperLink&) = delete;
41 :
42 : AccessibleOrProxy Intl();
43 : };
44 :
45 : } // namespace a11y
46 : } // namespace mozilla
47 :
48 : #endif
|