FastFlag editor: prevent duplicate additions

This commit is contained in:
pizzaboxer 2023-07-24 16:38:50 +01:00
parent e2c1997b21
commit 3c365a5839
No known key found for this signature in database
GPG Key ID: 59D4A1DBAD0F2BA8
2 changed files with 30 additions and 10 deletions

View File

@ -32,7 +32,7 @@
</Style>
</ui:Button.Style>
</ui:Button>
<ToggleButton Content="Show preset flags" Click="ToggleButton_Click" Margin="12,0,0,0" />
<ToggleButton x:Name="TogglePresetsButton" Content="Show preset flags" Click="ToggleButton_Click" Margin="12,0,0,0" />
</StackPanel>
<DataGrid Name="DataGrid" Grid.Row="2" HeadersVisibility="Column" GridLinesVisibility="Horizontal" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" CellEditEnding="DataGrid_CellEditEnding">

View File

@ -126,19 +126,39 @@ namespace Bloxstrap.UI.Elements.Menu.Pages
if (dialog.Result != MessageBoxResult.OK)
return;
var entry = new FastFlag
{
// Enabled = true,
Name = dialog.FlagNameTextBox.Text,
Value = dialog.FlagValueTextBox.Text
};
string name = dialog.FlagNameTextBox.Text;
_fastFlagList.Add(entry);
FastFlag? entry;
if (App.FastFlags.GetValue(name) is null)
{
entry = new FastFlag
{
// Enabled = true,
Name = dialog.FlagNameTextBox.Text,
Value = dialog.FlagValueTextBox.Text
};
_fastFlagList.Add(entry);
App.FastFlags.SetValue(entry.Name, entry.Value);
}
else
{
Controls.ShowMessageBox("An entry for this FastFlag already exists.", MessageBoxImage.Information);
if (!_showPresets && FastFlagManager.PresetFlags.Values.Contains(dialog.FlagNameTextBox.Text))
{
_showPresets = true;
TogglePresetsButton.IsChecked = true;
ReloadList();
}
entry = _fastFlagList.Where(x => x.Name == name).FirstOrDefault();
}
DataGrid.SelectedItem = entry;
DataGrid.ScrollIntoView(entry);
App.FastFlags.SetValue(entry.Name, entry.Value);
}
private void DeleteButton_Click(object sender, RoutedEventArgs e)