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
55
XcursorImages
*
56
XcursorLibraryLoadImages
(
const
char
*file,
const
char
*theme,
int
size
);
57
58
void
59
XcursorImagesDestroy
(
XcursorImages
*images);
60
61
void
62
xcursor_load_theme
(
const
char
*theme,
int
size
,
63
void
(*load_callback)(
XcursorImages
*,
void
*),
64
void
*user_data);
65
#endif
_XcursorImage::pixels
XcursorPixel * pixels
Definition:
xcursor.h:43
XcursorPixel
XcursorUInt XcursorPixel
Definition:
xcursor.h:33
XcursorUInt
uint32_t XcursorUInt
Definition:
xcursor.h:30
_XcursorImage::delay
XcursorUInt delay
Definition:
xcursor.h:42
_XcursorImage::version
XcursorUInt version
Definition:
xcursor.h:36
_XcursorImage
Definition:
xcursor.h:35
xcursor_load_theme
void xcursor_load_theme(const char *theme, int size, void(*load_callback)(XcursorImages *, void *), void *user_data)
Load all the cursor of a theme.
Definition:
xcursor.c:931
XcursorLibraryLoadImages
XcursorImages * XcursorLibraryLoadImages(const char *file, const char *theme, int size)
Definition:
xcursor.c:844
_XcursorImages
Definition:
xcursor.h:49
_XcursorImages::images
XcursorImage ** images
Definition:
xcursor.h:51
XcursorDim
XcursorUInt XcursorDim
Definition:
xcursor.h:32
XcursorImagesDestroy
void XcursorImagesDestroy(XcursorImages *images)
Definition:
xcursor.c:237
_XcursorImages::nimage
int nimage
Definition:
xcursor.h:50
XcursorImage
struct _XcursorImage XcursorImage
XcursorImages
struct _XcursorImages XcursorImages
_XcursorImage::yhot
XcursorDim yhot
Definition:
xcursor.h:41
_XcursorImage::xhot
XcursorDim xhot
Definition:
xcursor.h:40
_XcursorImage::size
XcursorDim size
Definition:
xcursor.h:37
_XcursorImage::height
XcursorDim height
Definition:
xcursor.h:39
_XcursorImages::name
char * name
Definition:
xcursor.h:52
_XcursorImage::width
XcursorDim width
Definition:
xcursor.h:38
XcursorBool
int XcursorBool
Definition:
xcursor.h:29
Copyright © 2012-2016 Canonical Ltd.
Generated on Fri Dec 20 06:52:43 UTC 2019