03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/*
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * mipointrst.h
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync *
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/*
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncCopyright 1989, 1998 The Open Group
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncPermission to use, copy, modify, distribute, and sell this software and its
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncdocumentation for any purpose is hereby granted without fee, provided that
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncthe above copyright notice appear in all copies and that both that
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynccopyright notice and this permission notice appear in supporting
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncdocumentation.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncThe above copyright notice and this permission notice shall be included in
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncall copies or substantial portions of the Software.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncExcept as contained in this notice, the name of The Open Group shall not be
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncused in advertising or otherwise to promote the sale, use or other dealings
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncin this Software without prior written authorization from The Open Group.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync*/
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#ifndef MIPOINTRST_H
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define MIPOINTRST_H
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#include "mipointer.h"
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#include "scrnintstr.h"
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynctypedef struct {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ScreenPtr pScreen; /* current screen */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ScreenPtr pSpriteScreen; /* screen containing current sprite */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync CursorPtr pCursor; /* current cursor */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync CursorPtr pSpriteCursor; /* cursor on screen */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync BoxRec limits; /* current constraints */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool confined; /* pointer can't change screens */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int x, y; /* hot spot location */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int devx, devy; /* sprite position */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool generateEvent; /* generate an event during warping? */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync} miPointerRec, *miPointerPtr;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynctypedef struct {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync miPointerSpriteFuncPtr spriteFuncs; /* sprite-specific methods */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync miPointerScreenFuncPtr screenFuncs; /* screen-specific methods */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync CloseScreenProcPtr CloseScreen;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool waitForUpdate; /* don't move cursor in SIGIO */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool showTransparent; /* show empty cursors */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync} miPointerScreenRec, *miPointerScreenPtr;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#endif /* MIPOINTRST_H */