亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? i18nutil.c

?? 手寫識(shí)別Chinput源碼
?? C
字號(hào):
/******************************************************************          Copyright 1994, 1995 by Sun Microsystems, Inc.         Copyright 1993, 1994 by Hewlett-Packard Company Permission to use, copy, modify, distribute, and sell this softwareand its documentation for any purpose is hereby granted without fee,provided that the above copyright notice appear in all copies andthat both that copyright notice and this permission notice appearin supporting documentation, and that the name of Sun Microsystems, Inc.and Hewlett-Packard not be used in advertising or publicity pertaining todistribution of the software without specific, written prior permission.Sun Microsystems, Inc. and Hewlett-Packard make no representations aboutthe suitability of this software for any purpose.  It is provided "as is"without express or implied warranty. SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALLWARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIEDWARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALLSUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANYSPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVERRESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OFCONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF ORIN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.   Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.    This version tidied and debugged by Steve Underwood May 1999 ******************************************************************/#include <X11/Xlib.h>#include "IMdkit.h"#include "Xi18n.h"#include "FrameMgr.h"Xi18nClient *_Xi18nFindClient (Xi18n, CARD16);_Xi18nNeedSwap (Xi18n i18n_core, CARD16 connect_id){    CARD8 im_byteOrder = i18n_core->address.im_byteOrder;    Xi18nClient *client = _Xi18nFindClient (i18n_core, connect_id);    return (client->byte_order != im_byteOrder);}Xi18nClient *_Xi18nNewClient(Xi18n i18n_core){    static CARD16 connect_id = 0;    Xi18nClient *client;    if (i18n_core->address.free_clients)    {        client = i18n_core->address.free_clients;        i18n_core->address.free_clients = client->next;    }    else    {        client = (Xi18nClient *) malloc (sizeof (Xi18nClient));    }    /*endif*/    memset (client, 0, sizeof (Xi18nClient));    client->connect_id = ++connect_id;    client->pending = (XIMPending *) NULL;    client->sync = False;    client->byte_order = '?'; 	/* initial value */    memset (&client->pending, 0, sizeof (XIMPending *));    client->next = i18n_core->address.clients;    i18n_core->address.clients = client;    return (Xi18nClient *) client;}Xi18nClient *_Xi18nFindClient (Xi18n i18n_core, CARD16 connect_id){    Xi18nClient *client = i18n_core->address.clients;    while (client)    {        if (client->connect_id == connect_id)            return client;        /*endif*/        client = client->next;    }    /*endwhile*/    return NULL;}void _Xi18nDeleteClient (Xi18n i18n_core, CARD16 connect_id){    Xi18nClient *target = _Xi18nFindClient (i18n_core, connect_id);    Xi18nClient *ccp;    Xi18nClient *ccp0;    for (ccp = i18n_core->address.clients, ccp0 = NULL;         ccp != NULL;         ccp0 = ccp, ccp = ccp->next)    {        if (ccp == target)        {            if (ccp0 == NULL)                i18n_core->address.clients = ccp->next;            else                ccp0->next = ccp->next;            /*endif*/            /* put it back to free list */            target->next = i18n_core->address.free_clients;            i18n_core->address.free_clients = target;            return;        }        /*endif*/    }    /*endfor*/}void _Xi18nSendMessage (XIMS ims,                        CARD16 connect_id,                        CARD8 major_opcode,                        CARD8 minor_opcode,                        unsigned char *data,                        long length){    Xi18n i18n_core = ims->protocol;    FrameMgr fm;    extern XimFrameRec packet_header_fr[];    unsigned char *reply_hdr = NULL;    int header_size;    unsigned char *reply = NULL;    unsigned char *replyp;    int reply_length;    long p_len = length/4;    fm = FrameMgrInit (packet_header_fr,                       NULL,                       _Xi18nNeedSwap (i18n_core, connect_id));    header_size = FrameMgrGetTotalSize (fm);    reply_hdr = (unsigned char *) malloc (header_size);    if (reply_hdr == NULL)    {        _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);        return;    }    /*endif*/    FrameMgrSetBuffer (fm, reply_hdr);    /* put data */    FrameMgrPutToken (fm, major_opcode);    FrameMgrPutToken (fm, minor_opcode);    FrameMgrPutToken (fm, p_len);    reply_length = header_size + length;    reply = (unsigned char *) malloc (reply_length);    replyp = reply;    memmove (reply, reply_hdr, header_size);    replyp += header_size;    memmove (replyp, data, length);    i18n_core->methods.send (ims, connect_id, reply, reply_length);    XFree (reply);    XFree (reply_hdr);    FrameMgrFree (fm);}void _Xi18nSendTriggerKey (XIMS ims, CARD16 connect_id){    Xi18n i18n_core = ims->protocol;    FrameMgr fm;    extern XimFrameRec register_triggerkeys_fr[];    XIMTriggerKey *on_keys = i18n_core->address.on_keys.keylist;    XIMTriggerKey *off_keys = i18n_core->address.off_keys.keylist;    int on_key_num = i18n_core->address.on_keys.count_keys;    int off_key_num = i18n_core->address.off_keys.count_keys;    unsigned char *reply = NULL;    register int i, total_size;    CARD16 im_id;    if (on_key_num == 0  &&  off_key_num == 0)        return;    /*endif*/        fm = FrameMgrInit (register_triggerkeys_fr,                       NULL,                       _Xi18nNeedSwap (i18n_core, connect_id));    /* set iteration count for on-keys list */    FrameMgrSetIterCount (fm, on_key_num);    /* set iteration count for off-keys list */    FrameMgrSetIterCount (fm, off_key_num);    /* get total_size */    total_size = FrameMgrGetTotalSize (fm);    reply = (unsigned char *) malloc (total_size);    if (!reply)        return;    /*endif*/    memset (reply, 0, total_size);    FrameMgrSetBuffer (fm, reply);    /* Right now XIM_OPEN_REPLY hasn't been sent to this new client, so       the input-method-id is still invalid, and should be set to zero...       Reter to $(XC)/lib/X11/imDefLkup.c:_XimRegisterTriggerKeysCallback     */    im_id = 0;    FrameMgrPutToken (fm, im_id);  /* input-method-id */    for (i = 0;  i < on_key_num;  i++)    {        FrameMgrPutToken (fm, on_keys[i].keysym);        FrameMgrPutToken (fm, on_keys[i].modifier);        FrameMgrPutToken (fm, on_keys[i].modifier_mask);    }    /*endfor*/    for (i = 0;  i < off_key_num;  i++)    {        FrameMgrPutToken (fm, off_keys[i].keysym);        FrameMgrPutToken (fm, off_keys[i].modifier);        FrameMgrPutToken (fm, off_keys[i].modifier_mask);    }    /*endfor*/    _Xi18nSendMessage (ims,                       connect_id,                       XIM_REGISTER_TRIGGERKEYS,                       0,                       reply,                       total_size);    FrameMgrFree (fm);}void _Xi18nSetEventMask (XIMS ims,                         CARD16 connect_id,                         CARD16 im_id,                         CARD16 ic_id,                         CARD32 forward_mask,                         CARD32 sync_mask){    Xi18n i18n_core = ims->protocol;    FrameMgr fm;    extern XimFrameRec set_event_mask_fr[];    unsigned char *reply = NULL;    register int total_size;    fm = FrameMgrInit (set_event_mask_fr,                       NULL,                       _Xi18nNeedSwap (i18n_core, connect_id));    total_size = FrameMgrGetTotalSize (fm);    reply = (unsigned char *) malloc (total_size);    if (!reply)        return;    /*endif*/    memset (reply, 0, total_size);    FrameMgrSetBuffer (fm, reply);    FrameMgrPutToken (fm, im_id); 	/* input-method-id */    FrameMgrPutToken (fm, ic_id); 	/* input-context-id */    FrameMgrPutToken (fm, forward_mask);    FrameMgrPutToken (fm, sync_mask);    _Xi18nSendMessage (ims,                       connect_id,                       XIM_SET_EVENT_MASK,                       0,                       reply,                       total_size);    FrameMgrFree (fm);}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美撒尿777hd撒尿| 国产一区二区三区不卡在线观看| av不卡在线播放| 国产精品久线观看视频| 97国产精品videossex| 最新不卡av在线| 欧美性高清videossexo| 青草国产精品久久久久久| 欧美va亚洲va在线观看蝴蝶网| 国产美女av一区二区三区| 中文字幕 久热精品 视频在线 | 国产精品久久久久久久裸模| 白白色亚洲国产精品| 亚洲香肠在线观看| 欧美白人最猛性xxxxx69交| 高清不卡在线观看| 依依成人精品视频| 欧美大片拔萝卜| 成人高清免费在线播放| 亚洲第一成人在线| 欧美精品一区二区三区高清aⅴ | 国产亚洲成aⅴ人片在线观看| 成人在线综合网| 亚洲成人在线免费| 久久精品欧美日韩| 欧美午夜精品电影| 国产精品一二三在| 亚洲美女偷拍久久| 精品粉嫩超白一线天av| 91免费看`日韩一区二区| 蜜桃视频第一区免费观看| 中文字幕亚洲区| 日韩一区二区在线免费观看| 成人久久18免费网站麻豆| 日韩和欧美一区二区三区| 国产精品萝li| 欧美成人video| 欧洲精品在线观看| 成人视屏免费看| 久久成人羞羞网站| 亚洲一区在线电影| 国产精品久久久久久久久久久免费看 | 久久精品亚洲乱码伦伦中文| 欧美日韩精品一区二区在线播放| 国产精品18久久久久久久久| 天天综合色天天| 亚洲另类在线一区| 中文字幕乱码一区二区免费| 欧美不卡视频一区| 欧美高清视频一二三区| 91色综合久久久久婷婷| 国产成人综合在线观看| 久久福利视频一区二区| 五月婷婷激情综合网| 亚洲欧美国产高清| 国产精品少妇自拍| 久久婷婷国产综合国色天香| 日韩一区二区免费视频| 欧美在线一区二区三区| 91欧美一区二区| av激情成人网| 成年人午夜久久久| 成人性视频网站| 国产成人免费视频| 国产美女精品人人做人人爽| 狠狠色狠狠色综合系列| 老司机免费视频一区二区三区| 污片在线观看一区二区| 亚洲成a人在线观看| 亚洲亚洲人成综合网络| 亚洲综合在线免费观看| 亚洲在线中文字幕| 亚洲一区二区偷拍精品| 亚洲电影你懂得| 五月激情丁香一区二区三区| 亚洲一区免费视频| 亚洲高清视频在线| 无码av中文一区二区三区桃花岛| 婷婷综合五月天| 天堂成人国产精品一区| 免费视频一区二区| 久草精品在线观看| 国模冰冰炮一区二区| 国产乱码精品一品二品| 成人av网址在线观看| 色综合久久久久综合| 精品视频色一区| 欧美成人精品1314www| 久久综合色婷婷| 欧美男人的天堂一二区| 亚洲午夜成aⅴ人片| 亚洲国产精品成人综合 | 亚洲女女做受ⅹxx高潮| 国产精品成人一区二区艾草 | 精品免费国产二区三区 | 欧美在线视频全部完| 欧美久久久久中文字幕| 国产精品乱人伦中文| 九色porny丨国产精品| 欧美影院精品一区| 国产精品久久久久久福利一牛影视| 日韩电影在线一区二区| 91论坛在线播放| 日本一区二区电影| 美女一区二区三区| 欧美日韩在线播| 亚洲男人天堂av网| 国产91精品一区二区| 欧美成人精品1314www| 午夜精品影院在线观看| 91欧美激情一区二区三区成人| 久久影院午夜片一区| 美女mm1313爽爽久久久蜜臀| 欧美乱妇20p| 亚洲一线二线三线视频| 91丨九色丨黑人外教| 国产精品狼人久久影院观看方式| 精品一区二区久久| 日韩免费观看高清完整版 | 精品国产乱码久久久久久夜甘婷婷| 亚洲一区二区av电影| 一本色道久久综合亚洲aⅴ蜜桃| 国产精品免费视频网站| 国产福利91精品一区二区三区| 日韩精品中文字幕在线一区| 婷婷久久综合九色综合绿巨人| 在线观看欧美精品| 一区二区三区日本| 91麻豆自制传媒国产之光| √…a在线天堂一区| 99精品一区二区三区| 亚洲视频一区在线| 99在线热播精品免费| 国产精品乱人伦中文| 91视频91自| 一区二区不卡在线播放| 欧美系列在线观看| 午夜精品久久久久| 91精品在线一区二区| 午夜av一区二区三区| 91精品国产综合久久蜜臀| 丝袜a∨在线一区二区三区不卡| 欧美日韩一区二区电影| 青青草97国产精品免费观看无弹窗版 | 精品一区二区三区av| 久久婷婷久久一区二区三区| 东方欧美亚洲色图在线| 国产精品女同一区二区三区| av不卡一区二区三区| 亚洲自拍偷拍欧美| 制服视频三区第一页精品| 久久成人免费网| 亚洲国产精品黑人久久久| 91精品国产麻豆| 国产一区二区三区精品欧美日韩一区二区三区| 欧美精品一区二区精品网| 国产一区999| 亚洲久草在线视频| 欧美人成免费网站| 美国三级日本三级久久99| 久久久99久久精品欧美| 99久久婷婷国产综合精品| 亚洲va国产va欧美va观看| 日韩欧美国产1| 99久久精品一区二区| 日韩国产一区二| 欧美国产成人在线| 欧美日韩国产一级| 国产主播一区二区| 亚洲免费观看高清在线观看| 欧美浪妇xxxx高跟鞋交| 国产裸体歌舞团一区二区| 亚洲美女屁股眼交3| 日韩三级伦理片妻子的秘密按摩| 国产精品123区| 亚洲一区二区av在线| 久久久亚洲精华液精华液精华液| 一本色道久久综合亚洲91| 久久99在线观看| 亚洲欧美日韩一区| 精品国产不卡一区二区三区| 一本到不卡免费一区二区| 精品伊人久久久久7777人| 成人欧美一区二区三区小说| 日韩精品一区二区三区四区视频 | 国产一区999| 香蕉成人啪国产精品视频综合网 | 视频在线在亚洲| 一区视频在线播放| 26uuu精品一区二区三区四区在线| 91色婷婷久久久久合中文| 经典一区二区三区| 亚洲午夜三级在线| 欧美国产日本视频| 69堂国产成人免费视频| 一本色道a无线码一区v| 国产精品亚洲视频| 美女视频一区二区| 性做久久久久久免费观看 | 久久精品国产秦先生|