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

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

?? tkwinclipboard.c

?? linux系統(tǒng)下的音頻通信
?? C
字號(hào):
/*  * tkWinClipboard.c -- * *	This file contains functions for managing the clipboard. * * Copyright (c) 1995 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * * SCCS: @(#) tkWinClipboard.c 1.8 97/05/20 17:01:13 */#include "tkWinInt.h"#include "tkSelect.h"/* *---------------------------------------------------------------------- * * TkSelGetSelection -- * *	Retrieve the specified selection from another process.  For *	now, only fetching XA_STRING from CLIPBOARD is supported. *	Eventually other types should be allowed. *  * Results: *	The return value is a standard Tcl return value. *	If an error occurs (such as no selection exists) *	then an error message is left in interp->result. * * Side effects: *	None. * *---------------------------------------------------------------------- */intTkSelGetSelection(interp, tkwin, selection, target, proc, clientData)    Tcl_Interp *interp;		/* Interpreter to use for reporting				 * errors. */    Tk_Window tkwin;		/* Window on whose behalf to retrieve				 * the selection (determines display				 * from which to retrieve). */    Atom selection;		/* Selection to retrieve. */    Atom target;		/* Desired form in which selection				 * is to be returned. */    Tk_GetSelProc *proc;	/* Procedure to call to process the				 * selection, once it has been retrieved. */    ClientData clientData;	/* Arbitrary value to pass to proc. */{    char *data, *buffer, *destPtr;    HGLOBAL handle;    int result, length;    if ((selection == Tk_InternAtom(tkwin, "CLIPBOARD"))	    && (target == XA_STRING)) {	if (OpenClipboard(NULL)) {	    handle = GetClipboardData(CF_TEXT);	    if (handle != NULL) {		data = GlobalLock(handle);		length = strlen(data);		buffer = ckalloc(length+1);		destPtr = buffer;		while (*data != '\0') {		    if (*data != '\r') {			*destPtr = *data;			destPtr++;		    }		    data++;		}		*destPtr = '\0';		GlobalUnlock(handle);		CloseClipboard();		result = (*proc)(clientData, interp, buffer);		ckfree(buffer);		return result;	    }	    CloseClipboard();	}    }    Tcl_AppendResult(interp, Tk_GetAtomName(tkwin, selection),	" selection doesn't exist or form \"", Tk_GetAtomName(tkwin, target),	"\" not defined", (char *) NULL);    return TCL_ERROR;}/* *---------------------------------------------------------------------- * * TkSetSelectionOwner -- * *	This function claims ownership of the specified selection. *	If the selection is CLIPBOARD, then we empty the system *	clipboard. * * Results: *	None. * * Side effects: *	Empties the system clipboard, and claims ownership. * *---------------------------------------------------------------------- */voidXSetSelectionOwner(display, selection, owner, time)    Display* display;    Atom selection;    Window owner;    Time time;{    HWND hwnd = owner ? TkWinGetHWND(owner) : NULL;    Tk_Window tkwin;    /*     * This is a gross hack because the Tk_InternAtom interface is broken.     * It expects a Tk_Window, even though it only needs a Tk_Display.     */    tkwin = (Tk_Window)tkMainWindowList->winPtr;    if (selection == Tk_InternAtom(tkwin, "CLIPBOARD")) {	/*	 * Only claim and empty the clipboard if we aren't already the	 * owner of the clipboard.	 */	if (GetClipboardOwner() != hwnd) {	    OpenClipboard(hwnd);	    EmptyClipboard();	    SetClipboardData(CF_TEXT, NULL);	    CloseClipboard();	}    }}/* *---------------------------------------------------------------------- * * TkWinClipboardRender -- * *	This function supplies the contents of the clipboard in *	response to a WM_RENDERFORMAT message. * * Results: *	None. * * Side effects: *	Sets the contents of the clipboard. * *---------------------------------------------------------------------- */voidTkWinClipboardRender(dispPtr, format)    TkDisplay *dispPtr;    UINT format;{    TkClipboardTarget *targetPtr;    TkClipboardBuffer *cbPtr;    HGLOBAL handle;    char *buffer, *p, *endPtr;    int length;    for (targetPtr = dispPtr->clipTargetPtr; targetPtr != NULL;	    targetPtr = targetPtr->nextPtr) {	if (targetPtr->type == XA_STRING)	    break;    }    length = 0;    if (targetPtr != NULL) {	for (cbPtr = targetPtr->firstBufferPtr; cbPtr != NULL;		cbPtr = cbPtr->nextPtr) {	    length += cbPtr->length;	    for (p = cbPtr->buffer, endPtr = p + cbPtr->length;		    p < endPtr; p++) {		if (*p == '\n') {		    length++;		}	    }	}    }    handle = GlobalAlloc(GMEM_MOVEABLE|GMEM_DDESHARE, length+1);    if (!handle) {	return;    }    buffer = GlobalLock(handle);    if (targetPtr != NULL) {	for (cbPtr = targetPtr->firstBufferPtr; cbPtr != NULL;		cbPtr = cbPtr->nextPtr) {	    for (p = cbPtr->buffer, endPtr = p + cbPtr->length;		    p < endPtr; p++) {		if (*p == '\n') {		    *buffer++ = '\r';		}		*buffer++ = *p;	    }	}    }    *buffer = '\0';    GlobalUnlock(handle);    SetClipboardData(CF_TEXT, handle);    return;}/* *---------------------------------------------------------------------- * * TkSelUpdateClipboard -- * *	This function is called to force the clipboard to be updated *	after new data is added. * * Results: *	None. * * Side effects: *	Clears the current contents of the clipboard. * *---------------------------------------------------------------------- */voidTkSelUpdateClipboard(winPtr, targetPtr)    TkWindow *winPtr;    TkClipboardTarget *targetPtr;{    HWND hwnd = TkWinGetHWND(winPtr->window);    OpenClipboard(hwnd);    EmptyClipboard();    SetClipboardData(CF_TEXT, NULL);    CloseClipboard();}/* *-------------------------------------------------------------- * * TkSelEventProc -- * *	This procedure is invoked whenever a selection-related *	event occurs.  * * Results: *	None. * * Side effects: *	Lots:  depends on the type of event. * *-------------------------------------------------------------- */voidTkSelEventProc(tkwin, eventPtr)    Tk_Window tkwin;		/* Window for which event was				 * targeted. */    register XEvent *eventPtr;	/* X event:  either SelectionClear,				 * SelectionRequest, or				 * SelectionNotify. */{    if (eventPtr->type == SelectionClear) {	TkSelClearSelection(tkwin, eventPtr);    }}/* *---------------------------------------------------------------------- * * TkSelPropProc -- * *	This procedure is invoked when property-change events *	occur on windows not known to the toolkit.  This is a stub *	function under Windows. * * Results: *	None. * * Side effects: *	None. * *---------------------------------------------------------------------- */voidTkSelPropProc(eventPtr)    register XEvent *eventPtr;		/* X PropertyChange event. */{}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品麻豆欧美日韩ww| 亚洲最大的成人av| 在线区一区二视频| 国产一区二区成人久久免费影院 | 亚洲欧洲精品一区二区三区| 51精品秘密在线观看| 99视频精品在线| 久久精工是国产品牌吗| 玉米视频成人免费看| 26uuu另类欧美| 欧美日韩一级片在线观看| 粉嫩欧美一区二区三区高清影视| 天天操天天干天天综合网| 综合av第一页| 欧美高清在线精品一区| 精品久久国产字幕高潮| 在线91免费看| 在线视频你懂得一区| 国产成+人+日韩+欧美+亚洲| 奇米一区二区三区av| 午夜日韩在线观看| 亚洲综合男人的天堂| 亚洲天堂精品视频| 日本一区二区三级电影在线观看| 欧美成人bangbros| 欧美一区二区福利视频| 欧美日韩激情一区二区三区| 色88888久久久久久影院野外| 成人综合激情网| 国产成人av福利| 国产麻豆成人精品| 国产麻豆精品一区二区| 国产一区在线看| 久久99精品久久久久| 麻豆91在线观看| 久久99精品久久久久久国产越南 | 成人免费毛片嘿嘿连载视频| 精品中文字幕一区二区| 美女高潮久久久| 91蝌蚪porny成人天涯| av一本久道久久综合久久鬼色| 国产精品99久久久久久久女警| 国产一区二区三区在线观看精品| 韩国成人精品a∨在线观看| 极品少妇一区二区| 国产成人自拍高清视频在线免费播放| 国产一区二区视频在线| 国产v日产∨综合v精品视频| 成人黄色在线视频| 91麻豆自制传媒国产之光| 91麻豆国产福利在线观看| 日本精品裸体写真集在线观看 | 精品视频资源站| 91精品国产色综合久久不卡电影| 7777精品久久久大香线蕉| 日韩视频一区二区三区| 久久蜜桃av一区二区天堂| 国产精品色在线观看| 亚洲人成人一区二区在线观看 | 色综合久久久久综合| 91久久精品国产91性色tv| 欧美三级乱人伦电影| 91精品国产综合久久精品app| 亚洲精品在线免费观看视频| 久久精品欧美日韩| 亚洲女女做受ⅹxx高潮| 日日噜噜夜夜狠狠视频欧美人 | 国产成人av电影在线| 91久久免费观看| 欧美一区二区精品久久911| 久久精品综合网| 一区二区三区在线观看动漫| 日韩国产精品久久久| 精品一区二区久久久| 成人app在线观看| 欧美日韩小视频| 久久综合九色综合97婷婷女人 | 在线观看成人免费视频| 日韩欧美电影一区| 中文欧美字幕免费| 日韩精品91亚洲二区在线观看| 国产一区在线观看视频| 91久久精品午夜一区二区| 337p粉嫩大胆噜噜噜噜噜91av| 国产精品美日韩| 日本视频中文字幕一区二区三区| 成人在线视频首页| 在线播放国产精品二区一二区四区| 久久日一线二线三线suv| 一级女性全黄久久生活片免费| 国产老女人精品毛片久久| 欧美视频一区二区三区四区 | 国产 欧美在线| 欧美狂野另类xxxxoooo| 国产精品视频麻豆| 麻豆视频观看网址久久| 在线观看日韩毛片| 国产三级精品三级| 日韩高清在线观看| 91视频在线观看免费| 日韩精品一二三四| 成人丝袜高跟foot| 久久综合久色欧美综合狠狠| 亚洲成人免费看| 99久久久免费精品国产一区二区| 精品国产亚洲一区二区三区在线观看| 一区二区欧美视频| 99国产精品视频免费观看| 国产亚洲成aⅴ人片在线观看| 日韩电影免费在线观看网站| 在线观看亚洲精品| 成人欧美一区二区三区在线播放| 国产乱子伦视频一区二区三区| 欧美精品vⅰdeose4hd| 一级做a爱片久久| 91伊人久久大香线蕉| 亚洲国产精品国自产拍av| 精品一区二区三区不卡| 欧美精品高清视频| 亚洲国产中文字幕在线视频综合| 91网站最新地址| 一区视频在线播放| 国产91精品免费| 国产喷白浆一区二区三区| 国产一区二区网址| 欧美精品一区二区三区一线天视频 | 丝袜亚洲另类欧美| 欧美吻胸吃奶大尺度电影| 亚洲色欲色欲www| 99久久99久久综合| 中文字幕一区二区三区在线观看| 福利电影一区二区| 国产亚洲欧洲997久久综合 | 久久99久久99小草精品免视看| 56国语精品自产拍在线观看| 亚洲成a人片综合在线| 欧美影院精品一区| 亚洲国产一二三| 欧美一区二区在线不卡| 日本不卡一区二区| 日韩区在线观看| 精品一区二区日韩| 久久久99免费| 成人av电影在线观看| 中文字幕在线不卡一区| 91丨porny丨最新| 亚洲福中文字幕伊人影院| 制服丝袜激情欧洲亚洲| 久久精品国产一区二区| 久久综合国产精品| 顶级嫩模精品视频在线看| √…a在线天堂一区| 欧美在线免费播放| 日韩成人精品在线观看| 精品国产精品网麻豆系列| 国产高清久久久久| 亚洲丝袜精品丝袜在线| 欧美日韩精品系列| 国产一区二区影院| 中文字幕在线观看不卡| 欧美三级乱人伦电影| 激情综合亚洲精品| 国产精品久久三| 欧美日韩在线三区| 国产一区在线观看麻豆| 成人欧美一区二区三区视频网页| 欧美日韩激情一区二区三区| 精品亚洲成a人在线观看 | 蜜桃视频在线观看一区| 久久久精品免费观看| 99精品视频一区| 日韩制服丝袜先锋影音| 国产肉丝袜一区二区| 欧美性大战久久久久久久蜜臀| 日韩精品五月天| 国产亚洲美州欧州综合国| 日本韩国一区二区三区视频| 欧美丝袜丝交足nylons图片| 理论片日本一区| 中文字幕欧美一区| 日韩一区二区不卡| 99精品视频中文字幕| 麻豆成人综合网| 一区二区在线观看视频| 久久综合丝袜日本网| 91福利在线免费观看| 国产麻豆日韩欧美久久| 亚洲国产欧美日韩另类综合| 久久久精品黄色| 欧美久久久一区| 91碰在线视频| 国产高清一区日本| 奇米888四色在线精品| 亚洲欧美日本韩国| 国产亚洲欧美激情| 欧美一区二区日韩一区二区| 91免费版pro下载短视频| 麻豆成人久久精品二区三区小说| 一区二区三区av电影| 中文字幕av一区二区三区免费看|