package jrummikub.view; import jrummikub.model.Stone; import jrummikub.util.IEvent2; /** * An interface for view elements that can emit click events for clicks on * stones */ public interface IStonePanel { /** * the click event is emitted when the player clicks on the table/hand/etc. * * @return the event; the first parameter is the stone that was clicked on, * the second is true when the player wants to add stones to his * selection instead of replacing them */ public IEvent2 getStoneClickEvent(); /** * the range click event is emitted when the player clicks on the table/hand/ * etc. and wants to select a range instead of a single stone * * @return the event; the first parameter is the stone that was clicked on, * the second is true when the player wants to add stones to his * selection instead of replacing them */ public IEvent2 getRangeClickEvent(); /** * the set click event is emitted when the player clicks on the table/hand/ * etc. and wants to select a whole set instead of a single stone * * @return the event; the first parameter the stone that was clicked on, the * second is true when the player wants to add stones to his selection * instead of replacing them */ public IEvent2 getSetClickEvent(); }