Files
Libation/Source/LibationAvalonia/Dialogs/BookDetailsDialog.axaml
2025-11-10 22:21:51 -07:00

149 lines
3.9 KiB
XML

<Window xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d" d:DesignWidth="550" d:DesignHeight="450"
MinWidth="550" MinHeight="450"
Width="650" Height="500"
x:Class="LibationAvalonia.Dialogs.BookDetailsDialog"
xmlns:controls="clr-namespace:LibationAvalonia.Controls"
xmlns:dialogs="clr-namespace:LibationAvalonia.Dialogs"
x:DataType="dialogs:BookDetailsDialog+BookDetailsDialogViewModel"
x:CompileBindings="True"
Title="Book Details" Name="BookDetails">
<Grid RowDefinitions="*,Auto,Auto,40">
<Grid ColumnDefinitions="Auto,*" RowDefinitions="Auto,*,Auto" Margin="10">
<Image Source="{Binding Cover}" />
<Path
Grid.Row="1"
VerticalAlignment="Center"
Stretch="Uniform"
Width="80"
Fill="{DynamicResource IconFill}"
IsVisible="{Binding IsSpatial}"
Data="{StaticResource DolbyAtmosLogoVertical}" />
<controls:LinkLabel
Grid.Row="2"
HorizontalAlignment="Center"
TextAlignment="Center"
VerticalAlignment="Bottom"
TextWrapping="Wrap"
Command="{Binding OpenInAudibleCommand}"
Text="Open in &#xa;Audible&#xa;(Browser)" />
<TextBox
Grid.Column="1"
Grid.RowSpan="3"
Margin="10,0,0,0"
TextWrapping="Wrap"
FontSize="12"
Text="{Binding DetailsText}" />
</Grid>
<controls:GroupBox
Label="Edit Tags"
Grid.Row="1"
Margin="10,0,10,0">
<StackPanel Orientation="Vertical">
<TextBlock FontSize="12" VerticalAlignment="Top">
Tags are separated by a space. Each tag can contain letters, numbers, and underscores
</TextBlock>
<TextBox Margin="0,5,0,5"
MinHeight="25"
FontSize="12" Name="tagsTbox"
Text="{Binding Tags, Mode=TwoWay}"/>
</StackPanel>
</controls:GroupBox>
<controls:GroupBox
Label="Liberated status: Whether the book/pdf has been downloaded"
Grid.Row="2"
Margin="10,10,10,10">
<StackPanel Orientation="Vertical">
<TextBlock
FontSize="12"
VerticalAlignment="Top"
Margin="10,10,0,0"
Text="To download again next time: change to Not Downloaded&#xA;To not download: change to Downloaded" />
<Grid Margin="0,10,0,5" ColumnDefinitions="Auto,Auto,50,Auto,Auto,*">
<TextBlock
Grid.Column="0"
Margin="0,0,10,0"
VerticalAlignment="Center"
Text="Book" />
<TextBlock
Grid.Column="3"
Margin="0,0,10,0"
VerticalAlignment="Center"
Text="PDF" />
<controls:WheelComboBox
Grid.Column="1"
Width="150"
MinHeight="25"
Height="25"
VerticalAlignment="Center"
SelectionChanged="BookStatus_SelectionChanged"
SelectedItem="{Binding BookLiberatedSelectedItem, Mode=TwoWay}"
ItemsSource="{Binding BookLiberatedItems}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock
FontSize="12"
Text="{Binding Text}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</controls:WheelComboBox>
<controls:WheelComboBox
IsEnabled="{Binding HasPDF}"
Grid.Column="4"
MinHeight="25"
Height="25"
Width="150"
VerticalAlignment="Center"
SelectedItem="{Binding PdfLiberatedSelectedItem, Mode=TwoWay}"
ItemsSource="{Binding PdfLiberatedItems}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock
FontSize="12"
Text="{Binding Text}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</controls:WheelComboBox>
</Grid>
</StackPanel>
</controls:GroupBox>
<Grid Grid.Row="3" ColumnDefinitions="*,Auto" Margin="10,0,10,10">
<Button
Grid.Column="1"
Content="Save"
Classes="SaveButton"
Click="SaveButton_Clicked" />
</Grid>
</Grid>
</Window>