1/* 2 * (c) Copyright 1993, Silicon Graphics, Inc. 3 * ALL RIGHTS RESERVED 4 * Permission to use, copy, modify, and distribute this software for 5 * any purpose and without fee is hereby granted, provided that the above 6 * copyright notice appear in all copies and that both the copyright notice 7 * and this permission notice appear in supporting documentation, and that 8 * the name of Silicon Graphics, Inc. not be used in advertising 9 * or publicity pertaining to distribution of the software without specific, 10 * written prior permission. 11 * 12 * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" 13 * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, 14 * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR 15 * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON 16 * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, 17 * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY 18 * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, 19 * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF 20 * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN 21 * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON 22 * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE 23 * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. 24 * 25 * 26 * US Government Users Restricted Rights 27 * Use, duplication, or disclosure by the Government is subject to 28 * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph 29 * (c)(1)(ii) of the Rights in Technical Data and Computer Software 30 * clause at DFARS 252.227-7013 and/or in similar or successor 31 * clauses in the FAR or the DOD or NASA FAR Supplement. 32 * Unpublished-- rights reserved under the copyright laws of the 33 * United States. Contractor/manufacturer is Silicon Graphics, 34 * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. 35 * 36 * OpenGL(TM) is a trademark of Silicon Graphics, Inc. 37 */ 38#ifndef _GLwDrawAP_h 39#define _GLwDrawAP_h 40 41 42/* MOTIF */ 43#ifdef __GLX_MOTIF 44#include "GLwMDrawA.h" 45#else 46#include "GLwDrawA.h" 47#endif 48 49typedef struct _GLwDrawingAreaClassPart { 50 caddr_t extension; 51 } GLwDrawingAreaClassPart; 52 53 54#ifdef __GLX_MOTIF 55typedef struct _GLwMDrawingAreaClassRec { 56 CoreClassPart core_class; 57 XmPrimitiveClassPart primitive_class; 58 GLwDrawingAreaClassPart glwDrawingArea_class; 59 } GLwMDrawingAreaClassRec; 60 61 62GLAPI GLwMDrawingAreaClassRec glwMDrawingAreaClassRec; 63 64 65/* XT */ 66#else 67 68typedef struct _GLwDrawingAreaClassRec { 69 CoreClassPart core_class; 70 GLwDrawingAreaClassPart glwDrawingArea_class; 71 } GLwDrawingAreaClassRec; 72 73GLAPI GLwDrawingAreaClassRec glwDrawingAreaClassRec; 74 75 76#endif 77 78 79 80typedef struct { 81 /* resources */ 82 int * attribList; 83 XVisualInfo * visualInfo; 84 Boolean myList; /* TRUE if we malloced the attribList*/ 85 Boolean myVisual; /* TRUE if we created the visualInfo*/ 86 Boolean installColormap; 87 Boolean allocateBackground; 88 Boolean allocateOtherColors; 89 Boolean installBackground; 90 XtCallbackList ginitCallback; 91 XtCallbackList resizeCallback; 92 XtCallbackList exposeCallback; 93 XtCallbackList inputCallback; 94 /* specific attributes; add as we get new attributes */ 95 int bufferSize; 96 int level; 97 Boolean rgba; 98 Boolean doublebuffer; 99 Boolean stereo; 100 int auxBuffers; 101 int redSize; 102 int greenSize; 103 int blueSize; 104 int alphaSize; 105 int depthSize; 106 int stencilSize; 107 int accumRedSize; 108 int accumGreenSize; 109 int accumBlueSize; 110 int accumAlphaSize; 111 } GLwDrawingAreaPart; 112 113#ifdef __GLX_MOTIF 114 115typedef struct _GLwMDrawingAreaRec { 116 CorePart core; 117 XmPrimitivePart primitive; 118 GLwDrawingAreaPart glwDrawingArea; 119 } GLwMDrawingAreaRec; 120 121#else 122 123typedef struct _GLwDrawingAreaRec { 124 CorePart core; 125 GLwDrawingAreaPart glwDrawingArea; 126 } GLwDrawingAreaRec; 127 128#endif 129 130#endif 131