1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| /** {@inheritDoc}
*/
public void mouseClicked(MouseEvent event) {
// Set ref point.
refPoint = new Point(event.getX(), event.getY());
}
/** {@inheritDoc}
*/
public void mouseDragged(MouseEvent event) {
// Drag started outside the dialog.
// Set ref point.
if (refPoint == null) {
refPoint = new Point(event.getX(), event.getY());
}
// Dialog being dragged.
else {
// Compute movement.
int dx = event.getX() - refPoint.x;
int dy = event.getY() - refPoint.Y;
/** @todo try to keep the dialog within the screen boundaries. */
// Apply movement to dialog.
dialog.setLocation(dialog.getX() + dx , dialog.getY() + dy);
// Update ref point.
refPoint.x = event.getX();
refPoint.y = event.getY();
}
}
/** {@inheritDoc}
*/
public void mouseReleased(MouseEvent event) {
// Release ref point for next drag.
refPoint = null;
} |
Partager