This repository has been archived on 2025-03-02. You can view files and clone it, but cannot push or open issues or pull requests.
JRummikub/src/jrummikub/view/ISettingsPanel.java

44 lines
1 KiB
Java
Raw Normal View History

package jrummikub.view;
import java.awt.Color;
import jrummikub.model.GameSettings;
import jrummikub.util.IEvent;
import jrummikub.util.IEvent1;
import jrummikub.util.IEvent2;
/**
* The panel for the game setup
*/
public interface ISettingsPanel {
public IEvent getAddPlayerEvent();
public IEvent1<Integer> getRemovePlayerEvent();
public IEvent2<Integer, Color> getChangePlayerColorEvent();
public IEvent2<Integer, String> getChangePlayerNameEvent();
public IEvent1<Integer> getChangeInitialMeldThresholdEvent();
/**
* the start game event is emitted when the user wants to start the game
*
* @return the event
*/
public IEvent getStartGameEvent();
public void setError(SettingsError error);
public void enableStartGameButton(boolean enable);
public void enableAddPlayerButton(boolean enable);
public void enableRemovePlayerButtons(boolean enable);
public void setGameSettings(GameSettings gameSettings);
public enum SettingsError {
NO_ERROR, DUPLICATE_PLAYER_NAME, NO_PLAYER_NAME
}
}