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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? request.c

?? 樹大根深三棱盡所標桿ssfsfsa fdsafs
?? C
字號:
/*****************************************************************************    Copyright (C) 1994,1997 Ivan A. Curtis.  All rights reserved.This code must not be re-distributed without these copyright notices intact.**************************************************************************************************************************************************************Filename:	~icurtis/src/mx/request.cDescription:	Update History:   (most recent first)   I. Curtis   9-Apr-97 12:02 -- Updated   I. Curtis  22-Mar-94 23:11 -- Created.******************************************************************************/#include "basic.h"#include "X11/keysym.h"#include "alert.h"#include "request.h"/****************************************** * Handle an event for a requester window * ******************************************/int mx_request_event(Display *display, int screen, XEvent *event,		     mx_request *req, int *done){  XCharStruct xcs;  KeySym key;  int i, j, dir, asc, desc;  char keys[10];  switch(event->type) {  case Expose:    if (event->xexpose.window != req->window)      return False;				/* draw the text string */    XDrawString(display, req->window, req->app->gcd,		req->app->item_border, req->app->item_border + req->app->ascent,		req->text, req->length);				/* determine cursor y posn and height */    req->cur_y = req->app->item_border;    req->cur_h = req->app->ascent + req->app->descent;				/* cursor x position */    if (req->cp == 0)      req->cur_x = req->app->item_border;    else {      XTextExtents(req->app->font, req->text, req->cp,		   &dir, &asc, &desc, &xcs);      req->cur_x = req->app->item_border + xcs.width;    }				/* cursor width */    if (req->cp == req->length)      XTextExtents(req->app->font, " ", 1, &dir, &asc, &desc, &xcs);    else      XTextExtents(req->app->font, req->text + req->cp, 1,		   &dir, &asc, &desc, &xcs);    req->cur_w = xcs.width;    if (req->inside)		/* display cursor */      XFillRectangle(display, req->window, req->app->gcf,		     req->cur_x, req->cur_y,		     req->cur_w, req->cur_h);    return True;    break;  case KeyPress:    if (event->xkey.window != req->window)      return False;    j = XLookupString((XKeyPressedEvent*)event, keys, 10, &key, 0);    if (j == 1 && keys[0] >= ' ' && keys[0] <= '~') {      if (req->length < req->max_len - 1) { /* insert character */	for (i = req->length + 1; i > req->cp; i--)	  req->text[i] = req->text[i - 1];	req->length ++;	req->text[req->cp] = keys[0];	req->cp ++;	XClearArea(display, req->window, 0, 0, 0, 0, True);      }      return True;    }    if (key == XK_End || (j == 1 && keys[0] == 5)) { /* Ctrl-E */      req->cp = req->length;      XClearArea(display, req->window, 0, 0, 0, 0, True);    }    else if (key == XK_Begin || key == XK_Home ||	     (j == 1 && keys[0] == 1)) { /* Ctrl-A */      req->cp = 0;      XClearArea(display, req->window, 0, 0, 0, 0, 1);    }    else if (key == XK_Right && req->cp < req->length)  {      req->cp ++;      XClearArea(display, req->window, 0, 0, 0, 0, 1);    }    else if (key == XK_Left && req->cp > 0)  {      req->cp --;      XClearArea(display, req->window, 0, 0, 0, 0, 1);    }    else if ((key == XK_BackSpace || (j == 1 && keys[0] == 4))	     && req->cp < req->length) { /* Ctrl-D */      for (i = req->cp; i < req->length - 1; i++)	req->text[i] = req->text[i + 1];      req->length --;      XClearArea(display, req->window, 0, 0, 0, 0, 1);    }    else if (key == XK_Delete && req->cp > 0) {      for (i = req->cp - 1; i < req->length - 1; i++)	req->text[i] = req->text[i + 1];      req->length --;      req->cp --;      XClearArea(display, req->window, 0, 0, 0, 0, 1);    }    else if (j == 1 && keys[0] == 11 && req->cp < req->length) { /* Ctrl-K */      req->length = req->cp;      XClearArea(display, req->window, 0, 0, 0, 0, 1);    }    else if (key == XK_Return || key == 1) {      req->text[req->length] = '\0';      *done = 1;    }    return True;    break;  case LeaveNotify:    if (event->xcrossing.window != req->window)      return False;    XFillRectangle(display, req->window, req->app->gcf, req->cur_x, req->cur_y,		   req->cur_w, req->cur_h);    req->inside = 0;    return True;    break;  case EnterNotify:    if (event->xcrossing.window != req->window)      return False;    if (!req->inside)      XFillRectangle(display, req->window, req->app->gcf,		     req->cur_x, req->cur_y,		     req->cur_w, req->cur_h);    req->inside = 1;    return True;    break;  }  return False;}/***************************************** * Pop up a requester on the root window * * at position x y                       * *****************************************/int mx_popup_request(Display *display, int screen, mx_panel *panel,		     int *x, int *y, char *text, int max_len){  mx_alert title;  mx_request req;  XEvent event;  int done;  if (!panel)    return -1;				/* determine dimensions of requester window */  req.app = panel->app;  req.text = text;  req.length = strlen(req.text);  req.max_len = max_len;  if (req.app->em * max_len > panel->width)    req.width = req.app->em * max_len +      2 * req.app->item_border;  else    req.width = panel->width + 2 * req.app->item_border;  req.height = req.app->ascent + req.app->descent + 2 * req.app->item_border;				/* determine dimensions of title window */  title.app = req.app;  title.width = req.width;  title.height = req.height;  title.start_item = 0;  title.max_items = 1;  title.item = panel->item + panel->first_item;				/* make sure the wondows are on screen */  mx_adjust_xy(display, title.width + 2 * panel->app->win_border,	       req.height * 2 + 3 * panel->app->win_border,	       x, y);				/* open title window and set event masks */  title.window =     mx_transient_window_open(display, screen, title.app->win_border, *x, *y,			     title.width, title.height);  XSelectInput(display, title.window, ExposureMask | OwnerGrabButtonMask |	       ButtonPressMask | ButtonReleaseMask |	       EnterWindowMask | LeaveWindowMask);  title.inside = -1;  title.momentary = 0;				/* open requester window and set event masks */  req.window =    mx_transient_window_open(display, screen, req.app->win_border,			     *x, *y + title.height + req.app->win_border,			     req.width, req.height);  XSelectInput(display, req.window, ExposureMask | OwnerGrabButtonMask |	       ButtonPressMask | ButtonReleaseMask |	       EnterWindowMask | LeaveWindowMask |	       KeyPressMask);  done = 0;  req.inside = 0;  req.cp = 0;  while (!done) {    XNextEvent(display, &event);    if (mx_request_event(display, screen, &event, &req, &done))      continue;    if (mx_alert_event(display, screen, &event, &title, &done, x, y))      continue;    if (event.type == Expose && req.app->expose_fun) {      if ((*(req.app->expose_fun))(&event))	continue;    }  }  mx_window_close(display, title.window);  mx_window_close(display, req.window);  return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
大桥未久av一区二区三区中文| 在线成人高清不卡| 国产成人精品免费一区二区| 精品一区二区三区日韩| 美脚の诱脚舐め脚责91| 久久国产精品72免费观看| 久久66热re国产| 国产福利一区在线观看| 国产不卡视频在线观看| 豆国产96在线|亚洲| av成人免费在线| 色偷偷成人一区二区三区91| 欧美性xxxxxx少妇| 欧美精品免费视频| 欧美一级欧美一级在线播放| 777a∨成人精品桃花网| 欧美大片国产精品| 久久蜜臀中文字幕| 中文成人av在线| 一区二区三区日韩欧美| 亚洲成人激情社区| 久久99精品国产.久久久久久| 九九九久久久精品| 成人永久看片免费视频天堂| 99视频国产精品| 欧美色欧美亚洲另类二区| 欧美精品免费视频| 久久精品视频在线看| 中文字幕一区在线观看视频| 一区二区三区在线影院| 日本亚洲三级在线| 国产成人日日夜夜| 在线日韩一区二区| 日韩欧美国产麻豆| 国产精品丝袜黑色高跟| 亚洲第一电影网| 激情小说欧美图片| 一本高清dvd不卡在线观看| 欧美精品久久天天躁| 久久蜜桃av一区精品变态类天堂| 国产精品久久久久久久久久免费看 | 麻豆国产一区二区| 国产suv一区二区三区88区| 91电影在线观看| 欧美精品一区二区三| 中文字幕一区在线观看视频| 一区二区在线观看视频在线观看| 免费精品99久久国产综合精品| 国产成人自拍网| 欧美日韩一区二区在线视频| 欧美大片国产精品| 亚洲一区在线免费观看| 国产麻豆精品一区二区| 在线观看av一区二区| 精品国产精品网麻豆系列| 亚洲素人一区二区| 毛片基地黄久久久久久天堂| 97久久超碰精品国产| 欧美不卡激情三级在线观看| 亚洲欧洲制服丝袜| 精彩视频一区二区三区| 91美女片黄在线观看91美女| 精品日产卡一卡二卡麻豆| 亚洲一二三级电影| k8久久久一区二区三区| 日韩午夜激情免费电影| 一色屋精品亚洲香蕉网站| 激情综合网天天干| 欧美日韩和欧美的一区二区| 国产精品天美传媒| 精品一区二区三区在线观看 | 亚洲视频 欧洲视频| 蜜桃视频一区二区三区| 在线视频中文字幕一区二区| 久久综合色之久久综合| 首页国产欧美久久| 色呦呦一区二区三区| 国产午夜精品一区二区三区四区| 天堂影院一区二区| 欧美午夜在线一二页| 国产精品久久久久桃色tv| 国产一区啦啦啦在线观看| 欧美军同video69gay| 亚洲精品视频在线| 成人精品国产免费网站| 久久久噜噜噜久久人人看| 日韩电影在线免费| 欧美久久久一区| 亚洲一区成人在线| 色视频成人在线观看免| 自拍偷拍欧美精品| 99久久精品免费观看| 国产精品美女久久久久av爽李琼| 国产伦精品一区二区三区免费 | 欧美三级乱人伦电影| 亚洲美女视频一区| 色香蕉久久蜜桃| 亚洲黄色小视频| 在线免费不卡视频| 一区二区三区四区激情| 欧美艳星brazzers| 午夜精品久久久久久久久久| 欧美色涩在线第一页| 亚洲va天堂va国产va久| 精品视频一区 二区 三区| 亚洲一区在线观看视频| 欧美日韩一区三区| 日韩中文字幕1| 日韩视频123| 久久精品国产免费| 久久人人爽人人爽| 成人av网站在线观看免费| 中文字幕日韩一区| 日本韩国一区二区三区视频| 亚洲最大成人网4388xx| 欧美日韩和欧美的一区二区| 日本成人中文字幕| 精品国产乱码久久久久久久| 国产剧情一区二区三区| 中文字幕一区二区三区不卡| 欧美中文字幕一区二区三区 | 日韩在线一二三区| 日韩美女一区二区三区四区| 国产在线视频精品一区| 欧美精彩视频一区二区三区| 91捆绑美女网站| 亚洲国产精品一区二区尤物区| 欧洲一区二区三区在线| 日本91福利区| 久久久国际精品| 色视频欧美一区二区三区| 日本特黄久久久高潮| 久久久久国产精品免费免费搜索| 成人av电影免费观看| 亚洲第一主播视频| 久久日韩粉嫩一区二区三区| 91论坛在线播放| 调教+趴+乳夹+国产+精品| 国产午夜精品久久久久久免费视| 99国产精品久久久久久久久久久| 亚洲已满18点击进入久久| 精品国产麻豆免费人成网站| 国产91精品一区二区麻豆网站 | 中文字幕五月欧美| 欧美卡1卡2卡| 成人黄色片在线观看| 午夜久久久久久电影| 久久久久国产精品麻豆| 欧美在线观看视频一区二区| 精品一区二区三区久久久| 亚洲天堂中文字幕| 日韩欧美亚洲一区二区| youjizz国产精品| 日本午夜一区二区| 成人免费一区二区三区视频| 69堂成人精品免费视频| 成人午夜大片免费观看| 天天av天天翘天天综合网色鬼国产| 久久久久久久网| 欧美日韩国产一级片| 不卡的看片网站| 免费xxxx性欧美18vr| 亚洲情趣在线观看| 欧美精品一区二区在线播放 | 国产精品免费视频一区| 91精品综合久久久久久| 不卡av免费在线观看| 蜜桃一区二区三区在线| 一区二区三区国产豹纹内裤在线| 久久亚洲一区二区三区四区| 欧美网站大全在线观看| 成a人片亚洲日本久久| 美女脱光内衣内裤视频久久影院| 亚洲最新在线观看| 国产无遮挡一区二区三区毛片日本| 欧美人xxxx| 欧美视频日韩视频在线观看| 成人av小说网| 国产v综合v亚洲欧| 国产乱人伦偷精品视频免下载| 欧美无乱码久久久免费午夜一区| 国产精品一区二区久久精品爱涩 | 99re这里都是精品| 国产不卡免费视频| 精品中文字幕一区二区| 天天综合日日夜夜精品| 亚洲另类一区二区| 国产精品福利在线播放| 国产性做久久久久久| 26uuu亚洲婷婷狠狠天堂| 欧美麻豆精品久久久久久| 在线看国产一区二区| 91视频com| www.性欧美| 成人精品在线视频观看| 国产美女一区二区| 国产精品自拍一区| 精彩视频一区二区| 国产在线视频一区二区| 国产综合久久久久久鬼色|