Coverage Report

Created: 2018-09-25 14:53

/src/mozilla-central/accessible/xpcom/xpcAccessibleSelectable.h
Line
Count
Source (jump to first uncovered line)
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_xpcAccessibleSelectable_h_
8
#define mozilla_a11y_xpcAccessibleSelectable_h_
9
10
#include "nsIAccessibleSelectable.h"
11
12
class nsIAccessible;
13
class nsIArray;
14
15
namespace mozilla {
16
namespace a11y {
17
18
class Accessible;
19
20
/**
21
 * XPCOM nsIAccessibleSelectable inteface implementation, used by
22
 * xpcAccessibleGeneric class.
23
 */
24
class xpcAccessibleSelectable : public nsIAccessibleSelectable
25
{
26
public:
27
  // nsIAccessibleSelectable
28
  NS_IMETHOD GetSelectedItems(nsIArray** aSelectedItems) final;
29
  NS_IMETHOD GetSelectedItemCount(uint32_t* aSelectedItemCount)
30
    final;
31
  NS_IMETHOD GetSelectedItemAt(uint32_t aIndex, nsIAccessible** aItem)
32
    final;
33
  NS_IMETHOD IsItemSelected(uint32_t aIndex, bool* aIsSelected)
34
    final;
35
  NS_IMETHOD AddItemToSelection(uint32_t aIndex) final;
36
  NS_IMETHOD RemoveItemFromSelection(uint32_t aIndex) final;
37
  NS_IMETHOD SelectAll(bool* aIsMultiSelect) final;
38
  NS_IMETHOD UnselectAll() final;
39
40
protected:
41
0
  xpcAccessibleSelectable() { }
42
0
  virtual ~xpcAccessibleSelectable() {}
43
44
private:
45
  xpcAccessibleSelectable(const xpcAccessibleSelectable&) = delete;
46
  xpcAccessibleSelectable& operator =(const xpcAccessibleSelectable&) = delete;
47
48
  Accessible* Intl();
49
};
50
51
} // namespace a11y
52
} // namespace mozilla
53
54
#endif