This is Controller.m in view mode; [Download] [Up]
#import "Controller.h"
@implementation Controller
/* $Log: Controller.m,v $
Revision 1.4 94/05/29 20:14:32 ediger
help/explanation panel support
Revision 1.3 94/05/29 14:59:51 ediger
cleanup to eliminate compiler warning
Revision 1.2 94/02/03 19:54:34 ediger
cleanup of commented out code
Revision 1.1 93/12/19 13:02:54 ediger
Initial revision
*/
static char rcsident[] = "$Id: Controller.m,v 1.4 94/05/29 20:14:32 ediger Exp Locker: ediger $";
static BOOL
fGetOpenPath(char *pcName, int iBufferLength, char *pcType)
{
BOOL fSuccess = NO;
static char *ppcFileTypes[2] = {NULL, NULL};
static id openPanel = Nil;
assert(pcName != NULL);
if (openPanel == Nil)
openPanel = [OpenPanel new];
assert(openPanel != Nil);
if (pcType != NULL && *pcType != '\0')
ppcFileTypes[0] = pcType;
[NXApp setAutoupdate:NO];
if ([openPanel runModalForTypes:ppcFileTypes])
{ const char *pcNameTmp = [openPanel filename];
strncpy(pcName, pcNameTmp, iBufferLength);
fSuccess = YES;
}
[NXApp setAutoupdate:YES];
return fSuccess;
}
- init
{
infoPanel = Nil;
return self;
}
- closeFile:sender
{
id oCurrentMainWindow;
oCurrentMainWindow = [NXApp mainWindow];
[oCurrentMainWindow close];
[oCurrentMainWindow free];
return self;
}
- openNewFile:sender
{
char pcPath[1024];
if (fGetOpenPath(pcPath, 1024, NULL))
{ id p = [[Document alloc] init];
[p openFileNamed:pcPath];
[p show:self];
}
return self;
}
- showInfoPanel:sender
{
if (infoPanel == nil)
if (![NXApp loadNibSection:"Info.nib" owner:self])
return nil;
[infoPanel makeKeyAndOrderFront:self];
return self;
}
- showHelpPanel:sender
{
if (helpPanel == nil)
if (![NXApp loadNibSection:"HelpPanel.nib" owner:self])
return nil;
[helpPanel makeKeyAndOrderFront:self];
return self;
}
@end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.