LCOV - code coverage report
Current view: top level - accessible/xpcom - nsAccessibleRelation.cpp (source / functions) Hit Total Coverage
Test: output.info Lines: 0 38 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 10 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
       2             : /* This Source Code Form is subject to the terms of the Mozilla Public
       3             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       4             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
       5             : 
       6             : #include "nsAccessibleRelation.h"
       7             : 
       8             : #include "Relation.h"
       9             : #include "Accessible.h"
      10             : #include "xpcAccessibleDocument.h"
      11             : 
      12             : #include "nsArrayUtils.h"
      13             : #include "nsComponentManagerUtils.h"
      14             : 
      15             : using namespace mozilla::a11y;
      16             : 
      17           0 : nsAccessibleRelation::nsAccessibleRelation(uint32_t aType,
      18           0 :                                            Relation* aRel) :
      19           0 :   mType(aType)
      20             : {
      21           0 :   mTargets = do_CreateInstance(NS_ARRAY_CONTRACTID);
      22           0 :   Accessible* targetAcc = nullptr;
      23           0 :   while ((targetAcc = aRel->Next()))
      24           0 :     mTargets->AppendElement(static_cast<nsIAccessible*>(ToXPC(targetAcc)), false);
      25           0 : }
      26             : 
      27           0 : nsAccessibleRelation::nsAccessibleRelation(uint32_t aType,
      28           0 :                                            const nsTArray<ProxyAccessible*>* aTargets) :
      29           0 :   mType(aType)
      30             : {
      31           0 :   mTargets = do_CreateInstance(NS_ARRAY_CONTRACTID);
      32           0 :   for (uint32_t idx = 0; idx < aTargets->Length(); ++idx) {
      33           0 :     mTargets->AppendElement(
      34           0 :       static_cast<nsIAccessible*>(ToXPC(aTargets->ElementAt(idx))),
      35           0 :       false);
      36             :   }
      37           0 : }
      38             : 
      39           0 : nsAccessibleRelation::~nsAccessibleRelation()
      40             : {
      41           0 : }
      42             : 
      43             : // nsISupports
      44           0 : NS_IMPL_ISUPPORTS(nsAccessibleRelation, nsIAccessibleRelation)
      45             : 
      46             : // nsIAccessibleRelation
      47             : NS_IMETHODIMP
      48           0 : nsAccessibleRelation::GetRelationType(uint32_t *aType)
      49             : {
      50           0 :   NS_ENSURE_ARG_POINTER(aType);
      51           0 :   *aType = mType;
      52           0 :   return NS_OK;
      53             : }
      54             : 
      55             : NS_IMETHODIMP
      56           0 : nsAccessibleRelation::GetTargetsCount(uint32_t *aCount)
      57             : {
      58           0 :   NS_ENSURE_ARG_POINTER(aCount);
      59           0 :   *aCount = 0;
      60           0 :   return mTargets->GetLength(aCount);
      61             : }
      62             : 
      63             : NS_IMETHODIMP
      64           0 : nsAccessibleRelation::GetTarget(uint32_t aIndex, nsIAccessible **aTarget)
      65             : {
      66           0 :   NS_ENSURE_ARG_POINTER(aTarget);
      67           0 :   nsresult rv = NS_OK;
      68           0 :   nsCOMPtr<nsIAccessible> target = do_QueryElementAt(mTargets, aIndex, &rv);
      69           0 :   target.forget(aTarget);
      70           0 :   return rv;
      71             : }
      72             : 
      73             : NS_IMETHODIMP
      74           0 : nsAccessibleRelation::GetTargets(nsIArray **aTargets)
      75             : {
      76           0 :   NS_ENSURE_ARG_POINTER(aTargets);
      77           0 :   NS_ADDREF(*aTargets = mTargets);
      78           0 :   return NS_OK;
      79             : }

Generated by: LCOV version 1.13