import java.awt.Color;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import sk.upjs.jpaz2.Turtle;
import sk.upjs.jpaz2.WinPane;
public class GrafickyEditor extends WinPane {
        private Turtle kreslic = new Turtle();
        public GrafickyEditor() {
                add(kreslic);
        }
        @Override
        protected void onMouseClicked(int x, int y, MouseEvent detail) {
                super.onMouseClicked(x, y, detail);
                kreslic.setPosition(x, y);
        }
        @Override
        protected void onMouseMoved(int x, int y, MouseEvent detail) {
                super.onMouseMoved(x, y, detail);
                if (detail.isAltDown()) {
                        double uhol = kreslic.directionTowards(x, y);
                        kreslic.setDirection(uhol);
                        double sx = kreslic.getX(), sy = kreslic.getY();
                        kreslic.moveTo(x, y);
                        kreslic.setPosition(sx, sy);
                }
        }
        @Override
        protected void onMouseDragged(int x, int y, MouseEvent detail) {
                super.onMouseDragged(x, y, detail);
                kreslic.moveTo(x, y);
        }
        @Override
        protected void onKeyPressed(KeyEvent e) {
                super.onKeyPressed(e);
                if (e.getKeyChar() == 'n') {
                        int r = (int)(Math.random() * 256);
                        int g = (int)(Math.random() * 256);
                        int b = (int)(Math.random() * 256);
                        kreslic.setPenColor(new Color(r, g, b));
                }
        }
}