home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / Apps / ScreenSavers / BackSpaceViews / MultiView.BackModule / MultiView.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-06-12  |  1.9 KB  |  97 lines

  1.  
  2. #import <appkit/appkit.h>
  3. #import "BackView.h"
  4. #import "Thinker.h"
  5. #import "ModuleList.h"
  6.  
  7. struct thinkerDef {
  8.     // Abstraction barriers?  we don't need no stinking abstraction barriers!
  9.     @defs(Thinker)
  10. };
  11.  
  12. struct layout_def {
  13.     int num;
  14.     NXRect *pos;
  15. };
  16.  
  17.  
  18. #define MAX_VIEWS 9
  19.  
  20. @interface MultiView:BackView
  21. {
  22.     // IB connections
  23.     id    scrollView;
  24.     id    matrix;
  25.     id    inspectorPanel;
  26.     id    otherInspector;
  27.     id    layout;
  28.     id    lay1;
  29.     id    lay2;
  30.     id    lay3;
  31.     id    lay4;
  32.     id    lay5;
  33.     id    lay6;
  34.     id    lay7;
  35.     id    lay8;
  36.     id    lay9;
  37.     id    lay10;
  38.     id    lay11;
  39.     
  40.     // other instance vars;
  41.     id    thinker;
  42.     id    views[MAX_VIEWS];
  43.     id    modList;
  44.     id    layouts[11];
  45.     int currentLay;
  46.     struct layout_def lay_defs[11];
  47.     struct thinkerDef *pub;
  48.     int num;
  49.     List *sel_list;
  50. }
  51.  
  52. - oneStep;
  53. - (const char *)windowTitle;
  54. - inspector:sender;
  55. - (BOOL)useBufferedWindow;
  56. - initFrame:(const NXRect *)frm;
  57. - fillMatrix;
  58. - select:sender;
  59. - inspect:sender;
  60. - addCellWithString:(const char *)str at:(int)row;
  61. - viewFrom:sender;
  62. - viewNamed:(const char *)name;
  63. - objectNamed:(const char *)name;
  64. - (int)cellNamed:(const char *)name;
  65. - loadView:(const char *)name;
  66. - layoutUp:sender;
  67. - layoutDown:sender;
  68. - initLayouts;
  69. - allocLayout:(int)index;
  70. - readDefaults;
  71. - writeDefaults:sender;
  72. - inspectorWillBeRemoved;
  73. - setImage:image;
  74.  
  75. // these methods are actually methods implemented by the thinker
  76. // some of the views rely on the thinker being the one controlling things.
  77. // funny that huh?
  78. // I didn't really have to prototype them since I import Thinker.h,
  79. // but I figured that this would make things a little more complete.
  80. - spaceInspector;
  81. - commonImageInspector;
  82. - nullInspector;
  83. - boinkInspector;
  84. - (const char *)moduleDirectory:(const char *)name;
  85.  
  86. //
  87. // these methods are just handoffs to child views
  88. //
  89. // - setImage:image; // we'll ignore this one for now
  90. - enteredScreenSaverMode;
  91. - willExitScreenSaverMode;
  92. @end
  93.  
  94.  
  95. @interface Object (BSdelegates)
  96. - didLockFocus;
  97. @end