KWin
Loading...
Searching...
No Matches
Classes | Macros | Typedefs | Functions
xcursor.c File Reference
#include "xcursor.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <dirent.h>

Go to the source code of this file.

Classes

struct  _XcursorFileToc
 
struct  _XcursorFileHeader
 
struct  _XcursorChunkHeader
 
struct  _XcursorComment
 
struct  _XcursorFile
 
struct  _XcursorComments
 

Macros

#define _DEFAULT_SOURCE
 
#define XcursorTrue   1
 
#define XcursorFalse   0
 
#define XCURSOR_MAGIC   0x72756358 /* "Xcur" LSBFirst */
 
#define XCURSOR_LIB_MAJOR   1
 
#define XCURSOR_LIB_MINOR   1
 
#define XCURSOR_LIB_REVISION   13
 
#define XCURSOR_LIB_VERSION
 
#define XCURSOR_FILE_MAJOR   1
 
#define XCURSOR_FILE_MINOR   0
 
#define XCURSOR_FILE_VERSION   ((XCURSOR_FILE_MAJOR << 16) | (XCURSOR_FILE_MINOR))
 
#define XCURSOR_FILE_HEADER_LEN   (4 * 4)
 
#define XCURSOR_FILE_TOC_LEN   (3 * 4)
 
#define XCURSOR_CHUNK_HEADER_LEN   (4 * 4)
 
#define XCURSOR_COMMENT_TYPE   0xfffe0001
 
#define XCURSOR_COMMENT_VERSION   1
 
#define XCURSOR_COMMENT_HEADER_LEN   (XCURSOR_CHUNK_HEADER_LEN + (1 *4))
 
#define XCURSOR_COMMENT_COPYRIGHT   1
 
#define XCURSOR_COMMENT_LICENSE   2
 
#define XCURSOR_COMMENT_OTHER   3
 
#define XCURSOR_COMMENT_MAX_LEN   0x100000
 
#define XCURSOR_IMAGE_TYPE   0xfffd0002
 
#define XCURSOR_IMAGE_VERSION   1
 
#define XCURSOR_IMAGE_HEADER_LEN   (XCURSOR_CHUNK_HEADER_LEN + (5*4))
 
#define XCURSOR_IMAGE_MAX_SIZE   0x7fff /* 32767x32767 max cursor size */
 
#define dist(a, b)   ((a) > (b) ? (a) - (b) : (b) - (a))
 

Typedefs

typedef struct _XcursorFileToc XcursorFileToc
 
typedef struct _XcursorFileHeader XcursorFileHeader
 
typedef struct _XcursorChunkHeader XcursorChunkHeader
 
typedef struct _XcursorComment XcursorComment
 
typedef struct _XcursorFile XcursorFile
 
typedef struct _XcursorComments XcursorComments
 

Functions

void XcursorImagesDestroy (XcursorImages *images)
 
XcursorImagesXcursorFileLoadImages (const char *file, int size)
 

Macro Definition Documentation

◆ _DEFAULT_SOURCE

#define _DEFAULT_SOURCE

Definition at line 26 of file xcursor.c.

◆ dist

#define dist ( a,
b )   ((a) > (b) ? (a) - (b) : (b) - (a))

Definition at line 384 of file xcursor.c.

◆ XCURSOR_CHUNK_HEADER_LEN

#define XCURSOR_CHUNK_HEADER_LEN   (4 * 4)

Definition at line 125 of file xcursor.c.

◆ XCURSOR_COMMENT_COPYRIGHT

#define XCURSOR_COMMENT_COPYRIGHT   1

Definition at line 151 of file xcursor.c.

◆ XCURSOR_COMMENT_HEADER_LEN

#define XCURSOR_COMMENT_HEADER_LEN   (XCURSOR_CHUNK_HEADER_LEN + (1 *4))

Definition at line 150 of file xcursor.c.

◆ XCURSOR_COMMENT_LICENSE

#define XCURSOR_COMMENT_LICENSE   2

Definition at line 152 of file xcursor.c.

◆ XCURSOR_COMMENT_MAX_LEN

#define XCURSOR_COMMENT_MAX_LEN   0x100000

