[Commit] Xr/src Xr.h,1.23,1.24 xr.c,1.21,1.22 xrgstate.c,1.31,1.32 xrint.h,1.37,1.38
Carl Worth
commit@keithp.com
Mon, 12 May 2003 09:46:59 -0700
Committed by: cworth
Update of /local/src/CVS/Xr/src
In directory home.keithp.com:/tmp/cvs-serv14125/src
Modified Files:
Xr.h xr.c xrgstate.c xrint.h
Log Message:
Added XrSetPattern
Index: Xr.h
===================================================================
RCS file: /local/src/CVS/Xr/src/Xr.h,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- Xr.h 2 May 2003 21:07:42 -0000 1.23
+++ Xr.h 12 May 2003 16:46:57 -0000 1.24
@@ -121,6 +121,10 @@
void
XrSetRGBColor(XrState *xrs, double red, double green, double blue);
+/* XXX: Do we want XrGetPattern as well? */
+void
+XrSetPattern(XrState *xrs, XrSurface *pattern);
+
void
XrSetTolerance(XrState *xrs, double tolerance);
@@ -391,6 +395,9 @@
XrStatus
XrSurfaceSetRepeat (XrSurface *surface, int repeat);
+
+/* XXX: Need some of the following to make pattern support useful:
+ XrSurfaceSetTransform, XrSurfaceSetMatrix, XrSurfaceScale, XrSurfaceTranslate */
_XFUNCPROTOEND
Index: xr.c
===================================================================
RCS file: /local/src/CVS/Xr/src/xr.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- xr.c 1 May 2003 15:18:25 -0000 1.21
+++ xr.c 12 May 2003 16:46:57 -0000 1.22
@@ -148,6 +148,15 @@
}
void
+XrSetPattern(XrState *xrs, XrSurface *pattern)
+{
+ if (xrs->status)
+ return;
+
+ xrs->status = _XrGStateSetPattern(_XR_CURRENT_GSTATE(xrs), pattern);
+}
+
+void
XrSetTolerance(XrState *xrs, double tolerance)
{
if (xrs->status)
Index: xrgstate.c
===================================================================
RCS file: /local/src/CVS/Xr/src/xrgstate.c,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -d -r1.31 -r1.32
--- xrgstate.c 12 May 2003 16:24:17 -0000 1.31
+++ xrgstate.c 12 May 2003 16:46:57 -0000 1.32
@@ -283,7 +283,7 @@
XrSurfaceDestroy (gstate->surface);
gstate->surface = surface;
- _XrSurfaceReference (surface);
+ _XrSurfaceReference (gstate->surface);
return XrStatusSuccess;
}
@@ -321,6 +321,17 @@
XrSurfaceDestroy (surface);
return status;
+}
+
+XrStatus
+_XrGStateSetPattern (XrGState *gstate, XrSurface *pattern)
+{
+ XrSurfaceDestroy (gstate->pattern);
+
+ gstate->pattern = pattern;
+ _XrSurfaceReference (gstate->pattern);
+
+ return XrStatusSuccess;
}
XrStatus
Index: xrint.h
===================================================================
RCS file: /local/src/CVS/Xr/src/xrint.h,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -d -r1.37 -r1.38
--- xrint.h 12 May 2003 16:24:17 -0000 1.37
+++ xrint.h 12 May 2003 16:46:57 -0000 1.38
@@ -335,6 +335,9 @@
_XrGStateGetTargetSurface (XrGState *gstate);
XrStatus
+_XrGStateSetPattern (XrGState *gstate, XrSurface *pattern);
+
+XrStatus
_XrGStateSetTargetDrawable (XrGState *gstate,
Display *dpy,
Drawable drawable,