Move AppendSpanGroup from miwideline.h to miwideline.c.
Also make it stop being a macro. Signed-off-by: Jamey Sharp <jamey@minilop.net> Reviewed-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
		
							parent
							
								
									4272d6722c
								
							
						
					
					
						commit
						ccdaecc547
					
				| 
						 | 
				
			
			@ -52,6 +52,33 @@ from The Open Group.
 | 
			
		|||
#include "miwideline.h"
 | 
			
		||||
#include "mi.h"
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * interface data to span-merging polygon filler
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
typedef struct _SpanData {
 | 
			
		||||
    SpanGroup	fgGroup, bgGroup;
 | 
			
		||||
} SpanDataRec, *SpanDataPtr;
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
AppendSpanGroup(GCPtr pGC, unsigned long pixel, Spans *spanPtr, SpanDataPtr spanData)
 | 
			
		||||
{
 | 
			
		||||
    SpanGroup *group, *othergroup = NULL;
 | 
			
		||||
    if (pixel == pGC->fgPixel)
 | 
			
		||||
    {
 | 
			
		||||
	group = &spanData->fgGroup;
 | 
			
		||||
	if (pGC->lineStyle == LineDoubleDash)
 | 
			
		||||
	    othergroup = &spanData->bgGroup;
 | 
			
		||||
    }
 | 
			
		||||
    else
 | 
			
		||||
    {
 | 
			
		||||
	group = &spanData->bgGroup;
 | 
			
		||||
	othergroup = &spanData->fgGroup;
 | 
			
		||||
    }
 | 
			
		||||
    miAppendSpans (group, othergroup, spanPtr);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
static void miLineArc(DrawablePtr pDraw, GCPtr pGC,
 | 
			
		||||
		      unsigned long pixel, SpanDataPtr spanData,
 | 
			
		||||
		      LineFacePtr leftFace,
 | 
			
		||||
| 
						 | 
				
			
			@ -213,7 +240,7 @@ miFillPolyHelper (DrawablePtr pDrawable, GCPtr pGC, unsigned long pixel,
 | 
			
		|||
    else
 | 
			
		||||
    {
 | 
			
		||||
	spanRec.count = ppt - spanRec.points;
 | 
			
		||||
	AppendSpanGroup (pGC, pixel, &spanRec, spanData)
 | 
			
		||||
	AppendSpanGroup (pGC, pixel, &spanRec, spanData);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -282,7 +309,7 @@ miFillRectPolyHelper (
 | 
			
		|||
	    y++;
 | 
			
		||||
	}
 | 
			
		||||
	spanRec.count = ppt - spanRec.points;
 | 
			
		||||
	AppendSpanGroup (pGC, pixel, &spanRec, spanData)
 | 
			
		||||
	AppendSpanGroup (pGC, pixel, &spanRec, spanData);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1132,7 +1159,7 @@ miLineArc (
 | 
			
		|||
    else
 | 
			
		||||
    {
 | 
			
		||||
	spanRec.count = n;
 | 
			
		||||
	AppendSpanGroup (pGC, pixel, &spanRec, spanData)
 | 
			
		||||
	AppendSpanGroup (pGC, pixel, &spanRec, spanData);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -31,30 +31,6 @@ from The Open Group.
 | 
			
		|||
#include "mispans.h"
 | 
			
		||||
#include "mifpoly.h" /* for ICEIL */
 | 
			
		||||
 | 
			
		||||
/* 
 | 
			
		||||
 * interface data to span-merging polygon filler
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
typedef struct _SpanData {
 | 
			
		||||
    SpanGroup	fgGroup, bgGroup;
 | 
			
		||||
} SpanDataRec, *SpanDataPtr;
 | 
			
		||||
 | 
			
		||||
#define AppendSpanGroup(pGC, pixel, spanPtr, spanData) { \
 | 
			
		||||
	SpanGroup   *group, *othergroup = NULL; \
 | 
			
		||||
	if (pixel == pGC->fgPixel) \
 | 
			
		||||
	{ \
 | 
			
		||||
	    group = &spanData->fgGroup; \
 | 
			
		||||
	    if (pGC->lineStyle == LineDoubleDash) \
 | 
			
		||||
		othergroup = &spanData->bgGroup; \
 | 
			
		||||
	} \
 | 
			
		||||
	else \
 | 
			
		||||
	{ \
 | 
			
		||||
	    group = &spanData->bgGroup; \
 | 
			
		||||
	    othergroup = &spanData->fgGroup; \
 | 
			
		||||
	} \
 | 
			
		||||
	miAppendSpans (group, othergroup, spanPtr); \
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Polygon edge description for integer wide-line routines
 | 
			
		||||
 */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue