# HG changeset patch # User Gerd Moellmann # Date 949187835 0 # Node ID ea054e85f0e259d5ee37d8159258b0947a4f35a4 # Parent d33b4becc3caed81660fdaa600cff4e686bcf5b6 (struct x_display_info) [HAVE_X_I18N]: Add members `xim' and `xim_styles'. (struct x_output) [HAVE_X_I18N]: Remove member `xim', add `xic_style' and `xic_xfs'. (FRAME_MENUBAR_HEIGHT, FRAME_X_XIM, FRAME_X_XIM_STYLES) (FRAME_XIC_STYLE, FRAME_XIC_FONTSET): New macros. (FRAME_XIM): Removed. diff -r d33b4becc3ca -r ea054e85f0e2 src/xterm.h --- a/src/xterm.h Sat Jan 29 23:16:55 2000 +0000 +++ b/src/xterm.h Sat Jan 29 23:17:15 2000 +0000 @@ -344,6 +344,12 @@ /* Cache of images. */ struct image_cache *image_cache; + +#ifdef HAVE_X_I18N + /* XIM (X Input method). */ + XIM xim; + XIMStyles *xim_styles; +#endif }; /* This is a chain of structures for all the X displays currently in use. */ @@ -547,10 +553,10 @@ char has_been_visible; #ifdef HAVE_X_I18N - /* Input method. */ - XIM xim; /* Input context (currently, this means Compose key handler setup). */ XIC xic; + XIMStyle xic_style; + XFontSet xic_xfs; #endif /* Relief GCs, colors etc. */ @@ -580,6 +586,7 @@ #define FRAME_FONT(f) ((f)->output_data.x->font) #define FRAME_FONTSET(f) ((f)->output_data.x->fontset) #define FRAME_INTERNAL_BORDER_WIDTH(f) ((f)->output_data.x->internal_border_width) +#define FRAME_MENUBAR_HEIGHT(f) ((f)->output_data.x->menubar_height) #define FRAME_LINE_HEIGHT(f) ((f)->output_data.x->line_height) /* Width of the default font of frame F. Must be defined by each @@ -604,8 +611,11 @@ #define FRAME_DESIRED_CURSOR(f) ((f)->output_data.x->desired_cursor) -#define FRAME_XIM(f) ((f)->output_data.x->xim) #define FRAME_XIC(f) ((f)->output_data.x->xic) +#define FRAME_X_XIM(f) (FRAME_X_DISPLAY_INFO (f)->xim) +#define FRAME_X_XIM_STYLES(f) (FRAME_X_DISPLAY_INFO (f)->xim_styles) +#define FRAME_XIC_STYLE(f) ((f)->output_data.x->xic_style) +#define FRAME_XIC_FONTSET(f) ((f)->output_data.x->xic_xfs) /* Value is the smallest width of any character in any font on frame F. */ @@ -992,6 +1002,11 @@ extern void x_set_border_pixel P_ ((struct frame *, int)); extern void x_set_menu_bar_lines P_ ((struct frame *, Lisp_Object, Lisp_Object)); extern void x_implicitly_set_name P_ ((struct frame *, Lisp_Object, Lisp_Object)); +extern void create_frame_xic P_ ((struct frame *)); +extern void destroy_frame_xic P_ ((struct frame *)); +extern void xic_set_preeditarea P_ ((struct window *, int, int)); +extern void xic_set_statusarea P_ ((struct frame *)); +extern void xic_set_xfontset P_ ((struct frame *, char *)); extern int x_pixel_width P_ ((struct frame *)); extern int x_pixel_height P_ ((struct frame *)); extern int x_char_width P_ ((struct frame *));