<UserControl
    x:Class="Ryujinx.Ava.Ui.Controls.UserEditor"
    xmlns="https://github.com/avaloniaui"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:Locale="clr-namespace:Ryujinx.Ava.Common.Locale"
    xmlns:controls="clr-namespace:Ryujinx.Ava.Ui.Controls"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:models="clr-namespace:Ryujinx.Ava.Ui.Models"
    xmlns:ui="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia"
    xmlns:viewModels="clr-namespace:Ryujinx.Ava.Ui.ViewModels"
    Margin="0"
    MinWidth="500"
    Padding="0"
    mc:Ignorable="d"
    Focusable="True">
    <UserControl.Resources>
        <controls:BitmapArrayValueConverter x:Key="ByteImage" />
    </UserControl.Resources>
    <Grid Margin="0">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="*" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
        <StackPanel
            HorizontalAlignment="Left"
            VerticalAlignment="Stretch"
            Orientation="Vertical">
            <Image
                Name="ProfileImage"
                Width="96"
                Height="96"
                Margin="0"
                HorizontalAlignment="Stretch"
                VerticalAlignment="Top"
                Source="{Binding Image, Converter={StaticResource ByteImage}}" />
            <Button
                Name="ChangePictureButton"
                Margin="5"
                HorizontalAlignment="Stretch"
                Click="ChangePictureButton_Click"
                Content="{Locale:Locale UserProfilesChangeProfileImage}" />
            <Button
                Name="AddPictureButton"
                Margin="5"
                HorizontalAlignment="Stretch"
                Click="ChangePictureButton_Click"
                Content="{Locale:Locale UserProfilesSetProfileImage}" />
        </StackPanel>
        <StackPanel
            Grid.Row="0"
            Grid.Column="1"
            Margin="5,10"
            HorizontalAlignment="Stretch"
            Orientation="Vertical"
            Spacing="10">
            <TextBlock Text="{Locale:Locale UserProfilesName}" />
            <TextBox
                Name="NameBox"
                Width="300"
                HorizontalAlignment="Stretch"
                MaxLength="{Binding MaxProfileNameLength}"
                Text="{Binding Name}" />
            <TextBlock Name="IdText" Text="{Locale:Locale UserProfilesUserId}" />
            <TextBlock Name="IdLabel" Text="{Binding UserId}" />
        </StackPanel>
        <StackPanel
            Grid.Row="1"
            Grid.Column="0"
            Grid.ColumnSpan="2"
            HorizontalAlignment="Right"
            Orientation="Horizontal"
            Spacing="10">
            <Button
                Name="SaveButton"
                Click="SaveButton_Click"
                Content="{Locale:Locale Save}" />
            <Button
                Name="CloseButton"
                HorizontalAlignment="Right"
                Click="CloseButton_Click"
                Content="{Locale:Locale Discard}" />
        </StackPanel>
    </Grid>
</UserControl>
