/// <summary>
 /// Ctor
 /// </summary>
 /// <param name="serverMessage"></param>
 /// <param name="client"></param>
 public SinglePlayerGameBoard(string serverMessage, TelnetSingaleClient client)
 {
     vm = new SinglePlayerBoardGameViewModel(serverMessage, client, this);
     this.DataContext = vm;
     InitializeComponent();
     this.MazeName.SetMazeBoardDatacontext(vm);
     this.Closing         += ExitWindow;
     MazeName.YouWonEvent += MyMazeBoard_YouWonEvent;
     winning = false;
 }
        /// <summary>
        /// Ctor
        /// </summary>
        /// <param name="serverMessage"></param>
        /// <param name="client"></param>
        public SinglePlayerBoardGameModel(string serverMessage, TelnetSingaleClient client)
        {
            this.serverMessage = serverMessage;
            this.client        = client;
            JObject json = new JObject();

            json            = JObject.Parse(serverMessage);
            this.MazeName   = (string)json.GetValue("Name");
            this.MazeString = (string)json.GetValue("Maze");
            this.MazeRows   = (int)json.GetValue("Rows");
            this.MazeCols   = (int)json.GetValue("Cols");
            JObject PosJ = (JObject)json.GetValue("Start");

            this.InitialPoint = (string)PosJ.GetValue("Row") + "," + (string)PosJ.GetValue("Col");
            PosJ           = (JObject)json.GetValue("End");
            this.GoalPoint = (string)PosJ.GetValue("Row") + "," + (string)PosJ.GetValue("Col");
        }
 /// <summary>
 /// Ctor
 /// </summary>
 /// <param name="serverMessage"></param>
 /// <param name="client"></param>
 /// <param name="view"></param>
 public SinglePlayerBoardGameViewModel(string serverMessage, TelnetSingaleClient client, SinglePlayerGameBoard view)
 {
     this.model = new SinglePlayerBoardGameModel(serverMessage, client);
     this.view  = view;
 }