Index: chrome/browser/cocoa/infobar_controller.h |
=================================================================== |
--- chrome/browser/cocoa/infobar_controller.h (revision 30850) |
+++ chrome/browser/cocoa/infobar_controller.h (working copy) |
@@ -4,7 +4,8 @@ |
#import <Cocoa/Cocoa.h> |
-@class InfoBarContainerController; |
+@class AnimatableView; |
+@protocol InfoBarContainer; |
class InfoBarDelegate; |
// A controller for an infobar in the browser window. There is one |
@@ -13,10 +14,12 @@ |
// override addAdditionalControls to customize the UI. |
@interface InfoBarController : NSViewController { |
@private |
- InfoBarContainerController* containerController_; // weak, owns us |
+ id<InfoBarContainer> containerController_; // weak, owns us |
+ BOOL infoBarClosing_; |
@protected |
InfoBarDelegate* delegate_; // weak |
+ IBOutlet NSView* infoBarView_; |
IBOutlet NSImageView* image_; |
IBOutlet NSTextField* label_; |
IBOutlet NSButton* okButton_; |
@@ -35,12 +38,23 @@ |
// infobar without taking any action. |
- (IBAction)dismiss:(id)sender; |
+// Returns a pointer to this controller's view, cast as an AnimatableView. |
+- (AnimatableView*)animatableView; |
+ |
+// Open or animate open the infobar. |
+- (void)open; |
+- (void)animateOpen; |
+ |
+// Close or animate close the infobar. |
+- (void)close; |
+- (void)animateClosed; |
+ |
// Subclasses can override this method to add additional controls to |
// the infobar view. This method is called by awakeFromNib. The |
// default implementation does nothing. |
- (void)addAdditionalControls; |
-@property(assign, nonatomic) InfoBarContainerController* containerController; |
+@property(assign, nonatomic) id<InfoBarContainer> containerController; |
@property(readonly) InfoBarDelegate* delegate; |
@end |