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

Side by Side Diff: chrome/browser/ui/views/autofill/autofill_dialog_views.cc

Issue 628773002: replace OVERRIDE and FINAL with override and final in chrome/browser/ui/[t-v]* (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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 "chrome/browser/ui/views/autofill/autofill_dialog_views.h" 5 #include "chrome/browser/ui/views/autofill/autofill_dialog_views.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/location.h" 10 #include "base/location.h"
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
154 // It exists to circumvent shortcomings of GridLayout and BoxLayout (namely that 154 // It exists to circumvent shortcomings of GridLayout and BoxLayout (namely that
155 // the former doesn't fully respect child visibility, and that the latter won't 155 // the former doesn't fully respect child visibility, and that the latter won't
156 // expand a single child). 156 // expand a single child).
157 class SectionRowView : public views::View { 157 class SectionRowView : public views::View {
158 public: 158 public:
159 SectionRowView() { SetBorder(views::Border::CreateEmptyBorder(10, 0, 0, 0)); } 159 SectionRowView() { SetBorder(views::Border::CreateEmptyBorder(10, 0, 0, 0)); }
160 160
161 virtual ~SectionRowView() {} 161 virtual ~SectionRowView() {}
162 162
163 // views::View implementation: 163 // views::View implementation:
164 virtual gfx::Size GetPreferredSize() const OVERRIDE { 164 virtual gfx::Size GetPreferredSize() const override {
165 int height = 0; 165 int height = 0;
166 int width = 0; 166 int width = 0;
167 for (int i = 0; i < child_count(); ++i) { 167 for (int i = 0; i < child_count(); ++i) {
168 if (child_at(i)->visible()) { 168 if (child_at(i)->visible()) {
169 if (width > 0) 169 if (width > 0)
170 width += kAroundTextPadding; 170 width += kAroundTextPadding;
171 171
172 gfx::Size size = child_at(i)->GetPreferredSize(); 172 gfx::Size size = child_at(i)->GetPreferredSize();
173 height = std::max(height, size.height()); 173 height = std::max(height, size.height());
174 width += size.width(); 174 width += size.width();
175 } 175 }
176 } 176 }
177 177
178 gfx::Insets insets = GetInsets(); 178 gfx::Insets insets = GetInsets();
179 return gfx::Size(width + insets.width(), height + insets.height()); 179 return gfx::Size(width + insets.width(), height + insets.height());
180 } 180 }
181 181
182 virtual void Layout() OVERRIDE { 182 virtual void Layout() override {
183 const gfx::Rect bounds = GetContentsBounds(); 183 const gfx::Rect bounds = GetContentsBounds();
184 184
185 // Icon is left aligned. 185 // Icon is left aligned.
186 int start_x = bounds.x(); 186 int start_x = bounds.x();
187 views::View* icon = child_at(0); 187 views::View* icon = child_at(0);
188 if (icon->visible()) { 188 if (icon->visible()) {
189 icon->SizeToPreferredSize(); 189 icon->SizeToPreferredSize();
190 icon->SetX(start_x); 190 icon->SetX(start_x);
191 icon->SetY(bounds.y() + 191 icon->SetY(bounds.y() +
192 (bounds.height() - icon->bounds().height()) / 2); 192 (bounds.height() - icon->bounds().height()) / 2);
(...skipping 22 matching lines...) Expand all
215 DISALLOW_COPY_AND_ASSIGN(SectionRowView); 215 DISALLOW_COPY_AND_ASSIGN(SectionRowView);
216 }; 216 };
217 217
218 // A view that propagates visibility and preferred size changes. 218 // A view that propagates visibility and preferred size changes.
219 class LayoutPropagationView : public views::View { 219 class LayoutPropagationView : public views::View {
220 public: 220 public:
221 LayoutPropagationView() {} 221 LayoutPropagationView() {}
222 virtual ~LayoutPropagationView() {} 222 virtual ~LayoutPropagationView() {}
223 223
224 protected: 224 protected:
225 virtual void ChildVisibilityChanged(views::View* child) OVERRIDE { 225 virtual void ChildVisibilityChanged(views::View* child) override {
226 PreferredSizeChanged(); 226 PreferredSizeChanged();
227 } 227 }
228 virtual void ChildPreferredSizeChanged(views::View* child) OVERRIDE { 228 virtual void ChildPreferredSizeChanged(views::View* child) override {
229 PreferredSizeChanged(); 229 PreferredSizeChanged();
230 } 230 }
231 231
232 private: 232 private:
233 DISALLOW_COPY_AND_ASSIGN(LayoutPropagationView); 233 DISALLOW_COPY_AND_ASSIGN(LayoutPropagationView);
234 }; 234 };
235 235
236 // A View for a single notification banner. 236 // A View for a single notification banner.
237 class NotificationView : public views::View, 237 class NotificationView : public views::View,
238 public views::ButtonListener, 238 public views::ButtonListener,
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
298 1, 0, 1, 0, data.GetBorderColor())); 298 1, 0, 1, 0, data.GetBorderColor()));
299 } 299 }
300 300
301 virtual ~NotificationView() {} 301 virtual ~NotificationView() {}
302 302
303 views::Checkbox* checkbox() { 303 views::Checkbox* checkbox() {
304 return checkbox_; 304 return checkbox_;
305 } 305 }
306 306
307 // views::View implementation. 307 // views::View implementation.
308 virtual gfx::Insets GetInsets() const OVERRIDE { 308 virtual gfx::Insets GetInsets() const override {
309 int vertical_padding = kNotificationPadding; 309 int vertical_padding = kNotificationPadding;
310 if (checkbox_) 310 if (checkbox_)
311 vertical_padding -= 3; 311 vertical_padding -= 3;
312 return gfx::Insets(vertical_padding, kDialogEdgePadding, 312 return gfx::Insets(vertical_padding, kDialogEdgePadding,
313 vertical_padding, kDialogEdgePadding); 313 vertical_padding, kDialogEdgePadding);
314 } 314 }
315 315
316 virtual int GetHeightForWidth(int width) const OVERRIDE { 316 virtual int GetHeightForWidth(int width) const override {
317 int label_width = width - GetInsets().width(); 317 int label_width = width - GetInsets().width();
318 if (child_count() > 1) { 318 if (child_count() > 1) {
319 const views::View* tooltip_icon = child_at(1); 319 const views::View* tooltip_icon = child_at(1);
320 label_width -= tooltip_icon->GetPreferredSize().width() + 320 label_width -= tooltip_icon->GetPreferredSize().width() +
321 kDialogEdgePadding; 321 kDialogEdgePadding;
322 } 322 }
323 323
324 return child_at(0)->GetHeightForWidth(label_width) + GetInsets().height(); 324 return child_at(0)->GetHeightForWidth(label_width) + GetInsets().height();
325 } 325 }
326 326
327 virtual void Layout() OVERRIDE { 327 virtual void Layout() override {
328 // Surprisingly, GetContentsBounds() doesn't consult GetInsets(). 328 // Surprisingly, GetContentsBounds() doesn't consult GetInsets().
329 gfx::Rect bounds = GetLocalBounds(); 329 gfx::Rect bounds = GetLocalBounds();
330 bounds.Inset(GetInsets()); 330 bounds.Inset(GetInsets());
331 int right_bound = bounds.right(); 331 int right_bound = bounds.right();
332 332
333 if (child_count() > 1) { 333 if (child_count() > 1) {
334 // The icon takes up the entire vertical space and an extra 20px on 334 // The icon takes up the entire vertical space and an extra 20px on
335 // each side. This increases the hover target for the tooltip. 335 // each side. This increases the hover target for the tooltip.
336 views::View* tooltip_icon = child_at(1); 336 views::View* tooltip_icon = child_at(1);
337 gfx::Size icon_size = tooltip_icon->GetPreferredSize(); 337 gfx::Size icon_size = tooltip_icon->GetPreferredSize();
338 int icon_width = icon_size.width() + kDialogEdgePadding; 338 int icon_width = icon_size.width() + kDialogEdgePadding;
339 right_bound -= icon_width; 339 right_bound -= icon_width;
340 tooltip_icon->SetBounds( 340 tooltip_icon->SetBounds(
341 right_bound, 0, 341 right_bound, 0,
342 icon_width + kDialogEdgePadding, GetLocalBounds().height()); 342 icon_width + kDialogEdgePadding, GetLocalBounds().height());
343 } 343 }
344 344
345 child_at(0)->SetBounds(bounds.x(), bounds.y(), 345 child_at(0)->SetBounds(bounds.x(), bounds.y(),
346 right_bound - bounds.x(), bounds.height()); 346 right_bound - bounds.x(), bounds.height());
347 } 347 }
348 348
349 // views::ButtonListener implementation. 349 // views::ButtonListener implementation.
350 virtual void ButtonPressed(views::Button* sender, 350 virtual void ButtonPressed(views::Button* sender,
351 const ui::Event& event) OVERRIDE { 351 const ui::Event& event) override {
352 DCHECK_EQ(sender, checkbox_); 352 DCHECK_EQ(sender, checkbox_);
353 delegate_->NotificationCheckboxStateChanged(data_.type(), 353 delegate_->NotificationCheckboxStateChanged(data_.type(),
354 checkbox_->checked()); 354 checkbox_->checked());
355 } 355 }
356 356
357 // views::StyledLabelListener implementation. 357 // views::StyledLabelListener implementation.
358 virtual void StyledLabelLinkClicked(const gfx::Range& range, int event_flags) 358 virtual void StyledLabelLinkClicked(const gfx::Range& range, int event_flags)
359 OVERRIDE { 359 override {
360 delegate_->LinkClicked(data_.link_url()); 360 delegate_->LinkClicked(data_.link_url());
361 } 361 }
362 362
363 private: 363 private:
364 // The model data for this notification. 364 // The model data for this notification.
365 DialogNotification data_; 365 DialogNotification data_;
366 366
367 // The delegate that handles interaction with |this|. 367 // The delegate that handles interaction with |this|.
368 AutofillDialogViewDelegate* delegate_; 368 AutofillDialogViewDelegate* delegate_;
369 369
(...skipping 22 matching lines...) Expand all
392 392
393 for (size_t i = 0; i < 3; ++i) { 393 for (size_t i = 0; i < 3; ++i) {
394 container_->AddChildView( 394 container_->AddChildView(
395 new views::Label(base::ASCIIToUTF16("."), font_list)); 395 new views::Label(base::ASCIIToUTF16("."), font_list));
396 } 396 }
397 } 397 }
398 398
399 virtual ~LoadingAnimationView() {} 399 virtual ~LoadingAnimationView() {}
400 400
401 // views::View implementation. 401 // views::View implementation.
402 virtual void SetVisible(bool visible) OVERRIDE { 402 virtual void SetVisible(bool visible) override {
403 if (visible) 403 if (visible)
404 animation_->Start(); 404 animation_->Start();
405 else 405 else
406 animation_->Reset(); 406 animation_->Reset();
407 407
408 views::View::SetVisible(visible); 408 views::View::SetVisible(visible);
409 } 409 }
410 410
411 virtual void Layout() OVERRIDE { 411 virtual void Layout() override {
412 gfx::Size container_size = container_->GetPreferredSize(); 412 gfx::Size container_size = container_->GetPreferredSize();
413 gfx::Rect container_bounds((width() - container_size.width()) / 2, 413 gfx::Rect container_bounds((width() - container_size.width()) / 2,
414 (height() - container_size.height()) / 2, 414 (height() - container_size.height()) / 2,
415 container_size.width(), 415 container_size.width(),
416 container_size.height()); 416 container_size.height());
417 container_->SetBoundsRect(container_bounds); 417 container_->SetBoundsRect(container_bounds);
418 container_->Layout(); 418 container_->Layout();
419 419
420 for (size_t i = 0; i < 3; ++i) { 420 for (size_t i = 0; i < 3; ++i) {
421 views::View* dot = container_->child_at(i + 1); 421 views::View* dot = container_->child_at(i + 1);
422 dot->SetY(dot->y() + animation_->GetCurrentValueForDot(i)); 422 dot->SetY(dot->y() + animation_->GetCurrentValueForDot(i));
423 } 423 }
424 } 424 }
425 425
426 virtual void OnNativeThemeChanged(const ui::NativeTheme* theme) OVERRIDE { 426 virtual void OnNativeThemeChanged(const ui::NativeTheme* theme) override {
427 set_background(views::Background::CreateSolidBackground( 427 set_background(views::Background::CreateSolidBackground(
428 theme->GetSystemColor(ui::NativeTheme::kColorId_DialogBackground))); 428 theme->GetSystemColor(ui::NativeTheme::kColorId_DialogBackground)));
429 } 429 }
430 430
431 // gfx::AnimationDelegate implementation. 431 // gfx::AnimationDelegate implementation.
432 virtual void AnimationProgressed(const gfx::Animation* animation) OVERRIDE { 432 virtual void AnimationProgressed(const gfx::Animation* animation) override {
433 DCHECK_EQ(animation, animation_.get()); 433 DCHECK_EQ(animation, animation_.get());
434 Layout(); 434 Layout();
435 } 435 }
436 436
437 private: 437 private:
438 // Contains the "Loading" label and the dots. 438 // Contains the "Loading" label and the dots.
439 views::View* container_; 439 views::View* container_;
440 440
441 scoped_ptr<LoadingAnimation> animation_; 441 scoped_ptr<LoadingAnimation> animation_;
442 442
443 DISALLOW_COPY_AND_ASSIGN(LoadingAnimationView); 443 DISALLOW_COPY_AND_ASSIGN(LoadingAnimationView);
444 }; 444 };
445 445
446 // Gets either the Combobox or ExpandingTextfield that is an ancestor (including 446 // Gets either the Combobox or ExpandingTextfield that is an ancestor (including
447 // self) of |view|. 447 // self) of |view|.
448 views::View* GetAncestralInputView(views::View* view) { 448 views::View* GetAncestralInputView(views::View* view) {
449 if (view->GetClassName() == views::Combobox::kViewClassName) 449 if (view->GetClassName() == views::Combobox::kViewClassName)
450 return view; 450 return view;
451 451
452 return view->GetAncestorWithClassName(ExpandingTextfield::kViewClassName); 452 return view->GetAncestorWithClassName(ExpandingTextfield::kViewClassName);
453 } 453 }
454 454
455 // A class that informs |delegate_| when an unhandled mouse press occurs. 455 // A class that informs |delegate_| when an unhandled mouse press occurs.
456 class MousePressedHandler : public ui::EventHandler { 456 class MousePressedHandler : public ui::EventHandler {
457 public: 457 public:
458 explicit MousePressedHandler(AutofillDialogViewDelegate* delegate) 458 explicit MousePressedHandler(AutofillDialogViewDelegate* delegate)
459 : delegate_(delegate) {} 459 : delegate_(delegate) {}
460 460
461 // ui::EventHandler implementation. 461 // ui::EventHandler implementation.
462 virtual void OnMouseEvent(ui::MouseEvent* event) OVERRIDE { 462 virtual void OnMouseEvent(ui::MouseEvent* event) override {
463 if (event->type() == ui::ET_MOUSE_PRESSED && !event->handled()) 463 if (event->type() == ui::ET_MOUSE_PRESSED && !event->handled())
464 delegate_->FocusMoved(); 464 delegate_->FocusMoved();
465 } 465 }
466 466
467 private: 467 private:
468 AutofillDialogViewDelegate* const delegate_; 468 AutofillDialogViewDelegate* const delegate_;
469 469
470 DISALLOW_COPY_AND_ASSIGN(MousePressedHandler); 470 DISALLOW_COPY_AND_ASSIGN(MousePressedHandler);
471 }; 471 };
472 472
(...skipping 2030 matching lines...) Expand 10 before | Expand all | Expand 10 after
2503 AutofillDialogViews::DetailsGroup::DetailsGroup(DialogSection section) 2503 AutofillDialogViews::DetailsGroup::DetailsGroup(DialogSection section)
2504 : section(section), 2504 : section(section),
2505 container(NULL), 2505 container(NULL),
2506 manual_input(NULL), 2506 manual_input(NULL),
2507 suggested_info(NULL), 2507 suggested_info(NULL),
2508 suggested_button(NULL) {} 2508 suggested_button(NULL) {}
2509 2509
2510 AutofillDialogViews::DetailsGroup::~DetailsGroup() {} 2510 AutofillDialogViews::DetailsGroup::~DetailsGroup() {}
2511 2511
2512 } // namespace autofill 2512 } // namespace autofill
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698