1/*
2 * Author:	Yoichiro Ueno (ueno@cs.titech.ac.jp)
3 *
4 * Copyright (C) 1991, 1992, Yoichiro Ueno.
5 *
6 * Permission to use, copy, modify, and distribute this software and
7 * its documentation for any purpose is hereby granted by the Author without
8 * fee, provided that the above copyright notice appear in all copies and
9 * that both the copyright notice and this permission notice appear in
10 * supporting documentation, and that the name of the Author not be used
11 * in advertising or publicity pertaining to distribution of the software
12 * without specific, written prior permission.  The Author makes no
13 * representations about the suitability of this software for any purpose.
14 * It is provided "as is" without express or implied warranty.
15 *
16 * THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
17 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
18 * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR
19 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
20 * USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
21 * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
22 * PERFORMANCE OF THIS SOFTWARE.
23 *
24 * @(#)$Header: /mm2/home/cvs/bc-src/tgif/convxim.e,v 1.1 2004/06/18 23:19:08 william Exp $
25 */
26
27#ifndef _NO_XIM
28
29#ifndef _CONVXIM_E_
30#define _CONVXIM_E_
31
32#define	COMPOSE_STATUS	0
33#define MB_STATUS	1
34
35typedef struct _XIMStatus {
36    char		valid;
37    XComposeStatus	status;
38    Status		mb_status;
39} XIMStatus;
40
41extern char	ximConvModifiers[];
42extern char	ximConvLang[];
43
44#ifdef _INCLUDE_FROM_CONVXIM_C_
45#undef extern
46#define extern
47#endif /*_INCLUDE_FROM_CONVXIM_C_*/
48
49extern void	XIMSetICFocus ARGS_DECL((Display*, Window));
50extern void	XIMNextEvent ARGS_DECL((Display*, Window, XEvent*));
51extern int	XIMLookupString ARGS_DECL((XKeyEvent*, char*, int, KeySym*,
52		                           XIMStatus*));
53extern void	XIMUnsetICFocus ARGS_DECL((Window));
54extern void	XIMSetConvOverSpot ARGS_DECL((Bool));
55extern void	XIMTellCursorPosition ARGS_DECL((Display*, Window, int, int));
56
57extern void	XIMCleanUp ARGS_DECL((void));
58extern int	XIMInit ARGS_DECL((void));
59
60#ifdef _INCLUDE_FROM_CONVXIM_C_
61#undef extern
62#ifndef _NO_RECURSIVE_EXTERN
63#define extern extern
64#endif /* ~_NO_RECURSIVE_EXTERN */
65#endif /*_INCLUDE_FROM_CONVXIM_C_*/
66
67#endif /*_CONVXIM_E_*/
68
69#endif /* ~_NO_XIM */
70
71