//When The "Edit" Button is clicked private void PokedexManager_ManageDex_Edit_Click(object sender, RoutedEventArgs e) { try { //Edit Pokemon Here! if (((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataType == PokedexList_DataType.Pokemon) { Pokedex.Pokemon.PokemonData Data = (Pokedex.Pokemon.PokemonData)((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataTag; // Gets the Data UI.Pokedex.Pokemon pokemon = new UI.Pokedex.Pokemon(SaveManager.SaveData, Data); // Creates a new window pokemon.ShowDialog(); // Shows the window PokedexManager_ReloadList(); // Updates the list } //Edit Moves Here! else if (((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataType == PokedexList_DataType.Move) { Pokedex.Moves.MoveData Data = (Pokedex.Moves.MoveData)((PokedexList_DataBind)PokedexManager_List.SelectedItem).DataTag; // Gets the Data UI.Pokedex.Moves move = new UI.Pokedex.Moves(SaveManager.SaveData, Data); // Creates a new window move.ShowDialog(); // Shows the window PokedexManager_ReloadList(); // Updates the list } } catch (NullReferenceException) { MessageBox.Show("You cant edit nothing! or can you?"); } }
//When The "Delete" Button is clicked private void PokedexManager_ManageDex_Delete_Click(object sender, RoutedEventArgs e) { try { if (((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataType == PokedexList_DataType.Pokemon) { Pokedex.Pokemon.PokemonData Data = (Pokedex.Pokemon.PokemonData)((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataTag; SaveManager.SaveData.PokedexData.Pokemon.Remove(Data); Data.Dispose(); Data = null; } else if (((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataType == PokedexList_DataType.Move) { Pokedex.Moves.MoveData Data = (Pokedex.Moves.MoveData)((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataTag; SaveManager.SaveData.PokedexData.Moves.Remove(Data); #region Remove Links to the move #region Pokemon foreach (VPTU.Pokedex.Pokemon.PokemonData pokemon in SaveManager.SaveData.PokedexData.Pokemon) { if (pokemon.Moves == null) { pokemon.Moves = new List <Pokedex.Pokemon.Link_Moves>(); continue; } List <VPTU.Pokedex.Pokemon.Link_Moves> moves = pokemon.Moves.FindAll(x => x.MoveName.ToLower() == Data.Name.ToLower()); foreach (VPTU.Pokedex.Pokemon.Link_Moves move in moves) { pokemon.Moves.Remove(move); } } #endregion #endregion Data.Dispose(); Data = null; } PokedexManager_ReloadList(); } catch (NullReferenceException) { MessageBox.Show("You cant delete nothing! or can you?"); } }
//When The "Delete" Button is clicked private void PokedexManager_ManageDex_Delete_Click(object sender, RoutedEventArgs e) { try { if (((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataType == PokedexList_DataType.Pokemon) { Pokedex.Pokemon.PokemonData Data = (Pokedex.Pokemon.PokemonData)((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataTag; SaveManager.SaveData.PokedexData.Pokemon.Remove(Data); } else if (((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataType == PokedexList_DataType.Move) { Pokedex.Moves.MoveData Data = (Pokedex.Moves.MoveData)((PokedexList_DataBind)PokedexManager_List.SelectedValue).DataTag; SaveManager.SaveData.PokedexData.Moves.Remove(Data); } PokedexManager_ReloadList(); } catch (NullReferenceException) { MessageBox.Show("You cant delete nothing! or can you?"); } }