1116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 2116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 3116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// found in the LICENSE file. 4116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 5116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#ifndef UI_OZONE_PLATFORM_TEST_TEST_WINDOW_H_ 6116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#define UI_OZONE_PLATFORM_TEST_TEST_WINDOW_H_ 7116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 8116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "base/files/file_path.h" 9116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "ui/gfx/geometry/rect.h" 10116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "ui/gfx/native_widget_types.h" 11116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "ui/platform_window/platform_window.h" 12116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 13116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace ui { 14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 15116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass PlatformWindowDelegate; 16116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass TestWindowManager; 17116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 186e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)class TestWindow : public PlatformWindow { 19116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch public: 20116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch TestWindow(PlatformWindowDelegate* delegate, 21116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch TestWindowManager* manager, 22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const gfx::Rect& bounds); 23116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual ~TestWindow(); 24116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 25116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch // Path for image file for this window. 26116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch base::FilePath path(); 27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch // PlatformWindow: 29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual gfx::Rect GetBounds() OVERRIDE; 30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void SetBounds(const gfx::Rect& bounds) OVERRIDE; 31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void Show() OVERRIDE; 32116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void Hide() OVERRIDE; 33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void Close() OVERRIDE; 34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void SetCapture() OVERRIDE; 35116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void ReleaseCapture() OVERRIDE; 36116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void ToggleFullscreen() OVERRIDE; 37116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void Maximize() OVERRIDE; 38116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void Minimize() OVERRIDE; 39116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch virtual void Restore() OVERRIDE; 405f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) virtual void SetCursor(PlatformCursor cursor) OVERRIDE; 415f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) virtual void MoveCursorTo(const gfx::Point& location) OVERRIDE; 42116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 43116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch private: 44116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch PlatformWindowDelegate* delegate_; 45116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch TestWindowManager* manager_; 46116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch gfx::Rect bounds_; 47116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch gfx::AcceleratedWidget widget_; 48116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 49116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DISALLOW_COPY_AND_ASSIGN(TestWindow); 50116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch}; 51116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 52116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} // namespace ui 53116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 54116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#endif // UI_OZONE_PLATFORM_TEST_TEST_WINDOW_H_ 55