/// <summary> /// Launchs a creation window depending on the category selected. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void AddButton_Click(object sender, RoutedEventArgs e) { textureSelected = null; try { ListBoxItem selectedItem = (ListBoxItem)MainList.SelectedItem; string selected = selectedItem.Content.ToString(); ResetInfoLabel(); GeneralInfoTextBox.Text = ""; ChildList.SelectedIndex = -1; switch (selected) { case "Abilities": AbilityWindow abilityWindow = new AbilityWindow(manager, false, null); abilityWindow.ShowDialog(); RefreshList(); break; case "Character": CharacterWindow characterWindow = new CharacterWindow(manager, false); characterWindow.ShowDialog(); RefreshList(); break; case "Consumables": ConsumableWindow consumableWindow = new ConsumableWindow(manager, false, null); consumableWindow.ShowDialog(); RefreshList(); break; case "Doors & Keys": DoorKeyWindow doorKeyWindow = new DoorKeyWindow(manager, false, null, null); doorKeyWindow.ShowDialog(); RefreshList(); break; case "Enemies": EnemyWindow enemyWindow = new EnemyWindow(manager, false, null); enemyWindow.ShowDialog(); RefreshList(); break; case "NPCs": NPCWindow npcWindow = new NPCWindow(manager, false, null); npcWindow.ShowDialog(); RefreshList(); break; case "Walls": WallWindow wallWindoe = new WallWindow(manager, false, null); wallWindoe.ShowDialog(); RefreshList(); break; case "Weapons": WeaponWindow weaponWindow = new WeaponWindow(manager, false, null); weaponWindow.ShowDialog(); RefreshList(); break; } } catch (Exception) { MessageBox.Show("No category selected.", "Attention", MessageBoxButton.OK, MessageBoxImage.Information); } }
/// <summary> /// Launch a creation window, with the "edit" option, depending on the category selected. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void EditButton_Click(object sender, RoutedEventArgs e) { textureSelected = null; try { if (ChildList.SelectedItem == null) { throw new NullReferenceException(); } String selectedElement = (String)ChildList.SelectedItem; ListBoxItem selectedItem = (ListBoxItem)MainList.SelectedItem; string selected = selectedItem.Content.ToString(); ResetInfoLabel(); GeneralInfoTextBox.Text = ""; switch (selected) { case "Abilities": AbilityWindow abilityWindow = new AbilityWindow(manager, true, manager.GetAbility(selectedElement)); abilityWindow.ShowDialog(); RefreshList(); break; case "Character": CharacterWindow characterWindow = new CharacterWindow(manager, true); characterWindow.ShowDialog(); RefreshList(); break; case "Consumables": ConsumableWindow consumableWindow = new ConsumableWindow(manager, true, manager.GetConsumable(selectedElement)); consumableWindow.ShowDialog(); RefreshList(); break; case "Doors & Keys": DoorKeyWindow doorKeyWindow = new DoorKeyWindow(manager, true, manager.GetDoor(selectedElement + "_Door"), manager.GetKey(selectedElement + "_Key")); doorKeyWindow.ShowDialog(); RefreshList(); break; case "Enemies": EnemyWindow enemyWindow = new EnemyWindow(manager, true, manager.GetEnemy(selectedElement)); enemyWindow.ShowDialog(); RefreshList(); break; case "NPCs": NPCWindow npcWindow = new NPCWindow(manager, true, manager.GetNPC(selectedElement)); npcWindow.ShowDialog(); RefreshList(); break; case "Walls": WallWindow wallWindoe = new WallWindow(manager, true, manager.GetBgItem(selectedElement)); wallWindoe.ShowDialog(); RefreshList(); break; case "Weapons": WeaponWindow weaponWindow = new WeaponWindow(manager, true, manager.GetWeapon(selectedElement)); weaponWindow.ShowDialog(); RefreshList(); break; } } catch (NullReferenceException) { MessageBox.Show("No element selected.", "Attention", MessageBoxButton.OK, MessageBoxImage.Information); } catch (Exception) { MessageBox.Show("No category selected.", "Attention", MessageBoxButton.OK, MessageBoxImage.Information); } }