2002-10-26 Carl Worth * xrtransform.c (_XrTransformDistance): (_XrTransformPoint): changed to use individual X/Y arguments rather tha an XPointDouble. This improves readability since _XrTransformDistance is now always called with arguments of dx/dy rather than pt.x/pt.y. * xrpath.c (_XrPathMoveTo): (_XrPathLineTo): (_XrPathCurveTo): (_XrPathClosePath): replaced public _XrPathAdd with explicit named functions. This cleans up the implementation since _XrPathAdd, which is unsafe with respect to argument consistency, is now private. Also, since the _XrGState now maintains the current point, I dropped all relative path operators from the XrPath data structures. * xrgstate.c (_XrGStateMoveTo): (_XrGStateLineTo): (_XrGStateCurveTo): (_XrGStateRelMoveTo): (_XrGStateRelLineTo): (_XrGStateRelCurveTo): Replaces _XrGStateAddPathOp and _XrGStateAddUnaryPathOp with explicit named functions for each operator type. This change introduces the current point state into the XrGState structure rather than postponing its calculation until path interpretation. * xrgstate.c (_XrGStateSetDrawable): (_XrGStateSetVisual): (_XrGStateSetFormat): (_XrGStateSetOperator): (_XrGStateSetRGBColor): (_XrGStateSetTolerance): (_XrGStateSetAlpha): (_XrGStateSetFillRule): (_XrGStateSetLineWidth): (_XrGStateSetLineCap): (_XrGStateSetLineJoin): (_XrGStateSetMiterLimit): (_XrGStateTranslate): (_XrGStateScale): (_XrGStateRotate): (_XrGStateConcatMatrix): (_XrGStateNewPath): : Added XrStatus return values to many functions -- just for consistency, these functions can not return errors in any case. * xr.c (XrShowText): Started to ass XrShowText, (still not functional) 2002-10-24 Carl Worth * xr.c (XrSetFillRule): Added support to set fill rule. 2002-10-23 Carl Worth * xrtraps.c (_XrTrapsTessellatePolygon): Fix for polygon with multiple sub-polygons that are disjoint in Y. 2002-07-16 Carl Worth * Xr.h: Renamed xrpicture.c to xrsurface.c as part of the move. Added XrSetFormat, XrSetOperator, XrSetLineCap, XrSetLineJoin, and XrSetMiterLimit, (although the line style drawing code is not all in place yet). * xrpath.c (XrPathLineTo): Changed LineTo semantics to be the same as MoveTo if there was no previous MoveTo. * xrtraps.c: Added tessellation code, (lifted from XRenderCompositeDoublePoly which can now disappear). * xrgstate.c: Changed stroke code to incrementally build a list of trapezoids rather than forming one giant polygonal outline and rendering that. This should be more efficient. (_XrGStateFillPath): Now uses Xr's own tessellation along with XcCompositeTrapezoids. * Xr.h: Moved all of Xr away from Xrender to the new Xc library. * xrsurface.c: Renamed from xrpicture.c, (part of the move from XRender to Xc). * Started keeping a ChangeLog ;-)