📄 xi18nint.h
字号:
/* * $XConsortium: Xi18nint.h,v 1.22 92/10/22 14:26:26 rws Exp $ *//* * Copyright 1990, 1991 by OMRON Corporation * Copyright 1991 by the Massachusetts Institute of Technology * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that * the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation, and that the names of OMRON and MIT not be used in * advertising or publicity pertaining to distribution of the software without * specific, written prior permission. OMRON and MIT make no representations * about the suitability of this software for any purpose. It is provided * "as is" without express or implied warranty. * * OMRON AND MIT DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO * EVENT SHALL OMRON OR MIT BE LIABLE FOR ANY SPECIAL, INDIRECT OR * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER * TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * PERFORMANCE OF THIS SOFTWARE. * * Author: Seiji Kuwari OMRON Corporation * kuwa@omron.co.jp * kuwa%omron.co.jp@uunet.uu.net */ #ifndef _XI18NINT_H_#define _XI18NINT_H_#include "Xlocaleint.h"/* we should create a data part, but it would affect too much existing code */typedef struct { XFontSetMethods methods; /* methods of this font set */ XFontSetCoreRec core; /* core data of this font set */ Display *display; /* display */ XLocale xlc; int *ctid; XCharStruct min_bounds; /* min bounds of all fonts */ XCharStruct max_bounds; /* max bounds of all fonts */ int ascent; /* font set ascent */ int descent; /* font set descent */} XsiFontSetRec, *XsiFontSet;#ifdef XML#define XNQueryLanguage "queryLanguage"#define XNUsingLanguage "usingLanguage"#define XNCurrentLanguage "currentLanguage"#define XNChangeLocaleCB "changeLocaleCB"#endiftypedef struct _ICValues { char *res_name; char *res_class;#ifdef XML char *using_language; char *current_language; int (*ch_locale_cb)();#endif} ICValues;typedef struct _XIMQueue { short type; /* 0: XEvent, 1: String */ short string_is_mb; /* 0: CT, 1: MB */ int length; /* length of String or XEvent */ KeySym keysym; /* keysym */ unsigned int state; /* state */ int buf_max; /* max of buffer */ char *ptr; /* a pointer of String or XEvent */ struct _XIMQueue *next;} XIMQueue;#ifndef NO_LOCAL_IM#define BITSIZ (sizeof(int) * 8)#define CHANGE_MAX 256/BITSIZtypedef struct { KeySym keysym; unsigned int state; unsigned char *str;} XipLocalKeySymTbl;typedef struct _XipLocalNestedKeySym { KeySym keysym; struct _XipLocalNestedKeySym *next;} XipLocalNestedKeySym;typedef struct { XipLocalKeySymTbl *fromkey; Bool com; union { XipLocalKeySymTbl *tokey; int (*func)(); } to;} XipLocalCvtTbl;typedef struct { int cnt; XipLocalKeySymTbl *buf; int buf_cnt; int nmax; int check_flg[CHANGE_MAX]; Bool off; KeySym bs; XipLocalCvtTbl *tbl, off_tbl; XipLocalNestedKeySym *no_filter;} XipLocalCvt;#endif /* !NO_LOCAL_IM *//* we should create a data part, but it would affect too much existing code */typedef struct { XICMethods methods; /* method list of this IC */ XICCoreRec core; /* core data of this IC */ struct _XIMQueue *in, *out, *prev, overflow; Bool (*prototype_filter)(); XLocale mb; XLocale wc; XID icid; ICValues values; char *ct_buf; wchar_t *wc_buf; int max_of_ct; int max_of_wc;#ifdef XML XLocale *mb_temp; XLocale *wc_temp; int xlc_num;#endif} XipICRec, *XipIC;#ifndef NO_LOCAL_IMtypedef struct { XICMethods methods; /* method list of this IC */ XICCoreRec core; /* core data of this IC */ struct _XIMQueue *in, *out, *prev, overflow; Bool (*prototype_filter)(); XLocale mb; XLocale wc; XipLocalCvt *xcvt; ICValues values;#ifdef XML XLocale *mb_temp; XLocale *wc_temp; XipLocalCvt **xcvt_temp; int xlc_num;#endif} XipLocalICRec, *XipLocalIC;#endif /* !NO_LOCAL_IM */#ifdef XML#define ICUsingLanguage 28#define ICCurrentLanguage 29#define ICChangeLocaleCB 30#define ICAllMask 0x73ffffff#else /* XML */#define ICAllMask 0x03ffffff#endif /* XML */#define StatusOffset 11/********************************************************************* * * IM XIM structure; * *********************************************************************/typedef struct _IMValues { XIMStyles input_styles; char *supported_language;} IMValues;#define SEND_BUF_SZ 128#define RECV_BUF_SZ 128/* we should create a data part, but it would affect too much existing code */typedef struct { XIMMethods methods; /* method list of this IM */ XIMCoreRec core; /* core data of this IM */ XLocale xlc; int fd; /* file discripter of socket */ XipIC default_ic; /* default input context */ char *client_data; unsigned long default_mask; XIMrmResourceList resources; int num_resources; long major_version; /* major version of protocol */ long minor_version; /* minor version of protocol */ IMValues values; char send_buf[SEND_BUF_SZ]; char recv_buf[RECV_BUF_SZ]; int sp; int rp; int rc;} XipIMRec, *XipIM;#ifndef NO_LOCAL_IMtypedef struct { XIMMethods methods; /* method list of this IM */ XIMCoreRec core; /* core data of this IM */ XLocale xlc; XipLocalCvt *xcvt; XIMrmResourceList resources; int num_resources; IMValues values;} XipLocalIMRec, *XipLocalIM;#endif /* !NO_LOCAL_IM */#ifdef XML#define IMQueryLanguage 1#endif_XFUNCPROTOBEGINextern XFontSet _XsiCreateFontSet(#if NeedFunctionPrototypes XLCd, Display*, char*, char**, int, char***, int*#endif);extern XIM _XipOpenIM(#if NeedFunctionPrototypes XLCd, Display*, XrmDatabase, char*, char*#endif);extern XFontStruct *_XsiQueryFontSetFromId(#if NeedFunctionPrototypes XFontSet, int#endif);#ifdef XMLextern void _XsiQueryFontSetWithName(#if NeedFunctionPrototypes XFontSet, char*#endif);#endifextern int _XsimbTextEscapement(#if NeedFunctionPrototypes XFontSet, char*, int#endif);extern int _Xsimb8TextEscapement(#if NeedFunctionPrototypes XFontSet, char*, int#endif);extern int _XsimbTextExtents(#if NeedFunctionPrototypes XFontSet, char*, int, XRectangle*, XRectangle*#endif);extern int _Xsimb8TextExtents(#if NeedFunctionPrototypes XFontSet, char*, int, XRectangle*, XRectangle*#endif);extern Status _XsimbTextPerCharExtents(#if NeedFunctionPrototypes XFontSet, char*, int, XRectangle*, XRectangle*, int, int*, XRectangle*, XRectangle*#endif);extern int _XsimbDrawString(#if NeedFunctionPrototypes Display*, Drawable, XFontSet, GC, int, int, char*, int#endif);extern int _Xsimb8DrawString(#if NeedFunctionPrototypes Display*, Drawable, XFontSet, GC, int, int, char*, int#endif);extern void _XsimbDrawImageString(#if NeedFunctionPrototypes Display*, Drawable, XFontSet, GC, int, int, char*, int#endif);extern void _Xsimb8DrawImageString(#if NeedFunctionPrototypes Display*, Drawable, XFontSet, GC, int, int, char*, int#endif);extern int _XsiwcTextEscapement(#if NeedFunctionPrototypes XFontSet, wchar_t*, int#endif);extern int _XsiwcTextExtents(#if NeedFunctionPrototypes XFontSet, wchar_t*, int, XRectangle*, XRectangle*#endif);extern Status _XsiwcTextPerCharExtents(#if NeedFunctionPrototypes XFontSet, wchar_t*, int, XRectangle*, XRectangle*, int, int*, XRectangle*, XRectangle*#endif);extern int _XsiwcDrawString(#if NeedFunctionPrototypes Display*, Drawable, XFontSet, GC, int, int, wchar_t*, int#endif);extern void _XsiwcDrawImageString(#if NeedFunctionPrototypes Display*, Drawable, XFontSet, GC, int, int, wchar_t*, int#endif);extern char *_XipGetIMValues(#if NeedFunctionPrototypes XIM, XIMArg*#endif);extern XIC _XipCreateIC(#if NeedFunctionPrototypes XIM, XIMArg*#endif);extern void _XipDestroyIC(#if NeedFunctionPrototypes XIC#endif);extern void _XipSetICFocus(#if NeedFunctionPrototypes XIC#endif);void _XipUnsetICFocus(#if NeedFunctionPrototypes XIC#endif);extern char* _XipSetICValues(#if NeedFunctionPrototypes XIC, XIMArg*#endif);extern char* _XipGetICValues(#if NeedFunctionPrototypes XIC, XIMArg*#endif);extern char* _XipmbResetIC(#if NeedFunctionPrototypes XIC#endif);extern wchar_t* _XipwcResetIC(#if NeedFunctionPrototypes XIC#endif);extern int _XipmbLookupString(#if NeedFunctionPrototypes XIC, XKeyEvent*, char*, int, KeySym*, Status*#endif);extern int _XipwcLookupString(#if NeedFunctionPrototypes XIC, XKeyEvent*, wchar_t*, int, KeySym*, Status*#endif);extern unsigned long _XipReadRdb(#if NeedFunctionPrototypes Display*, XipIC, unsigned long, XrmDatabase, char*, char*#endif);#ifndef NO_LOCAL_IMextern XIM _XipLocalOpenIM(#if NeedFunctionPrototypes XLCd, Display*, XrmDatabase, char*, char*#endif);extern char *_XipLocalGetIMValues(#if NeedFunctionPrototypes XIM, XIMArg*#endif);extern XIC _XipLocalCreateIC(#if NeedFunctionPrototypes XIM, XIMArg*#endif);extern void _XipLocalDestroyIC(#if NeedFunctionPrototypes XIC#endif);extern void _XipLocalSetICFocus(#if NeedFunctionPrototypes XIC#endif);void _XipLocalUnsetICFocus(#if NeedFunctionPrototypes XIC#endif);extern char* _XipLocalSetICValues(#if NeedFunctionPrototypes XIC, XIMArg*#endif);extern char* _XipLocalGetICValues(#if NeedFunctionPrototypes XIC, XIMArg*#endif);extern char* _XipLocalmbResetIC(#if NeedFunctionPrototypes XIC#endif);extern wchar_t* _XipLocalwcResetIC(#if NeedFunctionPrototypes XIC#endif);#endif /* !NO_LOCAL_IM */_XFUNCPROTOEND#endif /* _XI18NINT_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -