Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XDrRect(3) — Atari System V ue12

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XDrawArc(3X11)

XDrawLine(3X11)

XDrawPoint(3X11)



  XDrawRectangle(3X11)X Version 11 (Release 4) XDrawRectangle(3X11)



  NAME
       XDrawRectangle, XDrawRectangles, XRectangle - draw
       rectangles and rectangles structure

  SYNTAX
       XDrawRectangle(display, d, gc, x, y, width, height)
             Display *display;
             Drawable d;
             GC gc;
             int x, y;
             unsigned int width, height;

       XDrawRectangles(display, d, gc, rectangles, nrectangles)
             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 a pointer to an array of rectangles.

       width
       height    Specify the width and height, which specify the
                 dimensions of the rectangle.

       x
       y         Specify the x and y coordinates, which specify the
                 upper-left corner of the rectangle.



Page 1 (printed 8/30/91)

  XDrawRectangle(3X11)X Version 11 (Release 4) XDrawRectangle(3X11)



  DESCRIPTION
       The XDrawRectangle and XDrawRectangles functions draw the
       outlines of the specified rectangle or rectangles as if a
       five-point PolyLine 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.  XDrawRectangles 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, 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.

       XDrawRectangle and XDrawRectangles can generate BadDrawable,
       BadGC, and BadMatch errors.

  STRUCTURES
       The XRectangle 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



Page 2 (printed 8/30/91)
  XDrawRectangle(3X11)X Version 11 (Release 4) XDrawRectangle(3X11)



       BadDrawable
                 A value for a Drawable argument does not name a
                 defined Window or Pixmap.

       BadGC     A value for a GContext argument does not name a
                 defined GContext.

       BadMatch  An InputOnly window is used as a Drawable.

       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.

  SEE ALSO
       XDrawArc(3X11), XDrawLine(3X11), XDrawPoint(3X11)
       Xlib - C Language X Interface


























Page 3 (printed 8/30/91)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026