OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #ifndef CHROME_BROWSER_UI_CONTENT_SETTINGS_CONTENT_SETTING_BUBBLE_MODEL_H_ | 5 #ifndef CHROME_BROWSER_UI_CONTENT_SETTINGS_CONTENT_SETTING_BUBBLE_MODEL_H_ |
6 #define CHROME_BROWSER_UI_CONTENT_SETTINGS_CONTENT_SETTING_BUBBLE_MODEL_H_ | 6 #define CHROME_BROWSER_UI_CONTENT_SETTINGS_CONTENT_SETTING_BUBBLE_MODEL_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <set> | 9 #include <set> |
10 #include <string> | 10 #include <string> |
11 #include <vector> | 11 #include <vector> |
12 | 12 |
13 #include "base/compiler_specific.h" | 13 #include "base/compiler_specific.h" |
14 #include "chrome/common/content_settings.h" | 14 #include "chrome/common/content_settings.h" |
15 #include "content/public/browser/notification_observer.h" | 15 #include "content/public/browser/notification_observer.h" |
16 #include "content/public/browser/notification_registrar.h" | 16 #include "content/public/browser/notification_registrar.h" |
17 #include "googleurl/src/gurl.h" | 17 #include "googleurl/src/gurl.h" |
18 #include "third_party/skia/include/core/SkBitmap.h" | 18 #include "third_party/skia/include/core/SkBitmap.h" |
19 | 19 |
20 class Browser; | 20 class ContentSettingBubbleModelDelegate; |
21 class Profile; | 21 class Profile; |
22 class TabContentsWrapper; | 22 class TabContentsWrapper; |
23 | 23 |
24 // This model provides data for ContentSettingBubble, and also controls | 24 // This model provides data for ContentSettingBubble, and also controls |
25 // the action triggered when the allow / block radio buttons are triggered. | 25 // the action triggered when the allow / block radio buttons are triggered. |
26 class ContentSettingBubbleModel : public content::NotificationObserver { | 26 class ContentSettingBubbleModel : public content::NotificationObserver { |
27 public: | 27 public: |
28 virtual ~ContentSettingBubbleModel(); | 28 virtual ~ContentSettingBubbleModel(); |
29 | 29 |
| 30 typedef ContentSettingBubbleModelDelegate Delegate; |
| 31 |
30 static ContentSettingBubbleModel* CreateContentSettingBubbleModel( | 32 static ContentSettingBubbleModel* CreateContentSettingBubbleModel( |
31 Browser* browser, | 33 Delegate* delegate, |
32 TabContentsWrapper* tab_contents, | 34 TabContentsWrapper* tab_contents, |
33 Profile* profile, | 35 Profile* profile, |
34 ContentSettingsType content_type); | 36 ContentSettingsType content_type); |
35 | 37 |
36 ContentSettingsType content_type() const { return content_type_; } | 38 ContentSettingsType content_type() const { return content_type_; } |
37 | 39 |
38 struct PopupItem { | 40 struct PopupItem { |
39 SkBitmap bitmap; | 41 SkBitmap bitmap; |
40 std::string title; | 42 std::string title; |
41 TabContentsWrapper* tab_contents; | 43 TabContentsWrapper* tab_contents; |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 Profile* profile_; | 129 Profile* profile_; |
128 ContentSettingsType content_type_; | 130 ContentSettingsType content_type_; |
129 BubbleContent bubble_content_; | 131 BubbleContent bubble_content_; |
130 // A registrar for listening for TAB_CONTENTS_DESTROYED notifications. | 132 // A registrar for listening for TAB_CONTENTS_DESTROYED notifications. |
131 content::NotificationRegistrar registrar_; | 133 content::NotificationRegistrar registrar_; |
132 | 134 |
133 DISALLOW_COPY_AND_ASSIGN(ContentSettingBubbleModel); | 135 DISALLOW_COPY_AND_ASSIGN(ContentSettingBubbleModel); |
134 }; | 136 }; |
135 | 137 |
136 #endif // CHROME_BROWSER_UI_CONTENT_SETTINGS_CONTENT_SETTING_BUBBLE_MODEL_H_ | 138 #endif // CHROME_BROWSER_UI_CONTENT_SETTINGS_CONTENT_SETTING_BUBBLE_MODEL_H_ |
OLD | NEW |