XSHAPE(3) X Version 11 XSHAPE(3)

# [NAME](#NAME)

XShapeQueryExtension, XShapeQueryVersion, XShapeCombineRegion, XShapeCombineRectangles, XShapeCombineMask, XShapeCombineShape, XShapeOffsetShape, XShapeQueryExtents, XShapeSelectInput, XShapeInputSelected, XShapeGetRectangles - X nonrectangular shape functions

# [SYNTAX](#SYNTAX)

```
#include <X11/extensions/shape.h>
```

```
Bool XShapeQueryExtension (
	Display *dpy,
	int *event_basep,
	int *error_basep);
```

```
Status XShapeQueryVersion (
	Display *dpy,
	int *major_versionp,
	int *minor_versionp);
```

```
void XShapeCombineRegion (
	Display *dpy,
	Window dest,
	int destKind,
	int xOff,
	int yOff,
	struct _XRegion *r,
	int op);
```

```
void XShapeCombineRectangles (
	Display *dpy,
	XID dest,
	int destKind,
	int xOff,
	int yOff,
	XRectangle *rects,
	int n_rects,
	int op,
	int ordering);
```

```
void XShapeCombineMask (
	Display *dpy,
	XID dest,
	int destKind,
	int xOff,
	int yOff,
	Pixmap src,
	int op);
```

```
void XShapeCombineShape (
	Display *dpy,
	XID dest,
	int destKind,
	int xOff,
	int yOff,
	Pixmap src,
	int srcKind,
	int op);
```

```
void XShapeOffsetShape (
	Display *dpy,
	XID dest,
	int destKind,
	int xOff,
	int yOff);
```

```
Status XShapeQueryExtents (
	Display *dpy,
	Window window,
	int *bShaped,
	int *xbs,
	int *ybs,
	unsigned int *wbs,
	unsigned int *hbs,
	int *cShaped,
	int *xcs,
	int *ycs,
	unsigned int *wcs,
	unsigned int *hcs);
```

```
void XShapeSelectInput (
	Display *dpy,
	Window window,
	unsigned longmask);
```

```
unsigned long XShapeInputSelected (
	Display *dpy,
	Window window);
```

```
XRectangle *XShapeGetRectangles (
	Display *dpy,
	Window window,
	int kind,
	int *count,
	int *ordering);
```

# [STRUCTURES](#STRUCTURES)

```
typedef struct {


    int type;	/* of event */


    unsigned long serial;	/* # of last request processed by server */


    Bool send_event;	/* true if this came from a SendEvent request */


    Display *display;	/* Display the event was read from */


    Window window;	/* window of event */


    int kind;	/* ShapeBounding or ShapeClip */


    int x, y;	/* extents of new region */


    unsigned width, height;


    Time time;	/* server timestamp when region changed */


    Bool shaped;	/* true if the region exists */
} XShapeEvent;
```

# [DESCRIPTION](#DESCRIPTION)

The *X11 Nonrectangular Window Shape Extension* adds nonrectangular windows to the X Window System.

# [PREDEFINED VALUES](#PREDEFINED_VALUES)

Operations:

```
ShapeSet
ShapeUnion
ShapeIntersect
ShapeSubtract
ShapeInvert
```

Shape Kinds:

```
ShapeBounding
ShapeClip
```

Event defines:

```
ShapeNotifyMask
ShapeNotify
```

# [BUGS](#BUGS)

This manual page needs a lot more work.

# [SEE ALSO](#SEE_ALSO)

*X11 Nonrectangular Window Shape Extension*

1994-04-17 libXext 1.3.7

---

Document: XShapeGetRectangles(3) from libxext 1.3.7-r3 (Chainguard OS)
Source: https://gitlab.freedesktop.org/xorg/lib/libxext.git
