Solaris X Window System Reference Manual
この本のみを検索
PDF 文書ファイルをダウンロードする

NAME

XSolarisOvlCreateWindow - renders opaque and transparent paint into the destination drawable based on the paint type attributes of the pixels in the source drawable

SYNOPSIS

void XSolarisOvlCopyPaintType (Display * display,Drawable src, Drawable dst, GC gc,
     int src_x, int src_y, unsigned int width, unsigned int height, int dest_x, int dest_y,
     unsigned long action, unsigned long plane)

Arguments

display Specifies the connection to the X server.
src
Specifies the source drawable from which to obtain the paint type information.
dst
Specifies the destination drawable.
gc
Specifies the GC.
src_x, src_y
Specify the x and y coordinates of the upper-left corner of the source rectangle relative to the origin of the source drawable.
width, height
Specify the width and height of both the source and destination rectangles.
dest_x, dest_y
Specify the x and y coordinates of the upper-left corner of the destination rectangle relative to the origin of the destination drawable.
action
Specifies which paint type data is to be copied. This can be one of XSolar-
        isOvlCopyOpaque, XSolarisOvlCopyTransparent, or XSolarisOvlCopyAll.

plane
Specifies the bit-plane of the src drawable to be used as paint type information when the source is not an overlay.

DESCRIPTION

This routine uses the paint type information of the specified rectangle of src to control a fill operation in the specified rectangle of dst. src and dst can be any type of drawable. If src is an overlay, the paint source of the copy, and the color information is ignored. If src is any other type of drawable, the bit-plane specified in plane is treated as if it were paint type data and it is used for the copy. plane must have only one bit set in this case. The following table summarizes the possible combinations of src and dst and their actions. The left side of the table shows the possible src combinations. The top of the table shows the possible dst combinations. The actions, A1-A4, are explained below the table.
Source/DestinationOverlayDrawable
overlayA1A2
drawableA3A4
A1--Opaque pixels in the source overlay cause the corresponding pixels in the destina-
tion to be filled with opaque color as specified by the fill attributes of the GC. Transparent pixels in the source cause the corresponding pixels in the destination to be filled with transparent paint.
A2--Opaque pixels in the source overlay cause the corresponding pixels in the destina-
tion to be filled according to the fill attributes of the GC. Transparent pixels in the source overlay cause the corresponding pixels in the destination to be filled according to the same fill attributes of the GC, but with the foreground and background pixels swapped.
A3--The pixels in the destination overlay are filled with opaque paint or made tran-
sparent as in A1 above depending on the bit values of the source drawable's plane. Bit values of 1 in the source are treated as if they were opaque pixels and bit values of 0 are treated as if they were transparent.
A4--The pixels in the destination drawable are filled with paint as in A2 above depend-
ing on the bit values of the source drawable's plane. Bit values of 1 in the source bit plane are treated as if they were opaque pixels and bit values of 0 are treated as if they were transparent.
The action argument specifies whether opaque paint (XSolarisOvlCopyOpaque), transparent paint (XSolarisOvlCopyTransparent), or both (XSolarisOvlCopyAll) should be operated upon. This allows a client to accumulate opaque or transparent paint.
src and dst must have the same screen, or a BadMatch error results.
If portions of the source rectangle are obscured or are outside the boundaries of the source drawable, the server generates exposure events, using the same semantics as XCopyArea.
This routine uses these GC components: function, plane-mask, fill-style, subwindowmode, graphics-exposures, clip-x-origin, clip-y-origin, and clip-mask. It might use these GC mode-dependent components: foreground, background, tile, stipple, tile-stipple-xorigin, tile-stipple-y-origin.
XSolarisOvlCopyPaintType can generate BadDrawable, BadGC, BadMatch, and BadValue errors.

ERRORS

BadDrawable
BadGC
BadMatch
BadValue