Provided by: libx11-doc_1.8.7-1build1_all bug

NAME

       XCopyArea, XCopyPlane - copy areas

SYNTAX

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

       int XCopyPlane(Display *display, Drawable src, Drawable dest, GC  gc,  int  src_x,  int  src_y,  unsigned
              width, unsigned height, int dest_x, int 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.

       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.

       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 value of plane is not less than %2 sup n%, where n is the
       depth of src, 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 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(3)
       Xlib - C Language X Interface