<UserControl
    x:Class="AppFramework.Views.SelectedPermissionView"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:extensions="clr-namespace:AppFramework.Extensions"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:sync="http://schemas.syncfusion.com/wpf"
    Width="800"
    Height="580"
    mc:Ignorable="d">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="auto" />
            <RowDefinition />
            <RowDefinition Height="auto" />
        </Grid.RowDefinitions>

        <Border
            Grid.RowSpan="3"
            CornerRadius="0"
            Opacity="1"
            Style="{StaticResource BorderStyle}" />

        <TextBlock
            Margin="15"
            FontSize="18"
            FontWeight="Bold"
            Text="{extensions:Translate Permission}" />

        <sync:SfTreeView
            Grid.Row="1"
            AutoExpandMode="AllNodes"
            CheckBoxMode="Recursive"
            CheckedItems="{Binding treesService.SelectedItems}"
            ChildPropertyName="Items"
            ExpandActionTrigger="Node"
            IsAnimationEnabled="True"
            ItemTemplateDataContextType="Node"
            ItemsSource="{Binding treesService.Permissions}"
            NodePopulationMode="Instant"
            SelectionBackgroundColor="Transparent">
            <sync:SfTreeView.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <CheckBox IsChecked="{Binding IsChecked}" />
                        <TextBlock Margin="5,0" Text="{Binding Content.DisplayName}" />
                    </StackPanel>
                </DataTemplate>
            </sync:SfTreeView.ItemTemplate>
        </sync:SfTreeView>

        <StackPanel
            Grid.Row="2"
            Margin="15"
            HorizontalAlignment="Right"
            Orientation="Horizontal">
            <Button
                Margin="0,0,10,0"
                Padding="10,5"
                Command="{Binding CancelCommand}"
                Content="{extensions:Translate Cancel}" />
            <Button
                Padding="10,5"
                Command="{Binding SaveCommand}"
                Content="{extensions:Translate Save}" />
        </StackPanel>
    </Grid>
</UserControl>
