Lay out Available Mults and Qs like N1MM's window

The window is now a summary table of mults, Qs and totals per band over a
sortable spot grid with Call, Freq, Mode, Dir, Mlt, SN, TS, Spotter, Grid,
Sun, Pts and a preferred-spotter column. Columns can be hidden, headers
sorted, and the list stops re-sorting for six seconds under the mouse.

Adds the Mults / Mults & Qs button, a Bands & Modes filter, delete and
blacklist from the right-click menu, Alt+A stepping, and QSY to the top spot
after logging. Spot gains Snr and IsSkimmer, Bandmap gains Remaining, and
AvailableStation carries the path to the station.

The menu item no longer has apostrophes. SO2R, SO2V and the other missing
pieces are listed in docs/unfinished.md.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-25 11:56:32 +00:00
co-authored by Claude Sonnet 5.5
parent 5cf8453534
commit 0a23815f38
15 changed files with 1051 additions and 73 deletions
+27 -5
View File
@@ -1,15 +1,37 @@
<local:RefreshableWindow xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Nonemm.App.Windows"
xmlns:theming="using:Nonemm.App.Theming"
x:Class="Nonemm.App.Windows.AvailableWindow"
Title="Available mults and Qs" Width="620" Height="340">
Title="Available Mults and Qs" Width="780" Height="440">
<DockPanel Margin="6">
<StackPanel DockPanel.Dock="Top" Orientation="Horizontal" Spacing="10" Margin="0,0,0,6">
<CheckBox Name="MultsOnlyBox" Content="Mults only" />
<Button Name="ModeButton" MinWidth="90" ToolTip.Tip="Show only multipliers, or multipliers and Qs" />
<Button Name="FilterButton" Content="Bands &amp; Modes" />
<TextBlock Name="StatusText" FontSize="11" Opacity="0.7" VerticalAlignment="Center" />
<TextBlock Name="NoticeText" FontSize="11" VerticalAlignment="Center" />
</StackPanel>
<ScrollViewer>
<Grid Name="Columns" />
</ScrollViewer>
<Grid Name="Summary" DockPanel.Dock="Top" Margin="0,0,0,6" HorizontalAlignment="Left" />
<DataGrid Name="Spots" IsReadOnly="True" GridLinesVisibility="Horizontal" CanUserSortColumns="True"
CanUserReorderColumns="True" CanUserResizeColumns="True" SelectionMode="Single"
FontFamily="{x:Static theming:Fonts.Mono}">
<DataGrid.Styles>
<Style Selector="DataGridCell TextBlock">
<Setter Property="FontFamily" Value="{x:Static theming:Fonts.Mono}" />
<Setter Property="FontSize" Value="{DynamicResource AvailableFontSize}" />
<Setter Property="Margin" Value="6,0" />
</Style>
<Style Selector="DataGridRow">
<Setter Property="MinHeight" Value="0" />
</Style>
<Style Selector="DataGridCell">
<Setter Property="MinHeight" Value="0" />
<Setter Property="Padding" Value="0,1" />
</Style>
<Style Selector="DataGridColumnHeader">
<Setter Property="MinHeight" Value="0" />
</Style>
</DataGrid.Styles>
</DataGrid>
</DockPanel>
</local:RefreshableWindow>