This is MiscClassDecoderMgr.m in view mode; [Download] [Up]
//
// Time-stamp: <94/12/01 19:31:12 stephan>
//
// MiscClassDecoderMgr.m -- application's delegate.
//
// Written by Stephan Wacker <stephan@rodion.muc.de>
// Copyright (c) 1994 by Stephan Wacker.
// Version 1.0 All rights reserved.
//
// This notice may not be removed from this source code.
//
// This object is included in the MiscKit by permission from the author
// and its use is governed by the MiscKit license, found in the file
// "LICENSE.rtf" in the MiscKit distribution. Please refer to that file
// for a list of all applicable permissions and restrictions.
//
#import "MiscClassDecoderMgr.h"
#import "MiscClassDecoderSetup.h" // from a bundle
#import <misckit/MiscClassDecoder.h>
@implementation MiscClassDecoderMgr
- defineClass: (id) pasteboard
userData: (const char *) userData
error: (char **) msg
// Service for defining a given class.
{
char *data, *buf;
int length;
// Pretend to check the pasteboard types.
//
[pasteboard types];
// Read the ASCII data from the pasteboard.
//
if( [pasteboard readType: NXAsciiPboardType data: &data
length: &length] )
{
buf = alloca( length+1 );
strncpy( buf, data, length );
buf[length] = '\0';
[decoder analyzeClass: buf];
}
else
{
*msg = "Error: couldn't read class name from pasteboard.";
}
return self;
}
- appDidInit: sender
// Install decoder service.
{
const char *myDirectory = [[NXBundle mainBundle] directory];
const char *bundleSubdir = "/MiscClassDecoder.bundle";
char *buf = (char *) alloca( strlen(myDirectory)
+ strlen(bundleSubdir) + 1 );
strcpy( buf, myDirectory );
strcat( buf, bundleSubdir );
// Load a decoder window from the bundle.
//
decoder = [[[ [[NXBundle alloc]
initForDirectory: buf]
classNamed: "MiscClassDecoderSetup"] new] decoder];
// Accept service requests.
//
[[NXApp appListener] setServicesDelegate: self];
return self;
}
@end // MiscClassDecoderMgr
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.