11ab64890Smrg/****************************************************************** 21ab64890Smrg 31ab64890Smrg Copyright 1991, 1992, 1993, 1994 by FUJITSU LIMITED 41ab64890Smrg Copyright 1993 by Digital Equipment Corporation 51ab64890Smrg 61ab64890SmrgPermission to use, copy, modify, distribute, and sell this software 71ab64890Smrgand its documentation for any purpose is hereby granted without fee, 81ab64890Smrgprovided that the above copyright notice appear in all copies and that 91ab64890Smrgboth that copyright notice and this permission notice appear in 101ab64890Smrgsupporting documentation, and that the name of FUJITSU LIMITED and 111ab64890SmrgDigital Equipment Corporation not be used in advertising or publicity 121ab64890Smrgpertaining to distribution of the software without specific, written 131ab64890Smrgprior permission. FUJITSU LIMITED and Digital Equipment Corporation 141ab64890Smrgmakes no representations about the suitability of this software for 151ab64890Smrgany purpose. It is provided "as is" without express or implied 161ab64890Smrgwarranty. 171ab64890Smrg 1861b2299dSmrgFUJITSU LIMITED AND DIGITAL EQUIPMENT CORPORATION DISCLAIM ALL 1961b2299dSmrgWARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED 2061b2299dSmrgWARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL 2161b2299dSmrgFUJITSU LIMITED AND DIGITAL EQUIPMENT CORPORATION BE LIABLE FOR 2261b2299dSmrgANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 2361b2299dSmrgWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER 2461b2299dSmrgIN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, 2561b2299dSmrgARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF 261ab64890SmrgTHIS SOFTWARE. 271ab64890Smrg 2861b2299dSmrg Author: Takashi Fujiwara FUJITSU LIMITED 291ab64890Smrg fujiwara@a80.tech.yk.fujitsu.co.jp 301ab64890Smrg Modifier: Franky Ling Digital Equipment Corporation 311ab64890Smrg frankyling@hgrd01.enet.dec.com 321ab64890Smrg 331ab64890Smrg******************************************************************/ 341ab64890Smrg 351ab64890Smrg#ifndef _XIMINTL_H 361ab64890Smrg#define _XIMINTL_H 371ab64890Smrg 381ab64890Smrg#define COMPOSE_FILE "Compose" 391ab64890Smrg 401ab64890Smrg/* 411ab64890Smrg * Data Structures for Local Processing 421ab64890Smrg */ 431ab64890Smrgtypedef INT32 DTIndex; 441ab64890Smrgtypedef INT32 DTCharIndex; 451ab64890Smrgtypedef BITS32 DTModifier; 461ab64890Smrg 471ab64890Smrgtypedef struct _DefTree { 481ab64890Smrg DTIndex next; 491ab64890Smrg DTIndex succession; /* successive Key Sequence */ 501ab64890Smrg /* Key definitions */ 511ab64890Smrg DTModifier modifier_mask; 521ab64890Smrg DTModifier modifier; 531ab64890Smrg KeySym keysym; /* leaf only */ 541ab64890Smrg DTCharIndex mb; 551ab64890Smrg DTCharIndex wc; /* make from mb */ 561ab64890Smrg DTCharIndex utf8; /* make from mb */ 571ab64890Smrg KeySym ks; 581ab64890Smrg} DefTree; 591ab64890Smrg 601ab64890Smrgtypedef struct _DefTreeBase { 611ab64890Smrg DefTree *tree; 621ab64890Smrg char *mb; 631ab64890Smrg wchar_t *wc; 641ab64890Smrg char *utf8; 651ab64890Smrg DTIndex treeused, treesize; 661ab64890Smrg DTCharIndex mbused, mbsize; 671ab64890Smrg DTCharIndex wcused, wcsize; 681ab64890Smrg DTCharIndex utf8used, utf8size; 691ab64890Smrg} DefTreeBase; 701ab64890Smrg 711ab64890Smrgtypedef struct _XimLocalPrivateRec { 721ab64890Smrg /* The first fields are identical with XimCommonPrivateRec. */ 731ab64890Smrg XlcConv ctom_conv; 741ab64890Smrg XlcConv ctow_conv; 751ab64890Smrg XlcConv ctoutf8_conv; 761ab64890Smrg XlcConv cstomb_conv; 771ab64890Smrg XlcConv cstowc_conv; 781ab64890Smrg XlcConv cstoutf8_conv; 791ab64890Smrg XlcConv ucstoc_conv; 801ab64890Smrg XlcConv ucstoutf8_conv; 811ab64890Smrg 821ab64890Smrg XIC current_ic; 831ab64890Smrg DefTreeBase base; 841ab64890Smrg DTIndex top; 851ab64890Smrg} XimLocalPrivateRec; 861ab64890Smrg 871ab64890Smrgtypedef struct _XicThaiPart { 881ab64890Smrg int comp_state; 891ab64890Smrg KeySym keysym; 901ab64890Smrg int input_mode; 911ab64890Smrg} XicThaiPart; 921ab64890Smrg 931ab64890Smrgtypedef struct _XicLocalPrivateRec { 941ab64890Smrg long value_mask; 951ab64890Smrg DefTreeBase base; 961ab64890Smrg DTIndex context; 971ab64890Smrg DTIndex composed; 981ab64890Smrg XicThaiPart thai; 991ab64890Smrg 1001ab64890Smrg XIMResourceList ic_resources; 1011ab64890Smrg unsigned int ic_num_resources; 1021ab64890Smrg 1031ab64890Smrg unsigned char brl_pressed, brl_committing, brl_committed; 1041ab64890Smrg Time brl_release_start; 1051ab64890Smrg} XicLocalPrivateRec; 1061ab64890Smrg#endif /* _XIMINTL_H */ 107