package eu.telecom.sudparis.dpwsim.handler; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import eu.telecom.sudparis.dpwsim.view.DPWSimMainWindow; /** * Event handler for mouse move and mouse click for main window. * * @author Son Han * @date 2013/09/20 * @version 2.0 */ public class MouseHandler implements MouseListener, MouseMotionListener{ private DPWSimMainWindow owner; public MouseHandler(DPWSimMainWindow owner){ this.owner = owner; } @Override public void mouseMoved(MouseEvent e) { if (owner.getMode() == DPWSimMainWindow.MODE_ADDING_DEVICE){ //int n = owner.getDevicesStatus().size(); //owner.getDevicesStatus().get(n-1).setLocation(e.getX(), e.getY()); //Valid the position int x = e.getX()- owner.activeDevice.getWidth(); int y = e.getY()-3*owner.activeDevice.getHeight(); //Check under Zero if(x< 0) x = 0; if(y< 0) y = 0; //TODO: Check out of range //System.out.println(x+"/"+y); owner.activeDevice.setLocation(x,y); } // System.out.println(owner.getMode() + " [" + e.getX() + e.getY() + "]"); } @Override public void mouseClicked(MouseEvent e) { if (owner.getMode() == DPWSimMainWindow.MODE_ADDING_DEVICE){ int x = e.getX()- owner.activeDevice.getWidth(); int y = e.getY()-3*owner.activeDevice.getHeight(); owner.activeDevice.addInfo("\n" + x + "\n" + y); owner.setMode(DPWSimMainWindow.MODE_SPACE_CREATED); } } @Override public void mouseDragged(MouseEvent e) {} @Override public void mousePressed(MouseEvent e) {} @Override public void mouseReleased(MouseEvent e) {} @Override public void mouseEntered(MouseEvent e) {} @Override public void mouseExited(MouseEvent e) {} }