shape.h revision 485f0483
1485f0483Smrg/* $XFree86: xc/include/extensions/shape.h,v 1.3 2001/12/14 19:53:29 dawes Exp $ */ 2485f0483Smrg/************************************************************ 3485f0483Smrg 4485f0483SmrgCopyright 1989, 1998 The Open Group 5485f0483Smrg 6485f0483SmrgPermission to use, copy, modify, distribute, and sell this software and its 7485f0483Smrgdocumentation for any purpose is hereby granted without fee, provided that 8485f0483Smrgthe above copyright notice appear in all copies and that both that 9485f0483Smrgcopyright notice and this permission notice appear in supporting 10485f0483Smrgdocumentation. 11485f0483Smrg 12485f0483SmrgThe above copyright notice and this permission notice shall be included in 13485f0483Smrgall copies or substantial portions of the Software. 14485f0483Smrg 15485f0483SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16485f0483SmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17485f0483SmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18485f0483SmrgOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 19485f0483SmrgAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20485f0483SmrgCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21485f0483Smrg 22485f0483SmrgExcept as contained in this notice, the name of The Open Group shall not be 23485f0483Smrgused in advertising or otherwise to promote the sale, use or other dealings 24485f0483Smrgin this Software without prior written authorization from The Open Group. 25485f0483Smrg 26485f0483Smrg********************************************************/ 27485f0483Smrg 28485f0483Smrg/* $Xorg: shape.h,v 1.4 2001/02/09 02:03:24 xorgcvs Exp $ */ 29485f0483Smrg 30485f0483Smrg#ifndef _SHAPE_H_ 31485f0483Smrg#define _SHAPE_H_ 32485f0483Smrg 33485f0483Smrg#include <X11/Xfuncproto.h> 34485f0483Smrg#include <X11/extensions/shapeconst.h> 35485f0483Smrg 36485f0483Smrg#ifndef _SHAPE_SERVER_ 37485f0483Smrg#include <X11/Xutil.h> 38485f0483Smrg 39485f0483Smrgtypedef struct { 40485f0483Smrg int type; /* of event */ 41485f0483Smrg unsigned long serial; /* # of last request processed by server */ 42485f0483Smrg Bool send_event; /* true if this came frome a SendEvent request */ 43485f0483Smrg Display *display; /* Display the event was read from */ 44485f0483Smrg Window window; /* window of event */ 45485f0483Smrg int kind; /* ShapeBounding or ShapeClip */ 46485f0483Smrg int x, y; /* extents of new region */ 47485f0483Smrg unsigned width, height; 48485f0483Smrg Time time; /* server timestamp when region changed */ 49485f0483Smrg Bool shaped; /* true if the region exists */ 50485f0483Smrg} XShapeEvent; 51485f0483Smrg 52485f0483Smrg_XFUNCPROTOBEGIN 53485f0483Smrg 54485f0483Smrgextern Bool XShapeQueryExtension ( 55485f0483Smrg Display* /* display */, 56485f0483Smrg int* /* event_base */, 57485f0483Smrg int* /* error_base */ 58485f0483Smrg); 59485f0483Smrg 60485f0483Smrgextern Status XShapeQueryVersion ( 61485f0483Smrg Display* /* display */, 62485f0483Smrg int* /* major_version */, 63485f0483Smrg int* /* minor_version */ 64485f0483Smrg); 65485f0483Smrg 66485f0483Smrgextern void XShapeCombineRegion ( 67485f0483Smrg Display* /* display */, 68485f0483Smrg Window /* dest */, 69485f0483Smrg int /* dest_kind */, 70485f0483Smrg int /* x_off */, 71485f0483Smrg int /* y_off */, 72485f0483Smrg Region /* region */, 73485f0483Smrg int /* op */ 74485f0483Smrg); 75485f0483Smrg 76485f0483Smrgextern void XShapeCombineRectangles ( 77485f0483Smrg Display* /* display */, 78485f0483Smrg Window /* dest */, 79485f0483Smrg int /* dest_kind */, 80485f0483Smrg int /* x_off */, 81485f0483Smrg int /* y_off */, 82485f0483Smrg XRectangle* /* rectangles */, 83485f0483Smrg int /* n_rects */, 84485f0483Smrg int /* op */, 85485f0483Smrg int /* ordering */ 86485f0483Smrg); 87485f0483Smrg 88485f0483Smrgextern void XShapeCombineMask ( 89485f0483Smrg Display* /* display */, 90485f0483Smrg Window /* dest */, 91485f0483Smrg int /* dest_kind */, 92485f0483Smrg int /* x_off */, 93485f0483Smrg int /* y_off */, 94485f0483Smrg Pixmap /* src */, 95485f0483Smrg int /* op */ 96485f0483Smrg); 97485f0483Smrg 98485f0483Smrgextern void XShapeCombineShape ( 99485f0483Smrg Display* /* display */, 100485f0483Smrg Window /* dest */, 101485f0483Smrg int /* dest_kind */, 102485f0483Smrg int /* x_off */, 103485f0483Smrg int /* y_off */, 104485f0483Smrg Window /* src */, 105485f0483Smrg int /* src_kind */, 106485f0483Smrg int /* op */ 107485f0483Smrg); 108485f0483Smrg 109485f0483Smrgextern void XShapeOffsetShape ( 110485f0483Smrg Display* /* display */, 111485f0483Smrg Window /* dest */, 112485f0483Smrg int /* dest_kind */, 113485f0483Smrg int /* x_off */, 114485f0483Smrg int /* y_off */ 115485f0483Smrg); 116485f0483Smrg 117485f0483Smrgextern Status XShapeQueryExtents ( 118485f0483Smrg Display* /* display */, 119485f0483Smrg Window /* window */, 120485f0483Smrg Bool* /* bounding_shaped */, 121485f0483Smrg int* /* x_bounding */, 122485f0483Smrg int* /* y_bounding */, 123485f0483Smrg unsigned int* /* w_bounding */, 124485f0483Smrg unsigned int* /* h_bounding */, 125485f0483Smrg Bool* /* clip_shaped */, 126485f0483Smrg int* /* x_clip */, 127485f0483Smrg int* /* y_clip */, 128485f0483Smrg unsigned int* /* w_clip */, 129485f0483Smrg unsigned int* /* h_clip */ 130485f0483Smrg); 131485f0483Smrg 132485f0483Smrgextern void XShapeSelectInput ( 133485f0483Smrg Display* /* display */, 134485f0483Smrg Window /* window */, 135485f0483Smrg unsigned long /* mask */ 136485f0483Smrg); 137485f0483Smrg 138485f0483Smrgextern unsigned long XShapeInputSelected ( 139485f0483Smrg Display* /* display */, 140485f0483Smrg Window /* window */ 141485f0483Smrg); 142485f0483Smrg 143485f0483Smrgextern XRectangle *XShapeGetRectangles ( 144485f0483Smrg Display* /* display */, 145485f0483Smrg Window /* window */, 146485f0483Smrg int /* kind */, 147485f0483Smrg int* /* count */, 148485f0483Smrg int* /* ordering */ 149485f0483Smrg); 150485f0483Smrg 151485f0483Smrg_XFUNCPROTOEND 152485f0483Smrg 153485f0483Smrg#endif /* !_SHAPE_SERVER_ */ 154485f0483Smrg 155485f0483Smrg#endif /* _SHAPE_H_ */ 156