Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XCopyArea(3) — Atari System V ue12

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XClearArea(3X11)



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



  NAME
       XCopyArea, XCopyPlane - copy areas

  SYNTAX
       XCopyArea(display, src, dest, gc, src_x, src_y, width,
       height,  dest_x, dest_y)
             Display *display;
             Drawable src, dest;
             GC gc;
             int src_x, src_y;
             unsigned int width, height;
             int dest_x, dest_y;

       XCopyPlane(display, src, dest, gc, src_x, src_y, width,
       height, dest_x, dest_y, plane)
             Display *display;
             Drawable src, dest;
             GC gc;
             int src_x, src_y;
             unsigned int width, height;
             int dest_x, dest_y;
             unsigned long plane;

  ARGUMENTS
       dest_x
       dest_y    Specify the x and y coordinates, which are
                 relative to the origin of the destination
                 rectangle and specify its upper-left corner.

       display   Specifies the connection to the X server.

       gc        Specifies the GC.

       plane     Specifies the bit plane.  You must set exactly one
                 bit to 1.

       src
       dest      Specify the source and destination rectangles to
                 be combined.



Page 1 (printed 8/30/91)

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



       src_x
       src_y     Specify the x and y coordinates, which are
                 relative to the origin of the source rectangle and
                 specify its upper-left corner.

       width
       height    Specify the width and height, which are the
                 dimensions of both the source and destination
                 rectangles.

  DESCRIPTION
       The XCopyArea function combines the specified rectangle of
       src with the specified rectangle of dest.  The drawables
       must have the same root and depth, or a BadMatch error
       results.

       If regions of the source rectangle are obscured and have not
       been retained in backing store or if regions outside the
       boundaries of the source drawable are specified, those
       regions are not copied. Instead, the following occurs on all
       corresponding destination regions that are either visible or
       are retained in backing store. If the destination is a
       window with a background other than None, corresponding
       regions of the destination are tiled with that background
       (with plane-mask of all ones and GXcopy function).
       Regardless of tiling or whether the destination is a window
       or a pixmap, if graphics-exposures is True, then
       GraphicsExpose events for all corresponding destination
       regions are generated.  If graphics-exposures is True but no
       GraphicsExpose events are generated, a NoExpose event is
       generated.  Note that by default graphics-exposures is True
       in new GCs.

       This function uses these GC components: function, plane-
       mask, subwindow-mode, graphics-exposures, clip-x-origin,
       clip-y-origin, and clip-mask.

       XCopyArea can generate BadDrawable, BadGC, and BadMatch
       errors.



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



       The XCopyPlane function uses a single bit plane of the
       specified source rectangle combined with the specified GC to
       modify the specified rectangle of dest.  The drawables must
       have the same root but need not have the same depth.  If the
       drawables do not have the same root, a BadMatch error
       results.  If plane does not have exactly one bit set to 1
       and the values of planes must be less than %2 sup n%, where
       n is the depth of scr, a BadValue error results.

       Effectively, XCopyPlane forms a pixmap of the same depth as
       the rectangle of dest and with a size specified by the
       source region. It uses the foreground/background pixels in
       the GC (foreground everywhere the bit plane in src contains
       a bit set to 1, background everywhere the bit plane in src
       contains a bit set to 0) and the equivalent of a CopyArea
       protocol request is performed with all the same exposure
       semantics.  This can also be thought of as using the
       specified region of the source bit plane as a stipple with a
       fill-style of FillOpaqueStippled for filling a rectangular
       area of the destination.

       This function uses these GC components: function, plane-
       mask, foreground, background, subwindow-mode, graphics-
       exposures, clip-x-origin, clip-y-origin, and clip-mask.

       XCopyPlane can generate BadDrawable, BadGC, BadMatch, and
       BadValue errors.

  DIAGNOSTICS
       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


  Page 3                                          (printed 8/30/91)



















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



                 way required by the request.

       BadValue  Some numeric value falls outside the range of
                 values accepted by the request.  Unless a specific
                 range is specified for an argument, the full range
                 defined by the argument's type is accepted.  Any
                 argument defined as a set of alternatives can
                 generate this error.

  SEE ALSO
       XClearArea(3X11)
       Xlib - C Language X Interface






























Page 4 (printed 8/30/91)

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