OLD | NEW |
| (Empty) |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include <map> | |
6 | |
7 #import <Cocoa/Cocoa.h> | |
8 | |
9 #import "base/mac/cocoa_protocols.h" | |
10 #include "base/scoped_nsobject.h" | |
11 #include "base/scoped_ptr.h" | |
12 #import "chrome/browser/ui/cocoa/base_bubble_controller.h" | |
13 | |
14 class ContentSettingBubbleModel; | |
15 @class InfoBubbleView; | |
16 | |
17 namespace content_setting_bubble { | |
18 // For every "show popup" button, remember the index of the popup tab contents | |
19 // it should open when clicked. | |
20 typedef std::map<NSButton*, int> PopupLinks; | |
21 } | |
22 | |
23 // Manages a "content blocked" bubble. | |
24 @interface ContentSettingBubbleController : BaseBubbleController { | |
25 @private | |
26 IBOutlet NSTextField* titleLabel_; | |
27 IBOutlet NSMatrix* allowBlockRadioGroup_; | |
28 | |
29 IBOutlet NSButton* manageButton_; | |
30 IBOutlet NSButton* doneButton_; | |
31 IBOutlet NSButton* loadAllPluginsButton_; | |
32 | |
33 // The container for the bubble contents of the geolocation bubble. | |
34 IBOutlet NSView* contentsContainer_; | |
35 | |
36 // The info button of the cookies bubble. | |
37 IBOutlet NSButton* infoButton_; | |
38 | |
39 IBOutlet NSTextField* blockedResourcesField_; | |
40 | |
41 scoped_ptr<ContentSettingBubbleModel> contentSettingBubbleModel_; | |
42 content_setting_bubble::PopupLinks popupLinks_; | |
43 } | |
44 | |
45 // Creates and shows a content blocked bubble. Takes ownership of | |
46 // |contentSettingBubbleModel| but not of the other objects. | |
47 + (ContentSettingBubbleController*) | |
48 showForModel:(ContentSettingBubbleModel*)contentSettingBubbleModel | |
49 parentWindow:(NSWindow*)parentWindow | |
50 anchoredAt:(NSPoint)anchoredAt; | |
51 | |
52 // Callback for the "don't block / continue blocking" radio group. | |
53 - (IBAction)allowBlockToggled:(id)sender; | |
54 | |
55 // Callback for "close" button. | |
56 - (IBAction)closeBubble:(id)sender; | |
57 | |
58 // Callback for "manage" button. | |
59 - (IBAction)manageBlocking:(id)sender; | |
60 | |
61 // Callback for "info" link. | |
62 - (IBAction)showMoreInfo:(id)sender; | |
63 | |
64 // Callback for "load all plugins" button. | |
65 - (IBAction)loadAllPlugins:(id)sender; | |
66 | |
67 @end | |
OLD | NEW |