home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / Apps / ScreenSavers / SpaceSaver / Source / SpaceView.h < prev    next >
Encoding:
Text File  |  1995-06-12  |  1.1 KB  |  64 lines

  1. #import <appkit/View.h>
  2.  
  3. #define NSTARS (200)
  4. #define STARSPERIT (100)
  5.  
  6. typedef struct STAR {
  7.     float theta; // angle
  8.     float distance;
  9.     float delta; // change in distance
  10.     float ddelta; // change in delta, a constant multiplier
  11.  
  12.     char c;
  13.  
  14.     int changemode;
  15.     float changepoint[6];
  16.  
  17.     NXPoint r1, r2;
  18.     NXPoint *draw;
  19.     NXPoint *erase;
  20.  
  21.     } STAR;
  22.  
  23. @interface SpaceView:View
  24. {
  25.     STAR stars[NSTARS];
  26.     int nstars;
  27.     int radius; // min radius of this view
  28.  
  29.     NXPoint b[NSTARS];
  30.     NXPoint bOffsets[NSTARS];
  31.     char bc [NSTARS+1];
  32.  
  33.     NXPoint w[NSTARS];
  34.     NXPoint wOffsets[NSTARS];
  35.     char wc [NSTARS+1];
  36.  
  37.     NXRect voidRect; // avoid the void!
  38.     int toggle;
  39.     NXSize oldSize;
  40. }
  41.  
  42. - convertToXY:(STAR *) p;
  43. - oneStep;
  44. - (BOOL) allowStars:(const STAR *) p;
  45. - initFrame:(const NXRect *) frameRect;
  46. - drawSelf:(const NXRect *) rects :(int) rectCount;
  47. - sizeTo:(NXCoord) width :(NXCoord ) height;
  48. - addStar;
  49. - replaceStarAt:(int) index;
  50. - setRadius;
  51. - (const char *) windowTitle;
  52. - setVoidRect:(const NXRect *) r;
  53. - didLockFocus;
  54. - (BOOL) useBufferedWindow;
  55. - (BOOL) ignoreMouseMovement;
  56.  
  57. @end
  58.  
  59. @interface View(nonretainedFillMethod)
  60.  
  61. - fillBoundsWithBlack;
  62.  
  63. @end
  64.