Commit graph

40 commits

Author SHA1 Message Date
Chris-AC9KH
230346d625 Force Rx pane scroll bar to the bottom on program
start and save the scroll bar position on settings reload
2026-07-12 09:37:30 -05:00
Chris-AC9KH
f03d69efa8 - Break confirmThenEnqueueMessage member function out of mainwindow.cpp
and place it in a separate member function file in JS8_Mainwindow
- Add UI hooks for Auto Reply confirmation back into the function
- Remove redundant member function declarations from mainwindow.cpp that
left over after moving the function to separate files, leaving only the
function call sites
- Move source file comments to the mainwindow header
2026-05-24 16:13:26 -05:00
Chris-AC9KH
05b439fd9c Change audio notifications dialog so it uses live UI state aka MacOS
instead of committed state for Windows and linux.
2026-05-10 19:04:20 -05:00
Chris-AC9KH
3f1b548965 Add isNewLine to conditional statement to clear blocked offset in
the event the EOT character is never received while blocking the
continuation frames from a blocked callsign
2026-05-09 20:14:09 -05:00
Chris-AC9KH
7696e80b73 Add callsign blocking feature, settable in the UI 2026-05-09 20:14:09 -05:00
Chris-AC9KH
b0ba12d8cc Add automatic HB ACK rate limiting that adds a callsign to the blacklist
if that callsign transmits HB's at less than 55 minute intervals
2026-05-05 07:03:41 -05:00
Chris-AC9KH
a586f173a1 Replace UI lockup code that prevented a MSG from being composed with
a string that contains a word with mroe than 5 repeated characters with
    a warning popup message
2026-05-03 14:59:10 -05:00
Chris-AC9KH
7b02817902 Fix to show status of auto_reply when program is first started. 2026-05-02 21:18:51 -05:00
Chris-AC9KH
95c7e42b91 Apply offset frequency slider widget across all platforms and clean up code
in mainwindow.cpp
2026-04-21 21:34:31 -05:00
Chris-AC9KH
e5c419f7d4 Replace Offset Frequency QLabel in header bar with a new QSlider (Mac only)
Remove uneeded code from CMakeLists.txt for old up/down.png arrow images
2026-04-19 19:49:07 -05:00
Chris-AC9KH
2c6a258b36 Move header bar styling out of mainwindow.ui and create a new Styles
namespace in styles.h to define the header bar styling on a per-
platform basis
2026-04-15 22:14:40 -05:00
Chris-AC9KH
8c2064bccf New, more modern header bar (frequency, clock and control buttons) design for JS8Call 3 2026-04-15 22:14:40 -05:00
Chris-AC9KH
bb8aba12d4 Use preprocessor directives to apply platform-specific styles and allow QSS theme injection on linux
- remove color definitions from mainwindow.cpp that are now defined by the preprocessor in styles.h
- design new progress bar defined in styles.h that is a cross-platform unified design
- ddd doxy hooks to the new styles.h header definitions file
2026-04-12 09:39:09 -05:00
Chris-AC9KH
800bfd9919 Use hardcoded foreground color for status bar labels to ensure consisten
"look and feel" despite desktop environment theming
2026-04-09 19:08:19 -05:00
Chris-AC9KH
890f404ca3 Fix background color on last_tx and wpm labels so they have consistent
look and feel with the rest. This is also a fix for some linux systems
that will display white text on a white background in dark mode.
2026-04-08 18:42:26 -05:00
Chris-AC9KH
9cdb1080c1 - Replace static JS8 label in UI_Constructor::createStatusBar() function
with a switch to display the JS8 mode speed
- Add frequency widget to the Status Bar that shows actual transmit
frequency
- Add Auto Reply: On/Off status widget to Status Bar
- Fix bug in watchdog that didn't turn off Auto Reply until a Tx
event is attempted after the timer expires
- Add QStyle Fusion to progress bar for Windows
2026-04-08 12:22:55 -05:00
Chris-AC9KH
3692cd24fa clean up some legacy wsjtx code 2026-04-01 05:21:22 -07:00
Rico Beier-Grunwald
b036e48660 Visualize commands and routing as pills 2026-03-25 07:10:18 -05:00
christian
a293abc62e WSJT-X UDP protocol: recieve to decode state switching fixed 2026-03-09 19:11:33 -05:00
Chris-AC9KH
54b2d97e0c Update location for User Guide to display the markdown document from
the Code Resources. This ensures the latest version is always displayed
from the UI.

Add a link to download a PDF copy of the Guide from our github.io downloads
Add a link to the README for the User Guide
2026-03-07 13:30:12 -06:00
Chris-AC9KH
6715557093 Change names of JS8 6/160 to JS8 40, and JS8 4/250 to JS8 60.
This uses the two respective modes' approx transmisson speed in
words per minute instead of using frame time/bandwidth.

