Incremental checkin for Status Windows, and correcting a path setting.
[ITKit.git] / Showcase / Controller.m
index f09bdf7..a8914aa 100755 (executable)
@@ -1,6 +1,7 @@
 #import "Controller.h"
 #import "ITTransientStatusWindow.h"
 #import "ITTextField.h"
+#import "ITPivotWindowEffect.h"
 
 #define SW_PAD    24.0
 #define SW_SPACE  24.0
     [[statusWindow contentView] addSubview:textField];
 
     [[statusWindow contentView] setNeedsDisplay:YES];
+
+    [statusWindow setEntryEffect:[[ITPivotWindowEffect alloc] initWithWindow:statusWindow]];
+    [statusWindow setExitEffect:[[ITPivotWindowEffect alloc] initWithWindow:statusWindow]];
 }
 
 - (IBAction)showStatusWindow:(id)sender
 {
     [[statusWindow contentView] setNeedsDisplay:YES];
-/*
-    [statusWindow setFrame:NSMakeRect( (0.0 - NSWidth([statusWindow frame])),
-                                       SW_BORDER,
-                                       NSWidth([statusWindow frame]),
-                                       NSHeight([statusWindow frame]) )
-                   display:YES];
-*/
-    [statusWindow orderFront:self];
-/*
-    [statusWindow setFrame:NSMakeRect( SW_BORDER,
-                                       SW_BORDER,
-                                       NSWidth([statusWindow frame]),
-                                       NSHeight([statusWindow frame]) )
-                   display:YES
-                   animate:YES];
-*/
+    [statusWindow appear:self];
 }
 
 - (IBAction)hideStatusWindow:(id)sender
 {
-    [statusWindow orderOut:self];
+    [statusWindow vanish:self];
 }
 
-- (IBAction)setRotation:(id)sender
+- (IBAction)changeWindowSetting:(id)sender
 {
-    [statusWindow setPivot:[sender floatValue]];
+    switch ( [sender tag] )
+    {
+        case 3010:  // Not yet supported.
+            break;
+        case 3020:  // Not yet supported.
+            break;
+        case 3030:  // Change vanish delay
+            [statusWindow setExitDelay:[sender floatValue]];
+            break;
+        case 3040:  // Change vertical position
+            [statusWindow setVerticalPosition:[sender indexOfSelectedItem]];
+            break;
+        case 3050:  // Change horizontal position
+            [statusWindow setHorizontalPosition:[sender indexOfSelectedItem]];
+            break;
+        case 3060:  // Change effect speed
+            [[statusWindow entryEffect] setEffectTime:[sender floatValue]];
+            [[statusWindow exitEffect]  setEffectTime:[sender floatValue]];
+            break;
+        case 3070:  // Change entry effect
+            break;
+        case 3080:  // Change exit effect
+            break;
+    }
 }
 
+
 /*************************************************************************/
 #pragma mark -
 #pragma mark ITTabView SUPPORT