Chromium Code Reviews| Index: ui/message_center/views/notifier_settings_view.h |
| diff --git a/ui/message_center/views/notifier_settings_view.h b/ui/message_center/views/notifier_settings_view.h |
| index 303eff4cd89edd4f66e4c80bd20331eed3e522d1..fc5d1899c974da1a6662cec12b3f96c10093d39e 100644 |
| --- a/ui/message_center/views/notifier_settings_view.h |
| +++ b/ui/message_center/views/notifier_settings_view.h |
| @@ -9,16 +9,23 @@ |
| #include "ui/message_center/notifier_settings.h" |
| #include "ui/message_center/views/message_bubble_base.h" |
| #include "ui/views/controls/button/image_button.h" |
| +#include "ui/views/controls/button/menu_button_listener.h" |
| #include "ui/views/view.h" |
| +namespace views { |
| +class MenuRunner; |
| +} |
| + |
| namespace message_center { |
| +class NotifierGroupMenuModel; |
| // A class to show the list of notifier extensions / URL patterns and allow |
| // users to customize the settings. |
| class MESSAGE_CENTER_EXPORT NotifierSettingsView |
| : public NotifierSettingsObserver, |
| public views::View, |
| - public views::ButtonListener { |
| + public views::ButtonListener, |
| + public views::MenuButtonListener { |
| public: |
| explicit NotifierSettingsView(NotifierSettingsProvider* provider); |
| virtual ~NotifierSettingsView(); |
| @@ -28,6 +35,7 @@ class MESSAGE_CENTER_EXPORT NotifierSettingsView |
| // Overridden from NotifierSettingsDelegate: |
| virtual void UpdateIconImage(const NotifierId& notifier_id, |
| const gfx::Image& icon) OVERRIDE; |
| + virtual void NotifierGroupChanged() OVERRIDE; |
| void set_provider(NotifierSettingsProvider* new_provider) { |
| provider_ = new_provider; |
| @@ -36,6 +44,9 @@ class MESSAGE_CENTER_EXPORT NotifierSettingsView |
| private: |
| class NotifierButton; |
| + // Given a new list of notifiers, updates the view to reflect it. |
| + void UpdateContentsView(const std::vector<Notifier*>& notifiers); |
| + |
| // Overridden from views::View: |
| virtual void Layout() OVERRIDE; |
| virtual gfx::Size GetMinimumSize() OVERRIDE; |
| @@ -46,12 +57,16 @@ class MESSAGE_CENTER_EXPORT NotifierSettingsView |
| // Overridden from views::ButtonListener: |
| virtual void ButtonPressed(views::Button* sender, |
| const ui::Event& event) OVERRIDE; |
| + virtual void OnMenuButtonClicked(views::View* source, |
| + const gfx::Point& point) OVERRIDE; |
| views::ImageButton* title_arrow_; |
| views::View* title_entry_; |
| views::ScrollView* scroller_; |
| NotifierSettingsProvider* provider_; |
| std::set<NotifierButton*> buttons_; |
| + scoped_ptr<NotifierGroupMenuModel> notifier_group_menu_model_; |
|
jianli
2013/08/05 20:48:03
Better to include scoped_ptr.h. Also better to inc
dewittj
2013/08/05 22:42:28
Done.
|
| + scoped_ptr<views::MenuRunner> notifier_group_menu_runner_; |
| DISALLOW_COPY_AND_ASSIGN(NotifierSettingsView); |
| }; |