This is ScrollViewExtensions.m in view mode; [Download] [Up]
/* ScrollViewExtensions.m:
* You may freely copy, distribute, and reuse the code in this example.
* NeXT disclaims any warranty of any kind, expressed or implied, as to its
* fitness for any particular use.
*
* A generic scrollview driver object to display/print text
* Written by Jack Greenfield
*
*/
#import <objc/objc-runtime.h>
#import "ScrollViewExtensions.h"
@implementation ScrollView(ScrollViewExtensions)
- sprintf:(const char *)format, ...
{
id text;
int length;
static char buffer[65536];
va_list arguments;
va_start(arguments, format);
vsprintf(buffer, format, arguments);
va_end(arguments);
text = [self docView];
length = [text textLength];
[text setSel:length :length];
[text replaceSel:buffer];
[text scrollSelToVisible];
return self;
}
- vsprintf:(const char *)format arguments:(va_list)arguments
{
id text;
int length;
static char buffer[65536];
vsprintf(buffer, format, arguments);
text = [self docView];
length = [text textLength];
[text setSel:length :length];
[text replaceSel:buffer];
[text scrollSelToVisible];
return self;
}
- printString:(NSString *)aString
{
id text;
int length;
text = [self docView];
length = [text textLength];
[text setSel:length :length];
[text replaceSel:[aString cString]];
[text scrollSelToVisible];
return self;
}
- clear:sender
{
id text;
int length;
text = [self docView];
length = [text textLength];
[text setSel:0 :length];
[text replaceSel:""];
[text scrollSelToVisible];
return self;
}
- print:sender
{
[[self docView] printPSCode:sender];
return self;
}
- printFrom:sender
{
return [self sprintf:"%s\n", [sender stringValue]];
}
@end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.