Index: mojo/services/window_manager/window_manager_test_util.cc |
diff --git a/mojo/services/window_manager/window_manager_test_util.cc b/mojo/services/window_manager/window_manager_test_util.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..82ef8f748f05bbb35c0eb3fab5ad09e18d731153 |
--- /dev/null |
+++ b/mojo/services/window_manager/window_manager_test_util.cc |
@@ -0,0 +1,50 @@ |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "mojo/services/window_manager/window_manager_test_util.h" |
+ |
+#include "base/stl_util.h" |
+#include "mojo/converters/geometry/geometry_type_converters.h" |
+#include "ui/gfx/geometry/rect.h" |
+ |
+namespace mojo { |
+ |
+TestView::TestView(int id, |
+ const gfx::Rect& rect, |
+ ViewCollector* collector) { |
+ ViewPrivate(this).set_id(id); |
+ |
+ mojo::Rect mojo_rect = *mojo::Rect::From(rect); |
+ SetBounds(mojo_rect); |
+ |
+ collector->AddView(this); |
+} |
+ |
+TestView::~TestView() {} |
+ |
+TestViewTarget::TestViewTarget(int id, |
+ const gfx::Rect& rect, |
+ ViewCollector* collector) |
+ : ViewTarget(new TestView(id, rect, collector)) { |
+} |
+ |
+TestViewTarget::~TestViewTarget() {} |
+ |
+void TestViewTarget::AddChild(TestViewTarget* child) { |
+ view()->AddChild(child->view()); |
+} |
+ |
+ViewCollector::ViewCollector() {} |
+ |
+ViewCollector::~ViewCollector() {} |
+ |
+void ViewCollector::AddView(TestView* view) { |
+ views_.insert(view); |
+} |
+ |
+void ViewCollector::Destroy() { |
+ STLDeleteElements(&views_); |
+} |
+ |
+} // namespace mojo |