NAME
XDrawRectangle, XDrawRectangles, XRectangle - draw rectangles and rectangles structure
SYNTAX
int XDrawRectangle\^(\^Display *display\^, Drawable d\^, GC
gc\^, int x\^, int y\^, unsigned int width\^, unsigned
int height\^);
int XDrawRectangles\^(\^Display *display\^, Drawable d\^, GC
gc\^, XRectangle rectangles\^[\^]\^, int nrectangles\^);
ARGUMENTS
d
Specifies the drawable.
display
Specifies the connection to the X server.
gc
Specifies the GC.
nrectangles
Specifies the number of rectangles in the array.
rectangles
Specifies an array of rectangles.
width
height
Specify the width and height.
x
y
Specify the x and y coordinates.
DESCRIPTION
The
and
functions draw the outlines of the specified rectangle or rectangles as
if a five-point
protocol request were specified for each rectangle:
[x,y] [x+width,y] [x+width,y+height] [x,y+height] [x,y]
For the specified rectangle or rectangles,
these functions do not draw a pixel more than once.
draws the rectangles in the order listed in the array.
If rectangles intersect,
the intersecting pixels are drawn multiple times.
Both functions use these GC components:
function, plane-mask, line-width,
line-style, cap-style, join-style, fill-style,
subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
They also use these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
tile-stipple-y-origin, dash-offset, and dash-list.
and
can generate
and
errors.
STRUCTURES
The
structure contains:
typedef struct {
short x, y;
unsigned short width, height;
} XRectangle;
All x and y members are signed integers.
The width and height members are 16-bit unsigned integers.
You should be careful not to generate coordinates and sizes
out of the 16-bit ranges, because the protocol only has 16-bit fields
for these values.
DIAGNOSTICS
A value for a Drawable argument does not name a defined Window or Pixmap.
A value for a GContext argument does not name a defined GContext.
An
window is used as a Drawable.
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
SEE ALSO
XDrawArc(3X11),
XDrawLine(3X11),
XDrawPoint(3X11)