|
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: T f
Length: 1607 (0x647) Types: TextFile Names: »fill.c«
└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki └─⟦526ad3590⟧ »EUUGD11/gnu-31mar87/X.V10.R4.tar.Z« └─⟦2109abc41⟧ └─⟦this⟧ »./X.V10R4/libis/fill.c«
/* * $Source: /u1/X/libis/RCS/fill.c,v $ * $Header: fill.c,v 1.1 86/11/17 14:34:04 swick Rel $ */ #ifndef lint static char *rcsid_fill_c = "$Header: fill.c,v 1.1 86/11/17 14:34:04 swick Rel $"; #endif lint #include "is-copyright.h" /* fill.c Perform a simple raster operation a section of the * screen * * PixFill Do a function on the screen * * Copyright (c) 1986, Integrated Solutions, Inc. */ #include "Xis.h" PixFill(srcpix, xymask, dstx, dsty, width, height, clips, clipcount, func, zmask) int srcpix; BITMAP *xymask; register int dstx, dsty; int width, height; register CLIP *clips; register int clipcount; int func; int zmask; { CLIP bounds, i; PIXMAP *fillpix; extern PIXMAP *MakePixmap(); #ifdef DEBUG if (debug & D_PixFill) printf("PixFill(srcpix=0x%x, xymask=0x%x, dstx=%d, dsty=%d,\n width=%d, height=%d, clips=0x%x, clipcount=%d, func=%d, zmask=0x%04x)\n", srcpix, xymask, dstx, dsty, width, height, clips, clipcount, func, zmask); if (debug & D_PixFill_data) printf_bitmap("xymask", xymask); #endif DEBUG fillpix = MakePixmap((BITMAP *)NULL, srcpix, 0); bounds.top = dsty; bounds.left = dstx; bounds.width = width; bounds.height = height; for ( ; clipcount; clipcount--, ++clips) { if (Overlap(clips[0], bounds)) { i = Intersection(clips[0], bounds); CheckCursor(i); GIP_RasterOp((unsigned char)func, fillpix, 0, 0, &ScreenPixmap, i.left, i.top, xymask, i.left - dstx, i.top - dsty, i.width, i.height, zmask); } } RestoreCursor(); if (!--fillpix->refcnt) FreePixmap (fillpix); }