Mercurial > hg > jslab
annotate src/samer/units/MousePosition.java @ 0:bf79fb79ee13
Initial Mercurial check in.
author | samer |
---|---|
date | Tue, 17 Jan 2012 17:50:20 +0000 |
parents | |
children |
rev | line source |
---|---|
samer@0 | 1 package samer.units; |
samer@0 | 2 |
samer@0 | 3 import samer.core.*; |
samer@0 | 4 import samer.core.types.*; |
samer@0 | 5 import samer.maths.*; |
samer@0 | 6 import java.awt.*; |
samer@0 | 7 import java.awt.event.*; |
samer@0 | 8 |
samer@0 | 9 public class MousePosition implements MouseListener, MouseMotionListener |
samer@0 | 10 { |
samer@0 | 11 private Node node; |
samer@0 | 12 private Component comp; |
samer@0 | 13 private VDouble x, y; |
samer@0 | 14 private VBoolean button; |
samer@0 | 15 |
samer@0 | 16 public MousePosition( Component c) |
samer@0 | 17 { |
samer@0 | 18 node = new Node("mouse"); |
samer@0 | 19 |
samer@0 | 20 Shell.push(node); |
samer@0 | 21 x = new VDouble( "x"); |
samer@0 | 22 y = new VDouble( "y"); |
samer@0 | 23 button = new VBoolean("button",false); |
samer@0 | 24 |
samer@0 | 25 comp=c; |
samer@0 | 26 comp.addMouseListener(this); |
samer@0 | 27 } |
samer@0 | 28 |
samer@0 | 29 public void dispose() { |
samer@0 | 30 if (button.value) comp.removeMouseMotionListener(this); |
samer@0 | 31 comp.removeMouseListener(this); |
samer@0 | 32 x.dispose(); |
samer@0 | 33 y.dispose(); |
samer@0 | 34 } |
samer@0 | 35 |
samer@0 | 36 // mouse event handlers |
samer@0 | 37 public void mouseClicked( MouseEvent e) {} |
samer@0 | 38 public void mouseEntered( MouseEvent e) {} |
samer@0 | 39 public void mouseExited( MouseEvent e) {} |
samer@0 | 40 public void mousePressed( MouseEvent e) { |
samer@0 | 41 button.value=true; |
samer@0 | 42 button.changed(); |
samer@0 | 43 comp.addMouseMotionListener(this); |
samer@0 | 44 } |
samer@0 | 45 |
samer@0 | 46 public void mouseReleased( MouseEvent e) { |
samer@0 | 47 button.value=false; |
samer@0 | 48 button.changed(); |
samer@0 | 49 comp.removeMouseMotionListener(this); |
samer@0 | 50 } |
samer@0 | 51 |
samer@0 | 52 // mouse motion handler |
samer@0 | 53 public void mouseDragged( MouseEvent e) { |
samer@0 | 54 x.set(e.getX()); y.set(e.getY()); |
samer@0 | 55 } |
samer@0 | 56 public void mouseMoved( MouseEvent e) { |
samer@0 | 57 x.set(e.getX()); y.set(e.getY()); |
samer@0 | 58 } |
samer@0 | 59 } |
samer@0 | 60 |