Mercurial > emacs
view lwlib/xrdb.c @ 88382:5e3e1d9d514f
(enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
(XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
(CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS,
SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
Deleted.
(CHAR_TABLE_REF, CHAR_TABLE_SET): Adjusted for the new char table
structure.
(CHAR_TABLE_TRANSLATE): Just call char_table_translate.
(CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2,
CHARTAB_SIZE_BITS_3): New macros.
(chartab_size): Extern it.
(struct Lisp_Char_Table): Re-designed.
(struct Lisp_Sub_Char_Table): New structure.
(HASH_KEY, HASH_VALUE): Moved from fns.c.
(CHARACTERBITS): Defined as 22.
(GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjusted for the above change.
(SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
(GC_SUB_CHAR_TABLE_P): New macro.
(Fencode_coding_string, Fdecode_coding_string): EXFUN Updated.
(code_convert_string_norecord): Extern deleted.
(init_character_once, syms_of_character, init_charset,
syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Fri, 01 Mar 2002 01:44:13 +0000 |
parents | e0d966fb548f |
children |
line wrap: on
line source
/* This file overrides the R4 or R5 mit/lib/Xt/Initialize.c, except that the functions lwlib_GetFileDatabase(), lwlib_CombineFileDatabase(), and lwlib_xrdb_initialize() are called. By doing this silly cpp hack, we avoid version skew problems. */ #ifdef HAVE_CONFIG_H #include <config.h> #endif #include <X11/Xlib.h> #include <X11/cursorfont.h> #include <X11/Xutil.h> #ifdef XlibSpecificationRelease #if XlibSpecificationRelease >= 5 #define HAVE_X11R5 #endif #endif extern struct _XrmHashBucketRec *lwlib_GetFileDatabase (); extern void lwlib_xrdb_initialize (); /* Replace all calls to XrmGetFileDatabase() with lwlib_GetFileDatabase(), calls to XrmCombineFileDatabase() with lwlib_CombineFileDatabase(), and rename the defined _XtDisplayInitialize() function. */ #define XrmGetFileDatabase lwlib_GetFileDatabase #define XrmCombineFileDatabase lwlib_CombineFileDatabase #define _XtDisplayInitialize _orig_XtDisplayInitialize /* Suck in the original code. Don't change this: see comments in Imakefile. */ #include "Initialize.c" #undef XrmGetFileDatabase #undef XrmCombineFileDatabase #undef _XtDisplayInitialize /* Now provide a definition of _XtDisplayInitialize() which invokes the original code after calling our initialization hook. Note that the R4 and R5 versions of _XtDisplayInitialize() take different arguments. */ #ifndef HAVE_X11R5 void _XtDisplayInitialize(dpy, pd, name, class, urlist, num_urs, argc, argv) Display *dpy; XtPerDisplay pd; String name, class; XrmOptionDescRec *urlist; Cardinal num_urs; Cardinal *argc; char *argv[]; { lwlib_xrdb_initialize(dpy); _orig_XtDisplayInitialize(dpy, pd, name, class, urlist, num_urs, argc, argv); } #else /* HAVE_X11R5 */ void _XtDisplayInitialize(dpy, pd, name, urlist, num_urs, argc, argv) Display *dpy; XtPerDisplay pd; String name; XrmOptionDescRec *urlist; Cardinal num_urs; int *argc; char **argv; { lwlib_xrdb_initialize(dpy); _orig_XtDisplayInitialize(dpy, pd, name, urlist, num_urs, argc, argv); } #endif /* HAVE_X11R5 */