From 648da1918a4c6fcd4e92c6462da3807aa4b9d3d6 Mon Sep 17 00:00:00 2001 From: ericek111 Date: Fri, 28 Aug 2026 00:10:39 +0000 Subject: [PATCH] Put the QTC window's settings on its right-click menu MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit N1MM keeps them on a Setup tab inside the window; here they are a dialog behind a right-click, which suits a window this size better. Four of them, with N1MM's own defaults: how many QTCs a series carries, whether the RX Ready and Cfm steps are stopped at on the way through, and whether Hdr Agn and Agn clear what they are asking for again. Each one changes what the window does. The series count is passed to the search for contacts worth reporting, the two skip settings are the focus order, and the two clear settings are what the Agn buttons do. The Cfm buttons also disappear when a RTTY station is reading its own log out, which is what N1MM does with them. N1MM's remaining QTC settings are all about putting traffic on the air — the CW messages for Agn and TU, the field spacing, the four SSB recordings, the RTTY templates — and nothing here transmits, so they are left out rather than shown as settings that do nothing. The dialog says so where the operator will look. The right-click menu needed a background on the panel to come up anywhere but over a control: a panel with no background is not hit-tested. Co-Authored-By: Claude Opus 5 --- README.md | 9 +++- docs/unfinished.md | 8 ++-- src/Nonemm.App/Configuration/Settings.cs | 14 ++++++ src/Nonemm.App/Dialogs/QtcSetupDialog.axaml | 28 +++++++++++ .../Dialogs/QtcSetupDialog.axaml.cs | 36 ++++++++++++++ src/Nonemm.App/Windows/QtcWindow.axaml | 11 ++++- src/Nonemm.App/Windows/QtcWindow.axaml.cs | 48 ++++++++++++++++--- src/Nonemm.Session/QtcTraffic.cs | 9 ++-- 8 files changed, 146 insertions(+), 17 deletions(-) create mode 100644 src/Nonemm.App/Dialogs/QtcSetupDialog.axaml create mode 100644 src/Nonemm.App/Dialogs/QtcSetupDialog.axaml.cs diff --git a/README.md b/README.md index abf1569..aa76f7a 100644 --- a/README.md +++ b/README.md @@ -292,9 +292,16 @@ being worked, and never more than the ten any station may have — and cannot be edited. On CW and SSB the direction is fixed by the rules; on RTTY traffic goes both ways and the window has a switch. +Right-click the window for **Setup**: how many QTCs a series carries, whether +the RX Ready and Cfm steps are stopped at, and whether Hdr Agn and Agn clear +what they ask for again. The defaults are N1MM's — both steps skipped, the +header cleared, the line left alone. + Nothing in the window transmits. On CW the operator sends from the entry window, on SSB by voice, and RTTY has no digital window yet, so Agn, Cfm and RX Ready -move the cursor rather than putting anything on the air. +move the cursor rather than putting anything on the air. N1MM's QTC settings for +sending — the CW messages for Agn and TU, the field spacing, the SSB recordings +and the RTTY templates — are left out with them. The scoring was checked against six real WAE logs, and agrees with N1MM on points and on weighted multipliers to the contact. diff --git a/docs/unfinished.md b/docs/unfinished.md index 42c87e8..e0ae10b 100644 --- a/docs/unfinished.md +++ b/docs/unfinished.md @@ -45,9 +45,11 @@ voice messages for QRV, Agn, Cfm and TU on SSB. Here the Agn, Cfm and RX Ready buttons only move the cursor. What is missing under it is the message templates for QTC traffic, a voice keyer, and the digital window. -**N1MM's QTC setup tab is not there.** Field spacing, the CW messages for Agn -and TU, and the settings that skip the Cfm and QRV steps are all N1MM options -this window does not have. +**The QTC setup covers the window, not the sending.** Right-click ▸ Setup has +the four settings that change how the window behaves, with N1MM's defaults. +What is not there is everything about putting QTCs on the air: N1MM's CW +messages for Agn and TU, its SQTC field spacing, its four SSB recordings, and +its RTTY message templates. Those wait on a transmit path. **Two WAE numbers do not agree with N1MM, both from 2020 and 2021 logs.** The disagreements are the country file of the day, not the rules: 4U1A counted as diff --git a/src/Nonemm.App/Configuration/Settings.cs b/src/Nonemm.App/Configuration/Settings.cs index c69d3bb..9be36ff 100644 --- a/src/Nonemm.App/Configuration/Settings.cs +++ b/src/Nonemm.App/Configuration/Settings.cs @@ -67,6 +67,20 @@ public sealed record Settings /// 100 ms, because an SO2R box works relays. public int AlternatingCqGapMs { get; init; } = 100; + /// How the WAE QTC window behaves. The names and the defaults are N1MM's: + /// it skips the confirm and ready steps out of the box, clears the header + /// when the header is asked for again, and leaves a line alone when the + /// line is. + public int QtcLinesPerSeries { get; init; } = 10; + + public bool QtcSkipReady { get; init; } = true; + + public bool QtcSkipConfirm { get; init; } = true; + + public bool QtcHeaderAgainClears { get; init; } = true; + + public bool QtcAgainClearsLine { get; init; } + /// Sub-band boundaries the operator has changed. Empty means the defaults /// in `BandPlan.Default`; an entry replaces one band's boundaries. public IReadOnlyList SubBands { get; init; } = []; diff --git a/src/Nonemm.App/Dialogs/QtcSetupDialog.axaml b/src/Nonemm.App/Dialogs/QtcSetupDialog.axaml new file mode 100644 index 0000000..fb300db --- /dev/null +++ b/src/Nonemm.App/Dialogs/QtcSetupDialog.axaml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + +