32 lines
1.0 KiB
C#
32 lines
1.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Minesweeper.Core;
|
|
using Minesweeper.Presentation.Factories;
|
|
|
|
namespace Minesweeper.Presentation.Views
|
|
{
|
|
public interface IGameView : IView
|
|
{
|
|
event Action RestartRequested;
|
|
event Action GoToMenuRequested;
|
|
event Action PauseRequested;
|
|
event Action ResumeRequested;
|
|
event Action CellPressStarted;
|
|
event Action CellPressEnded;
|
|
event Action<int, int> CellOpenRequested;
|
|
event Action<int, int> CellFlagRequested;
|
|
|
|
void ShowGame();
|
|
void HideGame();
|
|
void ShowPause();
|
|
void HidePause();
|
|
void ShowResult(GameState state);
|
|
void HideResult();
|
|
void SetMineCount(int minesCount);
|
|
void SetTimer(float seconds);
|
|
void RebuildBoard(IReadOnlyList<BoardCellData> cells, int width, int height, ICellViewFactory cellViewFactory);
|
|
void RefreshBoard(IReadOnlyList<BoardCellData> cells);
|
|
void SetBoardInputEnabled(bool enabled);
|
|
}
|
|
}
|