PKHeX/PKHeX.Avalonia/Views/Subforms/DatabaseView.axaml
montanon 5e8ff7dfaa Add Avalonia subform dialogs for save/PKM editing
15 subform dialogs ported from WinForms to Avalonia MVVM:

Save editors:
- SAV_Inventory: bag editor with DataGrid per item pouch
- SAV_Database: PKM browser with sprite grid and search
- SAV_Encounters: encounter generator with species filter
- SAV_EventFlags: Gen 3-7 event flag/work editor
- SAV_EventFlags2: Gen 2/8 event flag editor
- SAV_Wondercard: mystery gift slot grid manager
- SAV_BoxLayout: box name and wallpaper editor
- SAV_BoxViewer: secondary box window (non-modal)
- SAV_MysteryGiftDB: mystery gift database browser
- ReportGrid: entity property DataGrid with CSV export
- SettingsEditor: runtime settings with reflection-based UI

PKM editors:
- BatchEditor: mass PKM editing with instruction language
- RibbonEditor: ribbon/mark checkbox editor
- MemoryAmie: memory, affection, friendship editor
- TechRecordEditor: TR/TM flag checkboxes

Utility:
- QRDialog: QR code generation and export
2026-03-18 15:32:35 -03:00

60 lines
3.0 KiB
XML

<views:SubformWindow xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:views="using:PKHeX.Avalonia.Views"
xmlns:vm="using:PKHeX.Avalonia.ViewModels.Subforms"
xmlns:controls="using:PKHeX.Avalonia.Controls"
xmlns:core="using:PKHeX.Core"
x:Class="PKHeX.Avalonia.Views.Subforms.DatabaseView"
x:DataType="vm:DatabaseViewModel"
Title="PKM Database"
Width="560" Height="700"
MinWidth="450" MinHeight="500"
WindowStartupLocation="CenterOwner"
CanResize="True">
<DockPanel Margin="8">
<!-- Top: Search/Filter bar -->
<StackPanel DockPanel.Dock="Top" Spacing="6" Margin="0,0,0,8">
<StackPanel Orientation="Horizontal" Spacing="8">
<TextBlock Text="Species:" VerticalAlignment="Center" />
<ComboBox ItemsSource="{Binding SpeciesList}"
SelectedIndex="{Binding FilterSpeciesIndex}"
MinWidth="180">
<ComboBox.ItemTemplate>
<DataTemplate x:DataType="core:ComboItem">
<TextBlock Text="{Binding Text}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<Button Content="Search" Command="{Binding SearchCommand}" Width="80"
IsEnabled="{Binding IsSearchEnabled}" />
<Button Content="Reset" Command="{Binding ResetFiltersCommand}" Width="70" />
</StackPanel>
</StackPanel>
<!-- Bottom: Status bar and paging -->
<StackPanel DockPanel.Dock="Bottom" Spacing="4" Margin="0,8,0,0">
<StackPanel Orientation="Horizontal" Spacing="8" HorizontalAlignment="Center">
<Button Content="&lt;" Command="{Binding PreviousPageCommand}" Width="40" />
<TextBlock Text="{Binding CurrentPage, StringFormat='Page {0}'}"
VerticalAlignment="Center" />
<TextBlock Text="{Binding TotalPages, StringFormat='/ {0}'}"
VerticalAlignment="Center" />
<Button Content="&gt;" Command="{Binding NextPageCommand}" Width="40" />
</StackPanel>
<TextBlock Text="{Binding StatusText}" FontSize="12"
HorizontalAlignment="Center" />
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Spacing="8">
<Button Content="Close" Click="OnCloseClick" Width="80" />
</StackPanel>
</StackPanel>
<!-- Center: PokeGrid -->
<Border BorderBrush="{DynamicResource SystemControlForegroundBaseMediumBrush}"
BorderThickness="1" Padding="2" CornerRadius="4">
<controls:PokeGrid Slots="{Binding Slots}" />
</Border>
</DockPanel>
</views:SubformWindow>