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

Side by Side Diff: views/controls/button/checkbox.cc

Issue 3083022: Rework gfx::Font by moving platform-specific code into inner classes.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 4 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 | « printing/printed_document_win.cc ('k') | views/controls/button/native_button.cc » ('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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "views/controls/button/checkbox.h" 5 #include "views/controls/button/checkbox.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "gfx/canvas.h" 8 #include "gfx/canvas.h"
9 #include "views/controls/label.h" 9 #include "views/controls/label.h"
10 10
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 native_wrapper_->GetView()->SetBounds(0, 0, width(), height()); 96 native_wrapper_->GetView()->SetBounds(0, 0, width(), height());
97 } else { 97 } else {
98 gfx::Size checkmark_prefsize = 98 gfx::Size checkmark_prefsize =
99 native_wrapper_->GetView()->GetPreferredSize(); 99 native_wrapper_->GetView()->GetPreferredSize();
100 int label_x = checkmark_prefsize.width() + kCheckboxLabelSpacing + 100 int label_x = checkmark_prefsize.width() + kCheckboxLabelSpacing +
101 kLabelFocusPaddingHorizontal; 101 kLabelFocusPaddingHorizontal;
102 label_->SetBounds( 102 label_->SetBounds(
103 label_x, 0, std::max(0, width() - label_x - 103 label_x, 0, std::max(0, width() - label_x -
104 kLabelFocusPaddingHorizontal), 104 kLabelFocusPaddingHorizontal),
105 height()); 105 height());
106 int first_line_height = label_->font().height(); 106 int first_line_height = label_->font().GetHeight();
107 native_wrapper_->GetView()->SetBounds( 107 native_wrapper_->GetView()->SetBounds(
108 0, ((first_line_height - checkmark_prefsize.height()) / 2), 108 0, ((first_line_height - checkmark_prefsize.height()) / 2),
109 checkmark_prefsize.width(), checkmark_prefsize.height()); 109 checkmark_prefsize.width(), checkmark_prefsize.height());
110 } 110 }
111 native_wrapper_->GetView()->Layout(); 111 native_wrapper_->GetView()->Layout();
112 } 112 }
113 113
114 void Checkbox::SetEnabled(bool enabled) { 114 void Checkbox::SetEnabled(bool enabled) {
115 NativeButton::SetEnabled(enabled); 115 NativeButton::SetEnabled(enabled);
116 if (label_) 116 if (label_)
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
221 void Checkbox::Init(const std::wstring& label_text) { 221 void Checkbox::Init(const std::wstring& label_text) {
222 // Checkboxs don't need to enforce a minimum size. 222 // Checkboxs don't need to enforce a minimum size.
223 set_ignore_minimum_size(true); 223 set_ignore_minimum_size(true);
224 label_ = new Label(label_text); 224 label_ = new Label(label_text);
225 label_->SetHasFocusBorder(true); 225 label_->SetHasFocusBorder(true);
226 label_->SetHorizontalAlignment(Label::ALIGN_LEFT); 226 label_->SetHorizontalAlignment(Label::ALIGN_LEFT);
227 AddChildView(label_); 227 AddChildView(label_);
228 } 228 }
229 229
230 } // namespace views 230 } // namespace views
OLDNEW
« no previous file with comments | « printing/printed_document_win.cc ('k') | views/controls/button/native_button.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698