// // PSTimer.m // Perforce // // Created by Adam Czubernat on 02/10/2013. // Copyright (c) 2013 Perforce Software, Inc. All rights reserved. // #import "PSTimer.h" #import <objc/message.h> @interface PSTimer () @property (nonatomic, retain) NSTimer *timer; @property (nonatomic, weak) id target; @property (nonatomic, assign) SEL selector; - (void)action; @end @implementation PSTimer @synthesize timer, target, selector; #pragma mark - Public + (PSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)interval target:(id)target selector:(SEL)selector userInfo:(id)info repeats:(BOOL)repeats { PSTimer *timer = [[PSTimer alloc] init]; timer.target = target; timer.selector = selector; timer.timer = [NSTimer scheduledTimerWithTimeInterval:interval target:timer selector:@selector(action) userInfo:info repeats:repeats]; return timer; } - (id)initWithFireDate:(NSDate *)date interval:(NSTimeInterval)interval target:(id)aTarget selector:(SEL)aSelector userInfo:(id)info repeats:(BOOL)repeats { self = [super init]; if (self) { target = aTarget; selector = aSelector; timer = [[NSTimer alloc] initWithFireDate:date interval:interval target:self selector:@selector(action) userInfo:info repeats:repeats]; } return self; } - (void)invalidate { [timer invalidate]; timer = nil; } #pragma mark - Private - (void)action { objc_msgSend(target, selector); } @end
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 16817 | christoph_leithner | "Forking branch Main of perforce-software-piper to christoph_leithner-piper." | ||
//guest/perforce_software/piper/main/mac/R2.0/Perforce/Classes/Helpers/PSTimer.m | |||||
#1 | 16507 | perforce_software | Move to main branch. | ||
//guest/perforce_software/piper/mac/R2.0/Perforce/Classes/Helpers/PSTimer.m | |||||
#1 | 12962 | alan_petersen |
Populate -o //guest/perforce_software/piper/mac/main/... //guest/perforce_software/piper/mac/R2.0/.... |
||
//guest/perforce_software/piper/mac/main/Perforce/Classes/Helpers/PSTimer.m | |||||
#1 | 11252 | alan_petersen | Rename/move file(s) | ||
//guest/perforce_software/piper/mac/Perforce/Classes/Helpers/PSTimer.m | |||||
#1 | 10744 | alan_petersen | Rename/move file(s) | ||
//guest/perforce_software/piper/Perforce/Classes/Helpers/PSTimer.m | |||||
#1 | 8919 | Matt Attaway | Initial add of Piper, a lightweight Perforce client for artists and designers. |