15c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu// Copyright 2014 The Chromium Authors. All rights reserved. 25c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu// Use of this source code is governed by a BSD-style license that can be 35c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu// found in the LICENSE file. 45c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 55c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#ifndef UI_VIEWS_ACCESSIBILITY_AX_WINDOW_OBJ_WRAPPER_H_ 65c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#define UI_VIEWS_ACCESSIBILITY_AX_WINDOW_OBJ_WRAPPER_H_ 75c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 85c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#include "ui/aura/window_observer.h" 95c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#include "ui/views/accessibility/ax_aura_obj_wrapper.h" 105c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 115c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liunamespace aura { 125c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liuclass Window; 135c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu} // namespace aura 145c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 155c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liunamespace views { 165c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 175c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu// Describes a |Window| for use with other AX classes. 185c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liuclass AXWindowObjWrapper : public AXAuraObjWrapper, 195c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu public aura::WindowObserver { 205c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu public: 215c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu explicit AXWindowObjWrapper(aura::Window* window); 225c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu virtual ~AXWindowObjWrapper(); 235c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 245c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu // AXAuraObjWrapper overrides. 255c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu virtual AXAuraObjWrapper* GetParent() OVERRIDE; 265c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu virtual void GetChildren( 275c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu std::vector<AXAuraObjWrapper*>* out_children) OVERRIDE; 285c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu virtual void Serialize(ui::AXNodeData* out_node_data) OVERRIDE; 295c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu virtual int32 GetID() OVERRIDE; 305c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 315c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu // WindowObserver overrides. 325c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu virtual void OnWindowDestroying(aura::Window* window) OVERRIDE; 335c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 345c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu private: 355c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu aura::Window* window_; 365c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 375c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu DISALLOW_COPY_AND_ASSIGN(AXWindowObjWrapper); 385c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu}; 395c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 405c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu} // namespace views 415c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu 425c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu#endif // UI_VIEWS_ACCESSIBILITY_AX_WINDOW_OBJ_WRAPPER_H_ 43