1Protocol::Ext::SHAPE(3)User Contributed Perl DocumentatioPnrotocol::Ext::SHAPE(3)
2
3
4
6 X11::Protocol::Ext::SHAPE - Perl module for the X11 Protocol
7 Nonrectangular Window Shape Extension
8
10 use X11::Protocol;
11 $x = X11::Protocol->new($ENV{'DISPLAY'});
12 $x->init_extension('SHAPE') or die;
13
15 This module is used by the X11::Protocol module to participate in the
16 shaped window extension to the X protocol, allowing windows to be of
17 any shape, not just rectangles.
18
20 This extension adds the constant types 'ShapeKind' and 'ShapeOp', with
21 values as defined in the standard.
22
24 This extension adds the event type 'ShapeNotify', with values as
25 specified in the standard. This event is selected using the
26 ShapeSelectInput() request.
27
29 This extension adds several requests, called as shown below:
30
31 $x->ShapeQueryVersion
32 =>
33 ($major, $minor)
34
35 $x->ShapeRectangles($dest, $destKind, $op, $xOff, $yOff,
36 $ordering, @rectangles)
37
38 $x->ShapeMask($dest, $destKind, $op, $xOff, $yOff, $source)
39
40 $x->ShapeCombine($dest, $destKind, $op, $xOff, $yOff, $source,
41 $sourceKind)
42
43 $x->ShapeOffset($dest, $destKind, $xOff, $yOff)
44
45 $x->ShapeQueryExtents($dest)
46 =>
47 ($boundingShaped, $clipShaped,
48 ($xBoundingShape, $yBoundingShape,
49 $widthBoundingShape, $heightBoundingShape)
50 ($xClipShape, $yClipShape, $widthClipShape, $heightClipShape))
51
52 $x->ShapeSelectInput($window, $enable)
53
54 $x->ShapeInputSelected($window)
55 =>
56 $enable
57
58 $x->ShapeGetRectangles($window, $kind)
59 =>
60 ($ordering, [$x, $y, $width, $height], ...)
61
63 Stephen McCamant <SMCCAM@cpan.org>.
64
66 perl(1), X11::Protocol, Nonrectangular Window Shape Extension (X
67 Consortium Standard).
68
69
70
71perl v5.36.0 2023-01-20 Protocol::Ext::SHAPE(3)