コード例 #1
0
        /// <summary>
        /// Constructs the PlayersForm from a PlayerList
        /// </summary>
        /// <param name="list">contains a list of the players</param>
        public PlayersForm(PlayerList list)
        {
            InitializeComponent();
            playerList = list;
            source = new BindingSource();

            // Because PlayerComponents do not encapsulate all of their data within fields, we must adapt them to
            // do so that the UI can bind itself to the data source.
            // The adapter merely places all of the relevant data in fields, and allows us to change the player list before
            // commiting the changes to the actual player list.
            foreach (PlayerComponent player in list.GetChildren())
            {
                PlayerDataGridAdapter adapter = new PlayerDataGridAdapter(player, playerList);
                source.Add(adapter);
            }

            // Initialize Player List to bind data properly.
            uiPlayerList.AutoGenerateColumns = false;
            uiPlayerList.AutoSize = true;
            uiPlayerList.DataSource = source;

            name.DataPropertyName = "Player_Name";
            race.DataPropertyName = "RaceMember";
            gold.DataPropertyName = "GoldMember";
            wood.DataPropertyName = "WoodMember";
            metal.DataPropertyName = "MetalMember";
        }
コード例 #2
0
        /// <summary>
        /// Constructs the PlayersForm from a PlayerList
        /// </summary>
        /// <param name="list">contains a list of the players</param>
        public PlayersForm(PlayerList list)
        {
            InitializeComponent();
            playerList = list;
            source     = new BindingSource();

            // Because PlayerComponents do not encapsulate all of their data within fields, we must adapt them to
            // do so that the UI can bind itself to the data source.
            // The adapter merely places all of the relevant data in fields, and allows us to change the player list before
            // commiting the changes to the actual player list.
            foreach (PlayerComponent player in list.GetChildren())
            {
                PlayerDataGridAdapter adapter = new PlayerDataGridAdapter(player, playerList);
                source.Add(adapter);
            }


            // Initialize Player List to bind data properly.
            uiPlayerList.AutoGenerateColumns = false;
            uiPlayerList.AutoSize            = true;
            uiPlayerList.DataSource          = source;

            name.DataPropertyName  = "Player_Name";
            race.DataPropertyName  = "RaceMember";
            gold.DataPropertyName  = "GoldMember";
            wood.DataPropertyName  = "WoodMember";
            metal.DataPropertyName = "MetalMember";
        }
コード例 #3
0
 private void removePlayerButton_Click(object sender, EventArgs e)
 {
     foreach (DataGridViewRow row in uiPlayerList.SelectedRows)
     {
         PlayerDataGridAdapter adapter = (PlayerDataGridAdapter)row.DataBoundItem;
         adapter.RemovedMember          = true;
         row.Selected                   = false;
         row.DefaultCellStyle.BackColor = Color.Red;
     }
 }
 public void Init()
 {
     playerList = new PlayerList();
     adapter = new PlayerDataGridAdapter(new PlayerComponent(), playerList);
     adapter.Player_Name = "Player 1";
     adapter.RaceMember = "Human";
     adapter.GoldMember = 10;
     adapter.MetalMember = 20;
     adapter.WoodMember = 0;
     adapter.RemovedMember = false;
     adapter.AddedMember = true;
 }
コード例 #5
0
 private void addPlayerButton_Click(object sender, EventArgs e)
 {
     PlayerDataGridAdapter adapter = new PlayerDataGridAdapter(new PlayerComponent(), playerList);
     // Default Values
     adapter.RaceMember = "Human";
     adapter.AddedMember = true;
     adapter.GoldMember = 100;
     adapter.WoodMember = 100;
     adapter.MetalMember = 100;
     source.Add(adapter);
     // Move Focus to added Player
     source.MoveLast();
     uiPlayerList.Focus();
 }
コード例 #6
0
        private void addPlayerButton_Click(object sender, EventArgs e)
        {
            PlayerDataGridAdapter adapter = new PlayerDataGridAdapter(new PlayerComponent(), playerList);

            // Default Values
            adapter.RaceMember  = "Human";
            adapter.AddedMember = true;
            adapter.GoldMember  = 100;
            adapter.WoodMember  = 100;
            adapter.MetalMember = 100;
            source.Add(adapter);
            // Move Focus to added Player
            source.MoveLast();
            uiPlayerList.Focus();
        }
 private PlayerDataGridAdapter generateValidAdapter()
 {
     PlayerDataGridAdapter adapter = new PlayerDataGridAdapter(new PlayerComponent(), playerList);
     adapter.Player_Name = "Player 1";
     adapter.RaceMember = "Human";
     adapter.GoldMember = 10;
     adapter.MetalMember = 20;
     adapter.WoodMember = 0;
     adapter.RemovedMember = false;
     adapter.AddedMember = true;
     return adapter;
 }
        public void TestDoUpdatePlayerWithValidInput()
        {
            PlayerComponent playerToUpdate = buildValidPlayer();
            playerList.AddChild(playerToUpdate);
            adapter = new PlayerDataGridAdapter(playerToUpdate, playerList);
            adapter.Player_Name = adapter.Player_Name + "updateAppended";
            adapter.RaceMember = "Human"; // buildValidPlayer initializes as Zombie.
            adapter.GoldMember += 10;
            adapter.MetalMember += 10;
            adapter.WoodMember += 10;

            adapter.Do();
            Assert.AreEqual(adapter.Player_Name, playerToUpdate.Name, "PlayerDataGridAdapter does not update name properly.");
            Assert.AreEqual(adapter.RaceMember, playerToUpdate.Race, "PlayerDataGridAdapter does not update race properly.");
            Assert.AreEqual(adapter.GoldMember, playerToUpdate.Gold, "PlayerDataGridAdapter does not update gold properly.");
            Assert.AreEqual(adapter.WoodMember, playerToUpdate.Wood, "PlayerDataGridAdapter does not update wood properly.");
            Assert.AreEqual(adapter.MetalMember, playerToUpdate.Metal, "PlayerDataGridAdapter does not update metal properly.");
        }
        public void TestDoRemovePlayerWithValidInput()
        {
            PlayerComponent playerToRemove = buildValidPlayer();
            playerList.AddChild(playerToRemove);
            adapter = new PlayerDataGridAdapter(playerToRemove, playerList);
            adapter.RemovedMember = true;

            adapter.Do();
            Assert.AreEqual(0, playerList.GetChildren().Count, "PlayerDataGridAdapter does not remove properly.");
        }