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.
12 #include <X11/cursorfont.h>
13 #include <X11/Xutil.h>
15 #ifdef XlibSpecificationRelease
16 #if XlibSpecificationRelease >= 5
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.
46 void _XtDisplayInitialize(dpy
, pd
, name
, class, urlist
, num_urs
, argc
, argv
)
50 XrmOptionDescRec
*urlist
;
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
)
65 XrmOptionDescRec
*urlist
;
70 lwlib_xrdb_initialize(dpy
);
71 _orig_XtDisplayInitialize(dpy
, pd
, name
, urlist
, num_urs
, argc
, argv
);
74 #endif /* HAVE_X11R5 */