|
|
1.1 root 1: #ifndef lint
2: static char rcsid[] = "$Header: Cursors.c,v 1.3 87/09/11 21:19:01 haynes Rel $";
3: #endif lint
4:
5: /*
6: * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
7: *
8: * All Rights Reserved
9: *
10: * Permission to use, copy, modify, and distribute this software and its
11: * documentation for any purpose and without fee is hereby granted,
12: * provided that the above copyright notice appear in all copies and that
13: * both that copyright notice and this permission notice appear in
14: * supporting documentation, and that the name of Digital Equipment
15: * Corporation not be used in advertising or publicity pertaining to
16: * distribution of the software without specific, written prior permission.
17: *
18: *
19: * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
20: * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
21: * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
22: * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
23: * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
24: * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
25: * SOFTWARE.
26: */
27: #include "Xlib.h"
28: #include "Intrinsic.h"
29:
30: static Cursor *cursorarray = NULL;
31: static int numcursors = 0;
32:
33: static Boolean initialized = FALSE;
34:
35:
36: void CursorsInitialize()
37: {
38: if (initialized)
39: return;
40: initialized = TRUE;
41: numcursors = 1;
42: cursorarray = (Cursor *) XtMalloc((unsigned)sizeof(Cursor));
43: *cursorarray = NULL;
44: }
45:
46: Cursor XtGetCursor(dpy, num)
47: Display *dpy;
48: int num;
49: {
50: if (num >= numcursors) {
51: cursorarray = (Cursor *) XtRealloc((char *)cursorarray,
52: (unsigned) (num + 1) * sizeof(Cursor));
53: for (; numcursors <= num ; numcursors++)
54: cursorarray[numcursors] = NULL;
55: }
56: if (cursorarray[num] == NULL)
57: cursorarray[num] = XCreateFontCursor(dpy, (unsigned) num);
58: return cursorarray[num];
59: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.