Fix commentary section.
[emacs.git] / lwlib / xrdb.c
blobd777c303d61dab085f60ae9d5b38f6f4240d92f4
1 /* This file overrides the R4 or R5 mit/lib/Xt/Initialize.c, except that
2 the functions lwlib_GetFileDatabase(), lwlib_CombineFileDatabase(), and
3 lwlib_xrdb_initialize() are called. By doing this silly cpp hack, we
4 avoid version skew problems.
5 */
7 #ifdef HAVE_CONFIG_H
8 #include <config.h>
9 #endif
11 #include <X11/Xlib.h>
12 #include <X11/cursorfont.h>
13 #include <X11/Xutil.h>
15 #ifdef XlibSpecificationRelease
16 #if XlibSpecificationRelease >= 5
17 #define HAVE_X11R5
18 #endif
19 #endif
21 extern struct _XrmHashBucketRec *lwlib_GetFileDatabase ();
22 extern void lwlib_xrdb_initialize ();
24 /* Replace all calls to XrmGetFileDatabase() with lwlib_GetFileDatabase(),
25 calls to XrmCombineFileDatabase() with lwlib_CombineFileDatabase(), and
26 rename the defined _XtDisplayInitialize() function.
28 #define XrmGetFileDatabase lwlib_GetFileDatabase
29 #define XrmCombineFileDatabase lwlib_CombineFileDatabase
30 #define _XtDisplayInitialize _orig_XtDisplayInitialize
32 /* Suck in the original code. Don't change this: see comments in Imakefile. */
33 #include "Initialize.c"
35 #undef XrmGetFileDatabase
36 #undef XrmCombineFileDatabase
37 #undef _XtDisplayInitialize
39 /* Now provide a definition of _XtDisplayInitialize() which invokes the
40 original code after calling our initialization hook. Note that the R4
41 and R5 versions of _XtDisplayInitialize() take different arguments.
44 #ifndef HAVE_X11R5
46 void _XtDisplayInitialize(dpy, pd, name, class, urlist, num_urs, argc, argv)
47 Display *dpy;
48 XtPerDisplay pd;
49 String name, class;
50 XrmOptionDescRec *urlist;
51 Cardinal num_urs;
52 Cardinal *argc;
53 char *argv[];
55 lwlib_xrdb_initialize(dpy);
56 _orig_XtDisplayInitialize(dpy, pd, name, class, urlist, num_urs, argc, argv);
59 #else /* HAVE_X11R5 */
61 void _XtDisplayInitialize(dpy, pd, name, urlist, num_urs, argc, argv)
62 Display *dpy;
63 XtPerDisplay pd;
64 String name;
65 XrmOptionDescRec *urlist;
66 Cardinal num_urs;
67 int *argc;
68 char **argv;
70 lwlib_xrdb_initialize(dpy);
71 _orig_XtDisplayInitialize(dpy, pd, name, urlist, num_urs, argc, argv);
74 #endif /* HAVE_X11R5 */