package jrummikub.view; import jrummikub.control.turn.TurnMode; import jrummikub.util.IEvent; /** * The player panel that contains a player's board and other user interfaces */ public interface IPlayerPanel { /** * Sets the time the player has left for his turn * * @param time * the time left * @param totalTime * total time for a turn */ public void setTime(int time, int totalTime); /** * The sort by groups event is emitted when the player wants to sort his * stones by groups * * @return the event */ public IEvent getSortByGroupsEvent(); /** * The sort by runs event is emitted when the player wants to sort his * stones by runs * * @return the event */ public IEvent getSortByRunsEvent(); /** * The end turn event is emitted when the player wants to end his turn * * @return the event */ public IEvent getEndTurnEvent(); /** * The redeal event is emitted when the player wants to get new stones * * @return the event */ public IEvent getRedealEvent(); /** * Sets the buttons available to end the turn * * @param turnMode * the {@link TurnMode} */ public void setEndTurnMode(TurnMode turnMode); }