Table of Contents

## Name

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

## 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

    typedef struct {
        int type;    /* of event */
        unsigned long serial;    /* # of last request processed by server */
        Bool send_event;    /* true if this came frome 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

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

## Predefined Values

Operations:

    ShapeSet
    ShapeUnion
    ShapeIntersect
    ShapeSubtract
    ShapeInvert

Shape Kinds:

    ShapeBounding
    ShapeClip
    ShapeInput

Event defines:

    ShapeNotifyMask
    ShapeNotify

## Bugs

This manual pages needs a lot more work.

## See Also

X11 Nonrectangular Window Shape Extension

Table of Contents

- Name
- Syntax
- Structures
- Description
- Predefined Values
- Bugs
- See Also