dragger.java

来自「plugin for eclipse」· Java 代码 · 共 99 行

JAVA
99
字号
/*
 * Created on Jul 30, 2005
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package isis.tinydt.editors.nesceditor;

import isis.anp.nesc.ot.Component;
import isis.anp.nesc.ot.Configuration;
import isis.anp.nesc.ot.FunctionPort;
import isis.anp.nesc.ot.InterfacePort;
import isis.anp.nesc.ot.Module;
import isis.anp.nesc.ot.Port;
import isis.tinydt.Utils;

import org.eclipse.draw2d.Figure;
import org.eclipse.draw2d.IFigure;
import org.eclipse.draw2d.MouseEvent;
import org.eclipse.draw2d.MouseListener;
import org.eclipse.draw2d.MouseMotionListener;
import org.eclipse.draw2d.geometry.Dimension;
import org.eclipse.draw2d.geometry.Point;


/**
 * @author Sebo
 * 
 * TODO To change the template for this generated type comment go to Window -
 * Preferences - Java - Code Style - Code Templates
 */
public class Dragger extends MouseMotionListener.Stub implements MouseListener
{
    public Dragger(IFigure figure)
    {
        figure.addMouseMotionListener(this);
        figure.addMouseListener(this);
    }

    Point last;

    public void mouseReleased(MouseEvent e)
    {
    }

    public void mouseClicked(MouseEvent e)
    {
    }

    public void mouseDoubleClicked(MouseEvent e)
    {        
        Figure fig = ((Figure) e.getSource());
        if( fig instanceof NesCFileFigure )
        {
        	if(((NesCFileFigure)fig).getObject() instanceof Component )
        	{
	            Component comp = ((Component)((NesCFileFigure)fig).getObject());
	            
	            if( comp instanceof Configuration )
	            {            
	                Utils.openEditor(((Configuration)comp).getConfigurationFile().getFileName());
	            }           
	            else if( comp instanceof Module )
	            {
	                Utils.openEditor(((Module)comp).getModuleFile().getFileName());                
	            }
        	}
        	else if(((NesCFileFigure)fig).getObject() instanceof Port )
        	{
        		Port port = ((Port)((NesCFileFigure)fig).getObject());
        		
        		if( port instanceof InterfacePort )
	            {            
	                Utils.openEditor(((InterfacePort )port).getInterface().getInterfaceFile().getFileName());
	            }           
	            else if( port instanceof FunctionPort )
	            {
	                //                
	            }
        		
        	}
        }
    }

    public void mousePressed(MouseEvent e)
    {
        last = e.getLocation();
    }

    public void mouseDragged(MouseEvent e)
    {
        Point p = e.getLocation();
        Dimension delta = p.getDifference(last);
        last = p;
        Figure f = ((Figure) e.getSource());
        f.setBounds(f.getBounds().getTranslated(delta.width, delta.height));
    }
}

⌨️ 快捷键说明

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