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

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

?? display.java

?? 源碼為Eclipse開源開發平臺桌面開發工具SWT的源代碼,
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
/******************************************************************************* * Copyright (c) 2000, 2004 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Common Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/cpl-v10.html *  * Contributors: *     IBM Corporation - initial API and implementation *******************************************************************************/package org.eclipse.swt.widgets;import org.eclipse.swt.internal.*;import org.eclipse.swt.internal.win32.*;import org.eclipse.swt.*;import org.eclipse.swt.graphics.*;/** * Instances of this class are responsible for managing the * connection between SWT and the underlying operating * system. Their most important function is to implement * the SWT event loop in terms of the platform event model. * They also provide various methods for accessing information * about the operating system, and have overall control over * the operating system resources which SWT allocates. * <p> * Applications which are built with SWT will <em>almost always</em> * require only a single display. In particular, some platforms * which SWT supports will not allow more than one <em>active</em> * display. In other words, some platforms do not support * creating a new display if one already exists that has not been * sent the <code>dispose()</code> message. * <p> * In SWT, the thread which creates a <code>Display</code> * instance is distinguished as the <em>user-interface thread</em> * for that display. * </p> * The user-interface thread for a particular display has the * following special attributes: * <ul> * <li> * The event loop for that display must be run from the thread. * </li> * <li> * Some SWT API methods (notably, most of the public methods in * <code>Widget</code> and its subclasses), may only be called * from the thread. (To support multi-threaded user-interface * applications, class <code>Display</code> provides inter-thread * communication methods which allow threads other than the  * user-interface thread to request that it perform operations * on their behalf.) * </li> * <li> * The thread is not allowed to construct other  * <code>Display</code>s until that display has been disposed. * (Note that, this is in addition to the restriction mentioned * above concerning platform support for multiple displays. Thus, * the only way to have multiple simultaneously active displays, * even on platforms which support it, is to have multiple threads.) * </li> * </ul> * Enforcing these attributes allows SWT to be implemented directly * on the underlying operating system's event model. This has  * numerous benefits including smaller footprint, better use of  * resources, safer memory management, clearer program logic, * better performance, and fewer overall operating system threads * required. The down side however, is that care must be taken * (only) when constructing multi-threaded applications to use the * inter-thread communication mechanisms which this class provides * when required. * </p><p> * All SWT API methods which may only be called from the user-interface * thread are distinguished in their documentation by indicating that * they throw the "<code>ERROR_THREAD_INVALID_ACCESS</code>" * SWT exception. * </p> * <dl> * <dt><b>Styles:</b></dt> * <dd>(none)</dd> * <dt><b>Events:</b></dt> * <dd>Close, Dispose</dd> * </dl> * <p> * IMPORTANT: This class is <em>not</em> intended to be subclassed. * </p> * @see #syncExec * @see #asyncExec * @see #wake * @see #readAndDispatch * @see #sleep * @see Device#dispose */public class Display extends Device {	/**	 * the handle to the OS message queue	 * (Warning: This field is platform dependent)	 */	public MSG msg = new MSG ();		/* Windows and Events */	Event [] eventQueue;	Callback windowCallback;	int windowProc, threadId, processId;	TCHAR windowClass;	static int WindowClassCount;	static final String WindowName = "SWT_Window"; //$NON-NLS-1$	EventTable eventTable, filterTable;	/* Widget Table */	int freeSlot;	int [] indexTable;	Control [] controlTable;	final static int GROW_SIZE = 1024;		/* Menus */	Menu [] bars, popups;	MenuItem [] items;		/*	* The start value for WM_COMMAND id's.	* Windows reserves the values 0..100.	* 	* The SmartPhone SWT resource file reserves	* the values 101..107.	*/	static final int ID_START = 108;		/* Filter Hook */	Callback msgFilterCallback;	int msgFilterProc, filterHook;	MSG hookMsg = new MSG ();	boolean ignoreMsgFilter;		/* Message Hook */	Callback getMsgCallback, embeddedCallback;	int getMsgProc, msgHook, embeddedHwnd, embeddedProc;	/* Sync/Async Widget Communication */	Synchronizer synchronizer = new Synchronizer (this);	Thread thread;	/* Display Shutdown */	Runnable [] disposeList;		/* System Tray */	Tray tray;	int nextTrayId = 0;		/* Timers */	int timerCount;	int [] timerIds;	Runnable [] timerList;		/* Keyboard and Mouse State */	int lastKey, lastAscii, lastMouse;	boolean lastVirtual, lastNull, lastDead;	byte [] keyboard = new byte [256];	boolean accelKeyHit, mnemonicKeyHit;	boolean lockActiveWindow;		/* MDI */	boolean ignoreRestoreFocus;	Control lastHittestControl;	int lastHittest;		/* Message Only Window */	Callback messageCallback;	int hwndMessage, messageProc;	int [] systemFonts;		/* System Images Cache */	int errorIcon, infoIcon, questionIcon, warningIcon;	/* System Cursors Cache */	Cursor [] cursors = new Cursor [SWT.CURSOR_HAND + 1];	/* ImageList Cache */		ImageList[] imageList, toolImageList, toolHotImageList, toolDisabledImageList;	/* Custom Colors for ChooseColor */	int lpCustColors;	/* Display Data */	Object data;	String [] keys;	Object [] values;		/* Key Mappings */	static final int [] [] KeyTable = {				/* Keyboard and Mouse Masks */		{OS.VK_MENU,	SWT.ALT},		{OS.VK_SHIFT,	SWT.SHIFT},		{OS.VK_CONTROL,	SWT.CONTROL},//		{OS.VK_????,	SWT.COMMAND},		/* NOT CURRENTLY USED */		//		{OS.VK_LBUTTON, SWT.BUTTON1},//		{OS.VK_MBUTTON, SWT.BUTTON3},//		{OS.VK_RBUTTON, SWT.BUTTON2},				/* Non-Numeric Keypad Keys */		{OS.VK_UP,		SWT.ARROW_UP},		{OS.VK_DOWN,	SWT.ARROW_DOWN},		{OS.VK_LEFT,	SWT.ARROW_LEFT},		{OS.VK_RIGHT,	SWT.ARROW_RIGHT},		{OS.VK_PRIOR,	SWT.PAGE_UP},		{OS.VK_NEXT,	SWT.PAGE_DOWN},		{OS.VK_HOME,	SWT.HOME},		{OS.VK_END,		SWT.END},		{OS.VK_INSERT,	SWT.INSERT},		/* Virtual and Ascii Keys */		{OS.VK_BACK,	SWT.BS},		{OS.VK_RETURN,	SWT.CR},		{OS.VK_DELETE,	SWT.DEL},		{OS.VK_ESCAPE,	SWT.ESC},		{OS.VK_RETURN,	SWT.LF},		{OS.VK_TAB,		SWT.TAB},			/* Functions Keys */		{OS.VK_F1,	SWT.F1},		{OS.VK_F2,	SWT.F2},		{OS.VK_F3,	SWT.F3},		{OS.VK_F4,	SWT.F4},		{OS.VK_F5,	SWT.F5},		{OS.VK_F6,	SWT.F6},		{OS.VK_F7,	SWT.F7},		{OS.VK_F8,	SWT.F8},		{OS.VK_F9,	SWT.F9},		{OS.VK_F10,	SWT.F10},		{OS.VK_F11,	SWT.F11},		{OS.VK_F12,	SWT.F12},		{OS.VK_F13,	SWT.F13},		{OS.VK_F14,	SWT.F14},		{OS.VK_F15,	SWT.F15},				/* Numeric Keypad Keys */		{OS.VK_MULTIPLY,	SWT.KEYPAD_MULTIPLY},		{OS.VK_ADD,			SWT.KEYPAD_ADD},		{OS.VK_RETURN,		SWT.KEYPAD_CR},		{OS.VK_SUBTRACT,	SWT.KEYPAD_SUBTRACT},		{OS.VK_DECIMAL,		SWT.KEYPAD_DECIMAL},		{OS.VK_DIVIDE,		SWT.KEYPAD_DIVIDE},		{OS.VK_NUMPAD0,		SWT.KEYPAD_0},		{OS.VK_NUMPAD1,		SWT.KEYPAD_1},		{OS.VK_NUMPAD2,		SWT.KEYPAD_2},		{OS.VK_NUMPAD3,		SWT.KEYPAD_3},		{OS.VK_NUMPAD4,		SWT.KEYPAD_4},		{OS.VK_NUMPAD5,		SWT.KEYPAD_5},		{OS.VK_NUMPAD6,		SWT.KEYPAD_6},		{OS.VK_NUMPAD7,		SWT.KEYPAD_7},		{OS.VK_NUMPAD8,		SWT.KEYPAD_8},		{OS.VK_NUMPAD9,		SWT.KEYPAD_9},//		{OS.VK_????,		SWT.KEYPAD_EQUAL},		/* Other keys */		{OS.VK_CAPITAL,		SWT.CAPS_LOCK},		{OS.VK_NUMLOCK,		SWT.NUM_LOCK},		{OS.VK_SCROLL,		SWT.SCROLL_LOCK},		{OS.VK_PAUSE,		SWT.PAUSE},		{OS.VK_CANCEL,		SWT.BREAK},		{OS.VK_SNAPSHOT,	SWT.PRINT_SCREEN},//		{OS.VK_????,		SWT.HELP},			};	/* Multiple Displays */	static Display Default;	static Display [] Displays = new Display [4];	/* Multiple Monitors */	static Monitor[] monitors = null;	static int monitorCount = 0;		/* Modality */	Shell [] modalShells;	Shell modalDialogShell;	static boolean TrimEnabled = false;	/* Private SWT Window Messages */	static final int SWT_GETACCELCOUNT	= OS.WM_APP;	static final int SWT_GETACCEL 		= OS.WM_APP + 1;	static final int SWT_KEYMSG	 		= OS.WM_APP + 2;	static final int SWT_DESTROY	 	= OS.WM_APP + 3;	static final int SWT_RESIZE			= OS.WM_APP + 4;	static final int SWT_TRAYICONMSG	= OS.WM_APP + 5;	static int SWT_TASKBARCREATED;		/* Package Name */	static final String PACKAGE_PREFIX = "org.eclipse.swt.widgets."; //$NON-NLS-1$	/*	* This code is intentionally commented.  In order	* to support CLDC, .class cannot be used because	* it does not compile on some Java compilers when	* they are targeted for CLDC.	*///	static {//		String name = Display.class.getName ();//		int index = name.lastIndexOf ('.');//		PACKAGE_PREFIX = name.substring (0, index + 1);//	}	/*	* TEMPORARY CODE.  Install the runnable that	* gets the current display. This code will	* be removed in the future.	*/	static {		DeviceFinder = new Runnable () {			public void run () {				Device device = getCurrent ();				if (device == null) {					device = getDefault ();				}				setDevice (device);			}		};	}	/** TEMPORARY CODE.*/static void setDevice (Device device) {	CurrentDevice = device;}	/** * Constructs a new instance of this class. * <p> * Note: The resulting display is marked as the <em>current</em> * display. If this is the first display which has been  * constructed since the application started, it is also * marked as the <em>default</em> display. * </p> * * @exception SWTException <ul> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent</li> *    <li>ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass</li> * </ul> * * @see #getCurrent * @see #getDefault * @see Widget#checkSubclass * @see Shell */public Display () {	this (null);}public Display (DeviceData data) {	super (data);}int asciiKey (int key) {	if (OS.IsWinCE) return 0;		/* Get the current keyboard. */	for (int i=0; i<keyboard.length; i++) keyboard [i] = 0;	if (!OS.GetKeyboardState (keyboard)) return 0;			/* Translate the key to ASCII or UNICODE using the virtual keyboard */	if (OS.IsUnicode) {		char [] result = new char [1];		if (OS.ToUnicode (key, key, keyboard, result, 1, 0) == 1) return result [0];	} else {		short [] result = new short [1];		if (OS.ToAscii (key, key, keyboard, result, 0) == 1) return result [0];	}	return 0;}/** * Adds the listener to the collection of listeners who will * be notifed when an event of the given type occurs anywhere * in this display. When the event does occur, the listener is * notified by sending it the <code>handleEvent()</code> message. * * @param eventType the type of event to listen for * @param listener the listener which should be notified when the event occurs * * @exception IllegalArgumentException <ul> *    <li>ERROR_NULL_ARGUMENT - if the listener is null</li> * </ul> * @exception SWTException <ul> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> *    <li>ERROR_DEVICE_DISPOSED - if the receiver has been disposed</li> * </ul> * * @see Listener * @see #removeFilter * @see #removeListener *  * @since 3.0  */public void addFilter (int eventType, Listener listener) {	checkDevice ();	if (listener == null) error (SWT.ERROR_NULL_ARGUMENT);	if (filterTable == null) filterTable = new EventTable ();	filterTable.hook (eventType, listener);}/** * Adds the listener to the collection of listeners who will * be notifed when an event of the given type occurs. When the * event does occur in the display, the listener is notified by * sending it the <code>handleEvent()</code> message. * * @param eventType the type of event to listen for * @param listener the listener which should be notified when the event occurs * * @exception IllegalArgumentException <ul> *    <li>ERROR_NULL_ARGUMENT - if the listener is null</li> * </ul> * @exception SWTException <ul> *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> *    <li>ERROR_DEVICE_DISPOSED - if the receiver has been disposed</li> * </ul> * * @see Listener

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品日产第一区二区三区高清版 | 色综合天天做天天爱| 亚洲影院久久精品| 久久一留热品黄| 在线一区二区三区四区五区 | 在线精品视频免费观看| 精品在线播放免费| 亚洲制服丝袜一区| 中文欧美字幕免费| 日韩欧美一级二级三级| 色美美综合视频| 国产精品性做久久久久久| 首页综合国产亚洲丝袜| 亚洲免费观看在线视频| 国产亚洲精品福利| 精品人在线二区三区| 欧美怡红院视频| 91在线视频免费观看| 极品少妇一区二区三区精品视频 | 日本成人超碰在线观看| 亚洲日本欧美天堂| 久久久久国产精品人| 日韩欧美美女一区二区三区| 欧美视频在线观看一区| 成av人片一区二区| 国产福利一区二区| 久88久久88久久久| 强制捆绑调教一区二区| 首页国产丝袜综合| 亚洲一区在线电影| 亚洲天堂网中文字| 亚洲欧美色一区| 国产精品美女久久福利网站| 国产亚洲美州欧州综合国| 久久影音资源网| 欧美精品一区二区三区视频| 日韩免费在线观看| 日韩欧美视频在线| 精品999久久久| 精品av综合导航| 国产午夜精品久久久久久久| 精品久久久久久综合日本欧美| 日韩一区二区电影网| 6080国产精品一区二区| 欧美一区日本一区韩国一区| 91精品视频网| 日韩女优视频免费观看| 精品国产凹凸成av人导航| 欧美电影免费提供在线观看| 日韩欧美电影在线| 精品国产伦一区二区三区观看体验| 日韩欧美视频在线| 国产日产欧美一区| 中文字幕精品综合| 亚洲欧洲性图库| 玉米视频成人免费看| 亚洲午夜羞羞片| 秋霞av亚洲一区二区三| 激情综合网最新| 成人av电影在线| 欧美自拍偷拍午夜视频| 91精品国产全国免费观看 | 久久综合999| 欧美激情在线看| 亚洲欧美日韩中文字幕一区二区三区| 国产精品视频九色porn| 亚洲欧美日韩一区| 日韩高清不卡一区二区| 久久精品国产澳门| 大桥未久av一区二区三区中文| 99国产精品国产精品久久| 欧美色视频在线观看| 日韩一区二区视频| 国产精品乱码一区二区三区软件| 亚洲蜜臀av乱码久久精品蜜桃| 亚洲1区2区3区4区| 国产精品一区二区三区乱码| 色婷婷av一区二区三区之一色屋| 91精品久久久久久蜜臀| 久久久久久久国产精品影院| 18成人在线观看| 日韩av不卡一区二区| 懂色av中文字幕一区二区三区| 色欧美乱欧美15图片| 日韩精品一区二区三区四区| 中文字幕视频一区| 六月婷婷色综合| 91一区二区在线| 欧美一区二区免费视频| 国产精品久久二区二区| 日本在线播放一区二区三区| 成人免费视频视频| 这里只有精品电影| 国产精品电影一区二区三区| 日韩av成人高清| 日本乱人伦一区| 久久久久久久久97黄色工厂| 成人午夜又粗又硬又大| 欧美日韩黄色一区二区| 国产人成一区二区三区影院| 日韩中文字幕亚洲一区二区va在线 | 日韩三级中文字幕| 亚洲人成网站精品片在线观看| 精品一区二区三区视频| 色视频欧美一区二区三区| 久久免费看少妇高潮| 午夜精彩视频在线观看不卡| 97久久超碰国产精品| 久久婷婷国产综合精品青草 | 亚洲综合在线五月| 国产高清成人在线| 欧美大片一区二区三区| 亚洲午夜电影在线观看| 不卡视频在线看| 久久久国产精品不卡| 麻豆成人综合网| 精品污污网站免费看| 亚洲精品日产精品乱码不卡| 国产福利一区二区三区在线视频| 欧美成人综合网站| 亚洲不卡在线观看| 欧美在线一区二区| 亚洲裸体在线观看| thepron国产精品| 国产欧美日韩三级| 国产精品自拍一区| 26uuu久久综合| 久久精品99国产国产精| 91精品麻豆日日躁夜夜躁| 午夜精品成人在线视频| 欧美日韩在线播放一区| 亚洲精品中文字幕乱码三区| 成人av在线影院| 国产精品丝袜久久久久久app| 国产成人精品影院| 中文欧美字幕免费| 成人aaaa免费全部观看| 亚洲欧洲另类国产综合| 91丨porny丨在线| 亚洲人成小说网站色在线 | 久久免费美女视频| 国产精品羞羞答答xxdd| 国产性天天综合网| 高清在线成人网| 日本一区二区三区四区在线视频| 粉嫩蜜臀av国产精品网站| 国产精品色婷婷| 9l国产精品久久久久麻豆| 亚洲人成7777| 国产精品人妖ts系列视频| 国产精品亚洲一区二区三区妖精| 久久综合久久99| 成人18视频在线播放| 综合久久久久久久| 欧美日韩视频一区二区| 人人狠狠综合久久亚洲| 久久久国产精品麻豆 | 4hu四虎永久在线影院成人| 日韩avvvv在线播放| 亚洲精品一区二区精华| 国产91精品久久久久久久网曝门| 中文字幕一区av| 欧美无砖专区一中文字| 久久电影国产免费久久电影| 国产午夜精品理论片a级大结局| 91丨porny丨蝌蚪视频| 视频一区中文字幕| 久久影院午夜片一区| 色综合中文综合网| 久久久www免费人成精品| 99热这里都是精品| 午夜av区久久| 精品国精品国产| 成人黄色免费短视频| 亚洲成人一二三| 日韩欧美国产一区在线观看| 成人avav影音| 蜜臀av在线播放一区二区三区| 国产女人aaa级久久久级| 欧美在线观看你懂的| 精品中文字幕一区二区| 亚洲日本成人在线观看| 欧美一激情一区二区三区| 成人综合激情网| 日韩avvvv在线播放| 亚洲色图视频免费播放| 日韩欧美一区电影| 不卡av免费在线观看| 免费在线观看视频一区| 国产精品灌醉下药二区| 欧美一区二区三区系列电影| 不卡免费追剧大全电视剧网站| 日韩av一区二区在线影视| 中文字幕亚洲不卡| 精品噜噜噜噜久久久久久久久试看 | 久久99国产精品免费| 亚洲狠狠丁香婷婷综合久久久| 26uuu国产电影一区二区| 欧美系列亚洲系列| 99久久婷婷国产综合精品 |