X-Git-Url: http://git.ithinksw.org/ITKit.git/blobdiff_plain/5cf6107f7fb51538c33d2839a2485493a7446c43..63956bb9f9984a26dc8147615be854e93ccc6b50:/ITPivotWindowEffect.m diff --git a/ITPivotWindowEffect.m b/ITPivotWindowEffect.m index fdacd63..bcf4f54 100755 --- a/ITPivotWindowEffect.m +++ b/ITPivotWindowEffect.m @@ -17,6 +17,29 @@ @implementation ITPivotWindowEffect ++ (NSString *)effectName +{ + return @"Pivot"; +} + ++ (NSDictionary *)supportedPositions +{ + return [NSDictionary dictionaryWithObjectsAndKeys: + [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:YES], @"Left", + [NSNumber numberWithBool:NO], @"Center", + [NSNumber numberWithBool:YES], @"Right", nil] , @"Top" , + [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:NO], @"Left", + [NSNumber numberWithBool:NO], @"Center", + [NSNumber numberWithBool:NO], @"Right", nil] , @"Middle" , + [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:YES], @"Left", + [NSNumber numberWithBool:NO], @"Center", + [NSNumber numberWithBool:YES], @"Right", nil] , @"Bottom" , nil]; +} + + /*************************************************************************/ #pragma mark - #pragma mark APPEAR METHODS @@ -178,20 +201,22 @@ if ( [(ITTransientStatusWindow *)_window verticalPosition] == ITWindowPositionBottom ) { degAngle = (angle * (pi / 180)); } else if ( [(ITTransientStatusWindow *)_window verticalPosition] == ITWindowPositionTop ) { - degAngle = (-angle * (pi / 180)); + degAngle = (angle * (pi / 180)); } } transform = CGAffineTransformMakeRotation(degAngle); // Set pivot rotation point - transform.tx = -( 32.0 + [[_window screen] visibleFrame].origin.x ); + //transform.tx = -( 32.0 + [[_window screen] visibleFrame].origin.x ); transform.ty = ( [_window frame].size.height + 32.0 + [[_window screen] visibleFrame].origin.y ); if ( [(ITTransientStatusWindow *)_window horizontalPosition] == ITWindowPositionLeft ) { appearPoint.x = -( 32.0 + [[_window screen] visibleFrame].origin.x ); + transform.tx = -( 32.0 + [[_window screen] visibleFrame].origin.x ); } else if ( [(ITTransientStatusWindow *)_window horizontalPosition] == ITWindowPositionRight ) { - appearPoint.x = -(([[_window screen] visibleFrame].size.width + [[_window screen] visibleFrame].origin.x) - 32.0 - [_window frame].size.width); + transform.tx = -( 32.0 + [[_window screen] visibleFrame].origin.x ) + [_window frame].size.width; + appearPoint.x = -(([[_window screen] visibleFrame].size.width + [[_window screen] visibleFrame].origin.x) - 64.0); } else if ( [(ITTransientStatusWindow *)_window horizontalPosition] == ITWindowPositionCenter ) { appearPoint.x = ( [_window frame].size.width - [[_window screen] visibleFrame].size.width ) / 2; }