+ if ( (self = [super init]) ) {
+
+ _window = [window retain];
+ _effectTime = DEFAULT_EFFECT_TIME;
+ _effectTimer = nil;
+ __shouldReleaseWhenIdle = NO;
+ __idle = YES;
+
+ if ( [window conformsToProtocol:@protocol(ITWindowPositioning)] ) {
+ // 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;
+ _horizontalPosition = ITWindowPositionLeft;
+ }
+ }
+ return self;