summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerd Moellmann <gerd@gnu.org>2000-01-29 23:17:15 +0000
committerGerd Moellmann <gerd@gnu.org>2000-01-29 23:17:15 +0000
commit1c815a24655db3419cc1cb45f9279ea8d194acbd (patch)
treed6cba19e17f4d85741c5acabd7d39445a1e109d4
parentf5d11644696d1ae7add77ba3ffb3618249b76dbe (diff)
downloademacs-1c815a24655db3419cc1cb45f9279ea8d194acbd.tar.gz
(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.
-rw-r--r--src/xterm.h21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/xterm.h b/src/xterm.h
index 9ef78981c13..df44b856068 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -344,6 +344,12 @@ struct x_display_info
/* 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 @@ struct x_output
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 @@ struct x_output
#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 @@ struct x_output
#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 int defined_color P_ ((struct frame *, char *, XColor *, int));
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 *));