import java.awt.event.MouseEvent;
import sk.upjs.jpaz2.Turtle;
import sk.upjs.jpaz2.WinPane;
public class GrafickyEditor extends WinPane {
private Turtle pero;
private boolean tahamPero;
public GrafickyEditor() {
this.pero = new Turtle();
this.add(this.pero);
this.pero.center();
}
@Override
protected void onMouseClicked(int x, int y, MouseEvent detail) {
this.pero.setPosition(x, y);
}
@Override
protected void onMouseMoved(int x, int y, MouseEvent detail) {
if (detail.isAltDown()) {
this.pero.turnTowards(x, y);
double xPos = this.pero.getX();
double yPos = this.pero.getY();
this.pero.moveTo(x, y);
this.pero.setPosition(xPos, yPos);
}
}
@Override
protected void onMousePressed(int x, int y, MouseEvent detail) {
if (detail.getButton() == MouseEvent.BUTTON1) {
if (this.pero.distanceTo(x, y) < 5) {
this.tahamPero = true;
}
}
}
@Override
protected void onMouseDragged(int x, int y, MouseEvent detail) {
if (this.tahamPero) {
this.pero.moveTo(x, y);
}
}
@Override
protected void onMouseReleased(int x, int y, MouseEvent detail) {
if (detail.getButton() == MouseEvent.BUTTON1) {
this.tahamPero = false;
}
}
}