Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XCopyArea(XS) — OpenDesktop Software Development System 1.0.0d

Media Vault

Software Library

Restoration Projects

Artifacts Sought


     X Version 11 (15 June 1988)                    XCopyArea(XS)



     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.

          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 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
          potocol 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(XS)
          Xlib - C Language X Interface


     (printed 2/12/90) (15 June 1988)               XCopyArea(XS)

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