/**
* IgoView インターフェースは、囲碁ViewerのViewが持つメソッドを定義します。
* @author Jiro Suzuki
*/
public interface IgoView{
/**
* インスタンスを初期化します。
* @param controller コントローラー
*/
public void initialize(IgoModel controller);
/**
* コントローラーを変更します。
* @param controller コントローラー
*/
public void changeController(IgoModel controller);
/**
* ビューを更新します。
* @param mode 動作モード
* @param isExam 検討モードかどうかの真偽値
* @param intBoard 盤面データ
* @param gameInfo 対局情報
* @param numOfMoves 手数
*/
public void updateView(Mode mode,boolean isExam,IntBoard intBoard,GameInformation gameInfo,int numOfMoves);
/**
* ビューを更新します。
* @param mode 動作モード
* @param isExam 検討モードかどうかの真偽値
* @param intBoard 盤面データ
* @param gameInfo 対局情報
* @param numOfMoves 手数
* @param isAutoPlay 自動再生かどうかの真偽値
*/
public void updateView(Mode mode,boolean isExam,IntBoard intBoard,GameInformation gameInfo,int numOfMoves,boolean isAutoPlay);
/**
* 操作を終了するかどうか確認します。
* @return 確認の結果コード
*/
public int askClosedOperation();
/**
* 「保存ウィンドウ」を表示します。
* @return 「保存ウィンドウ」を表示した結果コード
*/
public String showSaveDialog();
/**
* 「開くウィンドウ」を表示します。
* @return 「開くウィンドウ」を表示した結果コード
*/
public String showOpenDialog();
/**
* 自動再生時の再生速度を確認します。
* @return 確認の結果コード
*/
public int askIntervalTime();
/**
* 対局情報を表示します。
* @param gameInfo 対局情報
*/
public void showGameInfoDialog(GameInformation gameInfo);
}