1 /*
2 SDL - Simple DirectMedia Layer
3 Copyright (C) 1997-2004 Sam Lantinga
4 Copyright (C) 2001 Hsieh-Fu Tsai
5
6 This library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Library General Public
8 License as published by the Free Software Foundation; either
9 version 2 of the License, or (at your option) any later version.
10
11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Library General Public License for more details.
15
16 You should have received a copy of the GNU Library General Public
17 License along with this library; if not, write to the Free
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
20 Sam Lantinga
21 slouken@libsdl.org
22
23 Hsieh-Fu Tsai
24 clare@setabox.com
25 */
26 #include "SDL_config.h"
27
28 #include "../../events/SDL_events_c.h"
29
30 #include "SDL_nxmouse_c.h"
31
32 // The implementation dependent data for the window manager cursor
33 struct WMcursor {
34 int unused ;
35 } ;
36
NX_CreateWMCursor(_THIS,Uint8 * data,Uint8 * mask,int w,int h,int hot_x,int hot_y)37 WMcursor * NX_CreateWMCursor (_THIS,
38 Uint8 * data, Uint8 * mask, int w, int h, int hot_x, int hot_y)
39 {
40 WMcursor * cursor ;
41
42 Dprintf ("enter NX_CreateWMCursor\n") ;
43
44 cursor = (WMcursor *) SDL_malloc (sizeof (WMcursor)) ;
45 if (cursor == NULL) {
46 SDL_OutOfMemory () ;
47 return NULL ;
48 }
49
50 Dprintf ("leave NX_CreateWMCursor\n") ;
51 return cursor ;
52 }
53
NX_FreeWMCursor(_THIS,WMcursor * cursor)54 void NX_FreeWMCursor (_THIS, WMcursor * cursor)
55 {
56 Dprintf ("NX_FreeWMCursor\n") ;
57 SDL_free (cursor) ;
58 return ;
59 }
60
NX_WarpWMCursor(_THIS,Uint16 x,Uint16 y)61 void NX_WarpWMCursor(_THIS, Uint16 x, Uint16 y)
62 {
63 GR_WINDOW_INFO info ;
64
65 Dprintf ("enter NX_WarpWMCursor\n") ;
66 SDL_Lock_EventThread () ;
67
68 GrGetWindowInfo (SDL_Window, & info) ;
69 GrMoveCursor (info.x + x, info.y + y) ;
70
71 SDL_Unlock_EventThread () ;
72 Dprintf ("leave NX_WarpWMCursor\n") ;
73 }
74
NX_ShowWMCursor(_THIS,WMcursor * cursor)75 int NX_ShowWMCursor (_THIS, WMcursor * cursor)
76 {
77 Dprintf ("NX_ShowWMCursor\n") ;
78 return 1 ;
79 }
80