diff options
author | Reinhard Tartler <siretart@tauware.de> | 2011-10-10 18:02:52 +0200 |
---|---|---|
committer | Reinhard Tartler <siretart@tauware.de> | 2011-10-10 18:02:52 +0200 |
commit | 5b4ca0f93c44d7bbc8d6a3eebdd5c458e3a84c14 (patch) | |
tree | b6f59ec830436134aaccf47aa71a070aa2ad2992 /nx-X11/programs/Xserver/hw/nxagent/Cursor.h | |
parent | e29a112097fa74b520ba619eb07e2e0e0a7f2f3e (diff) | |
parent | e01b9177b41f7d27a934d41fa38d550fa0026b45 (diff) | |
download | nx-libs-5b4ca0f93c44d7bbc8d6a3eebdd5c458e3a84c14.tar.gz nx-libs-5b4ca0f93c44d7bbc8d6a3eebdd5c458e3a84c14.tar.bz2 nx-libs-5b4ca0f93c44d7bbc8d6a3eebdd5c458e3a84c14.zip |
Merge branch 'nxagent'
Diffstat (limited to 'nx-X11/programs/Xserver/hw/nxagent/Cursor.h')
-rw-r--r-- | nx-X11/programs/Xserver/hw/nxagent/Cursor.h | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Cursor.h b/nx-X11/programs/Xserver/hw/nxagent/Cursor.h new file mode 100644 index 000000000..df7dc44f7 --- /dev/null +++ b/nx-X11/programs/Xserver/hw/nxagent/Cursor.h @@ -0,0 +1,106 @@ +/**************************************************************************/ +/* */ +/* Copyright (c) 2001, 2011 NoMachine, http://www.nomachine.com/. */ +/* */ +/* NXAGENT, NX protocol compression and NX extensions to this software */ +/* are copyright of NoMachine. Redistribution and use of the present */ +/* software is allowed according to terms specified in the file LICENSE */ +/* which comes in the source distribution. */ +/* */ +/* Check http://www.nomachine.com/licensing.html for applicability. */ +/* */ +/* NX and NoMachine are trademarks of Medialogic S.p.A. */ +/* */ +/* All rights reserved. */ +/* */ +/**************************************************************************/ + +/* + +Copyright 1993 by Davor Matic + +Permission to use, copy, modify, distribute, and sell this software +and its documentation for any purpose is hereby granted without fee, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation. Davor Matic makes no representations about +the suitability of this software for any purpose. It is provided "as +is" without express or implied warranty. + +*/ + +#ifndef __Cursor_H__ +#define __Cursor_H__ + +#include "cursorstr.h" +#include "picturestr.h" + +typedef struct { + Cursor cursor; + PicturePtr picture; + int uses_render; + int x; + int y; +} nxagentPrivCursor; + +/* + * _AnimCurElt and _AnimCur already defined in animcur.c. + */ + +typedef struct _AnimCurElt { + CursorPtr pCursor; + CARD32 delay; +} AnimCurElt; + +typedef struct _AnimCur { + int nelt; + AnimCurElt *elts; +} AnimCurRec, *AnimCurPtr; + +CursorBitsPtr nxagentAnimCursorBits; + +#define nxagentIsAnimCursor(c) ((c)->bits == nxagentAnimCursorBits) +#define nxagentGetAnimCursor(c) ((AnimCurPtr) ((c) + 1)) + +#define nxagentCursorPriv(pCursor, pScreen) \ + ((nxagentPrivCursor *)((pCursor)->devPriv[pScreen->myNum])) + +#define nxagentCursor(pCursor, pScreen) \ + (nxagentCursorPriv(pCursor, pScreen)->cursor) + +#define nxagentCursorPicture(pCursor, pScreen) \ + (nxagentCursorPriv(pCursor, pScreen)->picture) + +#define nxagentCursorUsesRender(pCursor, pScreen) \ + (nxagentCursorPriv(pCursor, pScreen)->uses_render) + +#define nxagentCursorXOffset(pCursor, pScreen) \ + (nxagentCursorPriv(pCursor, pScreen)->x) + +#define nxagentCursorYOffset(pCursor, pScreen) \ + (nxagentCursorPriv(pCursor, pScreen)->y) + +void nxagentConstrainCursor(ScreenPtr pScreen, BoxPtr pBox); + +void nxagentCursorLimits(ScreenPtr pScreen, CursorPtr pCursor, + BoxPtr pHotBox, BoxPtr pTopLeftBox); + +Bool nxagentDisplayCursor(ScreenPtr pScreen, CursorPtr pCursor); + +Bool nxagentRealizeCursor(ScreenPtr pScreen, CursorPtr pCursor); + +Bool nxagentUnrealizeCursor(ScreenPtr pScreen, CursorPtr pCursor); + +void nxagentRecolorCursor(ScreenPtr pScreen, CursorPtr pCursor, + Bool displayed); + +Bool nxagentSetCursorPosition(ScreenPtr pScreen, int x, int y, + Bool generateEvent); + +void nxagentDisconnectCursor(pointer p0, XID x1, pointer p2); +void nxagentReconnectCursor(pointer p0, XID x1, pointer p2); +void nxagentReDisplayCurrentCursor(void); +Bool nxagentReconnectAllCursor(void *p0); +Bool nxagentDisconnectAllCursor(void); + +#endif /* __Cursor_H__ */ |