1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "ui/views/test/test_views.h" 6 7 namespace views { 8 9 StaticSizedView::StaticSizedView(const gfx::Size& size) : size_(size) {} 10 11 StaticSizedView::~StaticSizedView() {} 12 13 gfx::Size StaticSizedView::GetPreferredSize() const { 14 return size_; 15 } 16 17 ProportionallySizedView::ProportionallySizedView(int factor) 18 : factor_(factor), preferred_width_(-1) {} 19 20 ProportionallySizedView::~ProportionallySizedView() {} 21 22 int ProportionallySizedView::GetHeightForWidth(int w) const { 23 return w * factor_; 24 } 25 26 gfx::Size ProportionallySizedView::GetPreferredSize() const { 27 if (preferred_width_ >= 0) 28 return gfx::Size(preferred_width_, GetHeightForWidth(preferred_width_)); 29 return View::GetPreferredSize(); 30 } 31 32 } // namespace views 33