Protocol::Ext::SHAPE(3)

NAME
X11::Protocol::Ext::SHAPE - Perl module for the X11 Protocol Nonrectangular Window Shape Extension

SYNOPSIS
  use X11::Protocol;
  $x = X11::Protocol->new($ENV{'DISPLAY'});
  $x->init_extension('SHAPE') or die;

DESCRIPTION
This module is used by the X11::Protocol module to participate in the shaped window extension to the X protocol, allowing windows to be of any shape, not just rectangles.

SYMBOLIC CONSTANTS
This extension adds the constant types 'ShapeKind' and 'ShapeOp', with values as defined in the standard.

EVENTS
This extension adds the event type 'ShapeNotify', with values as specified in the standard. This event is selected using the ShapeSelectInput() request.

REQUESTS
This extension adds several requests, called as shown below:

  $x->ShapeQueryVersion
  =>
  ($major, $minor)

  $x->ShapeRectangles($dest, $destKind, $op, $xOff, $yOff,
                      $ordering, @rectangles)

  $x->ShapeMask($dest, $destKind, $op, $xOff, $yOff, $source)

  $x->ShapeCombine($dest, $destKind, $op, $xOff, $yOff, $source,
                   $sourceKind)

  $x->ShapeOffset($dest, $destKind, $xOff, $yOff)

  $x->ShapeQueryExtents($dest)
  =>
  ($boundingShaped, $clipShaped,
   ($xBoundingShape, $yBoundingShape,
    $widthBoundingShape, $heightBoundingShape)
   ($xClipShape, $yClipShape, $widthClipShape, $heightClipShape))

  $x->ShapeSelectInput($window, $enable)

  $x->ShapeInputSelected($window)
  =>
  $enable

  $x->ShapeGetRectangles($window, $kind)
  =>
  ($ordering, [$x, $y, $width, $height], ...)

AUTHOR
Stephen McCamant <SMCCAM@cpan.org>.

SEE ALSO
perl(1), X11::Protocol, Nonrectangular Window Shape Extension (X Consortium Standard).