home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * (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.
- */
-
- /*
- * ControlView.h
- *
- * Version: 2.0
- * Author: Ken Fromm
- * History:
- * 03-07-91 Added this comment.
- */
-
- #import "ControlPoint.h"
- #import <appkit/appkit.h>
- #import <appkit/View.h>
-
- #define MAX_POINTS 1000 /* Maximum number of points */
- #define MAX_ARRAY (2*MAX_POINTS) /* Maximum size of pt arrays */
- #define MAX_UPATHOPS MAX_ARRAY /* Maximum points for a user path */
-
-
- /***********************************************************************************************/
- /* Note: The two limits below are necessary because ufill and rectstroke will produce */
- /* limitchecks for numbers exceeding these values. */
- /***********************************************************************************************/
- #define MAX_UPATHPTS 2800 /* Maximum points for a user path */
- #define MAX_RECTPTS 525 /* Maximum rects for a rect stroke */
-
-
- #define BGCOLOR NX_WHITE /* Background color */
- #define BGCOLORSTR 0.0 /* Background stroke color */
- #define BGWIDTHSTR 2.0 /* Background stroke width */
-
- #define DRAWALL 0xfe /* Draw with all methods */
-
- @interface ControlView : View
- {
- BOOL PSTrace;
-
- char *OpsBuffer;
-
- int numberOfPoints, indexOfPoints;
-
- float *XYPoints, *XYBuffer;
-
- id drawMethodsMatrix, displayTimesMatrix, numberPointsMatrix,
- imageId, controlPoint;
-
- union {
- struct {
- unsigned char basic:1;
- unsigned char usercache:1;
- unsigned char userpath:1;
- unsigned char rectop:1;
- unsigned char composite:1;
- unsigned char show:1;
- unsigned char xyshow:1;
- unsigned char PADDING:1;
- } flags;
- unsigned char field;
- } drawFlags;
- }
-
- - initFrame:(const NXRect *) frameRect;
-
- -free;
-
- -setDrawMethodsMatrix:anObject;
- -setDisplayTimesMatrix:anObject;
- -setNumberPointsMatrix:anObject;
- -setControlPoint:anObject;
-
- -setButtonTitle:(OP) title;
- -setButtonEnable:(BOOL) enable;
-
- -psTrace:sender;
- -configureDependence:sender;
- -configurePoints:sender;
- -makePoints:sender;
- -eraseTimes:sender;
-
- -drawViewOne:sender;
- -drawViewAll:sender;
-
- -drawBasic:(int) cell;
- -drawUserCache:(int) cell;
- -drawUserPath:(int) cell;
- -drawRectOp:(int) cell;
- -drawComposite:(int) cell;
- -drawShow:(int) cell;
- -drawXYShow:(int) cell;
-
- -drawSelf:(NXRect *)r :(int) count;
-
- @end
-
-