JD2022-TU1/main/tools/modules/JD.Guinness.WPF.Module/View/LanguageView.xaml

92 lines
4.9 KiB
XML

<DockPanel
x:Class="JD.Guinness.WPF.Module.View.LanguageView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dataGrid="clr-namespace:ActiproSoftware.Windows.Controls.DataGrid;assembly=DataGrid.Contrib"
xmlns:control="clr-namespace:JD.Guinness.WPF.Module.Control"
Name="This"
Margin="5">
<DockPanel.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="../Resource/Icons.xaml"/>
<ResourceDictionary Source="../Resource/Converters.xaml"/>
</ResourceDictionary.MergedDictionaries>
<control:DataGridHeaderTemplateSelector x:Key="DataGridHeaderTemplateSelector" />
</ResourceDictionary>
</DockPanel.Resources>
<TextBlock DockPanel.Dock="Top" Text="Languages" FontSize="15" Margin="0,0,0,5"/>
<dataGrid:ThemedDataGrid
Name="DataGrid"
ItemsSource="{Binding Languages}"
AutoGenerateColumns="False"
IsReadOnly="{Binding IsAvailable, Converter={StaticResource InverseBooleanConverter}}"
SelectionMode="Single"
GridLinesVisibility="None"
HeadersVisibility="Column"
CanUserAddRows="False"
CanUserDeleteRows="False"
CanUserResizeRows="False"
CanUserSortColumns="True"
CanUserReorderColumns="True"
ColumnWidth="Auto">
<dataGrid:ThemedDataGrid.ContextMenu>
<ContextMenu>
<MenuItem
Header="Shown columns"
ItemsSource="{Binding PlacementTarget.Columns, RelativeSource={RelativeSource AncestorType=ContextMenu}}"
ItemTemplateSelector="{StaticResource DataGridHeaderTemplateSelector}">
<MenuItem.Icon>
<ContentPresenter ContentTemplate="{StaticResource ColumnsIcon}"/>
</MenuItem.Icon>
</MenuItem>
<Separator/>
<MenuItem
Header="Duplicate language"
Command="{Binding DuplicateLanguageCommand}"
CommandParameter="{Binding PlacementTarget.SelectedItem, RelativeSource={RelativeSource AncestorType=ContextMenu}}">
<MenuItem.Icon>
<ContentPresenter ContentTemplate="{StaticResource DuplicateIcon}"/>
</MenuItem.Icon>
</MenuItem>
<MenuItem
Header="Remove duplicate language"
Command="{Binding RemoveLanguageCommand}"
CommandParameter="{Binding PlacementTarget.SelectedItem, RelativeSource={RelativeSource AncestorType=ContextMenu}}">
<MenuItem.Icon>
<ContentPresenter ContentTemplate="{StaticResource RemoveIcon}"/>
</MenuItem.Icon>
</MenuItem>
</ContextMenu>
</dataGrid:ThemedDataGrid.ContextMenu>
<dataGrid:ThemedDataGrid.Columns>
<DataGridTemplateColumn Header="Oasis name" IsReadOnly="True" SortMemberPath="Language.Name">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Language.Name}"/>
<TextBlock Text="*">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Visibility" Value="Collapsed"/>
<Style.Triggers>
<DataTrigger Binding="{Binding IsDuplicate}" Value="True">
<Setter Property="Visibility" Value="Visible"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="Oasis id" Binding="{Binding Language.Id}" IsReadOnly="True" Visibility="Collapsed"/>
<DataGridTextColumn Header="PS4 id" Binding="{Binding Ps4Id, UpdateSourceTrigger=PropertyChanged}"/>
<DataGridTextColumn Header="PS5 id" Binding="{Binding Ps5Id, UpdateSourceTrigger=PropertyChanged}"/>
<DataGridTextColumn Header="Microsoft id" Binding="{Binding MicrosoftId, UpdateSourceTrigger=PropertyChanged}"/>
<DataGridTextColumn Header="Google id" Binding="{Binding GoogleId, UpdateSourceTrigger=PropertyChanged}"/>
</dataGrid:ThemedDataGrid.Columns>
</dataGrid:ThemedDataGrid>
</DockPanel>