1/*
2    SDL - Simple DirectMedia Layer
3    Copyright (C) 1997-2012 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
33struct WMcursor {
34    int unused ;
35} ;
36
37WMcursor * 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
54void NX_FreeWMCursor (_THIS, WMcursor * cursor)
55{
56    Dprintf ("NX_FreeWMCursor\n") ;
57    SDL_free (cursor) ;
58    return ;
59}
60
61void 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
75int NX_ShowWMCursor (_THIS, WMcursor * cursor)
76{
77    Dprintf ("NX_ShowWMCursor\n") ;
78    return 1 ;
79}
80