| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/message_center/views/notifier_settings_view.h" | 5 #include "ui/message_center/views/notifier_settings_view.h" |
| 6 | 6 |
| 7 #include <set> | 7 #include <set> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/strings/string16.h" | 10 #include "base/strings/string16.h" |
| (...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 326 learn_more_->SetImage( | 326 learn_more_->SetImage( |
| 327 views::Button::STATE_PRESSED, | 327 views::Button::STATE_PRESSED, |
| 328 rb.GetImageSkiaNamed(IDR_NOTIFICATION_ADVANCED_SETTINGS_PRESSED)); | 328 rb.GetImageSkiaNamed(IDR_NOTIFICATION_ADVANCED_SETTINGS_PRESSED)); |
| 329 learn_more_->SetState(views::Button::STATE_NORMAL); | 329 learn_more_->SetState(views::Button::STATE_NORMAL); |
| 330 int learn_more_border_width = | 330 int learn_more_border_width = |
| 331 (settings::kLearnMoreTargetWidth - settings::kLearnMoreSize) / 2; | 331 (settings::kLearnMoreTargetWidth - settings::kLearnMoreSize) / 2; |
| 332 int learn_more_border_height = | 332 int learn_more_border_height = |
| 333 (settings::kLearnMoreTargetHeight - settings::kLearnMoreSize) / 2; | 333 (settings::kLearnMoreTargetHeight - settings::kLearnMoreSize) / 2; |
| 334 // The image itself is quite small, this large invisible border creates a | 334 // The image itself is quite small, this large invisible border creates a |
| 335 // much bigger click target. | 335 // much bigger click target. |
| 336 learn_more_->set_border( | 336 learn_more_->SetBorder( |
| 337 views::Border::CreateEmptyBorder(learn_more_border_height, | 337 views::Border::CreateEmptyBorder(learn_more_border_height, |
| 338 learn_more_border_width, | 338 learn_more_border_width, |
| 339 learn_more_border_height, | 339 learn_more_border_height, |
| 340 learn_more_border_width)); | 340 learn_more_border_width)); |
| 341 learn_more_->SetImageAlignment(views::ImageButton::ALIGN_CENTER, | 341 learn_more_->SetImageAlignment(views::ImageButton::ALIGN_CENTER, |
| 342 views::ImageButton::ALIGN_MIDDLE); | 342 views::ImageButton::ALIGN_MIDDLE); |
| 343 } | 343 } |
| 344 | 344 |
| 345 UpdateIconImage(notifier_->icon); | 345 UpdateIconImage(notifier_->icon); |
| 346 } | 346 } |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 489 views::Background::CreateSolidBackground(kMessageCenterBackgroundColor)); | 489 views::Background::CreateSolidBackground(kMessageCenterBackgroundColor)); |
| 490 if (get_use_acceleration_when_possible()) | 490 if (get_use_acceleration_when_possible()) |
| 491 SetPaintToLayer(true); | 491 SetPaintToLayer(true); |
| 492 | 492 |
| 493 title_label_ = new views::Label( | 493 title_label_ = new views::Label( |
| 494 l10n_util::GetStringUTF16(IDS_MESSAGE_CENTER_SETTINGS_BUTTON_LABEL), | 494 l10n_util::GetStringUTF16(IDS_MESSAGE_CENTER_SETTINGS_BUTTON_LABEL), |
| 495 ui::ResourceBundle::GetSharedInstance().GetFontList( | 495 ui::ResourceBundle::GetSharedInstance().GetFontList( |
| 496 ui::ResourceBundle::MediumFont)); | 496 ui::ResourceBundle::MediumFont)); |
| 497 title_label_->SetHorizontalAlignment(gfx::ALIGN_LEFT); | 497 title_label_->SetHorizontalAlignment(gfx::ALIGN_LEFT); |
| 498 title_label_->SetMultiLine(true); | 498 title_label_->SetMultiLine(true); |
| 499 title_label_->set_border( | 499 title_label_->SetBorder( |
| 500 views::Border::CreateEmptyBorder(kComputedTitleTopMargin, | 500 views::Border::CreateEmptyBorder(kComputedTitleTopMargin, |
| 501 settings::kTitleMargin, | 501 settings::kTitleMargin, |
| 502 kComputedTitleBottomMargin, | 502 kComputedTitleBottomMargin, |
| 503 settings::kTitleMargin)); | 503 settings::kTitleMargin)); |
| 504 | 504 |
| 505 AddChildView(title_label_); | 505 AddChildView(title_label_); |
| 506 | 506 |
| 507 scroller_ = new views::ScrollView(); | 507 scroller_ = new views::ScrollView(); |
| 508 scroller_->SetVerticalScrollBar(new views::OverlayScrollBar(false)); | 508 scroller_->SetVerticalScrollBar(new views::OverlayScrollBar(false)); |
| 509 AddChildView(scroller_); | 509 AddChildView(scroller_); |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 564 provider_ && provider_->GetNotifierGroupCount() > 1; | 564 provider_ && provider_->GetNotifierGroupCount() > 1; |
| 565 int top_label_resource_id = | 565 int top_label_resource_id = |
| 566 need_account_switcher ? IDS_MESSAGE_CENTER_SETTINGS_DESCRIPTION_MULTIUSER | 566 need_account_switcher ? IDS_MESSAGE_CENTER_SETTINGS_DESCRIPTION_MULTIUSER |
| 567 : IDS_MESSAGE_CENTER_SETTINGS_DIALOG_DESCRIPTION; | 567 : IDS_MESSAGE_CENTER_SETTINGS_DIALOG_DESCRIPTION; |
| 568 | 568 |
| 569 views::Label* top_label = | 569 views::Label* top_label = |
| 570 new views::Label(l10n_util::GetStringUTF16(top_label_resource_id)); | 570 new views::Label(l10n_util::GetStringUTF16(top_label_resource_id)); |
| 571 | 571 |
| 572 top_label->SetHorizontalAlignment(gfx::ALIGN_LEFT); | 572 top_label->SetHorizontalAlignment(gfx::ALIGN_LEFT); |
| 573 top_label->SetMultiLine(true); | 573 top_label->SetMultiLine(true); |
| 574 top_label->set_border(views::Border::CreateEmptyBorder( | 574 top_label->SetBorder(views::Border::CreateEmptyBorder( |
| 575 0, | 575 0, |
| 576 settings::kTitleMargin + kMenuButtonInnateMargin, | 576 settings::kTitleMargin + kMenuButtonInnateMargin, |
| 577 0, | 577 0, |
| 578 settings::kTitleMargin + kMenuButtonInnateMargin)); | 578 settings::kTitleMargin + kMenuButtonInnateMargin)); |
| 579 contents_title_view->AddChildView(top_label); | 579 contents_title_view->AddChildView(top_label); |
| 580 | 580 |
| 581 if (need_account_switcher) { | 581 if (need_account_switcher) { |
| 582 const NotifierGroup& active_group = provider_->GetActiveNotifierGroup(); | 582 const NotifierGroup& active_group = provider_->GetActiveNotifierGroup(); |
| 583 base::string16 notifier_group_text = active_group.login_info.empty() ? | 583 base::string16 notifier_group_text = active_group.login_info.empty() ? |
| 584 active_group.name : active_group.login_info; | 584 active_group.name : active_group.login_info; |
| 585 notifier_group_selector_ = | 585 notifier_group_selector_ = |
| 586 new views::MenuButton(NULL, notifier_group_text, this, true); | 586 new views::MenuButton(NULL, notifier_group_text, this, true); |
| 587 scoped_ptr<views::TextButtonDefaultBorder> selector_border( | 587 scoped_ptr<views::TextButtonDefaultBorder> selector_border( |
| 588 new views::TextButtonDefaultBorder()); | 588 new views::TextButtonDefaultBorder()); |
| 589 ui::ResourceBundle* rb = &ResourceBundle::GetSharedInstance(); | 589 ui::ResourceBundle* rb = &ResourceBundle::GetSharedInstance(); |
| 590 gfx::Insets painter_insets(kButtonPainterInsets, kButtonPainterInsets, | 590 gfx::Insets painter_insets(kButtonPainterInsets, kButtonPainterInsets, |
| 591 kButtonPainterInsets, kButtonPainterInsets); | 591 kButtonPainterInsets, kButtonPainterInsets); |
| 592 selector_border->set_normal_painter(views::Painter::CreateImagePainter( | 592 selector_border->set_normal_painter(views::Painter::CreateImagePainter( |
| 593 *rb->GetImageSkiaNamed(IDR_BUTTON_NORMAL), painter_insets)); | 593 *rb->GetImageSkiaNamed(IDR_BUTTON_NORMAL), painter_insets)); |
| 594 selector_border->set_hot_painter(views::Painter::CreateImagePainter( | 594 selector_border->set_hot_painter(views::Painter::CreateImagePainter( |
| 595 *rb->GetImageSkiaNamed(IDR_BUTTON_HOVER), painter_insets)); | 595 *rb->GetImageSkiaNamed(IDR_BUTTON_HOVER), painter_insets)); |
| 596 selector_border->set_pushed_painter(views::Painter::CreateImagePainter( | 596 selector_border->set_pushed_painter(views::Painter::CreateImagePainter( |
| 597 *rb->GetImageSkiaNamed(IDR_BUTTON_PRESSED), painter_insets)); | 597 *rb->GetImageSkiaNamed(IDR_BUTTON_PRESSED), painter_insets)); |
| 598 selector_border->SetInsets(gfx::Insets( | 598 selector_border->SetInsets(gfx::Insets( |
| 599 kMenuButtonVerticalPadding, kMenuButtonLeftPadding, | 599 kMenuButtonVerticalPadding, kMenuButtonLeftPadding, |
| 600 kMenuButtonVerticalPadding, kMenuButtonRightPadding)); | 600 kMenuButtonVerticalPadding, kMenuButtonRightPadding)); |
| 601 notifier_group_selector_->set_border(selector_border.release()); | 601 notifier_group_selector_->SetBorder( |
| 602 selector_border.PassAs<views::Border>()); |
| 602 notifier_group_selector_->SetFocusPainter(scoped_ptr<views::Painter>()); | 603 notifier_group_selector_->SetFocusPainter(scoped_ptr<views::Painter>()); |
| 603 notifier_group_selector_->set_animate_on_state_change(false); | 604 notifier_group_selector_->set_animate_on_state_change(false); |
| 604 notifier_group_selector_->SetFocusable(true); | 605 notifier_group_selector_->SetFocusable(true); |
| 605 contents_title_view->AddChildView(notifier_group_selector_); | 606 contents_title_view->AddChildView(notifier_group_selector_); |
| 606 } | 607 } |
| 607 | 608 |
| 608 contents_view->AddChildView(contents_title_view); | 609 contents_view->AddChildView(contents_title_view); |
| 609 | 610 |
| 610 size_t notifier_count = notifiers.size(); | 611 size_t notifier_count = notifiers.size(); |
| 611 for (size_t i = 0; i < notifier_count; ++i) { | 612 for (size_t i = 0; i < notifier_count; ++i) { |
| 612 NotifierButton* button = new NotifierButton(provider_, notifiers[i], this); | 613 NotifierButton* button = new NotifierButton(provider_, notifiers[i], this); |
| 613 EntryView* entry = new EntryView(button); | 614 EntryView* entry = new EntryView(button); |
| 614 | 615 |
| 615 // This code emulates separators using borders. We will create an invisible | 616 // This code emulates separators using borders. We will create an invisible |
| 616 // border on the last notifier, as the spec leaves a space for it. | 617 // border on the last notifier, as the spec leaves a space for it. |
| 617 scoped_ptr<views::Border> entry_border; | 618 scoped_ptr<views::Border> entry_border; |
| 618 if (i == notifier_count - 1) { | 619 if (i == notifier_count - 1) { |
| 619 entry_border.reset(views::Border::CreateEmptyBorder( | 620 entry_border = views::Border::CreateEmptyBorder( |
| 620 0, 0, settings::kEntrySeparatorHeight, 0)); | 621 0, 0, settings::kEntrySeparatorHeight, 0); |
| 621 } else { | 622 } else { |
| 622 entry_border.reset(views::Border::CreateSolidSidedBorder( | 623 entry_border = |
| 623 0, | 624 views::Border::CreateSolidSidedBorder(0, |
| 624 0, | 625 0, |
| 625 settings::kEntrySeparatorHeight, | 626 settings::kEntrySeparatorHeight, |
| 626 0, | 627 0, |
| 627 settings::kEntrySeparatorColor)); | 628 settings::kEntrySeparatorColor); |
| 628 } | 629 } |
| 629 entry->set_border(entry_border.release()); | 630 entry->SetBorder(entry_border.Pass()); |
| 630 entry->SetFocusable(true); | 631 entry->SetFocusable(true); |
| 631 contents_view->AddChildView(entry); | 632 contents_view->AddChildView(entry); |
| 632 buttons_.insert(button); | 633 buttons_.insert(button); |
| 633 } | 634 } |
| 634 | 635 |
| 635 scroller_->SetContents(contents_view); | 636 scroller_->SetContents(contents_view); |
| 636 | 637 |
| 637 contents_view->SetBoundsRect(gfx::Rect(contents_view->GetPreferredSize())); | 638 contents_view->SetBoundsRect(gfx::Rect(contents_view->GetPreferredSize())); |
| 638 InvalidateLayout(); | 639 InvalidateLayout(); |
| 639 } | 640 } |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 719 menu_anchor, | 720 menu_anchor, |
| 720 views::MenuItemView::BUBBLE_ABOVE, | 721 views::MenuItemView::BUBBLE_ABOVE, |
| 721 ui::MENU_SOURCE_MOUSE, | 722 ui::MENU_SOURCE_MOUSE, |
| 722 views::MenuRunner::CONTEXT_MENU)) | 723 views::MenuRunner::CONTEXT_MENU)) |
| 723 return; | 724 return; |
| 724 MessageCenterView* center_view = static_cast<MessageCenterView*>(parent()); | 725 MessageCenterView* center_view = static_cast<MessageCenterView*>(parent()); |
| 725 center_view->OnSettingsChanged(); | 726 center_view->OnSettingsChanged(); |
| 726 } | 727 } |
| 727 | 728 |
| 728 } // namespace message_center | 729 } // namespace message_center |
| OLD | NEW |