| Index: ui/accessibility/platform/ax_platform_node.cc
|
| diff --git a/ui/accessibility/platform/ax_platform_node.cc b/ui/accessibility/platform/ax_platform_node.cc
|
| index ad4aa4c09e65bad997d79375aac330975cdf46a5..d3527916aab453459807feaf1b0887849034ef15 100644
|
| --- a/ui/accessibility/platform/ax_platform_node.cc
|
| +++ b/ui/accessibility/platform/ax_platform_node.cc
|
| @@ -3,16 +3,16 @@
|
| // found in the LICENSE file.
|
|
|
| #include "ui/accessibility/platform/ax_platform_node.h"
|
| +
|
| +#include "ui/accessibility/ax_node_data.h"
|
| #include "ui/accessibility/platform/ax_platform_node_delegate.h"
|
|
|
| namespace ui {
|
|
|
| -#if !defined(OS_WIN)
|
| +#if !defined(OS_MACOSX)
|
| // static
|
| AXPlatformNode* AXPlatformNode::Create(AXPlatformNodeDelegate* delegate) {
|
| - AXPlatformNode* node = new AXPlatformNode();
|
| - node->Init(delegate);
|
| - return node;
|
| + return new AXPlatformNode;
|
| }
|
| #endif
|
|
|
| @@ -22,309 +22,12 @@ AXPlatformNode::AXPlatformNode() {
|
| AXPlatformNode::~AXPlatformNode() {
|
| }
|
|
|
| -void AXPlatformNode::Init(AXPlatformNodeDelegate* delegate) {
|
| - delegate_ = delegate;
|
| -}
|
| -
|
| -void AXPlatformNode::Detach() {
|
| +void AXPlatformNode::Destroy() {
|
| delegate_ = NULL;
|
| }
|
|
|
| gfx::NativeViewAccessible AXPlatformNode::GetNativeViewAccessible() {
|
| - return NULL;
|
| -}
|
| -
|
| -AXPlatformNode* AXPlatformNode::NextSibling() {
|
| - if (!delegate_)
|
| - return NULL;
|
| -
|
| - AXPlatformNode* parent = delegate_->GetParent();
|
| - if (!parent)
|
| - return NULL;
|
| -
|
| - int next_index = delegate_->GetIndexInParent() + 1;
|
| - if (next_index >= 0 && next_index < parent->GetChildCount())
|
| - return parent->ChildAtIndex(next_index);
|
| -
|
| - return NULL;
|
| -}
|
| -
|
| -AXPlatformNode* AXPlatformNode::PreviousSibling() {
|
| - if (!delegate_)
|
| - return NULL;
|
| -
|
| - AXPlatformNode* parent = delegate_->GetParent();
|
| - if (!parent)
|
| - return NULL;
|
| -
|
| - int previous_index = delegate_->GetIndexInParent() - 1;
|
| - if (previous_index >= 0 && previous_index < parent->GetChildCount())
|
| - return parent->ChildAtIndex(previous_index);
|
| -
|
| - return NULL;
|
| -}
|
| -
|
| -bool AXPlatformNode::HasBoolAttribute(
|
| - ui::AXBoolAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.bool_attributes.size(); ++i) {
|
| - if (data.bool_attributes[i].first == attribute)
|
| - return true;
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -
|
| -bool AXPlatformNode::GetBoolAttribute(
|
| - ui::AXBoolAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.bool_attributes.size(); ++i) {
|
| - if (data.bool_attributes[i].first == attribute)
|
| - return data.bool_attributes[i].second;
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -bool AXPlatformNode::GetBoolAttribute(
|
| - ui::AXBoolAttribute attribute, bool* value) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.bool_attributes.size(); ++i) {
|
| - if (data.bool_attributes[i].first == attribute) {
|
| - *value = data.bool_attributes[i].second;
|
| - return true;
|
| - }
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -bool AXPlatformNode::HasFloatAttribute(
|
| - ui::AXFloatAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.float_attributes.size(); ++i) {
|
| - if (data.float_attributes[i].first == attribute)
|
| - return true;
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -float AXPlatformNode::GetFloatAttribute(
|
| - ui::AXFloatAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.float_attributes.size(); ++i) {
|
| - if (data.float_attributes[i].first == attribute)
|
| - return data.float_attributes[i].second;
|
| - }
|
| -
|
| - return 0.0;
|
| -}
|
| -
|
| -bool AXPlatformNode::GetFloatAttribute(
|
| - ui::AXFloatAttribute attribute, float* value) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.float_attributes.size(); ++i) {
|
| - if (data.float_attributes[i].first == attribute) {
|
| - *value = data.float_attributes[i].second;
|
| - return true;
|
| - }
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -bool AXPlatformNode::HasIntAttribute(
|
| - ui::AXIntAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.int_attributes.size(); ++i) {
|
| - if (data.int_attributes[i].first == attribute)
|
| - return true;
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -int AXPlatformNode::GetIntAttribute(ui::AXIntAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.int_attributes.size(); ++i) {
|
| - if (data.int_attributes[i].first == attribute)
|
| - return data.int_attributes[i].second;
|
| - }
|
| -
|
| - return 0;
|
| -}
|
| -
|
| -bool AXPlatformNode::GetIntAttribute(
|
| - ui::AXIntAttribute attribute, int* value) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.int_attributes.size(); ++i) {
|
| - if (data.int_attributes[i].first == attribute) {
|
| - *value = data.int_attributes[i].second;
|
| - return true;
|
| - }
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -bool AXPlatformNode::HasStringAttribute(
|
| - ui::AXStringAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.string_attributes.size(); ++i) {
|
| - if (data.string_attributes[i].first == attribute)
|
| - return true;
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -const std::string& AXPlatformNode::GetStringAttribute(
|
| - ui::AXStringAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - CR_DEFINE_STATIC_LOCAL(std::string, empty_string, ());
|
| - for (size_t i = 0; i < data.string_attributes.size(); ++i) {
|
| - if (data.string_attributes[i].first == attribute)
|
| - return data.string_attributes[i].second;
|
| - }
|
| -
|
| - return empty_string;
|
| -}
|
| -
|
| -bool AXPlatformNode::GetStringAttribute(
|
| - ui::AXStringAttribute attribute, std::string* value) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.string_attributes.size(); ++i) {
|
| - if (data.string_attributes[i].first == attribute) {
|
| - *value = data.string_attributes[i].second;
|
| - return true;
|
| - }
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -base::string16 AXPlatformNode::GetString16Attribute(
|
| - ui::AXStringAttribute attribute) const {
|
| - std::string value_utf8;
|
| - if (!GetStringAttribute(attribute, &value_utf8))
|
| - return base::string16();
|
| - return base::UTF8ToUTF16(value_utf8);
|
| -}
|
| -
|
| -bool AXPlatformNode::GetString16Attribute(
|
| - ui::AXStringAttribute attribute,
|
| - base::string16* value) const {
|
| - std::string value_utf8;
|
| - if (!GetStringAttribute(attribute, &value_utf8))
|
| - return false;
|
| - *value = base::UTF8ToUTF16(value_utf8);
|
| - return true;
|
| -}
|
| -
|
| -bool AXPlatformNode::HasIntListAttribute(
|
| - ui::AXIntListAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.intlist_attributes.size(); ++i) {
|
| - if (data.intlist_attributes[i].first == attribute)
|
| - return true;
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -const std::vector<int32>& AXPlatformNode::GetIntListAttribute(
|
| - ui::AXIntListAttribute attribute) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - CR_DEFINE_STATIC_LOCAL(std::vector<int32>, empty_vector, ());
|
| - for (size_t i = 0; i < data.intlist_attributes.size(); ++i) {
|
| - if (data.intlist_attributes[i].first == attribute)
|
| - return data.intlist_attributes[i].second;
|
| - }
|
| -
|
| - return empty_vector;
|
| -}
|
| -
|
| -bool AXPlatformNode::GetIntListAttribute(
|
| - ui::AXIntListAttribute attribute,
|
| - std::vector<int32>* value) const {
|
| - ui::AXNodeData* data = delegate_->GetData();
|
| - if (!data)
|
| - return false;
|
| -
|
| - for (size_t i = 0; i < data.intlist_attributes.size(); ++i) {
|
| - if (data.intlist_attributes[i].first == attribute) {
|
| - *value = data.intlist_attributes[i].second;
|
| - return true;
|
| - }
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -bool AXPlatformNode::GetHtmlAttribute(
|
| - const char* html_attr, std::string* value) const {
|
| - for (size_t i = 0; i < GetHtmlAttributes().size(); ++i) {
|
| - const std::string& attr = GetHtmlAttributes()[i].first;
|
| - if (LowerCaseEqualsASCII(attr, html_attr)) {
|
| - *value = GetHtmlAttributes()[i].second;
|
| - return true;
|
| - }
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -bool AXPlatformNode::GetHtmlAttribute(
|
| - const char* html_attr, base::string16* value) const {
|
| - std::string value_utf8;
|
| - if (!GetHtmlAttribute(html_attr, &value_utf8))
|
| - return false;
|
| - *value = base::UTF8ToUTF16(value_utf8);
|
| - return true;
|
| + return this;
|
| }
|
|
|
| } // namespace ui
|
|
|