This is Animator.h in view mode; [Download] [Up]
/* Not generated by Interface Builder */ /* * This is an Animator class which is sort of different from the * Animator found in the Stopwatch program. It is a bit more standalone, * as I wanted to be able to create objects which only animated if they * were the target of an Animator, or if they had an Animator as an outlet. * (The Animator class allows the Animator to be either an outlet, or to * have a target, and animate in much the same way.) See the accompanying * documentation for more help (Animator.wn). */ #import <objc/Object.h> #import <appkit/Application.h> @interface Animator:Object { id target; // The thing we are animating. DPSTimedEntry te; // the timed entry we are using. BOOL running; // YES if we are running. float timing; // the current timing we are using. float threshold; // the threshold we are running at. SEL action; // message to send to target. double startTime; // when we started. double elapsed; // time between current call and the original. BOOL continuous; // Continuous, or one shot calling. } + new; // create a new Animator. // These routines allow the user to set up the default values for Animator // objects. Using these factory methods, a subclass may easily change the // Animator's actions by calling these methods in an initialize factory // method. + setDefaultTiming:(float)dtiming; + setDefaultThreshold:(float)dthreshold; + setDefaultAction:(SEL)daction; + setDefaultRunning:(BOOL)state; + setDefaultContinuous:(BOOL)state; - free; // free the Animator up. // These routines set up the animator according to the user's desires. - setTarget:anObject; // calls setAnimator if anObject implements. - target; - setTiming:(float)timing; -(float)timing; - setThreshold:(float)threshold; -(float)threshold; - setAction:(SEL)aSelector; -(SEL)action; - setRunning:(BOOL)state; -(BOOL)running; -(double)doubleValue; // return the amount of time since last call. -(float)floatValue; // return as a float. -(int)intValue; - resetValue:(double)value; // reset the start time to value. - resetValue; // reset start time to now. -(BOOL)continuous; // return the continuous flag. - setContinuous:(BOOL)state; // set the continuous flag. // These both force non-continuous. - callAfter:(double)sec; // wait and call me then. - callAt:(double)absSec; // call at this time. // Time is given in seconds, since midnight. If the // time given is before the current time, it waits // until the next day. (ie, wraps around). // sendAction:to: sends theAction with parameter self to theTarget. If // theAction is NULL, or theTarget is nil, nothing is sent. sendAction // sends the animator's action to its target. - sendAction:(SEL)theAction to:theTarget; - sendAction; // These are to be hooked up to various user interface objects, such as // buttons and sliders. - start:sender; // start the Animator. - stop:sender; // stop the Animator. - toggleRun:sender; // toggle the Animator's state. - takeTimingFrom:sender; // to hook up a slider. - takeRunningFrom:sender; // set state by sender. - takeContinuousFrom:sender; // set continuous by sender. // These routines are for reading and writing the animator. - copy; - awake; - write:(NXTypedStream *)stream; - read:(NXTypedStream *)stream; @end // This is stuff which the target may wish to implement. The Animator class // checks to see that the target can run them before calling it. @interface AnimatorTarget:Object { } - setAnimator:sender; @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.