@@ -216,10 +216,11 @@ selector = selector_; object1 = [object1_ retain]; object2 = [object2_ retain]; arguments = arguments_; repeats = repeats_; + isValid = YES; } @catch (id e) { [self release]; @throw e; } @@ -358,13 +359,29 @@ fireDate = [[OFDate alloc] initWithTimeIntervalSinceNow: interval]; [old release]; [[OFRunLoop currentRunLoop] addTimer: self]; - } + } else + isValid = NO; } - (OFDate*)fireDate { return [[fireDate retain] autorelease]; } + +- (double)timeInterval +{ + return interval; +} + +- (void)invalidate +{ + isValid = NO; +} + +- (BOOL)isValid +{ + return isValid; +} @end