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
Block a user