Definition at line 154 of file xcursor.c.

◆ XCURSOR_COMMENT_OTHER

#define XCURSOR_COMMENT_OTHER   3

Definition at line 153 of file xcursor.c.

◆ XCURSOR_COMMENT_TYPE

#define XCURSOR_COMMENT_TYPE   0xfffe0001

Definition at line 148 of file xcursor.c.

◆ XCURSOR_COMMENT_VERSION

#define XCURSOR_COMMENT_VERSION   1

Definition at line 149 of file xcursor.c.

◆ XCURSOR_FILE_HEADER_LEN

#define XCURSOR_FILE_HEADER_LEN   (4 * 4)

Definition at line 92 of file xcursor.c.

◆ XCURSOR_FILE_MAJOR

#define XCURSOR_FILE_MAJOR   1

Definition at line 89 of file xcursor.c.

◆ XCURSOR_FILE_MINOR

#define XCURSOR_FILE_MINOR   0

Definition at line 90 of file xcursor.c.

◆ XCURSOR_FILE_TOC_LEN

#define XCURSOR_FILE_TOC_LEN   (3 * 4)

Definition at line 93 of file xcursor.c.

◆ XCURSOR_FILE_VERSION

#define XCURSOR_FILE_VERSION   ((XCURSOR_FILE_MAJOR << 16) | (XCURSOR_FILE_MINOR))

Definition at line 91 of file xcursor.c.

◆ XCURSOR_IMAGE_HEADER_LEN

#define XCURSOR_IMAGE_HEADER_LEN   (XCURSOR_CHUNK_HEADER_LEN + (5*4))

Definition at line 180 of file xcursor.c.

◆ XCURSOR_IMAGE_MAX_SIZE

#define XCURSOR_IMAGE_MAX_SIZE   0x7fff /* 32767x32767 max cursor size */

Definition at line 181 of file xcursor.c.

◆ XCURSOR_IMAGE_TYPE

#define XCURSOR_IMAGE_TYPE   0xfffd0002

Definition at line 178 of file xcursor.c.

◆ XCURSOR_IMAGE_VERSION

#define XCURSOR_IMAGE_VERSION   1

Definition at line 179 of file xcursor.c.

◆ XCURSOR_LIB_MAJOR

#define XCURSOR_LIB_MAJOR   1

Definition at line 78 of file xcursor.c.

◆ XCURSOR_LIB_MINOR

#define XCURSOR_LIB_MINOR   1

Definition at line 79 of file xcursor.c.

◆ XCURSOR_LIB_REVISION

#define XCURSOR_LIB_REVISION   13

Definition at line 80 of file xcursor.c.

◆ XCURSOR_LIB_VERSION

#define XCURSOR_LIB_VERSION
Value:
((XCURSOR_LIB_MAJOR * 10000) + \
(XCURSOR_LIB_MINOR * 100) + \
#define XCURSOR_LIB_MAJOR
Definition xcursor.c:78
#define XCURSOR_LIB_MINOR
Definition xcursor.c:79
#define XCURSOR_LIB_REVISION
Definition xcursor.c:80

Definition at line 81 of file xcursor.c.

◆ XCURSOR_MAGIC

#define XCURSOR_MAGIC   0x72756358 /* "Xcur" LSBFirst */

Definition at line 71 of file xcursor.c.

◆ XcursorFalse

#define XcursorFalse   0

Definition at line 38 of file xcursor.c.

◆ XcursorTrue

#define XcursorTrue   1

Definition at line 37 of file xcursor.c.

Typedef Documentation

◆ XcursorChunkHeader

◆ XcursorComment

◆ XcursorComments

◆ XcursorFile

typedef struct _XcursorFile XcursorFile

Definition at line 183 of file xcursor.c.

◆ XcursorFileHeader

◆ XcursorFileToc

Function Documentation

◆ XcursorFileLoadImages()

XcursorImages * XcursorFileLoadImages ( const char * file,
int size )

Definition at line 580 of file xcursor.c.

◆ XcursorImagesDestroy()

void XcursorImagesDestroy ( XcursorImages * images)

Definition at line 245 of file xcursor.c.