On 05/08/2013 16:35, Joe Taylor wrote:
Hi Joe,
If you see any show-stoppers or have other
reservations, please make them known!
As it happens, I found an issue just minutes after sending the
previous email. I was in a JT65 QSO and transmitting (as I always do)
with the audio monitor on my transceiver turned ON.
Opening the Configuration screen during a transmission causes an brief
audio interruption. This is bad! Maybe it's the reason that audio
needs to be done in its own thread rather than the GUI thread? Bill,
please investigate...
This is due to the way we use a separate process to run the hamlib
utility rigctl to get the list of supported radios. The config dialog
blocks waiting for it to finish for up to 1s.
There are a few of options:
1) reduce the wait delay - not good since we shouldn't be blocking the
GUI thread anyway,
2) don't wait and let the combo box of radios fill asynchronously (it is
already using a signal so this is trivial). Currently we put the 9998 &
9999 entries in after the wait, but we could hook the QProcess
finished() signal to do that.
3) use the hamlib API to lookup the supported radios assuming it can do
it fast enough - if it can't then a QFuture might be ideal as it could
return the full list on completion.
4) Build the setup dialog at program startup and use show()/hide() to
present it. This has the downside that it wouldn't pickup new audio
devices, but that could be fixed pretty easily.
I think (2) is probably best value for the work although (3) is worth
investigating at some point. The consequence of (2) is that the user
might see the combobox of radios filling but that isn't serious IMHO.
-- Joe, K1JT
73
Bill
G4WJS.
_______________________________________________
Wsjt-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/wsjt-devel