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 "miwideline.h"
|
||||||
#include "mi.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,
|
static void miLineArc(DrawablePtr pDraw, GCPtr pGC,
|
||||||
unsigned long pixel, SpanDataPtr spanData,
|
unsigned long pixel, SpanDataPtr spanData,
|
||||||
LineFacePtr leftFace,
|
LineFacePtr leftFace,
|
||||||
|
@ -213,7 +240,7 @@ miFillPolyHelper (DrawablePtr pDrawable, GCPtr pGC, unsigned long pixel,
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
spanRec.count = ppt - spanRec.points;
|
spanRec.count = ppt - spanRec.points;
|
||||||
AppendSpanGroup (pGC, pixel, &spanRec, spanData)
|
AppendSpanGroup (pGC, pixel, &spanRec, spanData);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -282,7 +309,7 @@ miFillRectPolyHelper (
|
||||||
y++;
|
y++;
|
||||||
}
|
}
|
||||||
spanRec.count = ppt - spanRec.points;
|
spanRec.count = ppt - spanRec.points;
|
||||||
AppendSpanGroup (pGC, pixel, &spanRec, spanData)
|
AppendSpanGroup (pGC, pixel, &spanRec, spanData);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1132,7 +1159,7 @@ miLineArc (
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
spanRec.count = n;
|
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 "mispans.h"
|
||||||
#include "mifpoly.h" /* for ICEIL */
|
#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
|
* Polygon edge description for integer wide-line routines
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue
Block a user