Mir
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
examples
xcursor.h
Go to the documentation of this file.
1
/*
2
* Copyright © 2002 Keith Packard
3
*
4
* Permission to use, copy, modify, distribute, and sell this software and its
5
* documentation for any purpose is hereby granted without fee, provided that
6
* the above copyright notice appear in all copies and that both that
7
* copyright notice and this permission notice appear in supporting
8
* documentation, and that the name of Keith Packard not be used in
9
* advertising or publicity pertaining to distribution of the software without
10
* specific, written prior permission. Keith Packard makes no
11
* representations about the suitability of this software for any purpose. It
12
* is provided "as is" without express or implied warranty.
13
*
14
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
15
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
16
* EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
17
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
18
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
19
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
20
* PERFORMANCE OF THIS SOFTWARE.
21
*/
22
23
#ifndef XCURSOR_H
24
#define XCURSOR_H
25
26
#include <stdint.h>
27
28
29
typedef
int
XcursorBool
;
30
typedef
uint32_t
XcursorUInt
;
31
32
typedef
XcursorUInt
XcursorDim
;
33
typedef
XcursorUInt
XcursorPixel
;
34
35
typedef
struct
_XcursorImage
{
36
XcursorUInt
version
;
/* version of the image data */
37
XcursorDim
size
;
/* nominal size for matching */
38
XcursorDim
width
;
/* actual width */
39
XcursorDim
height
;
/* actual height */
40
XcursorDim
xhot
;
/* hot spot x (must be inside image) */
41
XcursorDim
yhot
;
/* hot spot y (must be inside image) */
42
XcursorUInt
delay
;
/* animation delay to next frame (ms) */
43
XcursorPixel
*
pixels
;
/* pointer to pixels */
44
}
XcursorImage
;
45
46
/*
47
* Other data structures exposed by the library API
48
*/
49
typedef
struct
_XcursorImages
{
50
int
nimage
;
/* number of images */
51
XcursorImage
**
images
;
/* array of XcursorImage pointers */
52
char
*
name
;
/* name used to load images */
53
}
XcursorImages
;
54