OLD | NEW |
1 // Copyright (c) 2012 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 ContentSettingBubbleModelDelegate; | 20 class Browser; |
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 | |
32 static ContentSettingBubbleModel* CreateContentSettingBubbleModel( | 30 static ContentSettingBubbleModel* CreateContentSettingBubbleModel( |
33 Delegate* delegate, | 31 Browser* browser, |
34 TabContentsWrapper* tab_contents, | 32 TabContentsWrapper* tab_contents, |
35 Profile* profile, | 33 Profile* profile, |
36 ContentSettingsType content_type); | 34 ContentSettingsType content_type); |
37 | 35 |
38 ContentSettingsType content_type() const { return content_type_; } | 36 ContentSettingsType content_type() const { return content_type_; } |
39 | 37 |
40 struct PopupItem { | 38 struct PopupItem { |
41 SkBitmap bitmap; | 39 SkBitmap bitmap; |
42 std::string title; | 40 std::string title; |
43 TabContentsWrapper* tab_contents; | 41 TabContentsWrapper* tab_contents; |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 Profile* profile_; | 127 Profile* profile_; |
130 ContentSettingsType content_type_; | 128 ContentSettingsType content_type_; |
131 BubbleContent bubble_content_; | 129 BubbleContent bubble_content_; |
132 // A registrar for listening for TAB_CONTENTS_DESTROYED notifications. | 130 // A registrar for listening for TAB_CONTENTS_DESTROYED notifications. |
133 content::NotificationRegistrar registrar_; | 131 content::NotificationRegistrar registrar_; |
134 | 132 |
135 DISALLOW_COPY_AND_ASSIGN(ContentSettingBubbleModel); | 133 DISALLOW_COPY_AND_ASSIGN(ContentSettingBubbleModel); |
136 }; | 134 }; |
137 | 135 |
138 #endif // CHROME_BROWSER_UI_CONTENT_SETTINGS_CONTENT_SETTING_BUBBLE_MODEL_H_ | 136 #endif // CHROME_BROWSER_UI_CONTENT_SETTINGS_CONTENT_SETTING_BUBBLE_MODEL_H_ |
OLD | NEW |