|
|
@ -28,37 +28,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
#include <stdint.h>
|
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
|
|
|
|
typedef int XcursorBool;
|
|
|
|
struct xcursor_image {
|
|
|
|
typedef uint32_t XcursorUInt;
|
|
|
|
uint32_t version; /* version of the image data */
|
|
|
|
|
|
|
|
uint32_t size; /* nominal size for matching */
|
|
|
|
typedef XcursorUInt XcursorDim;
|
|
|
|
uint32_t width; /* actual width */
|
|
|
|
typedef XcursorUInt XcursorPixel;
|
|
|
|
uint32_t height; /* actual height */
|
|
|
|
|
|
|
|
uint32_t xhot; /* hot spot x (must be inside image) */
|
|
|
|
typedef struct _XcursorImage {
|
|
|
|
uint32_t yhot; /* hot spot y (must be inside image) */
|
|
|
|
XcursorUInt version; /* version of the image data */
|
|
|
|
uint32_t delay; /* animation delay to next frame (ms) */
|
|
|
|
XcursorDim size; /* nominal size for matching */
|
|
|
|
uint32_t *pixels; /* pointer to pixels */
|
|
|
|
XcursorDim width; /* actual width */
|
|
|
|
};
|
|
|
|
XcursorDim height; /* actual height */
|
|
|
|
|
|
|
|
XcursorDim xhot; /* hot spot x (must be inside image) */
|
|
|
|
|
|
|
|
XcursorDim yhot; /* hot spot y (must be inside image) */
|
|
|
|
|
|
|
|
XcursorUInt delay; /* animation delay to next frame (ms) */
|
|
|
|
|
|
|
|
XcursorPixel *pixels; /* pointer to pixels */
|
|
|
|
|
|
|
|
} XcursorImage;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
/*
|
|
|
|
* Other data structures exposed by the library API
|
|
|
|
* Other data structures exposed by the library API
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
typedef struct _XcursorImages {
|
|
|
|
struct xcursor_images {
|
|
|
|
int nimage; /* number of images */
|
|
|
|
int nimage; /* number of images */
|
|
|
|
XcursorImage **images; /* array of XcursorImage pointers */
|
|
|
|
struct xcursor_image **images; /* array of XcursorImage pointers */
|
|
|
|
char *name; /* name used to load images */
|
|
|
|
char *name; /* name used to load images */
|
|
|
|
} XcursorImages;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
void
|
|
|
|
XcursorImagesDestroy (XcursorImages *images);
|
|
|
|
xcursor_images_destroy(struct xcursor_images *images);
|
|
|
|
|
|
|
|
|
|
|
|
void
|
|
|
|
void
|
|
|
|
xcursor_load_theme(const char *theme, int size,
|
|
|
|
xcursor_load_theme(const char *theme, int size,
|
|
|
|
void (*load_callback)(XcursorImages *, void *),
|
|
|
|
void (*load_callback)(struct xcursor_images *, void *),
|
|
|
|
void *user_data);
|
|
|
|
void *user_data);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|