X-Git-Url: http://git.ithinksw.org/ITKit.git/blobdiff_plain/7258eefd9885c903817ec277fe611aff4b0ff5c6..7c89200521dd8c6cb8fc8a17c633ac80d4b18bd2:/ITWindowEffect.m?ds=inline diff --git a/ITWindowEffect.m b/ITWindowEffect.m index bb7cfed..752742b 100755 --- a/ITWindowEffect.m +++ b/ITWindowEffect.m @@ -1,4 +1,5 @@ #import "ITWindowEffect.h" +#import "ITTransientStatusWindow.h" @implementation ITWindowEffect @@ -10,12 +11,12 @@ _window = [window retain]; _effectTime = DEFAULT_EFFECT_TIME; - _effectProgress = 0.00; _effectTimer = nil; if ( [window conformsToProtocol:@protocol(ITWindowPositioning)] ) { - _verticalPosition = (ITVerticalWindowPosition)[window verticalPosition]; - _horizontalPosition = (ITHorizontalWindowPosition)[window horizontalPosition]; + // Casts so the compiler won't gripe + _verticalPosition = (ITVerticalWindowPosition)[(ITTransientStatusWindow *)window verticalPosition]; + _horizontalPosition = (ITHorizontalWindowPosition)[(ITTransientStatusWindow *)window horizontalPosition]; } else { NSLog(@"ITWindowEffect - initWithWindow: - window does not conform to ITWindowPositioning."); _verticalPosition = ITWindowPositionBottom; @@ -32,7 +33,28 @@ - (void)setWindow:(NSWindow *)newWindow { - _window = newWindow; + [_window autorelease]; + _window = [newWindow retain]; +} + +- (void)setWindowVisibility:(ITWindowVisibilityState)visibilityState +{ + if ( [_window conformsToProtocol:@protocol(ITWindowMotility)] ) { + // Cast so the compiler won't gripe + [(ITTransientStatusWindow *)_window setVisibilityState:visibilityState]; + } else { + NSLog(@"ITWindowEffect - setWindowVisibility: - window does not conform to ITWindowVisibility."); + } +} + +- (float)effectTime +{ + return _effectTime; +} + +- (void)setEffectTime:(float)newTime +{ + _effectTime = newTime; } - (void)performAppear @@ -45,6 +67,16 @@ NSLog(@"ITWindowEffect does not implement performVanish."); } +- (void)cancelAppear +{ + NSLog(@"ITWindowEffect does not implement cancelAppear."); +} + +- (void)cancelVanish +{ + NSLog(@"ITWindowEffect does not implement cancelVanish."); +} + - (void)dealloc { [_window release];