From ee17fc263ed710648cfc5950a5bd603f8acacda2 Mon Sep 17 00:00:00 2001 From: Kent Sutherland Date: Tue, 29 Jun 2004 05:30:37 +0000 Subject: [PATCH] New zoom effect. --- ITKit.xcode/project.pbxproj | 32 +++ ITWindowEffect.m | 1 + ITZoomWindowEffect.h | 23 ++ ITZoomWindowEffect.m | 224 ++++++++++++++++++ Showcase/Controller.h | 3 + Showcase/Controller.m | 51 ++-- .../English.lproj/MainMenu.nib/classes.nib | 2 + Showcase/English.lproj/MainMenu.nib/info.nib | 6 +- .../MainMenu.nib/keyedobjects.nib | Bin 43473 -> 42743 bytes 9 files changed, 308 insertions(+), 34 deletions(-) create mode 100755 ITZoomWindowEffect.h create mode 100755 ITZoomWindowEffect.m diff --git a/ITKit.xcode/project.pbxproj b/ITKit.xcode/project.pbxproj index 7beefb5..e0c00c0 100755 --- a/ITKit.xcode/project.pbxproj +++ b/ITKit.xcode/project.pbxproj @@ -509,6 +509,34 @@ ); }; }; + 372C5812068FE72F00CEF54A = { + fileEncoding = 30; + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.objc; + path = ITZoomWindowEffect.m; + refType = 4; + sourceTree = ""; + }; + 372C5813068FE72F00CEF54A = { + fileEncoding = 30; + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + path = ITZoomWindowEffect.h; + refType = 4; + sourceTree = ""; + }; + 372C5814068FE72F00CEF54A = { + fileRef = 372C5812068FE72F00CEF54A; + isa = PBXBuildFile; + settings = { + }; + }; + 372C5815068FE72F00CEF54A = { + fileRef = 372C5813068FE72F00CEF54A; + isa = PBXBuildFile; + settings = { + }; + }; //370 //371 //372 @@ -1807,6 +1835,8 @@ 7C992DEA054F5179000B93EA, 7C992DE7054F5179000B93EA, 7C992DE8054F5179000B93EA, + 372C5813068FE72F00CEF54A, + 372C5812068FE72F00CEF54A, ); isa = PBXGroup; name = Effects; @@ -2161,6 +2191,7 @@ 2AC8319D056D037700A7D7E2, 3710912805C0825900ED0F36, 7C4BBADC05F98C9900734027, + 372C5815068FE72F00CEF54A, ); isa = PBXHeadersBuildPhase; runOnlyForDeploymentPostprocessing = 0; @@ -2221,6 +2252,7 @@ 2AC8319E056D037700A7D7E2, 3710912305C0821000ED0F36, 7C4BBADD05F98C9900734027, + 372C5814068FE72F00CEF54A, ); isa = PBXSourcesBuildPhase; runOnlyForDeploymentPostprocessing = 0; diff --git a/ITWindowEffect.m b/ITWindowEffect.m index 231dc76..576d6d1 100755 --- a/ITWindowEffect.m +++ b/ITWindowEffect.m @@ -12,6 +12,7 @@ NSClassFromString(@"ITSlideHorizontallyWindowEffect"), NSClassFromString(@"ITSlideVerticallyWindowEffect"), NSClassFromString(@"ITPivotWindowEffect"), + NSClassFromString(@"ITZoomWindowEffect"), nil]; return classes; diff --git a/ITZoomWindowEffect.h b/ITZoomWindowEffect.h new file mode 100755 index 0000000..9fc920e --- /dev/null +++ b/ITZoomWindowEffect.h @@ -0,0 +1,23 @@ +/* + * ITKit + * ITZoomWindowEffect + * Effect subclass which zooms (expands/shrinks) a window into position on the screen. + * + * Original Author : Kent Sutherland + * Responsibility : Kent Sutherland + * + * Copyright (c) 2002 - 2004 iThink Software. + * All Rights Reserved + * + */ + + +#import +#import "ITWindowEffect.h" + + +@interface ITZoomWindowEffect : ITWindowEffect { + +} + +@end diff --git a/ITZoomWindowEffect.m b/ITZoomWindowEffect.m new file mode 100755 index 0000000..e80735f --- /dev/null +++ b/ITZoomWindowEffect.m @@ -0,0 +1,224 @@ +#import "ITZoomWindowEffect.h" +#import "ITCoreGraphicsHacks.h" +#import "ITTransientStatusWindow.h" + + +@interface ITZoomWindowEffect (Private) +- (void)performAppearFromProgress:(float)progress effectTime:(float)time; +- (void)appearStep; +- (void)appearFinish; +- (void)performVanishFromProgress:(float)progress effectTime:(float)time; +- (void)vanishStep; +- (void)vanishFinish; +- (void)setZoom:(float)Zoom; +@end + + +@implementation ITZoomWindowEffect + + ++ (NSString *)effectName +{ + return @"Zoom"; +} + ++ (NSDictionary *)supportedPositions +{ + return [NSDictionary dictionaryWithObjectsAndKeys: + [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:YES], @"Left", + [NSNumber numberWithBool:YES], @"Center", + [NSNumber numberWithBool:YES], @"Right", nil] , @"Top" , + [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:YES], @"Left", + [NSNumber numberWithBool:YES], @"Center", + [NSNumber numberWithBool:YES], @"Right", nil] , @"Middle" , + [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:YES], @"Left", + [NSNumber numberWithBool:YES], @"Center", + [NSNumber numberWithBool:YES], @"Right", nil] , @"Bottom" , nil]; +} + + ++ (unsigned int)listOrder +{ + return 600; +} + + +/*************************************************************************/ +#pragma mark - +#pragma mark APPEAR METHODS +/*************************************************************************/ + +- (void)performAppear +{ + __idle = NO; + + [self setWindowVisibility:ITWindowAppearingState]; + [self performAppearFromProgress:0.0 effectTime:_effectTime]; +} + +- (void)performAppearFromProgress:(float)progress effectTime:(float)time +{ + [_window setEffectProgress:progress]; + _effectSpeed = (1.0 / (EFFECT_FPS * time)); + + if ( progress == 0.0 ) { + [self setZoom:0.0]; + [_window setAlphaValue:0.0]; + } + + [_window orderFront:self]; + _effectTimer = [NSTimer scheduledTimerWithTimeInterval:(1.0 / EFFECT_FPS) + target:self + selector:@selector(appearStep) + userInfo:nil + repeats:YES]; +} + +- (void)appearStep +{ + float interZoom = 0.0; + [_window setEffectProgress:([_window effectProgress] + _effectSpeed)]; + [_window setEffectProgress:( ([_window effectProgress] < 1.0) ? [_window effectProgress] : 1.0)]; + interZoom = (( sin(([_window effectProgress] * pi) - (pi / 2)) + 1 ) / 2); + [self setZoom:interZoom]; + [_window setAlphaValue:interZoom]; + + if ( [_window effectProgress] >= 1.0 ) { + [self appearFinish]; + } +} + +- (void)appearFinish +{ + [_effectTimer invalidate]; + _effectTimer = nil; + [self setWindowVisibility:ITWindowVisibleState]; + + __idle = YES; + + if ( __shouldReleaseWhenIdle ) { + [self release]; + } +} + +- (void)cancelAppear +{ + [self setWindowVisibility:ITWindowVanishingState]; + + [_effectTimer invalidate]; + _effectTimer = nil; + + [self performVanishFromProgress:[_window effectProgress] effectTime:(_effectTime / 3.5)]; +} + + +/*************************************************************************/ +#pragma mark - +#pragma mark VANISH METHODS +/*************************************************************************/ + +- (void)performVanish +{ + __idle = NO; + + [self setWindowVisibility:ITWindowVanishingState]; + [self performVanishFromProgress:1.0 effectTime:_effectTime]; +} + +- (void)performVanishFromProgress:(float)progress effectTime:(float)time +{ + [_window setEffectProgress:progress]; + _effectSpeed = (1.0 / (EFFECT_FPS * time)); + if ( progress == 1.0 ) { + [self setZoom:0.0]; + [_window setAlphaValue:1.0]; + } + + [_window orderFront:self]; + _effectTimer = [NSTimer scheduledTimerWithTimeInterval:(1.0 / EFFECT_FPS) + target:self + selector:@selector(vanishStep) + userInfo:nil + repeats:YES]; +} + +- (void)vanishStep +{ + float interZoom = 1.0; + [_window setEffectProgress:([_window effectProgress] - _effectSpeed)]; + [_window setEffectProgress:( ([_window effectProgress] > 0.0) ? [_window effectProgress] : 0.0)]; + interZoom = (( sin(([_window effectProgress] * pi) - (pi / 2)) + 1 ) / 2); + [self setZoom:interZoom]; + [_window setAlphaValue:interZoom]; + + if ( [_window effectProgress] <= 0.0 ) { + [self vanishFinish]; + } +} + +- (void)vanishFinish +{ + [_effectTimer invalidate]; + _effectTimer = nil; + [_window orderOut:self]; + [_window setAlphaValue:1.0]; + [self setZoom:0.0]; + [self setWindowVisibility:ITWindowHiddenState]; + + __idle = YES; + + if ( __shouldReleaseWhenIdle ) { + [self release]; + } +} + +- (void)cancelVanish +{ + [self setWindowVisibility:ITWindowAppearingState]; + + [_effectTimer invalidate]; + _effectTimer = nil; + + [self performAppearFromProgress:[_window effectProgress] effectTime:(_effectTime / 3.5)]; +} + + +/*************************************************************************/ +#pragma mark - +#pragma mark PRIVATE METHOD IMPLEMENTATIONS +/*************************************************************************/ + +- (void)setZoom:(float)Zoom +{ + int hPos = [_window horizontalPosition]; + CGAffineTransform transform; + NSPoint translation; + NSRect screenFrame = [[_window screen] frame]; + + translation.x = screenFrame.origin.x + ([_window frame].size.width / 2.0); + translation.y = screenFrame.origin.y + ([_window frame].size.height / 2.0); + transform = CGAffineTransformMakeTranslation(translation.x, translation.y); + transform = CGAffineTransformScale(transform, 1.0 / Zoom, 1.0 / Zoom); + transform = CGAffineTransformTranslate(transform, -translation.x, -translation.y); + + if (hPos == ITWindowPositionLeft) { + translation.x = -[_window frame].origin.x; + } else if (hPos == ITWindowPositionRight) { + translation.x = -[_window frame].origin.x; + } else { + translation.x = -[_window frame].origin.x; + } + + translation.y = -( [[_window screen] frame].size.height - [_window frame].origin.y - [_window frame].size.height ); + + transform = CGAffineTransformTranslate(transform, translation.x, translation.y); + + CGSSetWindowTransform([NSApp contextID], + (CGSWindowID)[_window windowNumber], + transform); +} + +@end diff --git a/Showcase/Controller.h b/Showcase/Controller.h index 399b3c9..490bec0 100755 --- a/Showcase/Controller.h +++ b/Showcase/Controller.h @@ -26,6 +26,8 @@ IBOutlet ITTextField *testTextField; // ITTransientStatusWindow Support + IBOutlet NSPopUpButton *entryEffectPopup; + IBOutlet NSPopUpButton *exitEffectPopup; ITIconAndTextStatusWindow *statusWindow; IBOutlet NSTextView *swSampleTextView; IBOutlet NSPopUpButton *swVanishModePopup; @@ -50,6 +52,7 @@ - (IBAction)toggleCastsShadow:(id)sender; // ITTransientStatusWindow Support +- (void)populateEffectPopups; - (IBAction)buildStatusWindow:(id)sender; - (IBAction)toggleStatusWindow:(id)sender; - (IBAction)changeWindowSetting:(id)sender; diff --git a/Showcase/Controller.m b/Showcase/Controller.m index ba9c278..ac02c52 100755 --- a/Showcase/Controller.m +++ b/Showcase/Controller.m @@ -9,6 +9,7 @@ #import "ITSlideHorizontallyWindowEffect.h" #import "ITSlideVerticallyWindowEffect.h" #import "ITPivotWindowEffect.h" +#import "ITZoomWindowEffect.h" #import "ITMultilineTextFieldCell.h" @@ -40,9 +41,10 @@ [bevelView setBevelDepth:10]; statusWindow = [ITIconAndTextStatusWindow sharedWindow]; [statusWindow setEntryEffect:[[ITCutWindowEffect alloc] initWithWindow:statusWindow]]; - [statusWindow setExitEffect:[[ITDissolveWindowEffect alloc] initWithWindow:statusWindow]]; + [statusWindow setExitEffect:[[ITCutWindowEffect alloc] initWithWindow:statusWindow]]; [[statusWindow entryEffect] setEffectTime:[swEntrySpeedSlider floatValue]]; [[statusWindow exitEffect] setEffectTime:[swExitSpeedSlider floatValue]]; + [self populateEffectPopups]; // [tabView setAllowsDragging:YES]; [[NSColorPanel sharedColorPanel] setShowsAlpha:YES]; @@ -152,6 +154,21 @@ #pragma mark ITTransientStatusWindow SUPPORT /*************************************************************************/ +- (void)populateEffectPopups +{ + NSArray *effects = [ITWindowEffect effectClasses]; + int i; + [entryEffectPopup removeAllItems]; + [exitEffectPopup removeAllItems]; + for (i = 0; i < [effects count]; i++) { + id anItem = [effects objectAtIndex:i]; + [entryEffectPopup addItemWithTitle:[anItem effectName]]; + [exitEffectPopup addItemWithTitle:[anItem effectName]]; + [[entryEffectPopup lastItem] setRepresentedObject:anItem]; + [[exitEffectPopup lastItem] setRepresentedObject:anItem]; + } +} + - (IBAction)buildStatusWindow:(id)sender { NSImage *image = [NSImage imageNamed:SW_IMAGE]; @@ -194,39 +211,12 @@ } else if ( [sender tag] == 3061 ) { [[statusWindow exitEffect] setEffectTime:[sender floatValue]]; } else if ( [sender tag] == 3070 ) { - - if ( [sender indexOfSelectedItem] == 0 ) { - [statusWindow setEntryEffect:[[[ITCutWindowEffect alloc] initWithWindow:statusWindow] autorelease]]; - } else if ( [sender indexOfSelectedItem] == 1 ) { - [statusWindow setEntryEffect:[[[ITDissolveWindowEffect alloc] initWithWindow:statusWindow] autorelease]]; - } else if ( [sender indexOfSelectedItem] == 2 ) { - [statusWindow setEntryEffect:[[[ITSlideVerticallyWindowEffect alloc] initWithWindow:statusWindow] autorelease]]; - } else if ( [sender indexOfSelectedItem] == 3 ) { - [statusWindow setEntryEffect:[[[ITSlideHorizontallyWindowEffect alloc] initWithWindow:statusWindow] autorelease]]; - } else if ( [sender indexOfSelectedItem] == 4 ) { - [statusWindow setEntryEffect:[[[ITPivotWindowEffect alloc] initWithWindow:statusWindow] autorelease]]; - } - + [statusWindow setEntryEffect:[[[[[sender selectedItem] representedObject] alloc] initWithWindow:statusWindow] autorelease]]; [[statusWindow entryEffect] setEffectTime:[swEntrySpeedSlider floatValue]]; - } else if ( [sender tag] == 3080 ) { - - if ( [sender indexOfSelectedItem] == 0 ) { - [statusWindow setExitEffect:[[ITCutWindowEffect alloc] initWithWindow:statusWindow]]; - } else if ( [sender indexOfSelectedItem] == 1 ) { - [statusWindow setExitEffect:[[ITDissolveWindowEffect alloc] initWithWindow:statusWindow]]; - } else if ( [sender indexOfSelectedItem] == 2 ) { - [statusWindow setExitEffect:[[ITSlideVerticallyWindowEffect alloc] initWithWindow:statusWindow]]; - } else if ( [sender indexOfSelectedItem] == 3 ) { - [statusWindow setExitEffect:[[ITSlideHorizontallyWindowEffect alloc] initWithWindow:statusWindow]]; - } else if ( [sender indexOfSelectedItem] == 4 ) { - [statusWindow setExitEffect:[[ITPivotWindowEffect alloc] initWithWindow:statusWindow]]; - } - + [statusWindow setExitEffect:[[[[[sender selectedItem] representedObject] alloc] initWithWindow:statusWindow] autorelease]]; [[statusWindow exitEffect] setEffectTime:[swExitSpeedSlider floatValue]]; - } else if ( [sender tag] == 3090 ) { - if ( [sender indexOfSelectedItem] == 0 ) { [(ITTSWBackgroundView *)[statusWindow contentView] setBackgroundMode:ITTSWBackgroundApple]; } else if ( [sender indexOfSelectedItem] == 1 ) { @@ -234,7 +224,6 @@ } else if ( [sender indexOfSelectedItem] == 2 ) { [(ITTSWBackgroundView *)[statusWindow contentView] setBackgroundMode:ITTSWBackgroundColored]; } - } else if ( [sender tag] == 3100 ) { [(ITTSWBackgroundView *)[statusWindow contentView] setBackgroundColor:[sender color]]; } diff --git a/Showcase/English.lproj/MainMenu.nib/classes.nib b/Showcase/English.lproj/MainMenu.nib/classes.nib index 512782e..c083aec 100755 --- a/Showcase/English.lproj/MainMenu.nib/classes.nib +++ b/Showcase/English.lproj/MainMenu.nib/classes.nib @@ -22,6 +22,8 @@ OUTLETS = { bevelView = ITBevelView; button = ITButton; + entryEffectPopup = NSPopUpButton; + exitEffectPopup = NSPopUpButton; showImageCheckBox = NSButton; showStatusItemCheckBox = NSButton; showTitleCheckBox = NSButton; diff --git a/Showcase/English.lproj/MainMenu.nib/info.nib b/Showcase/English.lproj/MainMenu.nib/info.nib index 03db0ad..2f4c012 100755 --- a/Showcase/English.lproj/MainMenu.nib/info.nib +++ b/Showcase/English.lproj/MainMenu.nib/info.nib @@ -7,18 +7,18 @@ IBEditorPositions 197 - 624 471 153 118 0 0 1152 842 + 624 409 153 118 0 0 1152 746 29 1 271 349 44 0 0 1056 770 IBFramework Version - 349.0 + 364.0 IBOpenObjects 21 197 IBSystem Version - 7D24 + 7H63 diff --git a/Showcase/English.lproj/MainMenu.nib/keyedobjects.nib b/Showcase/English.lproj/MainMenu.nib/keyedobjects.nib index a0b1e188a65778fd727668ec9a156eb698c3a3f5..e3a07fa2bbaeb353a3c42617b562869bf6aaddad 100755 GIT binary patch literal 42743 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 literal 43473 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

jxUDkF(B%W5; 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