Index: ui/accessibility/platform/ax_platform_node_base.h |
diff --git a/ui/accessibility/platform/ax_platform_node_base.h b/ui/accessibility/platform/ax_platform_node_base.h |
index fcc0f5c5918ac3f9c46dc2485d72e402d8e0590b..7555ec0fc800de064fa4ed610a41726ff515a0fd 100644 |
--- a/ui/accessibility/platform/ax_platform_node_base.h |
+++ b/ui/accessibility/platform/ax_platform_node_base.h |
@@ -12,6 +12,7 @@ |
namespace ui { |
+struct AXNodeData; |
class AXPlatformNodeDelegate; |
class AXPlatformNodeBase : public AXPlatformNode { |
@@ -19,20 +20,56 @@ class AXPlatformNodeBase : public AXPlatformNode { |
virtual void Init(AXPlatformNodeDelegate* delegate); |
// These are simple wrappers to our delegate. |
- AXRole GetRole() const; |
+ const AXNodeData& GetData() const; |
gfx::Rect GetBoundsInScreen() const; |
gfx::NativeViewAccessible GetParent(); |
int GetChildCount(); |
gfx::NativeViewAccessible ChildAtIndex(int index); |
- // AXPlatformNode |
+ // This needs to be implemented for each platform. |
+ virtual int GetIndexInParent() = 0; |
+ |
+ // AXPlatformNode. |
void Destroy() override; |
gfx::NativeViewAccessible GetNativeViewAccessible() override; |
+ AXPlatformNodeDelegate* GetDelegate() const override; |
+ |
+ // Helpers. |
+ AXPlatformNodeBase* GetPreviousSibling(); |
+ AXPlatformNodeBase* GetNextSibling(); |
+ bool IsDescendant(AXPlatformNodeBase* descendant); |
+ |
+ bool HasBoolAttribute(ui::AXBoolAttribute attr) const; |
+ bool GetBoolAttribute(ui::AXBoolAttribute attr) const; |
+ bool GetBoolAttribute(ui::AXBoolAttribute attr, bool* value) const; |
+ |
+ bool HasFloatAttribute(ui::AXFloatAttribute attr) const; |
+ float GetFloatAttribute(ui::AXFloatAttribute attr) const; |
+ bool GetFloatAttribute(ui::AXFloatAttribute attr, float* value) const; |
+ |
+ bool HasIntAttribute(ui::AXIntAttribute attribute) const; |
+ int GetIntAttribute(ui::AXIntAttribute attribute) const; |
+ bool GetIntAttribute(ui::AXIntAttribute attribute, int* value) const; |
+ |
+ bool HasStringAttribute( |
+ ui::AXStringAttribute attribute) const; |
+ const std::string& GetStringAttribute(ui::AXStringAttribute attribute) const; |
+ bool GetStringAttribute(ui::AXStringAttribute attribute, |
+ std::string* value) const; |
+ bool GetString16Attribute(ui::AXStringAttribute attribute, |
+ base::string16* value) const; |
+ base::string16 GetString16Attribute( |
+ ui::AXStringAttribute attribute) const; |
protected: |
AXPlatformNodeBase(); |
~AXPlatformNodeBase() override; |
+ // Cast a gfx::NativeViewAccessible to an AXPlatformNodeBase if it is one, |
+ // or return NULL if it's not an instance of this class. |
+ static AXPlatformNodeBase* FromNativeViewAccessible( |
+ gfx::NativeViewAccessible accessible); |
+ |
AXPlatformNodeDelegate* delegate_; // Weak. Owns this. |
private: |