package state;

import shape.Circle;

public class StateCircle1 implements DrawerState{
    private Circle circle;

    public StateCircle1(Circle circle) {
        this.circle = circle;
    }
    @Override
    public void mousePressed(DrawerContext context, double x, double y) {}

    @Override
    public void mouseReleased(DrawerContext context, double x, double y) {
        circle.setFinished(true);
        context.paint(context.getDrawer().getGraphicsContext2D());
        context.setState(new StateCircle0());
    }

    @Override
    public void mouseMoved(DrawerContext context, double x, double y) {
        double radius = Math.sqrt(Math.pow(x - circle.getX(), 2) + Math.pow(y - circle.getY(), 2));
        circle.setDimensions(circle.getX(), circle.getY(), radius*2, radius*2);
        context.paint(context.getDrawer().getGraphicsContext2D());
    }

    @Override
    public void paint(DrawerContext context) {

    }
}