home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
NeXTSTEP 3.0
/
NeXTSTEP3.0.iso
/
NextDeveloper
/
Headers
/
apps
/
InterfaceBuilder.h
next >
Wrap
Text File
|
1992-07-09
|
5KB
|
230 lines
/* InterfaceBuilder - InterfaceBuilder.h - Jean-Marie Hullot - (c) 1991 NeXT Computer Inc. */
#import <appkit/appkit.h>
@class Sound;
// InterfaceBuilder Pasteboard types
extern NXAtom IBObjectPboardType;
extern NXAtom IBCellPboardType;
extern NXAtom IBMenuPboardType;
extern NXAtom IBMenuCellPboardType;
extern NXAtom IBViewPboardType;
extern NXAtom IBWindowPboardType;
@protocol IB
- activeDocument;
- selectionOwner;
/* The following might be useful when implementing your own ConnectInspector */
- connectSource;
- connectDestination;
- (BOOL)isConnecting;
- stopConnecting;
- displayConnectionBetween:source and:dest;
/* Test Mode */
- (BOOL)isTestingInterface;
/* Document Controllers registration */
- registerDocumentController:aController;
- unregisterDocumentController:aController;
/* Updater */
- disableUpdate;
/* Not supported as public API in Release 3 */
- reenableUpdate;
/* Not supported as public API in Release 3 */
@end
@protocol IBDocumentControllers
- willSaveDocument:aDocument;
- didSaveDocument:aDocument;
- didOpenDocument:aDocument;
@end
@protocol IBSelectionOwners
- (unsigned)selectionCount;
- getSelectionInto:(List *)objectList;
- redrawSelection;
@end
@protocol IBDocuments
- touch;
- getDocumentPathIn:(char *)thePath;
- (BOOL)objectIsMember:object;
- getObjects:(List *)objects;
- getParentForObject:object;
- copyObject:anObject type:(NXAtom)type inPasteboard:(Pasteboard *)aPasteboard;
- copyObjects:(List *)objectList type:(NXAtom)type inPasteboard:(Pasteboard *)aPasteboard;
- (List *)pasteType:(NXAtom)type fromPasteboard:(Pasteboard *)aPasteboard parent:aParent;
- attachObject:object to:parent;
- attachObjects:(List *)objectList to:parent;
- deleteObject:anObject;
- deleteObjects:(List *)objectList;
- (BOOL) setName:(const char *)aName for:anObject;
- getNameIn:(char *)name for:object;
- addConnector:aConnector;
- removeConnector:aConnector;
- listConnectors:(List *)aList forSource:aSource;
- listConnectors:(List *)aList forDestination:aDest;
- listConnectors:(List *)aList forSource:aSource filterClass:filterClass;
- listConnectors:(List *)aList forDestination:aDest filterClass:filterClass;
- setSelectionFrom:anEditor;
- editorDidClose:anEditor for:anObject;
- openEditorFor:anObject;
- getEditor:(BOOL)createIt for:anObject;
- redrawObject:anObject;
@end
@protVH IBConnectors
- free;
- write:(NXTypedStream *) s;
- read:(NXTypedStream *) s;
- source;
- destination;
- renewObject:old to:new;
- nibInstantiate;
- establishConnection;
@end
@protocol IBEditors <IBSelectionOwners>
- initWith:anObject inDocument:aDocument;
- document;
- editedObject;
- window;
- (BOOL) wantsSelection;
- selectObjects:(List *)objectList;
- close;
- openSubeditorFor:anObject;
- closeSubeditors;
- resetObject:anObject;
- orderFront;
- (BOOL)activate;
- makeSelectionVisible:(BOOL)showIt;
- (NXAtom)acceptsTypeFrom:(const NXAtom *)typeList;
- (BOOL)copySelection;
- (BOOL)deleteSelection;
- (BOOL)pasteInSelection;
@end
@interface Object (IBObject)
- (const char *)getInspectorClassName;
- (const char *)getConnectInspectorClassName;
- (const char *)getSizeInspectorClassName;
- (const char *)getHelpInspectorClassName;
- (const char *)getEditorClassName;
- (NXImage *)getIBImage;
@end
@interface View (IBView)
#define IB_BOTTOMLEFT 0
#define IB_MIDDLELEFT 1
#define IB_TOPLEFT 2
#define IB_MIDDLETOP 3
#define IB_TOPRIGHT 4
#define IB_MIDDLERIGHT 5
#define IB_BOTTOMRIGHT 6
#define IB_MIDDLEBOTTOM 7
- getMinSize:(NXSize *)minSize maxSize:(NXSize *)maxSize from:(int)where;
- placeView:(NXRect *)frameRect;
// default is setFrame:
@end
@protocol IBInspectors
- (BOOL)wantsButtons;
/* Required */
/* whether the inspector wants ok & revert buttons or not */
- revert:sender;
/* Required */
/* This is the main point of functionality: this method is called when the inspector is activited; must call [super revert:sender] */
- ok:sender;
/* Required */
/* must call [super ok:sender] */
@end
@interface IBInspector:Object <IBInspectors> {
id object;
id window;
id driver; // private!
id okButton;
id revertButton;
}
- object;
- window;
- touch:sender;
- textDidChange:sender;
- updateFor:(int)changeMask;
/* Not supported as public API in Release 3 */
@end
@interface IBPalette:Object {
id paletteDocument;
id originalWindow;
id paletteView;
id draggedView;
id paletteInfo; // private
}
- paletteDocument;
- originalWindow;
- paletteView;
/* Not supported as public API in Release 3 */
- draggedView;
/* Not supported as public API in Release 3 */
- finishInstantiate;
- associateObject:object type:(NXAtom)typeVIh:aView;
- declareTypesFor:aView inPasteboard:(Pasteboard *)aPasteboard;
/* Not supported as public API in Release 3 */
- pasteboard:aPasteboard provideData:(NXAtom)type;
/* Not supported as public API in Release 3 */
- findImageNamed:(const char *)name;
@end