ftp.nice.ch/pub/next/developer/resources/classes/Rubberview.s.tar.gz#/Rubberview/Rubberband.h

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

/* Generated by Interface Builder */
/* 
	Augmented by Slugg Jello, 
	Mouthing Flowers
	152 20th Ave. #1
	Seattle, WA. 98112
	slugg@mouthers.nwnexus.wa.com
*/


#import <objc/Object.h>
#import <appkit/graphics.h>

#define RB_CORNER	0 // default, corner of rect is at first mouse click
#define RB_CENTER	1 // center of ractangle is at first mouse click

@interface Rubberband:Object
{
	NXRect currentRect; // kept in window coords
	NXRect boundsRect;  // kept in window coords
	id myView;
	struct 
	{
		unsigned char  pivot			:1 ;
		unsigned char  inclusive	:1 ;
		unsigned char  useBounds	:1 ;
	}
	flags; 	
}

- init;									// better call setView if you use this
- initWithView :aView;				// easiest way to initialize
- setView :aView;						// gotta have one
- doStretch :(NXEvent *)event;	// stretch rubberband given first mouse click
- (BOOL)setInclusive:(BOOL)onOff;  	// set whether rectangle returned includes 
											// pixels under rubberband
- currentRect :(NXRect *)rect; 	// currentRect returned in myView coords
											// use to get results after doStretch
- setCurrentRectToBounds;			// like it says
- setBounds :(const NXRect *)rect; 		// rubberband constraint given in 
											// myView coords
- bounds :(NXRect *)rect; 	// boundsRect returned in myView coords
- (int)setPivot :(int)pivot;    	// see RB_ stuff above

@end

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