Improve the documentation for these two modes to better explain
that HB networking is disabled when using them
2026-03-07 13:30:12 -06:00
Chris-AC9KH
e4e03af742 Add new modes: JS8 6/160 and JS8 4/250
This eliminates use of terms like "Turbo" which is a mechanical
gas turbine compressor, changes the faster modes to designation
of frame time/bandwidth
2026-03-07 13:30:12 -06:00
BrunoKlu
cede1cb10d
TCP API: 8 STATION commands + headless autoreply confirmation (#207)
* TCP API: 8 STATION commands + headless autoreply confirmation

- networkMessage.cpp: MODE.GET_CONFIG, SET_AUTO_REPLY, SET_JS8HB,
  SET_HBACK, SET_MULTI_DECODER, SET_HB_INTERVAL, SET_HB_TIMER, SEND_HB
- mainwindow.cpp/h: confirmThenEnqueueMessage() sends TCP push
  instead of SelfDestructMessageBox (headless/xvfb compatible)
- Configuration.cpp/h: autoreply_confirmation accessor

- Rename 10 new config commands from MODE.* to STATION.* (MODE is
  reserved for JS8 protocol only, STATION is for configuration)
- Add @note API 2.6+ to each new @brief block
- Translate French comments to English
2026-03-07 07:21:24 -05:00
Punk Kaos
370a48bc92 Bugfix in decoder affecting Turbo and Ultra modes. 2026-03-05 21:48:42 -06:00
dt229878
e915bc12e3 Change decoder to use samplesNeeded for turbo. 2026-03-03 07:37:03 -06:00
rruchte
97e4a07bc4 Addresses #193
- Enables custom descriptions for frequencies
- Handle unreadable/unwritable frequencies file
- Add delete key shortcut to frequencies and scheduled frequency change tables
2026-02-23 23:25:06 -05:00
rruchte
717a253cab Addresses issue #191 - Add number of available messages to MSGS?, HB, and MSG response
Adds an indication for the number of available messages to the response to the MSGS? query, HB response, and message response in addition to the ID of the next available message.

Changing NEXT MSG ID logic to send first available ID instead of next in list when sending messages
2026-02-19 19:14:10 -05:00
Wyatt Miler
d75c053a69 Cleanup a bit 2026-02-15 08:12:06 -06:00
Wyatt Miler
a459fca215 Bug fix: #126 Set snr for Log window. Add debugging for LogQSO 2026-02-15 08:12:06 -06:00
rruchte
e56d3afe48 Message Inbox Enhancements
Allow message inbox to dock into the main UI
Enable column sorting in the message table
Rework mark-as-read signals to trigger on row deselection
Add SemiSortableHeader subclass of QHeaderView
2026-02-05 20:05:17 -06:00
Wyatt Miler
428bb23411 Add VS Code to the gitignore. Add API msg for closing 2026-02-01 12:51:38 -06:00
Chris-AC9KH
8babdd00b4 Give directed commands higher priority over messaging 2026-01-28 19:21:15 -06:00
Punk Kaos
84cec9d1ae Fix APRS server connect bug. 2026-01-23 07:30:12 -06:00
Chris-AC9KH
963b9cd933 Add doxy hooks to all source file 2026-01-18 19:19:15 -06:00
Chris-AC9KH
1ab08249b1 remove MainWindow class from mainwindow.cpp and replace it with UI_Constructor class
rename remaining files that didn't match their class definitions
relocate the explicit UI_Constructor member function to JS8_MainWindow
relocate the processBufferedActivity member function to JS8_MainWindow
format affected files with LLVM clang-format

Set default APRS inbound relay to off
Fix layout of General->Networking & Autoreply tab in Settings
2026-01-18 19:19:15 -06:00
Punk Kaos
f03e3c508e Relocate APRS classes to JS8_Main 2026-01-16 06:40:35 -06:00
Punk Kaos
41bd4e9d09 Split out APRS code to standalone modules and add DOXYGEN docs. 2026-01-16 06:40:35 -06:00
dt229878
c9162356cd Inbound APRS message relay into JS8 mesh. 2026-01-16 06:40:35 -06:00
Chris-AC9KH
8c647b5a9e Move MainWindow member functions to external source files in
JS8_Mainwindow:
- buildQueryMap.cpp
- checkVersion.cpp
- dataSink.cpp
- displayBandActivity.cpp
- displayCallActivity.cpp
- initializeDummyDate.cpp
- initializeGroupMessage.cpp
- networkMessage.cpp
- processCommandActivity.cpp
- processDecodeEvent.cpp
- processRxActivity.cpp

reduces mainwindow.cpp from 12,482 to 8,284 lines of code
2026-01-06 22:47:39 -06:00
Chris-AC9KH
356bdc0f50 Code cleanup - move loose source and header files in source tree to group folders
Rename all header files with .h extension
Fix function declaration in HamlibTransceiver.h that overrode member function but was not marked override
Remove unused variable in Modulator.cpp
Remove unused files from source tree
Remove duplicate LazyFillComboBox files
Reformat codebase to LLVM C++ standard
2026-01-02 16:46:38 -06:00