0a1177a35a3a3563427039abb194f341f51cc2a8
braney
  Tue Jun 15 18:17:24 2010 -0700
removed Smear8 in favor of making Smears always take Colors.   There are still some problems with 32 bit smears not getting the same colors as it's 8bit analog.  I'm thinking this is something to do with the 0 and 1 being white and black in eight bit
diff --git src/lib/memgfx.c src/lib/memgfx.c
index 49b5d64..fbca7d9 100644
--- src/lib/memgfx.c
+++ src/lib/memgfx.c
@@ -241,7 +241,6 @@
 *pmg = NULL;
 }
 
-#ifndef COLOR32
 static void nonZeroCopy(Color *d, Color *s, int width)
 /* Copy non-zero colors. */
 {
@@ -253,14 +252,11 @@
         d[i] = c;
     }
 }
-#endif
 
-static void mgPutSegMaybeZeroClear8(struct memGfx *mg, int x, int y, int width, unsigned char *dots, boolean zeroClear)
+static void mgPutSegMaybeZeroClear(struct memGfx *mg, int x, int y, int width, Color *dots, boolean zeroClear)
 /* Put a series of dots starting at x, y and going to right width pixels.
  * Possibly don't put zero dots though. */
 {
-#ifdef COLOR32
-#else
 int x2;
 Color *pt;
 if (y < mg->clipMinY || y > mg->clipMaxY)
@@ -282,20 +278,19 @@
     else
         {
         width *= sizeof(Color);
-        memcpy(pt, dots, width * sizeof(int));
+        memcpy(pt, dots, width * sizeof(Color));
         }
     }
-#endif /* COLOR32 */
 }
 
-void mgVerticalSmear8(struct memGfx *mg,
+void mgVerticalSmear(struct memGfx *mg,
 	int xOff, int yOff, int width, int height, 
-	unsigned char *dots, boolean zeroClear)
+	Color *dots, boolean zeroClear)
 /* Put a series of one 'pixel' width vertical lines. */
 {
 while (--height >= 0)
     {
-    mgPutSegMaybeZeroClear8(mg, xOff, yOff, width, dots, zeroClear);
+    mgPutSegMaybeZeroClear(mg, xOff, yOff, width, dots, zeroClear);
     ++yOff;
     }
 }
@@ -519,17 +514,17 @@
 mgBrezy(mg, x1, y1, x2, y2, color, bottom, TRUE);
 }
 
-void mgPutSeg8(struct memGfx *mg, int x, int y, int width, unsigned char *dots)
+void mgPutSeg(struct memGfx *mg, int x, int y, int width, Color *dots)
 /* Put a series of dots starting at x, y and going to right width pixels. */
 {
-mgPutSegMaybeZeroClear8(mg, x, y, width, dots, FALSE);
+mgPutSegMaybeZeroClear(mg, x, y, width, dots, FALSE);
 }
 
-void mgPutSegZeroClear8(struct memGfx *mg, int x, int y, int width, unsigned char *dots)
+void mgPutSegZeroClear(struct memGfx *mg, int x, int y, int width, Color *dots)
 /* Put a series of dots starting at x, y and going to right width pixels.
  * Don't put zero dots though. */
 {
-mgPutSegMaybeZeroClear8(mg, x, y, width, dots, TRUE);
+mgPutSegMaybeZeroClear(mg, x, y, width, dots, TRUE);
 }
 
 
@@ -917,7 +912,7 @@
 vg->setWriteMode = (vg_setWriteMode)mgSetWriteMode;
 vg->setClip = (vg_setClip)mgSetClip;
 vg->unclip = (vg_unclip)mgUnclip;
-vg->verticalSmear8 = (vg_verticalSmear8)mgVerticalSmear8;
+vg->verticalSmear = (vg_verticalSmear)mgVerticalSmear;
 vg->fillUnder = (vg_fillUnder)mgFillUnder;
 vg->drawPoly = (vg_drawPoly)mgDrawPoly;
 vg->setHint = (vg_setHint)mgSetHint;