Lines Matching refs:cursors
31 XcursorCursors *cursors;
33 cursors = malloc (sizeof (XcursorCursors) +
35 if (!cursors)
37 cursors->ref = 1;
38 cursors->dpy = dpy;
39 cursors->ncursor = 0;
40 cursors->cursors = (Cursor *) (cursors + 1);
41 return cursors;
45 XcursorCursorsDestroy (XcursorCursors *cursors)
49 if (!cursors)
52 --cursors->ref;
53 if (cursors->ref > 0)
56 for (n = 0; n < cursors->ncursor; n++)
57 XFreeCursor (cursors->dpy, cursors->cursors[n]);
58 free (cursors);
62 XcursorAnimateCreate (XcursorCursors *cursors)
69 animate->cursors = cursors;
70 cursors->ref++;
81 XcursorCursorsDestroy (animate->cursors);
88 Cursor cursor = animate->cursors->cursors[animate->sequence++];
90 if (animate->sequence >= animate->cursors->ncursor)
687 XcursorCursors *cursors = XcursorCursorsCreate (dpy, images->nimage);
690 if (!cursors)
694 cursors->cursors[n] = XcursorImageLoadCursor (dpy, images->images[n]);
695 if (!cursors->cursors[n])
697 XcursorCursorsDestroy (cursors);
700 cursors->ncursor++;
702 return cursors;
713 XcursorCursors *cursors = XcursorImagesLoadCursors (dpy, images);
717 if (!cursors)
719 anim = malloc ((size_t) cursors->ncursor * sizeof (XAnimCursor));
722 XcursorCursorsDestroy (cursors);
725 for (n = 0; n < cursors->ncursor; n++)
727 anim[n].cursor = cursors->cursors[n];
730 cursor = XRenderCreateAnimCursor (dpy, cursors->ncursor, anim);
731 XcursorCursorsDestroy(cursors);
764 XcursorCursors *cursors;
769 cursors = XcursorImagesLoadCursors (dpy, images);
771 return cursors;