home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1994 June / NEBULA_SE.ISO / SourceCode / OOP_Course / Examples / ShiftView / Shifter.m < prev    next >
Encoding:
Text File  |  1993-01-19  |  1.3 KB  |  62 lines

  1.  
  2. /* Generated by Interface Builder */
  3.  
  4. #import "Shifter.h"
  5. #import <appkit/appkit.h>
  6.  
  7. @implementation Shifter
  8.  
  9. #define COUNTER  0
  10. #define SQUARER 1
  11.  
  12. - appDidInit:sender
  13. {  //When app inits, install wide view array into the output array.
  14.     id    aView;
  15.     aView=[[View alloc] init];  //create a new contentView
  16.     arrayView=[ViewArray setContentView:aView];  //swap,get array of views
  17.     [ViewArray free];  //we have the view, no longer need this
  18.     [outputView addSubview:arrayView]; //add to outputView
  19.     [arrayView moveTo: 0.0 :0.0]; //start with leftmost (counter) view
  20.     [outputView display];
  21.     nextPanel=SQUARER;
  22.     return self;
  23. }
  24.  
  25. - changeView:sender
  26. {
  27.     switch (nextPanel) {
  28.         case SQUARER:       //change to squarer
  29.         [arrayView moveTo:-200.0 :0.0]; //move view to squarer
  30.           [outputView display];
  31.         nextPanel=COUNTER;
  32.         [[sender selectedCell] setTitle:"Counter"];
  33.         break;
  34.         
  35.     case COUNTER:  //change to counter
  36.         [arrayView moveTo:0.0 :0.0]; //move view to counter 
  37.           [outputView display];
  38.         nextPanel=SQUARER;
  39.         [[sender selectedCell] setTitle:"Squarer"];
  40.         break;
  41.     }
  42.             
  43.     return self;
  44. }
  45.  
  46. - count:sender
  47. {
  48.     [countDisplay setIntValue:([countDisplay intValue]+1)];
  49.     return self;
  50. }
  51.  
  52. - square:sender
  53. {
  54.     float value=[sender floatValue];
  55.     [squareRoot setFloatValue:value];
  56.     [square setFloatValue:(value*value)];
  57.     return self;
  58. }
  59.  
  60.  
  61. @end
  62.