mirror of
https://github.com/tribufu/ServerManagers
synced 2026-05-06 15:17:34 +00:00
Crafting Override Changes
- added good, warning and bad icons to crafting override grids.
This commit is contained in:
parent
a5e1f78629
commit
9df02ec05e
6 changed files with 184 additions and 16 deletions
|
|
@ -4836,7 +4836,7 @@
|
|||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
|
||||
<DataGrid Name="CraftingOverrideItemGrid" ItemsSource="{Binding ConfigOverrideItemCraftingCosts}" SelectedItem="{Binding Path=SelectedCraftingOverride, ElementName=SettingsControl, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, NotifyOnSourceUpdated=True}" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="False" CanUserSortColumns="true" SelectionMode="Single" CanUserResizeRows="False" RowHeaderWidth="25">
|
||||
<DataGrid Name="CraftingOverrideItemGrid" ItemsSource="{Binding ConfigOverrideItemCraftingCosts}" SelectedItem="{Binding Path=SelectedCraftingOverride, ElementName=SettingsControl, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, NotifyOnSourceUpdated=True}" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="False" CanUserSortColumns="true" SelectionMode="Single" CanUserResizeRows="False" RowHeaderWidth="25" SourceUpdated="CraftingOverrideGrids_SourceUpdated">
|
||||
<DataGrid.Resources>
|
||||
<Style TargetType="{x:Type DataGridRow}">
|
||||
<Style.Resources>
|
||||
|
|
@ -4853,6 +4853,28 @@
|
|||
<SolidColorBrush Color="#FFB4B4B4"/>
|
||||
</DataGrid.VerticalGridLinesBrush>
|
||||
|
||||
<DataGrid.RowHeaderTemplate>
|
||||
<DataTemplate>
|
||||
<Image HorizontalAlignment="Center" VerticalAlignment="Center" Width="16" Height="16">
|
||||
<Image.Style>
|
||||
<Style TargetType="{x:Type Image}">
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding DataContext.ValidStatus, RelativeSource={RelativeSource AncestorType=DataGridRow}}" Value="Y">
|
||||
<Setter Property="Source" Value="{com:Icon Path=/Ark Server Manager;component/Art/StatusGood.ico,Size=32}"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding DataContext.ValidStatus, RelativeSource={RelativeSource AncestorType=DataGridRow}}" Value="N">
|
||||
<Setter Property="Source" Value="{com:Icon Path=/Ark Server Manager;component/Art/StatusBad.ico,Size=32}"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding DataContext.ValidStatus, RelativeSource={RelativeSource AncestorType=DataGridRow}}" Value="W">
|
||||
<Setter Property="Source" Value="{com:Icon Path=/Ark Server Manager;component/Art/StatusWarning.ico,Size=32}"/>
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Image.Style>
|
||||
</Image>
|
||||
</DataTemplate>
|
||||
</DataGrid.RowHeaderTemplate>
|
||||
|
||||
<DataGrid.Columns>
|
||||
<DataGridTemplateColumn Width="2*" CanUserSort="True" SortMemberPath="DisplayName">
|
||||
<DataGridTemplateColumn.Header>
|
||||
|
|
@ -4860,7 +4882,7 @@
|
|||
</DataGridTemplateColumn.Header>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<ComboBox IsEditable="True" ItemsSource="{Binding BasePrimalItemList, ElementName=SettingsControl}" SelectedValue="{Binding ItemClassString, Mode=TwoWay, UpdateSourceTrigger=Explicit}" SelectedValuePath="ValueMember" DisplayMemberPath="DisplayMember" LostFocus="ComboBoxItemList_LostFocus" PreviewMouseWheel="ComboBox_PreviewMouseWheel"/>
|
||||
<ComboBox IsEditable="True" ItemsSource="{Binding BasePrimalItemList, ElementName=SettingsControl}" SelectedValue="{Binding ItemClassString, Mode=TwoWay, UpdateSourceTrigger=Explicit, NotifyOnSourceUpdated=True}" SelectedValuePath="ValueMember" DisplayMemberPath="DisplayMember" LostFocus="ComboBoxItemList_LostFocus" PreviewMouseWheel="ComboBox_PreviewMouseWheel"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
|
|
@ -4901,7 +4923,7 @@
|
|||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
|
||||
<DataGrid Name="CraftingOverrideResourceGrid" ItemsSource="{Binding Path=SelectedCraftingOverride.BaseCraftingResourceRequirements, ElementName=SettingsControl}" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="False" CanUserSortColumns="true" SelectionMode="Single" CanUserResizeRows="False" RowHeaderWidth="25">
|
||||
<DataGrid Name="CraftingOverrideResourceGrid" ItemsSource="{Binding Path=SelectedCraftingOverride.BaseCraftingResourceRequirements, ElementName=SettingsControl}" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="False" CanUserSortColumns="true" SelectionMode="Single" CanUserResizeRows="False" RowHeaderWidth="25" SourceUpdated="CraftingOverrideGrids_SourceUpdated">
|
||||
<DataGrid.Resources>
|
||||
<Style TargetType="{x:Type DataGridRow}">
|
||||
<Style.Resources>
|
||||
|
|
@ -4918,6 +4940,28 @@
|
|||
<SolidColorBrush Color="#FFB4B4B4"/>
|
||||
</DataGrid.VerticalGridLinesBrush>
|
||||
|
||||
<DataGrid.RowHeaderTemplate>
|
||||
<DataTemplate>
|
||||
<Image HorizontalAlignment="Center" VerticalAlignment="Center" Width="16" Height="16">
|
||||
<Image.Style>
|
||||
<Style TargetType="{x:Type Image}">
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding Path=DataContext.ValidStatus, RelativeSource={RelativeSource AncestorType=DataGridRow}}" Value="Y">
|
||||
<Setter Property="Source" Value="{com:Icon Path=/Ark Server Manager;component/Art/StatusGood.ico,Size=32}"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Path=DataContext.ValidStatus, RelativeSource={RelativeSource AncestorType=DataGridRow}}" Value="N">
|
||||
<Setter Property="Source" Value="{com:Icon Path=/Ark Server Manager;component/Art/StatusBad.ico,Size=32}"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Path=DataContext.ValidStatus, RelativeSource={RelativeSource AncestorType=DataGridRow}}" Value="W">
|
||||
<Setter Property="Source" Value="{com:Icon Path=/Ark Server Manager;component/Art/StatusWarning.ico,Size=32}"/>
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Image.Style>
|
||||
</Image>
|
||||
</DataTemplate>
|
||||
</DataGrid.RowHeaderTemplate>
|
||||
|
||||
<DataGrid.Columns>
|
||||
<DataGridTemplateColumn Width="2*" CanUserSort="True" SortMemberPath="DisplayName">
|
||||
<DataGridTemplateColumn.Header>
|
||||
|
|
@ -4925,12 +4969,12 @@
|
|||
</DataGridTemplateColumn.Header>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<ComboBox IsEditable="True" ItemsSource="{Binding BasePrimalItemList, ElementName=SettingsControl}" SelectedValue="{Binding ResourceItemTypeString, Mode=TwoWay, UpdateSourceTrigger=Explicit}" SelectedValuePath="ValueMember" DisplayMemberPath="DisplayMember" LostFocus="ComboBoxItemList_LostFocus" PreviewMouseWheel="ComboBox_PreviewMouseWheel"/>
|
||||
<ComboBox IsEditable="True" ItemsSource="{Binding BasePrimalItemList, ElementName=SettingsControl}" SelectedValue="{Binding ResourceItemTypeString, Mode=TwoWay, UpdateSourceTrigger=Explicit, NotifyOnSourceUpdated=True}" SelectedValuePath="ValueMember" DisplayMemberPath="DisplayMember" LostFocus="ComboBoxItemList_LostFocus" PreviewMouseWheel="ComboBox_PreviewMouseWheel"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
|
||||
<DataGridTextColumn Width="100" Binding="{Binding BaseResourceRequirement}" ElementStyle="{StaticResource CenteredTextBlockStyle}" >
|
||||
|
||||
<DataGridTextColumn Width="100" Binding="{Binding BaseResourceRequirement, UpdateSourceTrigger=PropertyChanged, NotifyOnSourceUpdated=True}" ElementStyle="{StaticResource CenteredTextBlockStyle}" >
|
||||
<DataGridTextColumn.Header>
|
||||
<TextBlock Text="{DynamicResource ServerSettings_CraftingOverrides_ResourceQuantityColumnLabel}" ToolTip="{DynamicResource ServerSettings_CraftingOverrides_ResourceQuantityColumnTooltip}" />
|
||||
</DataGridTextColumn.Header>
|
||||
|
|
|
|||
|
|
@ -1314,6 +1314,11 @@ namespace ServerManagerTool
|
|||
Settings.ConfigOverrideSupplyCrateItems.Update();
|
||||
}
|
||||
|
||||
private void CraftingOverrideGrids_SourceUpdated(object sender, DataTransferEventArgs e)
|
||||
{
|
||||
Settings.ConfigOverrideItemCraftingCosts.Update();
|
||||
}
|
||||
|
||||
#region Dinos
|
||||
private void DinoCustomization_Reset(object sender, RoutedEventArgs e)
|
||||
{
|
||||
|
|
@ -1749,7 +1754,7 @@ namespace ServerManagerTool
|
|||
private void AddCraftingOverride_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Settings.ConfigOverrideItemCraftingCosts.Add(new CraftingOverride());
|
||||
Settings.ConfigOverrideItemCraftingCosts.IsEnabled = true;
|
||||
Settings.ConfigOverrideItemCraftingCosts.Update();
|
||||
}
|
||||
|
||||
private void AddCraftingOverrideResource_Click(object sender, RoutedEventArgs e)
|
||||
|
|
@ -1761,6 +1766,7 @@ namespace ServerManagerTool
|
|||
}
|
||||
|
||||
SelectedCraftingOverride.BaseCraftingResourceRequirements.Add(new CraftingResourceRequirement());
|
||||
Settings.ConfigOverrideItemCraftingCosts.Update();
|
||||
}
|
||||
|
||||
private void ClearCraftingOverrides_Click(object sender, RoutedEventArgs e)
|
||||
|
|
@ -1770,7 +1776,7 @@ namespace ServerManagerTool
|
|||
|
||||
SelectedCraftingOverride = null;
|
||||
Settings.ConfigOverrideItemCraftingCosts.Clear();
|
||||
Settings.ConfigOverrideItemCraftingCosts.IsEnabled = false;
|
||||
Settings.ConfigOverrideItemCraftingCosts.Update();
|
||||
}
|
||||
|
||||
private void ClearCraftingOverrideResources_Click(object sender, RoutedEventArgs e)
|
||||
|
|
@ -1779,6 +1785,7 @@ namespace ServerManagerTool
|
|||
return;
|
||||
|
||||
SelectedCraftingOverride?.BaseCraftingResourceRequirements.Clear();
|
||||
Settings.ConfigOverrideItemCraftingCosts.Update();
|
||||
}
|
||||
|
||||
private void PasteCraftingOverride_Click(object sender, RoutedEventArgs e)
|
||||
|
|
@ -1794,6 +1801,8 @@ namespace ServerManagerTool
|
|||
// read the pasted data into an ini file.
|
||||
var iniFile = IniFileUtils.ReadString(window.ConfigData.Replace(" ", ""));
|
||||
|
||||
Server.Profile.ConfigOverrideItemCraftingCosts.RenderToModel();
|
||||
|
||||
// cycle through the sections, adding them to the engrams list. Will bypass any sections that are named as per the ARK default sections.
|
||||
foreach (var section in iniFile.Sections.Where(s => s.SectionName != null && !SystemIniFile.IniSectionNames.ContainsValue(s.SectionName)))
|
||||
{
|
||||
|
|
@ -1803,6 +1812,8 @@ namespace ServerManagerTool
|
|||
Server.Profile.ConfigOverrideItemCraftingCosts.IsEnabled |= configOverrideItemCraftingCosts.IsEnabled;
|
||||
}
|
||||
|
||||
var errors = Server.Profile.ConfigOverrideItemCraftingCosts.RenderToView();
|
||||
|
||||
RefreshBasePrimalItemList();
|
||||
}
|
||||
|
||||
|
|
@ -1813,7 +1824,7 @@ namespace ServerManagerTool
|
|||
|
||||
var item = ((CraftingOverride)((Button)e.Source).DataContext);
|
||||
Settings.ConfigOverrideItemCraftingCosts.Remove(item);
|
||||
Settings.ConfigOverrideItemCraftingCosts.IsEnabled = Settings.ConfigOverrideItemCraftingCosts.Count > 0;
|
||||
Settings.ConfigOverrideItemCraftingCosts.Update();
|
||||
}
|
||||
|
||||
private void RemoveCraftingOverrideResource_Click(object sender, RoutedEventArgs e)
|
||||
|
|
@ -1826,10 +1837,13 @@ namespace ServerManagerTool
|
|||
|
||||
var item = ((CraftingResourceRequirement)((Button)e.Source).DataContext);
|
||||
SelectedCraftingOverride.BaseCraftingResourceRequirements.Remove(item);
|
||||
Settings.ConfigOverrideItemCraftingCosts.Update();
|
||||
}
|
||||
|
||||
private void SaveCraftingOverride_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Settings.ConfigOverrideItemCraftingCosts.RenderToModel();
|
||||
|
||||
var iniValues = new List<string>();
|
||||
iniValues.AddRange(Settings.ConfigOverrideItemCraftingCosts.ToIniValues());
|
||||
var iniValue = string.Join("\r\n", iniValues);
|
||||
|
|
@ -1848,6 +1862,8 @@ namespace ServerManagerTool
|
|||
if (item == null)
|
||||
return;
|
||||
|
||||
Settings.ConfigOverrideItemCraftingCosts.RenderToModel();
|
||||
|
||||
var iniName = Settings.ConfigOverrideItemCraftingCosts.IniCollectionKey;
|
||||
var iniValue = $"{iniName}={item.ToINIValue()}";
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue