⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tabbeddraglistener.java

📁 定要上载质量高而定要上载质量高而定要上载质量高而定要上载质量高而定要上载质量高而
💻 JAVA
字号:
/*
 * Created on Apr 2, 2005
 */
package org.flexdock.docking.event;

import java.awt.Point;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;

import javax.swing.JTabbedPane;

import org.flexdock.docking.Dockable;
import org.flexdock.docking.DockingManager;
import org.flexdock.docking.drag.DragManager;

/**
 * @author Christopher Butler
 */
public class TabbedDragListener extends MouseAdapter implements MouseMotionListener {
    
    private DragManager dragListener;
    
    public void mouseDragged(MouseEvent me) {
        if(dragListener!=null)
            dragListener.mouseDragged(me);
    }
    
    public void mouseReleased(MouseEvent me) {
        if(dragListener!=null)
            dragListener.mouseReleased(me);
        dragListener = null;
    }
    
    public void mousePressed(MouseEvent me) {
        if(!(me.getSource() instanceof JTabbedPane)) {
            dragListener = null;
            return;
        }
        
        JTabbedPane pane = (JTabbedPane)me.getSource();
        Point p = me.getPoint();
        int tabIndex = pane.indexAtLocation(p.x, p.y);
        if(tabIndex==-1) {
            dragListener = null;
            return;
        }
        
        Dockable dockable = DockingManager.getDockable(pane.getComponentAt(tabIndex));
        dragListener = DockingManager.getDragListener(dockable);
        if(dragListener!=null)
            dragListener.mousePressed(me);
    }
    
    public void mouseMoved(MouseEvent me) {
        // does nothing
    }
    
//  private void redispatchToDockable(MouseEvent me) {
////if(!tabsAsDragSource || dockable==null)
////return;
//  
////Component dragSrc = dockable.getInitiator();
////MouseEvent evt = SwingUtilities.convertMouseEvent((Component)me.getSource(), me, dragSrc);
////dragSrc.dispatchEvent(evt);
//  }
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -