home *** CD-ROM | disk | FTP | other *** search
/ Stone Design / Stone Design.iso / Stone_Friends / Wave / WavesWorld / Source / IBPalettes / WWTCLKit / WWTTSwitchViewIBInspector.m < prev    next >
Encoding:
Text File  |  1995-03-22  |  1.6 KB  |  72 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. // name space protected by wave
  10.  
  11. #import "WWTTSwitchViewIBInspector.h"
  12.  
  13. @implementation WWTTSwitchView (AttributesInspector)
  14.  
  15. - (const char *)getInspectorClassName
  16. {
  17.     NXEvent *ev = [NXApp currentEvent];
  18.  
  19.     if (ev->flags & NX_ALTERNATEMASK)
  20.         return [super getInspectorClassName];
  21.     else
  22.         return "WWTTSwitchViewIBInspector";
  23. }
  24.  
  25. @end
  26.  
  27. @implementation WWTTSwitchViewIBInspector
  28.  
  29. - init
  30. {
  31.     char buf[MAXPATHLEN + 1];
  32.     id bundle;
  33.     
  34.     [super init];
  35.     
  36.     bundle = [NXBundle bundleForClass:[WWTTSwitchView class]];
  37.     [bundle getPath:buf forResource:"WWTTSwitchViewIBInspector" ofType:"nib"];
  38.     [NXApp loadNibFile:buf owner:self withNames:NO fromZone:[self zone]];
  39.     
  40.     return self;
  41. }
  42.  
  43. - ok:sender
  44. {
  45.     if (![messageHowMatrix selectedRow])
  46.         [messageTypeField setStringValue:""];
  47.     [object setValueSelector:sel_getUid([messageTypeField stringValue])];
  48.     [messageTypeField setEnabled:(BOOL)[messageHowMatrix selectedRow]];
  49.     [object setInitialViewNumber:[initialField intValue]];
  50.     return [super ok:sender];
  51. }
  52.  
  53. - revert:sender
  54. {
  55.     [messageHowMatrix selectCellAt:([object valueSelector]!=(SEL)0) :0];
  56.     [messageTypeField setEnabled:([object valueSelector]!=(SEL)0)];
  57.     if ([object valueSelector]) {
  58.         [messageTypeField setStringValue:sel_getName([object valueSelector])];
  59.     } else {
  60.         [messageTypeField setStringValue:""];
  61.     }
  62.     [initialField setIntValue:[object initialViewNumber]];
  63.     return [super revert:sender];
  64. }
  65.  
  66. - (BOOL)wantsButtons
  67. {
  68.     return NO;
  69. }
  70.  
  71. @end
  72.