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

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

?? dragrecognitionsupport.java

?? JAVA 所有包
?? JAVA
字號:
/* * @(#)DragRecognitionSupport.java	1.2 05/11/17 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package javax.swing.plaf.basic;import java.awt.Toolkit;import java.awt.event.*;import java.awt.dnd.DragSource;import javax.swing.*;import sun.awt.dnd.SunDragSourceContextPeer;import sun.awt.AppContext;/** * Drag gesture recognition support for classes that have a * <code>TransferHandler</code>. The gesture for a drag in this class is a mouse * press followed by movement by <code>DragSource.getDragThreshold()</code> * pixels. An instance of this class is maintained per AppContext, and the * public static methods call into the appropriate instance. *  * @author Shannon Hickey * @version 1.2 11/17/05 */class DragRecognitionSupport {    private int motionThreshold;    private MouseEvent dndArmedEvent;    private JComponent component;    /**     * This interface allows us to pass in a handler to mouseDragged,     * so that we can be notified immediately before a drag begins.     */    public static interface BeforeDrag {        public void dragStarting(MouseEvent me);    }    /**     * Returns the DragRecognitionSupport for the caller's AppContext.     */    private static DragRecognitionSupport getDragRecognitionSupport() {        DragRecognitionSupport support =            (DragRecognitionSupport)AppContext.getAppContext().                get(DragRecognitionSupport.class);        if (support == null) {            support = new DragRecognitionSupport();            AppContext.getAppContext().put(DragRecognitionSupport.class, support);        }        return support;    }    /**     * Returns whether or not the event is potentially part of a drag sequence.     */    public static boolean mousePressed(MouseEvent me) {        return ((DragRecognitionSupport)getDragRecognitionSupport()).            mousePressedImpl(me);    }    /**     * If a dnd recognition has been going on, return the MouseEvent     * that started the recognition. Otherwise, return null.     */    public static MouseEvent mouseReleased(MouseEvent me) {        return ((DragRecognitionSupport)getDragRecognitionSupport()).            mouseReleasedImpl(me);    }    /**     * Returns whether or not a drag gesture recognition is ongoing.     */    public static boolean mouseDragged(MouseEvent me, BeforeDrag bd) {        return ((DragRecognitionSupport)getDragRecognitionSupport()).            mouseDraggedImpl(me, bd);    }    private void clearState() {        dndArmedEvent = null;        component = null;    }    private int mapDragOperationFromModifiers(MouseEvent me,                                              TransferHandler th) {        if (th == null || !SwingUtilities.isLeftMouseButton(me)) {            return TransferHandler.NONE;        }        return SunDragSourceContextPeer.            convertModifiersToDropAction(me.getModifiersEx(),                                         th.getSourceActions(component));    }    /**     * Returns whether or not the event is potentially part of a drag sequence.     */    private boolean mousePressedImpl(MouseEvent me) {        component = (JComponent)me.getSource();        if (mapDragOperationFromModifiers(me, component.getTransferHandler())                != TransferHandler.NONE) {            motionThreshold = DragSource.getDragThreshold();            dndArmedEvent = me;            return true;        }        clearState();        return false;    }    /**     * If a dnd recognition has been going on, return the MouseEvent     * that started the recognition. Otherwise, return null.     */    private MouseEvent mouseReleasedImpl(MouseEvent me) {        /* no recognition has been going on */        if (dndArmedEvent == null) {            return null;        }        MouseEvent retEvent = null;        if (me.getSource() == component) {            retEvent = dndArmedEvent;        } // else component has changed unexpectedly, so return null        clearState();        return retEvent;    }    /**     * Returns whether or not a drag gesture recognition is ongoing.     */    private boolean mouseDraggedImpl(MouseEvent me, BeforeDrag bd) {        /* no recognition is in progress */        if (dndArmedEvent == null) {            return false;        }        /* component has changed unexpectedly, so bail */        if (me.getSource() != component) {            clearState();            return false;        }        int dx = Math.abs(me.getX() - dndArmedEvent.getX());        int dy = Math.abs(me.getY() - dndArmedEvent.getY());        if ((dx > motionThreshold) || (dy > motionThreshold)) {            TransferHandler th = component.getTransferHandler();            int action = mapDragOperationFromModifiers(me, th);            if (action != TransferHandler.NONE) {                /* notify the BeforeDrag instance */                if (bd != null) {                    bd.dragStarting(dndArmedEvent);                }                th.exportAsDrag(component, dndArmedEvent, action);                clearState();            }        }        return true;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜精品一区二区三区免费视频| 男人的j进女人的j一区| 一区二区三区欧美久久| 久久精品国产秦先生| 91性感美女视频| 久久人人超碰精品| 亚洲第一激情av| 91影视在线播放| 国产色婷婷亚洲99精品小说| 午夜久久久久久久久| 国产·精品毛片| 久久夜色精品一区| 奇米色一区二区| 欧美乱熟臀69xxxxxx| 亚洲黄色免费网站| 99精品热视频| 中文字幕免费观看一区| 国产乱码精品一区二区三区av | 精品久久国产97色综合| 亚洲午夜在线电影| 欧美性色aⅴ视频一区日韩精品| 国产精品天干天干在观线| 国产成人在线免费观看| 精品国产人成亚洲区| 美女视频网站久久| 欧美一区二区啪啪| 麻豆久久一区二区| 日韩免费视频一区| 美国毛片一区二区三区| 日韩三级免费观看| 卡一卡二国产精品| 精品国产免费一区二区三区香蕉| 日本亚洲电影天堂| 日韩三级伦理片妻子的秘密按摩| 琪琪久久久久日韩精品| 精品理论电影在线| 青青草成人在线观看| 日韩欧美在线影院| 久久av中文字幕片| 日本一区二区三级电影在线观看| 国产成人免费视频网站高清观看视频 | 精品一区二区综合| 久久色视频免费观看| 国产成人自拍在线| 中文字幕欧美一区| 欧美日韩一区 二区 三区 久久精品 | 久久影院视频免费| 成人黄色免费短视频| 亚洲欧美国产77777| 欧美区一区二区三区| 美女mm1313爽爽久久久蜜臀| 久久精品亚洲一区二区三区浴池| 粉嫩13p一区二区三区| 一区二区国产视频| 欧美成人女星排名| 不卡大黄网站免费看| 亚洲影视在线观看| 精品国产第一区二区三区观看体验 | 一道本成人在线| 日韩在线一区二区三区| 2020国产成人综合网| 色婷婷av一区| 久久99国产精品久久99| 亚洲欧洲日韩综合一区二区| 欧美人与性动xxxx| 国产凹凸在线观看一区二区| 亚洲乱码国产乱码精品精98午夜 | 久久久久久久久久久99999| 色悠悠久久综合| 久久精品国产精品亚洲综合| 自拍偷拍亚洲综合| 精品欧美黑人一区二区三区| 91亚洲国产成人精品一区二区三| 美女一区二区久久| 一区二区三区在线视频观看| 欧美一区二区三区在线观看视频| 丁香亚洲综合激情啪啪综合| 日韩在线观看一区二区| 国产精品乱码一区二三区小蝌蚪| 欧美人妇做爰xxxⅹ性高电影| 成人免费观看视频| 免费在线观看视频一区| 一区二区在线免费| 欧美国产成人精品| 欧美va在线播放| 欧美日韩亚洲综合| a亚洲天堂av| 国产一区二区三区免费观看| 亚洲va韩国va欧美va| 亚洲三级在线播放| 国产精品美女久久久久高潮| 精品国产网站在线观看| 欧美美女一区二区三区| 色天天综合久久久久综合片| 国产99久久久国产精品| 国产毛片精品国产一区二区三区| 日韩有码一区二区三区| 亚洲高清三级视频| 亚洲欧美日本韩国| 亚洲欧洲一区二区三区| 亚洲国产精品国自产拍av| 精品第一国产综合精品aⅴ| 91精品国产色综合久久不卡电影 | 日韩经典中文字幕一区| 五月天中文字幕一区二区| 亚洲视频中文字幕| 国产精品美女一区二区三区 | 老汉av免费一区二区三区| 亚洲自拍偷拍av| 一区二区三区在线观看动漫| 亚洲欧美视频在线观看视频| 中文字幕一区二区三区在线不卡 | 久久久99精品久久| 久久久久国产精品厨房| 国产丝袜欧美中文另类| 国产午夜亚洲精品不卡| 欧美国产欧美亚州国产日韩mv天天看完整 | 亚洲精品自拍动漫在线| 亚洲女性喷水在线观看一区| 亚洲美女少妇撒尿| 一个色在线综合| 偷拍亚洲欧洲综合| 另类欧美日韩国产在线| 国产在线播精品第三| 豆国产96在线|亚洲| 91亚洲国产成人精品一区二三| 色94色欧美sute亚洲线路二| 欧美日韩国产免费一区二区| 宅男噜噜噜66一区二区66| 日韩精品中文字幕一区二区三区| 久久综合九色综合久久久精品综合| 精品国产sm最大网站免费看| 国产农村妇女精品| 自拍偷拍国产精品| 日韩高清中文字幕一区| 精品一区二区三区在线播放| 成人黄色片在线观看| 欧美日韩一卡二卡三卡| www国产成人| 樱桃国产成人精品视频| 蓝色福利精品导航| 99精品国产热久久91蜜凸| 欧美美女直播网站| 国产婷婷色一区二区三区在线| 亚洲天堂网中文字| 老司机午夜精品99久久| www.av精品| 日韩视频国产视频| 亚洲素人一区二区| 毛片av一区二区| 99国内精品久久| 欧美老年两性高潮| 中文字幕一区二区三区乱码在线| 五月婷婷综合网| av网站免费线看精品| 337p亚洲精品色噜噜狠狠| 国产精品久久毛片| 毛片一区二区三区| 在线精品国精品国产尤物884a| 欧美变态凌虐bdsm| 亚洲午夜一区二区| 不卡欧美aaaaa| 精品国产一区二区在线观看| 亚洲午夜三级在线| 不卡电影免费在线播放一区| 欧美成人aa大片| 亚洲成年人网站在线观看| 成人性色生活片| 亚洲精品一区二区三区四区高清| 亚洲欧美电影一区二区| 粉嫩在线一区二区三区视频| 91精品国产综合久久久蜜臀图片| 亚洲欧美另类久久久精品2019| 国产成人在线观看免费网站| 日韩亚洲欧美一区| 五月婷婷激情综合| 欧美伊人久久大香线蕉综合69| 欧美经典一区二区| 国产高清精品网站| 欧美精品一区二区三区在线| 丝袜亚洲另类丝袜在线| 欧洲一区二区三区在线| 中文字幕一区二| 成人成人成人在线视频| 欧美精品一区二区三区蜜臀 | 亚洲第一搞黄网站| 欧美在线制服丝袜| 亚洲日本在线a| www.久久精品| 亚洲视频免费观看| 色94色欧美sute亚洲线路一ni| 日本一区免费视频| 丰满少妇久久久久久久| 亚洲国产精华液网站w | 精品亚洲成a人| 欧美精品一区二区三区高清aⅴ| 久久激情五月激情| 精品国产乱码久久久久久老虎| 免费观看在线综合| 久久综合999|