1706f2543Smrg/* 2706f2543Smrg * mipointrst.h 3706f2543Smrg * 4706f2543Smrg */ 5706f2543Smrg 6706f2543Smrg 7706f2543Smrg/* 8706f2543Smrg 9706f2543SmrgCopyright 1989, 1998 The Open Group 10706f2543Smrg 11706f2543SmrgPermission to use, copy, modify, distribute, and sell this software and its 12706f2543Smrgdocumentation for any purpose is hereby granted without fee, provided that 13706f2543Smrgthe above copyright notice appear in all copies and that both that 14706f2543Smrgcopyright notice and this permission notice appear in supporting 15706f2543Smrgdocumentation. 16706f2543Smrg 17706f2543SmrgThe above copyright notice and this permission notice shall be included in 18706f2543Smrgall copies or substantial portions of the Software. 19706f2543Smrg 20706f2543SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21706f2543SmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22706f2543SmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23706f2543SmrgOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 24706f2543SmrgAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 25706f2543SmrgCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 26706f2543Smrg 27706f2543SmrgExcept as contained in this notice, the name of The Open Group shall not be 28706f2543Smrgused in advertising or otherwise to promote the sale, use or other dealings 29706f2543Smrgin this Software without prior written authorization from The Open Group. 30706f2543Smrg*/ 31706f2543Smrg 32706f2543Smrg#ifndef MIPOINTRST_H 33706f2543Smrg#define MIPOINTRST_H 34706f2543Smrg 35706f2543Smrg#include "mipointer.h" 36706f2543Smrg#include "scrnintstr.h" 37706f2543Smrg 38706f2543Smrgtypedef struct { 39706f2543Smrg ScreenPtr pScreen; /* current screen */ 40706f2543Smrg ScreenPtr pSpriteScreen;/* screen containing current sprite */ 41706f2543Smrg CursorPtr pCursor; /* current cursor */ 42706f2543Smrg CursorPtr pSpriteCursor;/* cursor on screen */ 43706f2543Smrg BoxRec limits; /* current constraints */ 44706f2543Smrg Bool confined; /* pointer can't change screens */ 45706f2543Smrg int x, y; /* hot spot location */ 46706f2543Smrg int devx, devy; /* sprite position */ 47706f2543Smrg} miPointerRec, *miPointerPtr; 48706f2543Smrg 49706f2543Smrgtypedef struct { 50706f2543Smrg miPointerSpriteFuncPtr spriteFuncs; /* sprite-specific methods */ 51706f2543Smrg miPointerScreenFuncPtr screenFuncs; /* screen-specific methods */ 52706f2543Smrg CloseScreenProcPtr CloseScreen; 53706f2543Smrg Bool waitForUpdate; /* don't move cursor in SIGIO */ 54706f2543Smrg Bool showTransparent; /* show empty cursors */ 55706f2543Smrg} miPointerScreenRec, *miPointerScreenPtr; 56706f2543Smrg#endif /* MIPOINTRST_H */ 57