'\"macro stdmacro
.if n .pH g3x11.XDrRect @(#)XDrRect	40.3 of 1/19/90
.ds tk X Toolkit
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xI Intrinsics
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.ds Rn 3
.ds Vn 2.2
.hw XtMake-Geometry-Request XtQuery-Geometry wid-get
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN		\" send an index entry to the stderr
.tm \\n%:\\$1:\\$2:\\$3
..
.de C{
.KS
.nf
.D
.\"
.\"	choose appropriate monospace font
.\"	the imagen conditional, 480,
.\"	may be changed to L if LB is too
.\"	heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de PN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
.		\" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.nr X
.if \nX=0 .ds x} XDrawRectangle 3X11 "9/1/88" "XWIN 3.0" "\&"
.if \nX=1 .ds x} XDrawRectangle 3X11 "9/1/88" "XWIN 3.0"
.if \nX=2 .ds x} XDrawRectangle 3X11 "" "\&"
.if \nX=3 .ds x} XDrawRectangle "" "" "\&"
.TH \*(x}
.SH NAME
XDrawRectangle, XDrawRectangles \- draw rectangles
.SH SYNTAX
.\" $Header: XRectangle.f,v 1.1 88/02/26 10:02:37 mento Exp $
XDrawRectangle\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^)
.br
      Display *\fIdisplay\fP\^;
.br
      Drawable \fId\fP\^;
.br
      GC \fIgc\fP\^;
.br
      int \fIx\fP\^, \fIy\fP\^;
.br
      unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.LP
.\" $Header: XRectangles.f,v 1.1 88/02/26 10:02:38 mento Exp $
XDrawRectangles\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIrectangles\fP\^, \fInrectangles\fP\^)
.br
      Display *\fIdisplay\fP\^;
.br
      Drawable \fId\fP\^;
.br
      GC \fIgc\fP\^;
.br
      XRectangle \fIrectangles\fP\^[\^]\^;
.br
      int \fInrectangles\fP\^;
.SH ARGUMENTS
.\" $Header: d.a,v 1.1 88/02/26 10:04:25 mento Exp $
.IP \fId\fP 1i
Specifies the drawable. 
.\" $Header: display.a,v 1.1 88/02/26 10:26:29 mento Exp $
.IP \fIdisplay\fP 1i
Specifies the connection to the X\s-2WIN\s+2 server.
.\" $Header: gc.a,v 1.2 88/05/09 11:20:34 mento Exp $
.IP \fIgc\fP 1i
Specifies the GC.
.\" $Header: nrectangles.a,v 1.1 88/02/26 10:29:47 mento Exp $
.IP \fInrectangles\fP 1i
Specifies the number of rectangles in the array.
.\" $Header: rectangles.a,v 1.1 88/02/26 10:30:50 mento Exp $
.IP \fIrectangles\fP 1i
Specifies a pointer to an array of rectangles.
.ds Wh , which specify the dimensions of the rectangle
.\" $Header: w+h_gen.a,v 1.2 88/08/04 11:21:28 mento Exp $
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.ds Xy , which specify the upper-left corner of the rectangle
.\" $Header: xy_gen.a,v 1.2 88/08/04 11:22:37 mento Exp $
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
.\" $Header: XRectangle.d,v 1.4 88/06/11 07:52:48 mento Exp $
The
.PN XDrawRectangle
and
.PN XDrawRectangles
functions draw the outlines of the specified rectangle or rectangles as
if a five-point 
.PN PolyLine 
protocol request were specified for each rectangle:
.IP
[x,y] [x+width,y] [x+width,y+height] [x,y+height] [x,y]
.LP 
For the specified rectangle or rectangles, 
these functions do not draw a pixel more than once.
.PN XDrawRectangles
draws the rectangles in the order listed in the array.
If rectangles intersect,
the intersecting pixels are drawn multiple times.
.LP
Both functions use these GC components: 
function, plane-mask, line-width, line-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.
.LP
.ds fd .PN XDrawRectangle
.ds fe .PN XDrawRectangles
\*(fd
and
\*(fe
can generate
.PN BadDrawable ,
.PN BadGC ,
and
.PN BadMatch 
errors.
.SH DIAGNOSTICS
.\" $Header: baddrawable.e,v 1.1 87/09/04 08:22:59 mento Exp $
.TP 1i
.PN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.\" $Header: badgc.e,v 1.1 87/09/04 08:23:02 mento Locked $
.TP 1i
.PN BadGC
A value for a GContext argument does not name a defined GContext.
.\" $Header: badmatch1.e,v 1.3 87/09/09 18:18:54 mento Exp $
.TP 1i
.PN BadMatch
An
.PN InputOnly
window is used as a Drawable.
.\" $Header: badmatch2.e,v 1.3 87/09/11 11:53:42 mento Exp $
.TP 1i
.PN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.SH "SEE ALSO"
XDrawArc(3X11),
.br
XDrawLine(3X11),
.br
XDrawPoint(3X11)
.br
\fI\*(xL\fP
