package jrummikub.view;
import jrummikub.model.Position;
import jrummikub.util.IEvent2;
/**
* An interface for view elements that can emit click events
*/
public interface IClickable {
* the click event is emitted when the player clicks on the table/board/etc.
*
* @return the event; the first parameter is the position of the click in grid
* coordinates, the second is true when the player wants to add stones
* to his selection instead of replacing them
public IEvent2<Position, Boolean> getClickEvent();
* the range click event is emitted when the player clicks on the table/board/
* etc. and wants to select a range instead of a single stone
public IEvent2<Position, Boolean> getRangeClickEvent();
* the set click event is emitted when the player clicks on the table/board/
* etc. and wants to select a whole set instead of a single stone
public IEvent2<Position, Boolean> getSetClickEvent();
}