Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(154)

Side by Side Diff: ui/views/layout/fill_layout.cc

Issue 273223002: views: Make view::Views::GetPreferredSize() const. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More compile fix for ToT Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ui/views/layout/fill_layout.h ('k') | ui/views/layout/grid_layout.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ui/views/layout/fill_layout.h" 5 #include "ui/views/layout/fill_layout.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 8
9 namespace views { 9 namespace views {
10 10
11 FillLayout::FillLayout() {} 11 FillLayout::FillLayout() {}
12 12
13 FillLayout::~FillLayout() {} 13 FillLayout::~FillLayout() {}
14 14
15 void FillLayout::Layout(View* host) { 15 void FillLayout::Layout(View* host) {
16 if (!host->has_children()) 16 if (!host->has_children())
17 return; 17 return;
18 18
19 View* frame_view = host->child_at(0); 19 View* frame_view = host->child_at(0);
20 frame_view->SetBoundsRect(host->GetContentsBounds()); 20 frame_view->SetBoundsRect(host->GetContentsBounds());
21 } 21 }
22 22
23 gfx::Size FillLayout::GetPreferredSize(View* host) { 23 gfx::Size FillLayout::GetPreferredSize(const View* host) const {
24 if (!host->has_children()) 24 if (!host->has_children())
25 return gfx::Size(); 25 return gfx::Size();
26 DCHECK_EQ(1, host->child_count()); 26 DCHECK_EQ(1, host->child_count());
27 gfx::Rect rect(host->child_at(0)->GetPreferredSize()); 27 gfx::Rect rect(host->child_at(0)->GetPreferredSize());
28 rect.Inset(-host->GetInsets()); 28 rect.Inset(-host->GetInsets());
29 return rect.size(); 29 return rect.size();
30 } 30 }
31 31
32 int FillLayout::GetPreferredHeightForWidth(View* host, int width) { 32 int FillLayout::GetPreferredHeightForWidth(const View* host, int width) const {
33 if (!host->has_children()) 33 if (!host->has_children())
34 return 0; 34 return 0;
35 DCHECK_EQ(1, host->child_count()); 35 DCHECK_EQ(1, host->child_count());
36 const gfx::Insets insets = host->GetInsets(); 36 const gfx::Insets insets = host->GetInsets();
37 return host->child_at(0)->GetHeightForWidth(width - insets.width()) + 37 return host->child_at(0)->GetHeightForWidth(width - insets.width()) +
38 insets.height(); 38 insets.height();
39 } 39 }
40 40
41 } // namespace views 41 } // namespace views
OLDNEW
« no previous file with comments | « ui/views/layout/fill_layout.h ('k') | ui/views/layout/grid_layout.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698