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

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

Issue 2758323002: Broke out layout metric information from ViewsDelegate to LayoutProvider (Closed)
Patch Set: Changes due to feedback. Created 3 years, 8 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/grid_layout.h" 5 #include "ui/views/layout/grid_layout.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/macros.h" 10 #include "base/macros.h"
11 #include "base/memory/ptr_util.h" 11 #include "base/memory/ptr_util.h"
12 #include "ui/views/layout/layout_constants.h" 12 #include "ui/views/layout/layout_constants.h"
13 #include "ui/views/layout/layout_delegate.h"
13 #include "ui/views/view.h" 14 #include "ui/views/view.h"
14 #include "ui/views/views_delegate.h"
15 #include "ui/views/window/dialog_delegate.h" 15 #include "ui/views/window/dialog_delegate.h"
16 16
17 namespace views { 17 namespace views {
18 18
19 // LayoutElement ------------------------------------------------------ 19 // LayoutElement ------------------------------------------------------
20 20
21 // A LayoutElement has a size and location along one axis. It contains 21 // A LayoutElement has a size and location along one axis. It contains
22 // methods that are used along both axis. 22 // methods that are used along both axis.
23 class LayoutElement { 23 class LayoutElement {
24 public: 24 public:
(...skipping 621 matching lines...) Expand 10 before | Expand all | Expand 10 after
646 DCHECK(host); 646 DCHECK(host);
647 } 647 }
648 648
649 GridLayout::~GridLayout() { 649 GridLayout::~GridLayout() {
650 } 650 }
651 651
652 // static 652 // static
653 GridLayout* GridLayout::CreatePanel(View* host) { 653 GridLayout* GridLayout::CreatePanel(View* host) {
654 GridLayout* layout = new GridLayout(host); 654 GridLayout* layout = new GridLayout(host);
655 layout->SetInsets( 655 layout->SetInsets(
656 ViewsDelegate::GetInstance()->GetInsetsMetric(InsetsMetric::PANEL)); 656 LayoutDelegate::Get()->GetInsetsMetric(InsetsMetric::PANEL));
657 host->SetLayoutManager(layout); 657 host->SetLayoutManager(layout);
658 return layout; 658 return layout;
659 } 659 }
660 660
661 void GridLayout::SetInsets(int top, int left, int bottom, int right) { 661 void GridLayout::SetInsets(int top, int left, int bottom, int right) {
662 insets_.Set(top, left, bottom, right); 662 insets_.Set(top, left, bottom, right);
663 } 663 }
664 664
665 void GridLayout::SetInsets(const gfx::Insets& insets) { 665 void GridLayout::SetInsets(const gfx::Insets& insets) {
666 insets_ = insets; 666 insets_ = insets;
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after
1028 1028
1029 ColumnSet* GridLayout::GetLastValidColumnSet() { 1029 ColumnSet* GridLayout::GetLastValidColumnSet() {
1030 for (int i = current_row_ - 1; i >= 0; --i) { 1030 for (int i = current_row_ - 1; i >= 0; --i) {
1031 if (rows_[i]->column_set()) 1031 if (rows_[i]->column_set())
1032 return rows_[i]->column_set(); 1032 return rows_[i]->column_set();
1033 } 1033 }
1034 return nullptr; 1034 return nullptr;
1035 } 1035 }
1036 1036
1037 } // namespace views 1037 } // namespace views
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698