Moving to the new means of setting the window visibility state: allowing the effects...
authorMatthew Judy <mjudy@ithinksw.com>
Sun, 13 Apr 2003 02:38:15 +0000 (02:38 +0000)
committerMatthew Judy <mjudy@ithinksw.com>
Sun, 13 Apr 2003 02:38:15 +0000 (02:38 +0000)
ITPivotWindowEffect.m
ITTransientStatusWindow.m

index 299506a..52b2858 100755 (executable)
@@ -1,16 +1,21 @@
 #import "ITPivotWindowEffect.h"
 #import "ITCoreGraphicsHacks.h"
+#import "ITTransientStatusWindow.h"
+
 
 @interface ITPivotWindowEffect (Private)
 - (void)setPivot:(float)angle;
-- (void)pivotFinish;
+- (void)appearFinish;
+- (void)vanishFinish;
 @end
 
-@implementation ITPivotWindowEffect
 
+@implementation ITPivotWindowEffect
 
 - (void)performAppear
 {
+      // Cast so the compiler won't gripe
+    [(ITTransientStatusWindow *)_window setVisibilityState:ITTransientStatusWindowAppearingState];
     [self setPivot:315.0];
     _effectProgress = 0.0;
     [_window setAlphaValue:0.0];
@@ -24,6 +29,8 @@
 
 - (void)performVanish
 {
+      // Cast so the compiler won't gripe
+    [(ITTransientStatusWindow *)_window setVisibilityState:ITTransientStatusWindowVanishingState];
     [self setPivot:0.0];
     _effectProgress = 1.0;
     [_window setAlphaValue:1.0];
 
 - (void)cancelAppear
 {
-    [self pivotFinish];
+    [self appearFinish];
     [_window orderOut:self];
     [self setPivot:0.0];
     [_window setAlphaValue:1.0];
+      // Cast so the compiler won't gripe
+    [(ITTransientStatusWindow *)_window setVisibilityState:ITTransientStatusWindowHiddenState];
 }
 
 - (void)cancelVanish
 {
-    [self pivotFinish];
+    [self vanishFinish];
     [self setPivot:0.0];
     [_window setAlphaValue:1.0];
     [_window orderFront:self];
     [_window display];
+      // Cast so the compiler won't gripe
+    [(ITTransientStatusWindow *)_window setVisibilityState:ITTransientStatusWindowVisibleState];
 }
 
 - (void)appearStep
@@ -62,7 +73,7 @@
     [_window setAlphaValue:interPivot];
 
     if ( _effectProgress >= 1.0 ) {
-        [self pivotFinish];
+        [self appearFinish];
     }
 }
 
     [_window setAlphaValue:interPivot];
 
     if ( _effectProgress <= 0.0 ) {
-        [self pivotFinish];
+        [self vanishFinish];
     }
 }
 
-- (void)pivotFinish
+- (void)appearFinish
 {
     [_effectTimer invalidate];
     _effectTimer = nil;
+      // Cast so the compiler won't gripe
+    [(ITTransientStatusWindow *)_window setVisibilityState:ITTransientStatusWindowVisibleState];
 }
 
+- (void)vanishFinish
+{
+    [_effectTimer invalidate];
+    _effectTimer = nil;
+      // Cast so the compiler won't gripe
+    [(ITTransientStatusWindow *)_window setVisibilityState:ITTransientStatusWindowHiddenState];
+}
 
 - (void)setPivot:(float)angle
 {
index f2ed917..b06fb3a 100755 (executable)
@@ -152,38 +152,33 @@ static ITTransientStatusWindow *staticWindow = nil;
 
 */
 
- - (IBAction)appear:(id)sender
- {
-    NSLog(@"%i", _visibilityState);
+- (IBAction)appear:(id)sender
+{
     if ( _visibilityState == ITTransientStatusWindowHiddenState ) {
          // Window is hidden.  Appear as normal, and start the timer.
         if ( _entryEffect == nil ) {
             [self orderFront:self];
             _visibilityState = ITTransientStatusWindowVisibleState;
         } else {
-            _visibilityState = ITTransientStatusWindowAppearingState;
             [_entryEffect performAppear];
-            _visibilityState = ITTransientStatusWindowVisibleState;
         }
         [self startVanishTimer];
     } else if ( _visibilityState == ITTransientStatusWindowVisibleState ) {
          // Window is completely visible.  Simply reset the timer.
         [self startVanishTimer];
     } else if ( _visibilityState == ITTransientStatusWindowAppearingState ) {
-         // Window is appearing.  Do nothing.
+         // Window is on its way in.  Do nothing.
     } else if ( _visibilityState == ITTransientStatusWindowVanishingState ) {
-        NSLog(@"%i", _visibilityState);
+        // Window is on its way out.  Cancel the vanish.
         if ( _exitEffect == nil ) {
             [self orderFront:self];
             _visibilityState = ITTransientStatusWindowVisibleState;
         } else {
-            _visibilityState = ITTransientStatusWindowAppearingState;
             [_exitEffect cancelVanish];
-            _visibilityState = ITTransientStatusWindowVisibleState;
         }
         [self startVanishTimer];
     }
- }
+}
 
 - (IBAction)vanish:(id)sender
 {
@@ -193,12 +188,7 @@ static ITTransientStatusWindow *staticWindow = nil;
             [self orderOut:self];
             _visibilityState = ITTransientStatusWindowHiddenState;
         } else {
-            _visibilityState = ITTransientStatusWindowVanishingState;
-            NSLog(@"%i", _visibilityState);
             [_exitEffect performVanish];
-            NSLog(@"%i", _visibilityState);
-            _visibilityState = ITTransientStatusWindowHiddenState;
-            NSLog(@"%i", _visibilityState);
         }
         [self startVanishTimer];
     } else if ( _visibilityState == ITTransientStatusWindowHiddenState ) {
@@ -206,7 +196,6 @@ static ITTransientStatusWindow *staticWindow = nil;
     } else if ( _visibilityState == ITTransientStatusWindowAppearingState ) {
         // Window is on its way in.  Cancel appear.
         [_entryEffect cancelAppear];
-        _visibilityState = ITTransientStatusWindowHiddenState;
     } else if ( _visibilityState == ITTransientStatusWindowVanishingState ) {
         // Window is on its way out.  Do nothing.
     }