|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: S T
Length: 3779 (0xec3) Types: TextFile Names: »StoreGridBox.c«
└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki └─⟦526ad3590⟧ »EUUGD11/gnu-31mar87/X.V10.R4.tar.Z« └─⟦2109abc41⟧ └─⟦this⟧ »./X.V10R4/uwm/StoreGridBox.c«
#ifndef lint static char *rcsid_StoreGridBox_c = "$Header: StoreGridBox.c,v 10.4 86/11/19 16:24:52 jg Rel $"; #endif lint /* * COPYRIGHT 1985, 1986 * DIGITAL EQUIPMENT CORPORATION * MAYNARD, MASSACHUSETTS * ALL RIGHTS RESERVED. * * THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE AND * SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION. * DIGITAL MAKES NO REPRESENTATIONS ABOUT THE SUITIBILITY OF THIS SOFTWARE FOR * ANY PURPOSE. IT IS SUPPLIED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. * * IF THE SOFTWARE IS MODIFIED IN A MANNER CREATING DERIVATIVE COPYRIGHT RIGHTS, * APPROPRIATE LEGENDS MAY BE PLACED ON THE DERIVATIVE WORK IN ADDITION TO THAT * SET FORTH ABOVE. * * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting documentation, * and that the name of Digital Equipment Corporation not be used in advertising * or publicity pertaining to distribution of the software without specific, * written prior permission. * */ /* * MODIFICATION HISTORY * * 000 -- M. Gancarz, DEC Ultrix Engineering Group */ #ifndef lint static char *sccsid = "@(#)StoreGridBox.c 3.8 1/24/86"; #endif /* * StoreGridBox - This subroutine is used by the X Window Manager (xwm) * to store the vertices for the movement resize grid and box in a * vertex list. */ #include "uwm.h" /* * Store the vertices for the movement resize grid and box in a vertex list. */ int StoreGridBox(box, ulx, uly, lrx, lry) register Vertex box[]; int ulx; /* Upper left X coordinate. */ int uly; /* Upper left Y coordinate. */ int lrx; /* Lower right X coordinate. */ int lry; /* Lower right Y coordinate. */ { register int xthird, ythird; int x1third, y1third; int x2third, y2third; /* * Xor in. */ box[0].x = box[3].x = box[4].x = box[5].x = box[7].x = ulx; box[1].x = box[2].x = box[6].x = box[8].x = lrx; box[0].y = box[1].y = box[4].y = box[9].y = box[11].y = uly; box[2].y = box[3].y = box[10].y = box[12].y = lry; box[0].flags = box[5].flags = box[7].flags = box[9].flags = box[11].flags = VertexDontDraw; /* * These are the X and Y calculations for the parts of the grid that * are dependent on the division by 3 calculations. */ /* * Y dimension third. */ ythird = (lry - uly) / 3; y1third = uly + ythird; y2third = y1third + ythird; /* * X dimension third. */ xthird = (lrx - ulx) / 3; x1third = ulx + xthird; x2third = x1third + xthird; /* * Stash first set of vertices. */ box[5].y = box[6].y = y1third; box[7].y = box[8].y = y2third; box[9].x = box[10].x = x1third; box[11].x = box[12].x = x2third; /* * Do not erase if we're freezing the screen. */ if (Freeze) return(13); /* * From here on we're retracing the vertices to clear the * grid using GXxor. */ box[18].y = box[19].y = y1third; box[20].y = box[21].y = y2third; box[22].x = box[23].x = x1third; box[24].x = box[25].x = x2third; box[13].x = box[16].x = box[17].x = box[18].x = box[20].x = ulx; box[13].y = box[14].y = box[17].y = box[22].y = box[24].y = uly; box[14].x = box[15].x = box[19].x = box[21].x = lrx; box[15].y = box[16].y = box[23].y = box[25].y = lry; box[13].flags = box[18].flags = box[20].flags = box[22].flags = box[24].flags = VertexDontDraw; /* * Total number of vertices is 26. */ return(26); }