1 /*
2  * $Header: /home/orchestra5/davy/stuff/misc/xsat/RCS/CanvasP.h,v 1.1 92/04/10 14:08:05 davy Exp $
3  *
4  * Copyright 1992 by David A. Curry
5  * Adapted for use with ACfax by Andreas Czechanowski
6  *
7  * Permission to use, copy, modify, distribute, and sell this software and its
8  * documentation for any purpose is hereby granted without fee, provided that
9  * the above copyright notice appear in all copies and that both that copyright
10  * notice and this permission notice appear in supporting documentation.  The
11  * author makes no representations about the suitability of this software for
12  * any purpose.  It is provided "as is" without express or implied warranty.
13  *
14  * Private include file for the canvas widget.  Based on the include file for
15  * the Template widget in the X11R5 distribution.
16  *
17  * David A. Curry
18  * Purdue University
19  * Engineering Computer Network
20  * 1285 Electrical Engineering Building
21  * West Lafayette, IN 47907
22  * davy@ecn.purdue.edu
23  *
24  * $Log:	CanvasP.h,v $
25  * Revision 1.1  92/04/10  14:08:05  davy
26  * Initial revision
27  *
28  */
29 #ifndef _CanvasP_h
30 #define _CanvasP_h
31 
32 #include <X11/CompositeP.h>
33 #include "Canvas.h"
34 
35 typedef struct {
36 	int empty;
37 } CanvasClassPart;
38 
39 typedef struct _CanvasClassRec {
40 	CoreClassPart		core_class;
41 	CompositeClassPart	composite;
42 	CanvasClassPart		canvas_class;
43 } CanvasClassRec;
44 
45 extern CanvasClassRec canvasClassRec;
46 
47 typedef struct {
48 	Cursor	idle_cursor;		/* cursor when not drawing	*/
49 	Cursor	busy_cursor;		/* cursor when drawing		*/
50 	XtCallbackList callbacks;	/* callbacks for button-press	*/
51 
52 	GC	copyGC;			/* GC for copying pixmaps	*/
53 	GC	drawGC;			/* GC for drawing on picture	*/
54 	GC	clearGC;		/* GC for clearing pixmaps	*/
55 
56 	Pixmap	picture;		/* "main" backup-pixmap 	*/
57 	unsigned pxmw;			/* width of created pixmap	*/
58 	unsigned pxmh;			/* height of created pixmap	*/
59 } CanvasPart;
60 
61 typedef struct _CanvasRec {
62 	CorePart	core;
63 	CompositePart	composite;
64 	CanvasPart	canvas;
65 } CanvasRec;
66 
67 #endif /* _CanvasP_h */
68