a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync/************************************************************
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncCopyright 1996 by Thomas E. Dickey <dickey@clark.net>
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync All Rights Reserved
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncPermission to use, copy, modify, and distribute this software and its
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncdocumentation for any purpose and without fee is hereby granted,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncprovided that the above copyright notice appear in all copies and that
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncboth that copyright notice and this permission notice appear in
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncsupporting documentation, and that the name of the above listed
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsynccopyright holder(s) not be used in advertising or publicity pertaining
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncto distribution of the software without specific, written prior
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncpermission.
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncTHE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncTO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncAND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncLIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncOR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync********************************************************/
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync#ifndef DIXGRABS_H
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync#define DIXGRABS_H 1
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncstruct _GrabParameters;
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern void PrintDeviceGrabInfo(DeviceIntPtr dev);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern void UngrabAllDevices(Bool kill_client);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern GrabPtr AllocGrab(void);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern void FreeGrab(GrabPtr grab);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern Bool CopyGrab(GrabPtr dst, const GrabPtr src);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern GrabPtr CreateGrab(int /* client */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync DeviceIntPtr /* device */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync DeviceIntPtr /* modDevice */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync WindowPtr /* window */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync enum InputLevel /* grabtype */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync GrabMask * /* mask */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync struct _GrabParameters * /* param */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync int /* type */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync KeyCode /* keybut */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync WindowPtr /* confineTo */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync CursorPtr /* cursor */ );
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern _X_EXPORT int DeletePassiveGrab(pointer /* value */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync XID /* id */ );
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern _X_EXPORT Bool GrabMatchesSecond(GrabPtr /* pFirstGrab */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync GrabPtr /* pSecondGrab */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync Bool /*ignoreDevice */ );
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern _X_EXPORT int AddPassiveGrabToList(ClientPtr /* client */ ,
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync GrabPtr /* pGrab */ );
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern _X_EXPORT Bool DeletePassiveGrabFromList(GrabPtr /* pMinuendGrab */ );
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern Bool GrabIsPointerGrab(GrabPtr grab);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsyncextern Bool GrabIsKeyboardGrab(GrabPtr grab);
a3f3701cea1ba388e7c877955252bb7375eedebdvboxsync#endif /* DIXGRABS_H */