ftp.nice.ch/pub/next/connectivity/infosystems/WAIStation.1.9.6.N.b.tar.gz#/WAIS/next-ui/DocControl.h

This is DocControl.h in view mode; [Download] [Up]

// DocControl.h
//
// Free software created 1 Feb 1992
// by Paul Burchard <burchard@math.utah.edu>.
//
// Provides an abstract superclass to act as App's delegate and handle
// opening and closing of documents.  You'll connect Document menu items
// in IB to target their messages to this object.
//
// The subclass do the following in its -init method:
//
//	* Give -setDocHandlers: a List of Doc subclasses (this list will
//		be freed by the DocControl class when it's done with it).
//	* Set launchWithCreateDoc to YES, if you want the app to launch with
//		an newly created open document (except when explicitly
//		launched by an openFile:: message).  This will use the first 
//		Doc handler in the list.
//
// Most subclasses will probably also want to subclass the method
//
//	+ (const char *)defaultFolder	Default folder for Open/Save Panels,
//					when Doc subclass is unknown.
//
// Also, the stringTable points to an NXStringTable (to be created in IB)
// translating the following strings:
//	"/UNTITLED"
//	"Revert"
//	"Revert to saved version of %s?"
//	"Close"
//	"%s has been modified.\nSave it?"
//	"Open"
//	"Cannot read %s!"
//	"Save"
//	"Cannot write %s!"
//	"Yes"
//	"No"
//	"OK"
//	"Cancel"
//

#import <objc/Object.h>
#import <objc/HashTable.h>
#import <objc/NXStringTable.h>

@interface DocControl:Object
{
    id DocHandlers;
    const char **fileTypes;
    BOOL launchWithCreateDoc;
    id convertWindowToDoc;
    id stringTable;
}

- init;
- setDocHandlers:HandlerList;
- appDidInit:sender;
- free;
+ (const char *)defaultFolder;
- appWillTerminate:sender;
- (BOOL)appAcceptsAnotherFile:sender;
- handlerForFile:(const char *)fileName;
- (int)app:sender openFile:(const char *)fileName type:(const char *)aType;
- setMainDoc:aDoc;
- mainDoc;
- stringTable;

// Basic Doc operations.
// All return the Doc on success (except -closeDoc:andFree: returns self).
- createDocForHandlerAt:(int)hNum;
- openForHandlerAt:(int)hNum name:(const char *)fileName;//may be NULL
- saveDoc:theDoc as:(BOOL)yn;
- revertDocToSaved:theDoc;
- closeDoc:theDoc andFree:(BOOL)yn;

// Menu items.
- open:sender; // allows all file types, determines handler afterwards
- open1:sender; // uses first handler
- open2:sender; // uses second handler
- open3:sender; // uses third handler
- createDoc:sender; // uses default (=first) handler
- createDoc1:sender; // uses first handler
- createDoc2:sender; // uses second handler
- createDoc3:sender; // uses third handler
- saveAs:sender;
- save:sender;
- revertToSaved:sender;
- close:sender;

@end

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.