This is IKSuitcaseInspector.m in view mode; [Download] [Up]
/* File IKSuitcaseInspector.m Release 1.2, 7 June 1994 Copyright (C) 1994 by H. Scott Roy This code is part of IconKit, a general toolbox for drag-and-drop applications. IconKit is free for noncommercial use, but costs money for a commercial license. You should have received a copy of the license agreement with this file. If not, a copy of the license and the complete source of IconKit can be obtained from the author: H. Scott Roy 2573 Stowe Ct. Northbrook, IL 60062-8103 iconkit@cs.stanford.edu For your editing convenience, this file is best viewed using an editor that automatically wraps long lines, in a fixed point font at 80 columns, with tabs every 4 spaces. */ /* ========================================================================== */ /* This file implements a custom inspector for an IKCell. The inspector lets one set the editing, dragging, shelf behavior, name, and icon. */ #import "IKSuitcaseInspector.h" #import "IKSuitcase.h" @implementation IKSuitcaseInspector /* ========================================================================== */ /* Here are the tags used to identify all the different cells. */ #define NAME 0 #define ICON 1 #define OPENICON 2 /* ========================================================================== */ - init { char path [MAXPATHLEN + 1]; id bundle; [super init]; bundle = [NXBundle bundleForClass: [IKSuitcase class]]; [bundle getPath: path forResource: "IKSuitcaseInspector" ofType: "nib"]; [NXApp loadNibFile: path owner: self withNames: NO fromZone: [self zone]]; return self; } /* ========================================================================== */ /* Reset the various options as needed. */ - updateLook: sender { const char * name = [[look findCellWithTag: NAME] stringValue], * icon = [[look findCellWithTag: ICON] stringValue], * openIcon = [[look findCellWithTag: OPENICON] stringValue]; [(IKSuitcase *) object setName: name]; [object setImage: icon ? [NXImage findImageNamed: icon] : nil]; [object setAcceptingDragImage: openIcon ? [NXImage findImageNamed: openIcon] : nil]; [self ok: sender]; return self; } - updateClassToHold: sender { [object setClassToHold: [classToHold stringValue]]; [self ok: sender]; return self; } /* ========================================================================== */ /* The ok: method does nothing. The revert method needs to initialize itself from the current selection. */ - ok: sender { [self touch: self]; return [super ok: sender]; } - revert: sender { const char * name = [object name], * icon = [[object image] name], * openIcon = [[object acceptingDragImage] name]; [[look findCellWithTag: NAME] setStringValue: name]; [[look findCellWithTag: ICON] setStringValue: icon]; [[look findCellWithTag: OPENICON] setStringValue: openIcon]; [classToHold setStringValue: [object classToHold]]; return [super revert: sender]; } - (BOOL) wantsButtons { return NO; } @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.