home *** CD-ROM | disk | FTP | other *** search
/ Education Sampler 1992 [NeXTSTEP] / Education_1992_Sampler.iso / Programming / Source / plot3d / PControl.h < prev    next >
Text File  |  1992-08-17  |  2KB  |  73 lines

  1. /* PControl.h  Copyright 1992 Steve Ludtke */
  2.  
  3. /* This object is basically just a switchboard for messages from various */
  4. /* controls <-> views. It helps to simplify the Plot3DView object */
  5.  
  6. #import <objc/Object.h>
  7. #import "Plot3DView.h"
  8. #import <appkit/color.h>
  9.  
  10.  
  11. @interface PControl:Object
  12. {
  13. id minX;        /* min/max coords for currently displayed region */
  14. id maxX;
  15. id minY;
  16. id maxY;
  17. id minZ;
  18. id maxZ;
  19. id symsel;        /* Symbol selector Matrix */
  20. id colorSel;        /* NXColorWell to select symbol color */
  21. id ffSel;        /* formula/file switch */
  22. id equation;        /* ScrollView containing the equation */
  23. id d3View;        /* Points to the Plot3DView object */
  24. id dView;        /* Points to the DensView object */
  25. id grid;        /* Selector for # points (x & y) */
  26. int curPref;        /* Current data set displayed in the inspector */
  27. SetPref *pref;        /* Data set preferences (& data pointers) */
  28. }
  29.  
  30. /* Initialization */
  31. -init;
  32.  
  33. /* Display preferences for selected data set. [[sender selectedCell] tag] */
  34. /* is used to decide which set to display */
  35. -disPref:sender;
  36.  
  37. /* Store preferences for current data set (OK button) */
  38. -stoPref:sender;
  39.  
  40. /* Read a data file into a data set */
  41. -readFile:sender;
  42.  
  43. /* Return a data set to equation mode */
  44. -clearFile:sender;
  45.  
  46. /* Takes PControl min/max values and sends them to the Plot3DView */
  47. -setMinMax:sender;
  48.  
  49. /* called by the Plot3DView to allow min/max Z values to be overrided */
  50. /* and/or displayed */
  51. -minmaxZ:(float *)minZ :(float *)maxZ;
  52.  
  53. /* zooms out by a fixed factor */
  54. -zoomOut:sender;
  55.  
  56. /* zooms in by a fixed factor */
  57. -zoomIn:sender;
  58.  
  59. /* This routine is called by the Plot3DView once after all the objects */
  60. /* have been initialized. It passes the preferences array.*/
  61. -startup:(SetPref *)Pref;
  62.  
  63. /* sets the PControl's max/min values */
  64. -setMM:(float)minX :(float)maxX :(float)minY :(float)maxY;
  65.  
  66. /* receives the zoomTo messages from the DensView. Note that passed */
  67. /* min/max values are from 0.0 to 1.0, not acutal units */
  68. -zoomTo:(float)minx :(float)miny :(float)maxx :(float)maxy;
  69.  
  70. /* update density plot */
  71. -updDen;
  72. @end
  73.