home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1995 August / NEBULA.bin / SourceCode / Palettes / TTools / TToolsPalette / SwitchView.subproj / SwitchViewInspector.m < prev   
Encoding:
Text File  |  1993-11-09  |  1.6 KB  |  71 lines

  1. /* SwitchViewInspector.h
  2.  * Written By:  Thomas Burkholder
  3.  *
  4.  * You may freely copy, distribute, and reuse the code in this example.
  5.  * NeXT disclaims any warranty of any kind, expressed or  implied, as to its
  6.  * fitness for any particular use.
  7.  */
  8.  
  9.  
  10. #import "SwitchViewInspector.h"
  11.  
  12. @implementation SwitchView (AttributesInspector)
  13.  
  14. - (const char *)getInspectorClassName
  15. {
  16.     NXEvent *ev = [NXApp currentEvent];
  17.  
  18.     if (ev->flags & NX_ALTERNATEMASK)
  19.         return [super getInspectorClassName];
  20.     else
  21.         return "SwitchViewInspector";
  22. }
  23.  
  24. @end
  25.  
  26. @implementation SwitchViewInspector
  27.  
  28. - init
  29. {
  30.     char buf[MAXPATHLEN + 1];
  31.     id bundle;
  32.     
  33.     [super init];
  34.     
  35.     bundle = [NXBundle bundleForClass:[SwitchView class]];
  36.     [bundle getPath:buf forResource:"SwitchViewInspector" ofType:"nib"];
  37.     [NXApp loadNibFile:buf owner:self withNames:NO fromZone:[self zone]];
  38.     
  39.     return self;
  40. }
  41.  
  42. - ok:sender
  43. {
  44.     if (![messageHowMatrix selectedRow])
  45.         [messageTypeField setStringValue:""];
  46.     [object setValueSelector:sel_getUid([messageTypeField stringValue])];
  47.     [messageTypeField setEnabled:(BOOL)[messageHowMatrix selectedRow]];
  48.     [object setInitialViewNumber:[initialField intValue]];
  49.     return [super ok:sender];
  50. }
  51.  
  52. - revert:sender
  53. {
  54.     [messageHowMatrix selectCellAt:([object valueSelector]!=(SEL)0) :0];
  55.     [messageTypeField setEnabled:([object valueSelector]!=(SEL)0)];
  56.     if ([object valueSelector]) {
  57.         [messageTypeField setStringValue:sel_getName([object valueSelector])];
  58.     } else {
  59.         [messageTypeField setStringValue:""];
  60.     }
  61.     [initialField setIntValue:[object initialViewNumber]];
  62.     return [super revert:sender];
  63. }
  64.  
  65. - (BOOL)wantsButtons
  66. {
  67.     return NO;
  68. }
  69.  
  70. @end
  71.