home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / evbl0627.zip / everblue_20010627.zip / x11 / Ximint.h < prev    next >
C/C++ Source or Header  |  1999-11-02  |  22KB  |  1,149 lines

  1. /* $TOG: Ximint.h /main/10 1997/04/28 16:40:16 barstow $ */
  2. /******************************************************************
  3.  
  4.                 Copyright 1992, 1993, 1994 by FUJITSU LIMITED
  5.                 Copyright 1993, 1994 by Sony Corporation
  6.  
  7. Permission to use, copy, modify, distribute, and sell this software
  8. and its documentation for any purpose is hereby granted without fee,
  9. provided that the above copyright notice appear in all copies and that
  10. both that copyright notice and this permission notice appear in
  11. supporting documentation, and that the name of FUJITSU LIMITED and
  12. Sony Corporation not be used in advertising or publicity pertaining to
  13. distribution of the software without specific, written prior
  14. permission.  FUJITSU LIMITED and Sony Corporation makes no
  15. representations about the suitability of this software for any
  16. purpose.  It is provided "as is" without express or implied warranty. 
  17.  
  18. FUJITSU LIMITED AND SONY CORPORATION DISCLAIM ALL WARRANTIES WITH
  19. REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF
  20. MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL FUJITSU LIMITED AND
  21. SONY CORPORATION BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
  22. DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  23. PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  24. TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  25. PERFORMANCE OF THIS SOFTWARE. 
  26.  
  27.   Author:   Takashi Fujiwara   FUJITSU LIMITED 
  28.                                fujiwara@a80.tech.yk.fujitsu.co.jp
  29.   Motifier: Makoto Wakamatsu   Sony Corporation
  30.                    makoto@sm.sony.co.jp
  31.  
  32. ******************************************************************/
  33. /* $XFree86: xc/lib/X11/Ximint.h,v 3.0.4.5 1998/10/21 06:40:38 dawes Exp $ */
  34.  
  35. #ifndef _XIMINT_H
  36. #define _XIMINT_H
  37.  
  38. #include <stdio.h>
  39. #include <X11/Xutil.h>
  40.  
  41. #define Public /**/
  42. #define Private static
  43.  
  44. typedef struct _Xim    *Xim;
  45. typedef struct _Xic    *Xic;
  46.  
  47. /*
  48.  * Input Method data
  49.  */
  50. #include "XimintP.h"
  51. #include "XimintL.h"
  52.  
  53. /*
  54.  * XIM dependent data
  55.  */
  56. typedef union _XIMPrivateRec {
  57.     XimLocalPrivateRec   local;
  58.     XimProtoPrivateRec   proto;
  59. } XIMPrivateRec;
  60.  
  61. /*
  62.  * IM struct
  63.  */
  64. typedef struct _Xim {
  65.     XIMMethods        methods;
  66.     XIMCoreRec        core;
  67.     XIMPrivateRec    private;
  68. } XimRec;
  69.  
  70. /*
  71.  * IC deprndent data
  72.  */
  73. typedef union _XICPrivateRec {
  74.     XicLocalPrivateRec   local;
  75.     XicProtoPrivateRec   proto;
  76. } XICPrivateRec;
  77.  
  78. /*
  79.  * IC struct
  80.  */
  81. typedef struct _Xic {
  82.     XICMethods    methods;
  83.     XICCoreRec    core;
  84.     XICPrivateRec    private;
  85. } XicRec;
  86.  
  87. typedef struct _XimDefIMValues {
  88.     XIMValuesList        *im_values_list;
  89.     XIMValuesList        *ic_values_list;
  90.     XIMStyles        *styles;
  91.     XIMCallback         destroy_callback;
  92.     char            *res_name;
  93.     char            *res_class;
  94.     Bool             visible_position;
  95. } XimDefIMValues;
  96.  
  97. typedef struct _XimDefICValues {
  98.     XIMStyle             input_style;
  99.     Window             client_window;
  100.     Window             focus_window;
  101.     unsigned long         filter_events;
  102.     XICCallback             geometry_callback;
  103.     char            *res_name;
  104.     char            *res_class;
  105.     XICCallback             destroy_callback;
  106.     XICCallback             preedit_state_notify_callback;
  107.     XICCallback             string_conversion_callback;
  108.     XIMStringConversionText     string_conversion;
  109.     XIMResetState         reset_state;
  110.     XIMHotKeyTriggers        *hotkey;
  111.     XIMHotKeyState         hotkey_state;
  112.     ICPreeditAttributes         preedit_attr;
  113.     ICStatusAttributes         status_attr;
  114. } XimDefICValues;
  115.  
  116. #define XIM_MODE_IM_GET        (1 << 0)
  117. #define XIM_MODE_IM_SET        (1 << 1)
  118. #define XIM_MODE_IM_DEFAULT    (1 << 2)
  119.  
  120. #define XIM_MODE_PRE_GET    (1 << 0)
  121. #define XIM_MODE_PRE_SET    (1 << 1)
  122. #define XIM_MODE_PRE_CREATE    (1 << 2)
  123. #define XIM_MODE_PRE_ONCE    (1 << 3)
  124. #define XIM_MODE_PRE_DEFAULT    (1 << 4)
  125.  
  126. #define XIM_MODE_STS_GET    (1 << 5)
  127. #define XIM_MODE_STS_SET    (1 << 6)
  128. #define XIM_MODE_STS_CREATE    (1 << 7)
  129. #define XIM_MODE_STS_ONCE    (1 << 8)
  130. #define XIM_MODE_STS_DEFAULT    (1 << 9)
  131.  
  132. #define XIM_MODE_IC_GET        (XIM_MODE_PRE_GET      | XIM_MODE_STS_GET)
  133. #define XIM_MODE_IC_SET        (XIM_MODE_PRE_SET      | XIM_MODE_STS_SET)
  134. #define XIM_MODE_IC_CREATE    (XIM_MODE_PRE_CREATE   | XIM_MODE_STS_CREATE)
  135. #define XIM_MODE_IC_ONCE    (XIM_MODE_PRE_ONCE     | XIM_MODE_STS_ONCE)
  136. #define XIM_MODE_IC_DEFAULT    (XIM_MODE_PRE_DEFAULT  | XIM_MODE_STS_DEFAULT)
  137.  
  138. #define XIM_MODE_PRE_MASK    (XIM_MODE_PRE_GET    | XIM_MODE_PRE_SET    | \
  139.                  XIM_MODE_PRE_CREATE | XIM_MODE_PRE_ONCE   | \
  140.                  XIM_MODE_PRE_DEFAULT)
  141. #define XIM_MODE_STS_MASK    (XIM_MODE_STS_GET    | XIM_MODE_STS_SET    | \
  142.                  XIM_MODE_STS_CREATE | XIM_MODE_STS_ONCE   | \
  143.                  XIM_MODE_STS_DEFAULT)
  144.  
  145. #define XIM_SETIMDEFAULTS    (1L << 0)
  146. #define XIM_SETIMVALUES        (1L << 1)
  147. #define XIM_GETIMVALUES        (1L << 2)
  148.  
  149. #define XIM_SETICDEFAULTS    (1L << 0)
  150. #define XIM_CREATEIC        (1L << 1)
  151. #define XIM_SETICVALUES        (1L << 2)
  152. #define XIM_GETICVALUES        (1L << 3)
  153. #define XIM_PREEDIT_ATTR    (1L << 4)
  154. #define XIM_STATUS_ATTR        (1L << 5)
  155.  
  156. #define XIM_CHECK_VALID        0
  157. #define XIM_CHECK_INVALID    1
  158. #define XIM_CHECK_ERROR        2
  159.  
  160. #define FILTERD         True
  161. #define NOTFILTERD      False
  162.  
  163. #define XIMMODIFIER        "@im="
  164.  
  165. #define    XIM_TRUE    True
  166. #define    XIM_FALSE    False
  167. #define    XIM_OVERFLOW    (-1)
  168.  
  169. /*
  170.  * Global symbols
  171.  */
  172.  
  173. extern Bool _XimSetIMResourceList(
  174. #if NeedFunctionPrototypes
  175.     XIMResourceList    *res_list,
  176.     unsigned int    *list_num
  177. #endif
  178. );
  179.  
  180. extern Bool _XimSetICResourceList(
  181. #if NeedFunctionPrototypes
  182.     XIMResourceList    *res_list,
  183.     unsigned int    *list_num
  184. #endif
  185. );
  186.  
  187. extern Bool _XimSetInnerIMResourceList(
  188. #if NeedFunctionPrototypes
  189.     XIMResourceList    *res_list,
  190.     unsigned int    *list_num
  191. #endif
  192. );
  193.  
  194. extern Bool _XimSetInnerICResourceList(
  195. #if NeedFunctionPrototypes
  196.     XIMResourceList    *res_list,
  197.     unsigned int    *list_num
  198. #endif
  199. );
  200.  
  201. extern Bool cw_XimCheckCreateICValues(
  202. #if NeedFunctionPrototypes
  203.     XIMResourceList     res_list,
  204.     unsigned int     list_num
  205. #endif
  206. );
  207.  
  208. extern XIMResourceList _XimGetResourceListRec(
  209. #if NeedFunctionPrototypes
  210.     XIMResourceList     res_list,
  211.     unsigned int     list_num,
  212.     char        *name
  213. #endif
  214. );
  215.  
  216. extern void _XimSetIMMode(
  217. #if NeedFunctionPrototypes
  218.     XIMResourceList     res_list,
  219.     unsigned int     list_num
  220. #endif
  221. );
  222.  
  223. extern void _XimSetICMode(
  224. #if NeedFunctionPrototypes
  225.     XIMResourceList     res_list,
  226.     unsigned int     list_num,
  227.     XIMStyle         style
  228. #endif
  229. );
  230.  
  231. extern int _XimCheckIMMode(
  232. #if NeedFunctionPrototypes
  233.     XIMResourceList     res_list,
  234.     unsigned long     mode
  235. #endif
  236. );
  237.  
  238. extern int _XimCheckICMode(
  239. #if NeedFunctionPrototypes
  240.     XIMResourceList     res_list,
  241.     unsigned long     mode
  242. #endif
  243. );
  244.  
  245. extern Bool _XimSetLocalIMDefaults(
  246. #if NeedFunctionPrototypes
  247.     Xim             im,
  248.     XPointer         top,
  249.     XIMResourceList     res_list,
  250.     unsigned int     list_num
  251. #endif
  252. );
  253.  
  254. extern Bool _XimSetICDefaults(
  255. #if NeedFunctionPrototypes
  256.     Xic             ic,
  257.     XPointer         top,
  258.     unsigned long     mode,
  259.     XIMResourceList     res_list,
  260.     unsigned int     list_num
  261. #endif
  262. );
  263.  
  264. extern Bool _XimEncodeLocalIMAttr(
  265. #if NeedFunctionPrototypes
  266.     XIMResourceList     res,
  267.     XPointer         top,
  268.     XPointer         val
  269. #endif
  270. );
  271.  
  272. extern Bool _XimEncodeLocalICAttr(
  273. #if NeedFunctionPrototypes
  274.     Xic             ic,
  275.     XIMResourceList     res,
  276.     XPointer         top,
  277.     XIMArg        *arg,
  278.     unsigned long     mode
  279. #endif
  280. );
  281.  
  282. extern Bool _XimCheckLocalInputStyle(
  283. #if NeedFunctionPrototypes
  284.     Xic             ic,
  285.     XPointer         top,
  286.     XIMArg        *values,
  287.     XIMStyles           *styles,
  288.     XIMResourceList     res_list,
  289.     unsigned int     list_num
  290. #endif
  291. );
  292.  
  293. extern Bool _XimDecodeLocalIMAttr(
  294. #if NeedFunctionPrototypes
  295.     XIMResourceList     res,
  296.     XPointer         top,
  297.     XPointer         val
  298. #endif
  299. );
  300.  
  301. extern Bool _XimDecodeLocalICAttr(
  302. #if NeedFunctionPrototypes
  303.     XIMResourceList     res,
  304.     XPointer         top,
  305.     XPointer         val,
  306.     unsigned long    mode
  307. #endif
  308. );
  309.  
  310. extern void _XimGetCurrentIMValues(
  311. #if NeedFunctionPrototypes
  312.     Xim             im,
  313.     XimDefIMValues    *im_values
  314. #endif
  315. );
  316.  
  317. extern void _XimSetCurrentIMValues(
  318. #if NeedFunctionPrototypes
  319.     Xim             im,
  320.     XimDefIMValues    *im_values
  321. #endif
  322. );
  323.  
  324. extern void _XimGetCurrentICValues(
  325. #if NeedFunctionPrototypes
  326.     Xic             ic,
  327.     XimDefICValues    *ic_values
  328. #endif
  329. );
  330.  
  331. extern void _XimSetCurrentICValues(
  332. #if NeedFunctionPrototypes
  333.     Xic             ic,
  334.     XimDefICValues    *ic_values
  335. #endif
  336. );
  337.  
  338. extern void _XimInitialResourceInfo(
  339. #if NeedFunctionPrototypes
  340.     void
  341. #endif
  342. );
  343.  
  344. extern int     XimParseStringFile(
  345. #if NeedFunctionPrototypes
  346.     FILE        *fp,
  347.     DefTree     **ptop
  348. #endif
  349. );
  350.  
  351. extern Bool     _XimCheckIfLocalProcessing(
  352. #if NeedFunctionPrototypes
  353.     Xim         im
  354. #endif
  355. );
  356.  
  357. extern Bool     _XimCheckIfThaiProcessing(
  358. #if NeedFunctionPrototypes
  359.     Xim         im
  360. #endif
  361. );
  362.  
  363. extern Bool     _XimLocalOpenIM(
  364. #if NeedFunctionPrototypes
  365.     Xim         im
  366. #endif
  367. );
  368.  
  369. extern Bool     _XimThaiOpenIM(
  370. #if NeedFunctionPrototypes
  371.     Xim         im
  372. #endif
  373. );
  374.  
  375. extern Bool     _XimProtoOpenIM(
  376. #if NeedFunctionPrototypes
  377.     Xim         im
  378. #endif
  379. );
  380.  
  381. extern void     _XimLocalIMFree(
  382. #if NeedFunctionPrototypes
  383.     Xim         im
  384. #endif
  385. );
  386.  
  387. extern void     _XimThaiIMFree(
  388. #if NeedFunctionPrototypes
  389.     Xim             im
  390. #endif
  391. );
  392.  
  393. extern void     _XimProtoIMFree(
  394. #if NeedFunctionPrototypes
  395.     Xim         im
  396. #endif
  397. );
  398.  
  399. extern char *     _XimSetIMValueData(
  400. #if NeedFunctionPrototypes
  401.     Xim             im,
  402.     XPointer         top,
  403.     XIMArg        *arg,
  404.     XIMResourceList     res_list,
  405.     unsigned int     list_num
  406. #endif
  407. );
  408.  
  409. extern char *     _XimGetIMValueData(
  410. #if NeedFunctionPrototypes
  411.     Xim             im,
  412.     XPointer         top,
  413.     XIMArg        *arg,
  414.     XIMResourceList     res_list,
  415.     unsigned int     list_num
  416. #endif
  417. );
  418.  
  419. extern char *     _XimSetICValueData(
  420. #if NeedFunctionPrototypes
  421.     Xic             ic,
  422.     XPointer         top,
  423.     XIMResourceList     res_list,
  424.     unsigned int     list_num,
  425.     XIMArg        *arg,
  426.     unsigned long     mode,
  427.     Bool         flag
  428. #endif
  429. );
  430.  
  431. extern char *     _XimGetICValueData(
  432. #if NeedFunctionPrototypes
  433.     Xic             ic,
  434.     XPointer         top,
  435.     XIMResourceList     res_list,
  436.     unsigned int     list_num,
  437.     XIMArg        *arg,
  438.     unsigned long     mode
  439. #endif
  440. );
  441.  
  442. extern char *     _XimLocalSetIMValues(
  443. #if NeedFunctionPrototypes
  444.     XIM         im,
  445.     XIMArg    *arg
  446. #endif
  447. );
  448.  
  449. extern char *     _XimLocalGetIMValues(
  450. #if NeedFunctionPrototypes
  451.     XIM         im,
  452.     XIMArg    *arg
  453. #endif
  454. );
  455.  
  456. extern XIC     _XimLocalCreateIC(
  457. #if NeedFunctionPrototypes
  458.     XIM         im,
  459.     XIMArg    *arg
  460. #endif
  461. );
  462.  
  463. extern Bool    _XimDispatchInit(
  464. #if NeedFunctionPrototypes
  465.     Xim         im
  466. #endif
  467. );
  468.  
  469. extern Bool     _XimGetAttributeID(
  470. #if NeedFunctionPrototypes
  471.     Xim         im,
  472.     CARD16    *buf
  473. #endif
  474. );
  475.  
  476. extern Bool     _XimExtension(
  477. #if NeedFunctionPrototypes
  478.     Xim         im
  479. #endif
  480. );
  481.  
  482. extern void    _XimDestroyIMStructureList(
  483. #if NeedFunctionPrototypes
  484.     Xim         im
  485. #endif
  486. );
  487.  
  488. extern char *    _XimMakeIMAttrIDList(
  489. #if NeedFunctionPrototypes
  490.     Xim             im,
  491.     XIMResourceList     res_list,
  492.     unsigned int     res_num,
  493.     XIMArg        *arg,
  494.     CARD16        *buf,
  495.     INT16        *len,
  496.     unsigned long        mode
  497. #endif
  498. );
  499.  
  500. extern char *    _XimMakeICAttrIDList(
  501. #if NeedFunctionPrototypes
  502.     Xic                  ic,
  503.     XIMResourceList     res_list,
  504.     unsigned int     res_num,
  505.     XIMArg        *arg,
  506.     CARD16        *idList,
  507.     INT16        *num,
  508.     unsigned long     mode
  509. #endif
  510. );
  511.  
  512. extern char *    _XimDecodeIMATTRIBUTE(
  513. #if NeedFunctionPrototypes
  514.     Xim             im,
  515.     XIMResourceList     res_list,
  516.     unsigned int     res_num,
  517.     CARD16        *buf,
  518.     INT16         buf_len,
  519.     XIMArg        *arg,
  520.     BITMASK32         mode
  521. #endif
  522. );
  523.  
  524. extern char *    _XimDecodeICATTRIBUTE(
  525. #if NeedFunctionPrototypes
  526.     Xic             ic,
  527.     XIMResourceList     res_list,
  528.     unsigned int     res_num,
  529.     CARD16        *buf,
  530.     INT16         buf_len,
  531.     XIMArg        *arg,
  532.     BITMASK32         mode
  533. #endif
  534. );
  535.  
  536. extern Bool    _XimRegProtoIntrCallback(
  537. #if NeedFunctionPrototypes
  538.     Xim         im,
  539.     CARD16     major_code,
  540.     CARD16     minor_code,
  541.     Bool     (*proc)(
  542. #if NeedNestedPrototypes
  543.             Xim, INT16, XPointer, XPointer
  544. #endif
  545.             ),
  546.     XPointer     call_data
  547. #endif
  548. );
  549.  
  550. extern Bool    _XimErrorCallback(
  551. #if NeedFunctionPrototypes
  552.     Xim         im,
  553.     INT16     len,
  554.     XPointer     data,
  555.     XPointer     call_data
  556. #endif
  557. );
  558.  
  559. extern Bool    _XimError(
  560. #if NeedFunctionPrototypes
  561.     Xim         im,
  562.     Xic         ic,
  563.     CARD16     error_code,
  564.     INT16     detail_length,
  565.     CARD16     type,
  566.     char    *detail
  567. #endif
  568. );
  569.  
  570. extern Bool    _XimRegisterTriggerKeysCallback(
  571. #if NeedFunctionPrototypes
  572.     Xim         im,
  573.     INT16     len,
  574.     XPointer     data,
  575.     XPointer     call_data
  576. #endif
  577. );
  578.  
  579. extern Bool    _XimSetEventMaskCallback(
  580. #if NeedFunctionPrototypes
  581.     Xim         im,
  582.     INT16     len,
  583.     XPointer     data,
  584.     XPointer     call_data
  585. #endif
  586. );
  587.  
  588. extern Bool    _XimForwardEventCallback(
  589. #if NeedFunctionPrototypes
  590.     Xim         im,
  591.     INT16     len,
  592.     XPointer     data,
  593.     XPointer     call_data
  594. #endif
  595. );
  596.  
  597. extern Bool    _XimCommitCallback(
  598. #if NeedFunctionPrototypes
  599.     Xim         im,
  600.     INT16     len,
  601.     XPointer     data,
  602.     XPointer     call_data
  603. #endif
  604. );
  605.  
  606. extern Bool    _XimSyncCallback(
  607. #if NeedFunctionPrototypes
  608.     Xim         im,
  609.     INT16     len,
  610.     XPointer     data,
  611.     XPointer     call_data
  612. #endif
  613. );
  614.  
  615. extern void    _XimFreeProtoIntrCallback(
  616. #if NeedFunctionPrototypes
  617.     Xim         im
  618. #endif
  619. );
  620.  
  621. extern XIC     _XimProtoCreateIC(
  622. #if NeedFunctionPrototypes
  623.     XIM         im,
  624.     XIMArg    *arg
  625. #endif
  626. );
  627.  
  628. extern void    _XimRegisterServerFilter(
  629. #if NeedFunctionPrototypes
  630.     Xim         im
  631. #endif
  632. );
  633.  
  634. extern void    _XimUnregisterServerFilter(
  635. #if NeedFunctionPrototypes
  636.     Xim         im
  637. #endif
  638. );
  639.  
  640. extern Bool    _XimTriggerNotify(
  641. #if NeedFunctionPrototypes
  642.     Xim         im,
  643.     Xic         ic,
  644.     int         mode,
  645.     CARD32     idx
  646. #endif
  647. );
  648.  
  649. extern Bool    _XimProcSyncReply(
  650. #if NeedFunctionPrototypes
  651.     Xim         im,
  652.     Xic         ic
  653. #endif
  654. );
  655.  
  656. extern void    _XimSendSetFocus(
  657. #if NeedFunctionPrototypes
  658.     Xim         im,
  659.     Xic         ic
  660. #endif
  661. );
  662.  
  663. extern Bool    _XimForwardEvent(
  664. #if NeedFunctionPrototypes
  665.     Xic         ic,
  666.     XEvent    *ev,
  667.     Bool     sync
  668. #endif
  669. );
  670.  
  671. extern void    _XimFreeRemakeArg(
  672. #if NeedFunctionPrototypes
  673.     XIMArg    *arg
  674. #endif
  675. );
  676.  
  677. extern void    _XimServerDestroy(
  678. #if NeedFunctionPrototypes
  679.     Xim            im
  680. #endif
  681. );
  682.  
  683. extern char *    _XimEncodeIMATTRIBUTE(
  684. #if NeedFunctionPrototypes
  685.     Xim              im,
  686.     XIMResourceList      res_list,
  687.     unsigned int      res_num,
  688.     XIMArg               *arg, 
  689.     XIMArg        **arg_ret,
  690.     char         *buf,
  691.     int              size,
  692.     int             *ret_len,
  693.     XPointer          top,
  694.     unsigned long      mode
  695. #endif
  696. );
  697.  
  698. extern char *    _XimEncodeICATTRIBUTE(
  699. #if NeedFunctionPrototypes
  700.     Xic              ic,
  701.     XIMResourceList      res_list,
  702.     unsigned int      res_num,
  703.     XIMArg               *arg, 
  704.     XIMArg        **arg_ret,
  705.     char         *buf,
  706.     int              size,
  707.     int             *ret_len,
  708.     XPointer          top,
  709.     BITMASK32         *flag,
  710.     unsigned long      mode
  711. #endif
  712. );
  713.  
  714. #ifdef EXT_MOVE
  715. extern Bool    _XimExtenMove(
  716. #if NeedFunctionPrototypes
  717.     Xim         im,
  718.     Xic         ic,
  719.     CARD32     flag,
  720.     CARD16    *buf,
  721.     INT16     length
  722. #endif
  723. );
  724. #endif
  725.  
  726. extern int    _Ximctstombs(
  727. #if NeedFunctionPrototypes
  728.     XIM         im,
  729.     char    *from,
  730.     int        from_len,
  731.     char    *to,
  732.     int        to_len,
  733.     Status    *state
  734. #endif
  735. );
  736.  
  737. extern int    _Ximctstowcs(
  738. #if NeedFunctionPrototypes
  739.     XIM         im,
  740.     char    *from,
  741.     int         from_len,
  742.     wchar_t    *to,
  743.     int         to_len,
  744.     Status    *state
  745. #endif
  746. );
  747.  
  748. extern int    _XimLcctstombs(
  749. #if NeedFunctionPrototypes
  750.     XIM         im,
  751.     char    *from,
  752.     int        from_len,
  753.     char    *to,
  754.     int        to_len,
  755.     Status    *state
  756. #endif
  757. );
  758.  
  759. extern int    _XimLcctstowcs(
  760. #if NeedFunctionPrototypes
  761.     XIM         im,
  762.     char    *from,
  763.     int         from_len,
  764.     wchar_t    *to,
  765.     int         to_len,
  766.     Status    *state
  767. #endif
  768. );
  769.  
  770. extern void    _XimSetHeader(
  771. #if NeedFunctionPrototypes
  772.     XPointer     buf,
  773.     CARD8     major_opcode,
  774.     CARD8     minor_opcode,
  775.     INT16    *len
  776. #endif
  777. );
  778.  
  779. extern Bool    _XimSync(
  780. #if NeedFunctionPrototypes
  781.     Xim         im,
  782.     Xic         ic
  783. #endif
  784. );
  785.  
  786. extern int    _XimProtoMbLookupString(
  787. #if NeedFunctionPrototypes
  788.     XIC         xic,
  789.     XKeyEvent    *ev,
  790.     char    *buffer,
  791.     int         bytes,
  792.     KeySym    *keysym,
  793.     Status    *state
  794. #endif
  795. );
  796.  
  797. extern int    _XimProtoWcLookupString(
  798. #if NeedFunctionPrototypes
  799.     XIC         xic,
  800.     XKeyEvent    *ev,
  801.     wchar_t    *buffer,
  802.     int         bytes,
  803.     KeySym    *keysym,
  804.     Status    *state
  805. #endif
  806. );
  807.  
  808. extern void    _XimRegisterFilter(
  809. #if NeedFunctionPrototypes
  810.     Xic         ic
  811. #endif
  812. );
  813.  
  814. extern void    _XimUnregisterFilter(
  815. #if NeedFunctionPrototypes
  816.     Xic         ic
  817. #endif
  818. );
  819.  
  820. extern void    _XimReregisterFilter(
  821. #if NeedFunctionPrototypes
  822.     Xic         ic
  823. #endif
  824. );
  825.  
  826. extern Status    _XimProtoEventToWire(
  827. #if NeedFunctionPrototypes
  828.     XEvent    *re,
  829.     xEvent    *event,
  830.     Bool    sw
  831. #endif
  832. );
  833.  
  834. extern Bool    _XimProtoWireToEvent(
  835. #if NeedFunctionPrototypes
  836.     XEvent    *re,
  837.     xEvent    *event,
  838.     Bool     sw
  839. #endif
  840. );
  841.  
  842. #ifdef EXT_FORWARD
  843. extern Bool    _XimExtForwardKeyEvent(
  844. #if NeedFunctionPrototypes
  845.     Xic         ic,
  846.     XKeyEvent    *ev,
  847.     Bool     sync
  848. #endif
  849. );
  850. #endif
  851.  
  852. extern int    _XimLookupMBText(
  853. #if NeedFunctionPrototypes
  854.     Xic             ic,
  855.     XKeyEvent        *event,
  856.     char        *buffer,
  857.     int             nbytes,
  858.     KeySym        *keysym,
  859.     XComposeStatus    *status
  860. #endif
  861. );
  862.  
  863. extern int    _XimLookupWCText(
  864. #if NeedFunctionPrototypes
  865.     Xic             ic,
  866.     XKeyEvent        *event,
  867.     wchar_t        *buffer,
  868.     int             nbytes,
  869.     KeySym        *keysym,
  870.     XComposeStatus    *status
  871. #endif
  872. );
  873.  
  874. extern EVENTMASK    _XimGetWindowEventmask(
  875. #if NeedFunctionPrototypes
  876.     Xic         ic
  877. #endif
  878. );
  879.  
  880. extern Xic    _XimICOfXICID(
  881. #if NeedFunctionPrototypes
  882.     Xim        im,
  883.     XICID    icid
  884. #endif
  885. );
  886.  
  887. extern void    _XimResetIMInstantiateCallback(
  888. #if NeedFunctionPrototypes
  889.     Xim         xim
  890. #endif
  891. );
  892.  
  893. extern Bool    _XimRegisterIMInstantiateCallback(
  894. #if NeedFunctionPrototypes
  895.     XLCd     lcd,
  896.     Display    *display,
  897.     XrmDatabase     rdb,
  898.     char    *res_name,
  899.     char    *res_class,
  900.     XIDProc     callback,
  901.     XPointer     client_data
  902. #endif
  903. );
  904.  
  905. extern Bool    _XimUnRegisterIMInstantiateCallback(
  906. #if NeedFunctionPrototypes
  907.     XLCd     lcd,
  908.     Display    *display,
  909.     XrmDatabase     rdb,
  910.     char    *res_name,
  911.     char    *res_class,
  912.     XIDProc     callback,
  913.     XPointer     client_data
  914. #endif
  915. );
  916.  
  917. extern void    _XimFreeCommitInfo(
  918. #if NeedFunctionPrototypes
  919.     Xic         ic
  920. #endif
  921. );
  922.  
  923. extern Bool    _XimConnect(
  924. #if NeedFunctionPrototypes
  925.     Xim         im
  926. #endif
  927. );
  928.  
  929. extern Bool    _XimShutdown(
  930. #if NeedFunctionPrototypes
  931.     Xim         im
  932. #endif
  933. );
  934.  
  935. extern Bool    _XimWrite(
  936. #if NeedFunctionPrototypes
  937.     Xim         im,
  938.     INT16     len,
  939.     XPointer     data
  940. #endif
  941. );
  942.  
  943. extern Bool    _XimRead(
  944. #if NeedFunctionPrototypes
  945.     Xim         im,
  946.     INT16    *len,
  947.     XPointer     data,
  948.     int         data_len,
  949.     Bool     (*predicate)(
  950. #if NeedNestedPrototypes
  951.                   Xim, INT16, XPointer, XPointer
  952. #endif
  953.                   ),
  954.     XPointer     arg
  955. #endif
  956. );
  957.  
  958. extern Bool    _XimIntrCallback(
  959. #if NeedFunctionPrototypes
  960.     Xim         im,
  961.     Bool     (*callback)(
  962. #if NeedNestedPrototypes
  963.                  Xim, INT16, XPointer, XPointer
  964. #endif
  965.                  ),
  966.     XPointer     call_data
  967. #endif
  968. );
  969.  
  970. extern void    _XimFlush(
  971. #if NeedFunctionPrototypes
  972.     Xim         im
  973. #endif
  974. );
  975.  
  976. extern Bool    _XimFilterWaitEvent(
  977. #if NeedFunctionPrototypes
  978.     Xim         im
  979. #endif
  980. );
  981.  
  982. extern void   _XimProcError(
  983. #if NeedFunctionPrototypes
  984.     Xim        im,
  985.     Xic        ic,
  986.     XPointer    data
  987. #endif
  988. );
  989.  
  990. #ifdef EXT_MOVE
  991. extern CARD32    _XimExtenArgCheck(
  992. #if NeedFunctionProtoTypes
  993.     XIMArg    *arg
  994. #endif
  995. );
  996. #endif
  997.  
  998. extern Bool _XimCbDispatch(
  999. #if NeedFunctionPrototypes
  1000.     Xim im, 
  1001.     INT16 len, 
  1002.     XPointer data, 
  1003.     XPointer call_data
  1004. #endif
  1005. );
  1006.  
  1007. extern Bool _XimLocalFilter(
  1008. #if NeedFunctionPrototypes
  1009.     Display        *d,
  1010.     Window         w,
  1011.     XEvent        *ev,
  1012.     XPointer         client_data
  1013. #endif
  1014. );
  1015.  
  1016. extern XIMResourceList _XimGetResourceListRecByQuark(
  1017. #if NeedFunctionPrototypes
  1018.     XIMResourceList     res_list,
  1019.     unsigned int     list_num,
  1020.     XrmQuark         quark
  1021. #endif
  1022. );
  1023.  
  1024. extern Bool _XimReconnectModeCreateIC(
  1025. #if NeedFunctionPrototypes
  1026.     Xic             ic
  1027. #endif
  1028. );
  1029.  
  1030. extern char *_XimLocalSetICValues(
  1031. #if NeedFunctionPrototypes
  1032.     XIC             ic,
  1033.     XIMArg        *values
  1034. #endif
  1035. );
  1036.  
  1037. extern char * _XimLocalGetICValues(
  1038. #if NeedFunctionPrototypes
  1039.     XIC             ic,
  1040.     XIMArg        *values
  1041. #endif
  1042. );
  1043.  
  1044. extern int _XimLocalMbLookupString(
  1045. #if NeedFunctionPrototypes
  1046.     XIC             ic,
  1047.     XKeyEvent        *ev,
  1048.     char        *buffer,
  1049.     int             bytes,
  1050.     KeySym        *keysym,
  1051.     Status        *status
  1052. #endif
  1053. );
  1054.  
  1055. extern int _XimLocalWcLookupString(
  1056. #if NeedFunctionPrototypes
  1057.     XIC             ic,
  1058.     XKeyEvent        *ev,
  1059.     wchar_t        *buffer,
  1060.     int             bytes,
  1061.     KeySym        *keysym,
  1062.     Status        *status
  1063. #endif
  1064. );
  1065.  
  1066. extern Bool _XimThaiFilter(
  1067. #if NeedFunctionPrototypes
  1068.     Display        *d,
  1069.     Window         w,
  1070.     XEvent        *ev,
  1071.     XPointer         client_data
  1072. #endif
  1073. );
  1074.  
  1075. extern XIC _XimThaiCreateIC(
  1076. #if NeedFunctionPrototypes
  1077.     XIM             im,
  1078.     XIMArg        *values
  1079. #endif
  1080. );
  1081.  
  1082. extern Status _XimThaiCloseIM(
  1083. #if NeedFunctionPrototypes
  1084.     XIM             xim
  1085. #endif
  1086. );
  1087.  
  1088. #ifdef XIM_CONNECTABLE
  1089. extern void _XimSetProtoResource(
  1090. #if NeedFunctionPrototypes
  1091.     Xim im
  1092. #endif
  1093. );
  1094.  
  1095. extern Bool _XimConnectServer(
  1096. #if NeedFunctionPrototypes
  1097.     Xim im
  1098. #endif
  1099. );
  1100.  
  1101. extern Bool _XimDelayModeSetAttr(
  1102. #if NeedFunctionPrototypes
  1103.     Xim             im
  1104. #endif
  1105. );
  1106.  
  1107. extern void    _XimServerReconectableDestroy(
  1108. #if NeedFunctionPrototypes
  1109.     void
  1110. #endif
  1111. );
  1112.  
  1113. extern Bool _XimReCreateIC(
  1114. #if NeedFunctionPrototypes
  1115.     Xic            ic
  1116. #endif
  1117. );
  1118.  
  1119. extern Bool _XimEncodeSavedIMATTRIBUTE(
  1120. #if NeedFunctionPrototypes
  1121.     Xim             im,
  1122.     XIMResourceList     res_list,
  1123.     unsigned int     res_num,
  1124.     int            *idx,
  1125.     char        *buf,
  1126.     int             size,
  1127.     int            *ret_len,
  1128.     XPointer         top,
  1129.     unsigned long     mode
  1130. #endif
  1131. );
  1132.  
  1133. extern Bool _XimEncodeSavedICATTRIBUTE(
  1134. #if NeedFunctionPrototypes
  1135.     Xic             ic,
  1136.     XIMResourceList     res_list,
  1137.     unsigned int     res_num,
  1138.     int            *idx,
  1139.     char        *buf,
  1140.     int             size,
  1141.     int            *ret_len,
  1142.     XPointer         top,
  1143.     unsigned long     mode
  1144. #endif
  1145. );
  1146. #endif
  1147.  
  1148. #endif /* _XIMINT_H */
  1149.