XFillRectangles()XFillRectangles()Name
XFillRectangles – fill multiple rectangular areas.
Synopsis
XFillRectangles(display, drawable, gc, rectangles, nrectangles)
Display *display;
Drawable drawable;
GC gc;
XRectangle *rectangles;
int nrectangles;
Arguments
display Specifies a connection to an X server; returned from
XOpenDisplay().
drawable Specifies the drawable.
gc Specifies the graphics context.
rectangles
Specifies a pointer to an array of rectangles.
nrectangles
Specifies the number of rectangles in the array.
DescriptionXFillRectangles() fills multiple rectangular areas in the specified
drawable using the graphics context.
The x and y coordinates of each rectangle are relative to the draw‐
able's origin, and define the upper left corner of the rectangle. The
rectangles are drawn in the order listed. For any given rectangle, no
pixel is drawn more than once. If rectangles intersect, the intersect‐
ing pixels will be drawn multiple times.
In R4 and earlier there is a limit to the number of rectangles that can
be drawn in a single call, based on the maximum request size, which
varies according to the server. In R5, Xlib chops your call into as
many protocol requests as required. To determine how many rectangles
you can draw in a single call in R4, find out your server's maximum
request size using XMaxRequestSize(). Subtract three and divide by
two, and this is the maximum number of rectangles you can fill in a
single XDrawRectangles() call.
XFillRectangles() uses these graphics context components: function,
plane_mask, fill_style, subwindow_mode, clip_x_origin, clip_y_
origin, and clip_ mask. This function also uses these graphics context
components depending on the fill_ style: foreground, background, tile,
stipple, ts_x_origin, and ts_y_ origin.
For more information, see Volume One, Chapter 6, Drawing Graphics and
Text, and Chapter 5, The Graphics Context.
Structures
typedef struct {
short x, y;
unsigned short width, height;
} XRectangle;
Errors
BadDrawable
BadGC
BadMatch
See AlsoXClearArea(), XClearWindow(), XCopyArea(), XCopyPlane(), XDraw,
XDrawArc(), XDrawArcs(), XDrawFilled(), XDrawLine(), XDrawLines(),
XDrawPoint(), XDrawPoints(), XDrawRectangle(), XDrawRectangles(),
XDrawSegments(), XFillArc(), XFillArcs(), XFillPolygon(), XFillRectan‐
gle(), XFillRectangles().
Xlib - Drawing Primitives XFillRectangles()