1 // Copyright (c) 2012 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 #ifndef CHROME_BROWSER_UI_COCOA_CONSTRAINED_WINDOW_CONSTRAINED_WINDOW_ANIMATION_H_ 6 #define CHROME_BROWSER_UI_COCOA_CONSTRAINED_WINDOW_CONSTRAINED_WINDOW_ANIMATION_H_ 7 8 #import <Cocoa/Cocoa.h> 9 10 #include "base/mac/scoped_nsobject.h" 11 12 // Base class for all constrained window animation classes. 13 @interface ConstrainedWindowAnimationBase : NSAnimation { 14 @protected 15 base::scoped_nsobject<NSWindow> window_; 16 } 17 18 - (id)initWithWindow:(NSWindow*)window; 19 20 @end 21 22 // An animation to show a window. 23 @interface ConstrainedWindowAnimationShow : ConstrainedWindowAnimationBase 24 @end 25 26 // An animation to hide a window. 27 @interface ConstrainedWindowAnimationHide : ConstrainedWindowAnimationBase 28 @end 29 30 // An animation that pulses the window by growing it then shrinking it back. 31 @interface ConstrainedWindowAnimationPulse : ConstrainedWindowAnimationBase 32 @end 33 34 #endif // CHROME_BROWSER_UI_COCOA_CONSTRAINED_WINDOW_CONSTRAINED_WINDOW_ANIMATION_H_ 35