lastStatus = status;
status = STATUS_CHANGING;
- [serverPopup setEnabled:NO];
- [self updatePauseButton];
- [pauseButton setEnabled:NO];
- [processPopup setEnabled:NO];
- [typePopup setEnabled:NO];
- [sizePopup setEnabled:NO];
- [searchTextField setEnabled:NO];
- [searchRadioMatrix setEnabled:NO];
- [searchButton setEnabled:NO];
- [clearSearchButton setEnabled:NO];
- [self setStatusText:@"ChangingÉ" duration:0];
- [statusBar startAnimation:self];
- [addressTable setEnabled:NO];
- [changeButton setEnabled:NO];
-
- [[serverMenu itemAtIndex:0] setTitle:@"Disconnect"];
+ if ( lastStatus != STATUS_CHANGING_CONTINUOUSLY )
+ {
+ [serverPopup setEnabled:NO];
+ [self updatePauseButton];
+ [pauseButton setEnabled:NO];
+ [processPopup setEnabled:NO];
+ [typePopup setEnabled:NO];
+ [sizePopup setEnabled:NO];
+ [searchTextField setEnabled:NO];
+ [searchRadioMatrix setEnabled:NO];
+ [searchButton setEnabled:NO];
+ [clearSearchButton setEnabled:NO];
+ [statusBar startAnimation:self];
+ [addressTable setEnabled:NO];
+ [changeButton setEnabled:NO];
+
+ [[serverMenu itemAtIndex:0] setTitle:@"Disconnect"];
+ }
}
- (void)setStatusChangingLater
[searchRadioMatrix setEnabled:NO];
[searchButton setEnabled:NO];
[clearSearchButton setEnabled:NO];
- [self setStatusText:@"Repeated Change" duration:0];
+ [self setStatusText:@"Repeating ChangeÉ" duration:0];
[statusBar startAnimation:self];
[addressTable setEnabled:NO];
[changeButton setTitle:@"Stop Change"];
- (void)setStatusText:(NSString *)msg duration:(NSTimeInterval)seconds color:(NSColor *)color
{
- if ( seconds == 0 )
+ if ( statusTextTimer )
{
- [statusText setTextColor:color];
- [statusText setStringValue:msg];
+ [statusTextTimer invalidate];
+ [statusTextTimer release], statusTextTimer = nil;
}
else
{
- if ( statusTextTimer )
- {
- [statusTextTimer invalidate];
- [statusTextTimer release];
- }
- else
- {
- [savedStatusText release];
- [savedStatusColor release];
- savedStatusText = [[statusText stringValue] retain];
- savedStatusColor = [[statusText textColor] retain];
- }
-
- [statusText setTextColor:color];
- [statusText setStringValue:msg];
+ [savedStatusText release];
+ [savedStatusColor release];
+ savedStatusText = [[statusText stringValue] retain];
+ savedStatusColor = [[statusText textColor] retain];
+ }
+
+ [statusText setTextColor:color];
+ [statusText setStringValue:msg];
+
+ if ( seconds != 0.0 )
+ {
statusTextTimer = [[NSTimer scheduledTimerWithTimeInterval:seconds target:self selector:@selector(statusTextTimer:) userInfo:nil repeats:NO] retain];
-
}
}
}
[self setStatusToLast];
- [self setStatusText:@"Search Finished" duration:1.5];
+ //[self setStatusText:@"Search Finished" duration:1.5];
[cheatWindow makeFirstResponder:searchTextField];
}
- (void)receivedChangeFinished
{
- TCPlaySound( @"Tink" );
-
[self setStatusToLast];
- [self setStatusText:@"Change Finished" duration:1.5];
+
+ if ( status == STATUS_CHANGING_CONTINUOUSLY )
+ {
+ [self setStatusText:@"Change Occured" duration:1.5];
+ }
+ else
+ {
+ TCPlaySound( @"Tink" );
+ }
}
- (void)receivedError:(NSData *)data
{
[self setStatusCheating];
}
- else if ( status = STATUS_CHEATING )
+ else if ( status == STATUS_CHEATING )
{
[NSApp beginSheet:changeSheet modalForWindow:cheatWindow modalDelegate:self didEndSelector:@selector(changeSheet:returned:context:) contextInfo:NULL];
//[NSApp runModalForWindow:changeSheet];