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