NS_IMETHODIMP nsTreeContentView::GetRowProperties(int32_t aIndex, nsAString& aProps) { NS_PRECONDITION(aIndex >= 0 && aIndex < int32_t(mRows.Length()), "bad index"); if (aIndex < 0 || aIndex >= int32_t(mRows.Length())) return NS_ERROR_INVALID_ARG; Row* row = mRows[aIndex]; nsIContent* realRow; if (row->IsSeparator()) realRow = row->mContent; else realRow = nsTreeUtils::GetImmediateChild(row->mContent, nsGkAtoms::treerow); if (realRow) { realRow->GetAttr(kNameSpaceID_None, nsGkAtoms::properties, aProps); } return NS_OK; }
void nsTreeContentView::GetRowProperties(int32_t aRow, nsAString& aProperties, ErrorResult& aError) { aProperties.Truncate(); if (!IsValidRowIndex(aRow)) { aError.Throw(NS_ERROR_INVALID_ARG); return; } Row* row = mRows[aRow].get(); nsIContent* realRow; if (row->IsSeparator()) realRow = row->mContent; else realRow = nsTreeUtils::GetImmediateChild(row->mContent, nsGkAtoms::treerow); if (realRow && realRow->IsElement()) { realRow->AsElement()->GetAttr(kNameSpaceID_None, nsGkAtoms::properties, aProperties); } }