X-Git-Url: http://git.ithinksw.org/ITKit.git/blobdiff_plain/079b33aed3d1c849f1f46022040813d6394100f2..40172152adfcef7971072e82b8eb226ecb9b127c:/ITWindowEffect.h diff --git a/ITWindowEffect.h b/ITWindowEffect.h index 1c4e3cb..9ce6fcf 100755 --- a/ITWindowEffect.h +++ b/ITWindowEffect.h @@ -15,16 +15,17 @@ #import #import "ITWindowPositioning.h" +@class ITTransientStatusWindow; #define EFFECT_FPS 30.0 #define DEFAULT_EFFECT_TIME 0.75 typedef enum { - ITTransientStatusWindowHiddenState, - ITTransientStatusWindowAppearingState, - ITTransientStatusWindowVisibleState, - ITTransientStatusWindowVanishingState + ITWindowHiddenState, + ITWindowAppearingState, + ITWindowVisibleState, + ITWindowVanishingState } ITWindowVisibilityState; @@ -36,20 +37,24 @@ typedef enum { @end -@protocol ITWindowVisibility +@protocol ITWindowMotility - (ITWindowVisibilityState)visibilityState; - (void)setVisibilityState:(ITWindowVisibilityState)newState; +- (float)effectProgress; +- (void)setEffectProgress:(float)newProgress; @end @interface ITWindowEffect : NSObject { - NSWindow *_window; + ITTransientStatusWindow *_window; float _effectTime; - double _effectProgress; + float _effectSpeed; ITVerticalWindowPosition _verticalPosition; ITHorizontalWindowPosition _horizontalPosition; NSTimer *_effectTimer; + BOOL __idle; + BOOL __shouldReleaseWhenIdle; } // Designated initializer @@ -61,4 +66,9 @@ typedef enum { - (void)setWindowVisibility:(ITWindowVisibilityState)visibilityState; +- (float)effectTime; +- (void)setEffectTime:(float)newTime; + +- (void)releaseWhenIdle; + @end