public void InInitialize() { _model = new BekeritModel(null); //_model.GameAdvanced += new EventHandler<BekeritEventArgs>(Model_GameAdvanced); //_model.GameOver += new EventHandler<BekeritEventArgs>(Model_GameOver); }
private void App_Startup(object sender, StartupEventArgs e) { BekeritDataAccess dataAccess; //dataAccess = new BekeritFileDataAccess(AppDomain.CurrentDomain.BaseDirectory); // fájl alapú mentés dataAccess = new BekeritDbDataAccess("name=BekeritModel"); // adatbázis alapú mentés // modell létrehozása _model = new BekeritModel(dataAccess); _model.GameOver += new EventHandler <BekeritEventArgs>(Model_GameOver); _model.NewGame(); // nézemodell létrehozása _viewModel = new BekeritViewModel(_model); _viewModel.NewGameSmall += new EventHandler(ViewModel_NewGameSmall); _viewModel.NewGameMedium += new EventHandler(ViewModel_NewGameMedium); _viewModel.NewGameBig += new EventHandler(ViewModel_NewGameBig); _viewModel.ExitGame += new EventHandler(ViewModel_ExitGame); _viewModel.LoadGameOpen += new EventHandler(ViewModel_LoadGameOpen); _viewModel.LoadGameClose += new EventHandler <String>(ViewModel_LoadGameClose); _viewModel.SaveGameOpen += new EventHandler(ViewModel_SaveGameOpen); _viewModel.SaveGameClose += new EventHandler <String>(ViewModel_SaveGameClose); // nézet létrehozása _view = new MainWindow(); _view.DataContext = _viewModel; _view.Closing += new System.ComponentModel.CancelEventHandler(View_Closing); // eseménykezelés a bezáráshoz _view.Show(); }
public BekeritViewModel(BekeritModel model) { _model = model; _model.GameOver += new EventHandler <BekeritEventArgs>(Model_GameOver); _model.GameCreated += new EventHandler <BekeritEventArgs>(Model_GameCreated); NewGameSmallCommand = new DelegateCommand(param => OnNewGameSmall()); NewGameMediumCommand = new DelegateCommand(param => OnNewGameMedium()); NewGameBigCommand = new DelegateCommand(param => OnNewGameBig()); SaveGameOpenCommand = new DelegateCommand(param => EnableSave, async param => { Games = new ObservableCollection <SaveEntry>(await _model.ListGamesAsync()); OnSaveGameOpen(); }); SaveGameCloseCommand = new DelegateCommand( param => NewName.Length > 0, // parancs végrehajthatóságának feltétele param => { OnSaveGameClose(NewName); }); LoadGameOpenCommand = new DelegateCommand(async param => { Games = new ObservableCollection <SaveEntry>(await _model.ListGamesAsync()); OnLoadGameOpen(); }); LoadGameCloseCommand = new DelegateCommand( param => SelectedGame != null, // parancs végrehajthatóságának feltétele param => { OnLoadGameClose(SelectedGame.Name); }); ExitCommand = new DelegateCommand(param => OnExitGame()); // játéktábla létrehozása Fields = new ObservableCollection <BekeritField>(); for (Int32 i = 0; i < _model._size; i++) // inicializáljuk a mezőket { for (Int32 j = 0; j < _model._size; j++) { Fields.Add(new BekeritField { IsLocked = false, Player = Model.Players.NoPlayer, PlayerColor = Model.Players.NoPlayer, Size = 6, X = i, Y = j, Number = i * _model.Table.Size + j, // a gomb sorszáma, amelyet felhasználunk az azonosításhoz StepCommand = new DelegateCommand(param => StepGame(Convert.ToInt32(param))) // ha egy mezőre léptek, akkor jelezzük a léptetést, változtatjuk a lépésszámot }); } } //FinishTable(); EnableSave = true; }