This is ChooseEncoding.m in view mode; [Download] [Up]
/////////////////////////////////////////////////////////////////////////////// // FILENAME: ChooseEncoding.m // SUMMARY: Implementation of a Tool-based UI for eText HTML Encoders // SUPERCLASS: Object // INTERFACE: None // PROTOCOLS: <Tool> // AUTHOR: Rohit Khare // COPYRIGHT: (c) 1994 California Institure of Technology, eText Project /////////////////////////////////////////////////////////////////////////////// // DESCRIPTION: This is a custom class designed to provide a UI for a // UI-less hook of eText: allowing the user to choose between different // encoding tables for HTML character mappping. /////////////////////////////////////////////////////////////////////////////// // HISTORY // 10/31/94: Created. Implemented in just minutes, from scratch. /////////////////////////////////////////////////////////////////////////////// #import "ChooseEncoding.h" @implementation ChooseEncoding + new { static ChooseEncoding *ce = nil; if (!ce) { ce = [[ChooseEncoding alloc] init]; } return ce; } + toolAwake:theApp { [theApp registerAccessory:NXUniqueString("Choose HTML Encoding") key:'\0' name:NXUniqueString("ChooseEncoding") target:[ChooseEncoding new] action:@selector(activate:)]; return self; } - init {return [super init];} - free {return self;} - activate:sender { int choice = NXRunAlertPanel("Choose Encoding...","You can optimize the HTML generated to work around particular clients. To permanently change your default encoding, \"dwrite eText HTMLEncoding Type\" (look in the app wrapper).", "Strict HTML","ASCII","OmniWeb"); switch (choice) { case NX_ALERTDEFAULT: NXSetDefault([NXApp appName], "HTMLEncoding", "WebStep"); break; case NX_ALERTALTERNATE: NXSetDefault([NXApp appName], "HTMLEncoding", "ASCII"); break; case NX_ALERTOTHER: NXSetDefault([NXApp appName], "HTMLEncoding", "OmniWeb"); break; } [eText flushHTMLEncoding]; // yeah, it's a memory leak. so f*cking sue me. return self; } @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.