using Caliburn.Micro; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using TrackerLibrary.Models; namespace TrackerWPFUI.ViewModels { public class CreateTournamentViewModel : Conductor.Collection.AllActive { private string _tournamentName; private decimal _entryFee; private BindableCollection _availableTeams; private TeamModel _selectedTeamToAdd; private BindableCollection _selectedTeams; private TeamModel _selectedTeamToRemove; private Screen _activeAddTeamView; private BindableCollection _selectedPrizes; private PrizeModel _selectedPrizeToRemove; private Screen _activAddPrizeView; public string TournamentName { get { return _tournamentName; } set { _tournamentName = value; NotifyOfPropertyChange(() => TournamentName); } } public decimal EntryFee { get { return _entryFee; } set { _entryFee = value; NotifyOfPropertyChange(() => EntryFee); } } public BindableCollection AvailableTeams { get { return _availableTeams; } set { _availableTeams = value; } } public TeamModel SelectedTeamToAdd { get { return _selectedTeamToAdd; } set { _selectedTeamToAdd = value; NotifyOfPropertyChange(() => SelectedTeamToAdd); } } public BindableCollection SelectedTeams { get { return _selectedTeams; } set { _selectedTeams = value;} } public TeamModel SelectedTeamToRemove { get { return _selectedTeamToRemove; } set { _selectedTeamToRemove = value; NotifyOfPropertyChange(() => SelectedTeamToRemove); } } public Screen ActiveAddTeamView { get { return _activeAddTeamView; } set { _activeAddTeamView = value; NotifyOfPropertyChange(() => ActiveAddTeamView); } } public BindableCollection SelectedPrizes { get { return _selectedPrizes; } set { _selectedPrizes = value; } } public PrizeModel SelectedPrizeToRemove { get { return _selectedPrizeToRemove; } set { _selectedPrizeToRemove = value; NotifyOfPropertyChange(() => SelectedPrizeToRemove); } } public Screen ActiveAddPrizeView { get { return _activAddPrizeView; } set { _activAddPrizeView = value; NotifyOfPropertyChange(() => ActiveAddPrizeView); } } public bool CanAddTeam() { return SelectedTeamToAdd != null; } public void AddTeams() { } public void CreateTeam() { } public bool CanRemoveTeam() { return SelectedTeamToRemove != null; } public void RemoveTeam() { } public void CreatePrize() { } public bool CanRemovePrize() { return SelectedPrizeToRemove != null; } public void RemovePrize() { } public bool CanCreateTournament() { //ToDo - Add logic for createing the tournament return true; } public void CreateTournament() { } } }