package io.github.jgkamat.ViPaint.Tools.KeyInstants; import io.github.jgkamat.ViPaint.Tools.KeyModeTools.Cursor; import io.github.jgkamat.ViPaint.Tools.KeyModeTools.KeyToolEvent; import io.github.jgkamat.ViPaint.Tools.KeyTool; import javafx.scene.canvas.GraphicsContext; import javafx.scene.input.KeyCode; /** * This interface represents a KeyInstant Object. * KeyInstant tools are single use tools like the moving tool. * * @author Jay Kamat * @version 1.0 */ public interface KeyInstant extends KeyTool { /** * Tools method that is called when the key is pushed. * * @param c The cursor that is passed in. * @param g The current graphics context. * @param e The keyToolEvent that is passed in. * @param repetitions the number of times to run this KeyInstant. Will be > 0. * */ void onPress(Cursor c, KeyToolEvent e, GraphicsContext g, int repetitions); }