ftp.nice.ch/peanuts/GeneralData/Documents/adobe/DPS.Purple.ImportInt.tar.gz#/NX_ImportInt/GraphicImport.h

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

/*
 * (a)  (C) 1990 by Adobe Systems Incorporated. All rights reserved.
 *
 * (b)  If this Sample Code is distributed as part of the Display PostScript
 *	System Software Development Kit from Adobe Systems Incorporated,
 *	then this copy is designated as Development Software and its use is
 *	subject to the terms of the License Agreement attached to such Kit.
 *
 * (c)  If this Sample Code is distributed independently, then the following
 *	terms apply:
 *
 * (d)  This file may be freely copied and redistributed as long as:
 *	1) Parts (a), (d), (e) and (f) continue to be included in the file,
 *	2) If the file has been modified in any way, a notice of such
 *      modification is conspicuously indicated.
 *
 * (e)  PostScript, Display PostScript, and Adobe are registered trademarks of
 *	Adobe Systems Incorporated.
 * 
 * (f) THE INFORMATION BELOW IS FURNISHED AS IS, IS SUBJECT TO
 *	CHANGE WITHOUT NOTICE, AND SHOULD NOT BE CONSTRUED
 *	AS A COMMITMENT BY ADOBE SYSTEMS INCORPORATED.
 *	ADOBE SYSTEMS INCORPORATED ASSUMES NO RESPONSIBILITY
 *	OR LIABILITY FOR ANY ERRORS OR INACCURACIES, MAKES NO
 *	WARRANTY OF ANY KIND (EXPRESS, IMPLIED OR STATUTORY)
 *	WITH RESPECT TO THIS INFORMATION, AND EXPRESSLY
 *	DISCLAIMS ANY AND ALL WARRANTIES OF MERCHANTABILITY, 
 *	FITNESS FOR PARTICULAR PURPOSES AND NONINFRINGEMENT
 *	OF THIRD PARTY RIGHTS.
 */

/*
*	GraphicImport.h
*
*	This subclass of handles much of the overhead for imported
*	files such as tiff files and EPS files. Subclasses of this object
*	provide the specific methods that differeniate the two.
*
*	Version:	2.0
*	Author:	Ken Fromm
*	History:
*			03-20-91		Created the file.
*/

#import <objc/Object.h>
#import "ImportApp.h"
#import "epsfstruct.h"

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

#define  PTS_GRAPHIC		8
#define  SIZE_MIN				16
#define  IMAGE_MAX			1500		/* Maximum size for using an NXImage */

#define  LEFT					0
#define  MIDDLE				1
#define  RIGHT				2
#define  TOP					0
#define  BOTTOM				2

#define  XPOS				18
#define  YPOS				49

@interface GraphicImport : Object
{
	NXAtom		filename;			/* the name of the file */

	id			image,			/* id of the NXImage that serves as the bit cache */
				imagerep;		/* id of the NXImage rep that draws the file */

	NXRect		bounds;			/* the non-rotated bounding box in the document */

	struct _gflags {
		unsigned char  new:1;			/* constrained to original aspect when new */
		unsigned char  selected:1;		/* selected or not */
		unsigned char  dirty:1;			/* needs to be redrawn */
		unsigned char  unimageable:1;	/* cannot be imaged - (path not valid) */
		unsigned char  error:1;			/* error when imaging */
		unsigned char  filler:3;
	} gflags;
}

- initFromFile:(const char *) file;

- (BOOL) listUnavailableResources:(ResourceList *) resourceList;
- addResources:(Resource *) resourceDoc  for:(NXRect *) r;

- free;
- freeTemp;
- copy; 

- setFilename:(const char *) file;
- setImage:anImage;
- setImageRep:anImageRep;

- setSelected:(BOOL) flag;
- (BOOL) selected;
- (BOOL) error;

- setPoint:(int) pt_num  :(const NXPoint *) pt;
- setSize:(const NXSize *) aSize;
- setOrigin:(const NXPoint *) pt;
- setBounds:(const NXRect *) aRect;

- moveAll:(const NXPoint *) pt;

- getPoint:(int) pt_num  :(NXPoint *) pt;
- getBounds:(NXRect *)aRect;

- constrainPoint:(NXPoint *)aPt  forPtNum:(int *) pt_num
		inRect:(const NXRect *) viewRect  withFlags:(int) flags;

- hitControl:(const NXRect *) hitRect  :(int *) pt_num  forSize:(float) size;
- hitObject:(UPath *) hitUpath;

- putControlPoints:(UPath *)buffer  forRect:(NXRect *)r  :(NXPoint *) lastPoint;

- drawBoxforRect:(NXRect *) r  imaging:(BOOL) imageFlag;
- drawObject:(NXRect *) r  withFlags:(int) flags  inView:view;

- displayError;

@end

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