Skip to content

Source tree and UI fixes#150

Merged
Chris-AC9KH merged 4 commits into
JS8Call-improved:masterfrom
Chris-AC9KH:pr/mainwindow-ui
Jan 19, 2026
Merged

Source tree and UI fixes#150
Chris-AC9KH merged 4 commits into
JS8Call-improved:masterfrom
Chris-AC9KH:pr/mainwindow-ui

Conversation

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator

I think this gets the code tree a little closer to where I like it. I think I mentioned it would be big. But in the end I stripped roughly 8,000 lines of code from mainwindow.cpp. We had too many things named MainWindow so that class is gone and replaced with UI_Constructor class. So the only thing left named that is mainwindow.cpp and its header, which is what drives the UI, along with the UI_Constructor member functions.

@Joe-K0OG had requested to have the APRS inbound relays turned off by default. So I did that.

And I fixed the layout of the General->Networking & Autoreply tab in the Settings. This one has made me disgusted for a very long time about how it's layed out, so while I was thinking about it I fixed it. This is what it used to do:

Screenshot 2026-01-17 at 21 49 54

Now if you stretch the Settings box out the entry fields expand with it so you can see everybody you got in your HB block list that sends HB's every 30 minutes.

Screenshot 2026-01-17 at 21 52 43

I been running the build from this branch since late this afternoon (Jan 17), it runs good.

@Chris-AC9KH Chris-AC9KH requested review from rruchte and wmiler January 18, 2026 04:07
@wmiler

wmiler commented Jan 18, 2026

Copy link
Copy Markdown
Collaborator

Linux run failed on processbufferedactivity.cpp rerunning it since it passed for windows.

Comment thread JS8_Logbook/ADIF.h
Comment thread JS8_Logbook/CountriesWorked.h
Comment thread JS8_Logbook/LogBook.h
Comment thread JS8_Main/CPlotter.cpp
Comment thread JS8_Main/TransmitTextEdit.cpp
@wmiler

wmiler commented Jan 18, 2026

Copy link
Copy Markdown
Collaborator

Ok, got tired of looking, generally go back and add the @file and @brief at the top of all the files.

@wmiler

wmiler commented Jan 18, 2026

Copy link
Copy Markdown
Collaborator

Linux build is failing at

CMake Error at CMakeLists.txt:209 (target_sources):
  Cannot find source file:

    JS8_MainWindow/processBufferedActivity.cpp

…nstructor 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
@wmiler

wmiler commented Jan 18, 2026

Copy link
Copy Markdown
Collaborator

Ha, gotta love case sensitive OSes! That works.

@wmiler wmiler added the documentation Improvements or additions to documentation label Jan 18, 2026
@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

I can turn on or off case sensitivity on MacOS so I missed that one. I'll work on the doxy hooks. There had been some doxy hook commenting done in various files that added whitespace that clang-format removed. I only put doxy file descriptions in the files I had to do extensive work on, or were created new. I didn't check the rest.

@Joe-K0OG

Copy link
Copy Markdown
Collaborator

I built https://github.com/Chris-AC9KH/JS8Call-improved.git, the pr/mainwindow-ui branch on both Linux Mint 22.3 and Windows 11, and find the following:

  • They both build and execute without error.
  • A fresh settings opens first to Settings->Networking & Autoreply rather than the Station tab.
  • A fresh settings shows that the "Enable relaying inbound APRS..." is still enabled by default.
  • On Windows and Linux, running from existing settings, the window position and JS8Call internal pane sizes/positions are not remembered. Upon positioning and resizing the panes, closing then subsequent openings are remembered. It appears something has changed with how the settings are saved/recalled.
  • All other functions seem to be normal in a quick set of tests.

73,
-Joe-
K0OG

@Chris-AC9KH

Chris-AC9KH commented Jan 18, 2026

Copy link
Copy Markdown
Collaborator Author

@Joe-K0OG don't even bother with this until I get done with it. It's in a broken state and I'm force-pushing commits as I work on it. It will be in a broken state for a bit yet.

@Joe-K0OG

Copy link
Copy Markdown
Collaborator

@Joe-K0OG don't even bother with this until I get done with it. It's in a broken state and I'm force-pushing commits as I work on it. It will be in a broken state for a bit yet.

Ahhh - I wasn't sure where you were with it. I'll be busy the rest of this evening but will check it tomorrow morning and see where you are with it.

73,
-Joe-
K0OG

- turn off APRS inbound relay by default
- fix sizing and alignment of Heartbeat Network box
@Chris-AC9KH Chris-AC9KH added ready Ready to merge and removed do not merge WIP Work In Progress labels Jan 18, 2026
@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

@Joe-K0OG APRS inbound relay is turned off by default. That was hardwired into the code so the ui did not obey the boolean for the default checked state. I hate when that happens.

@wmiler everything has doxy hooks in it. As soon as the CI builds get done you can merge it.

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

I will add that the #include sort order I told clang-format to use is:

  • our headers on top
  • third party headers
  • standard C++ library heades
  • meta object compiler objects

I'm pretty much done with the source formatting wars. You can line up 10 linux users and they'll have different tools and argue until the sky turns black about which one is "right". I'm not going there, been there done that.

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

@wmiler there's going to be one minor conflict with the WIP User Guide PR due to re-naming the JSC class, which the UserGuide references. I can fix that with a commit before merging this so the User Guide one doesn't have to be fixed to merge it.

@Chris-AC9KH Chris-AC9KH merged commit 5f1875f into JS8Call-improved:master Jan 19, 2026
@Chris-AC9KH Chris-AC9KH deleted the pr/mainwindow-ui branch January 19, 2026 01:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation ready Ready to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants