Merge branch 'release-2.2.0' into develop

This commit is contained in:
Bill Somerville 2020-06-02 01:52:48 +01:00
commit 90a89c5a98
No known key found for this signature in database
GPG Key ID: D864B06D1E81618F
8 changed files with 102 additions and 18 deletions

View File

@ -12,8 +12,76 @@
Copyright 2001 - 2020 by Joe Taylor, K1JT.
Release: WSJT-X 2.2
June 2, 2020
-------------------
WSJT-X 2.2 is a program upgrade that provides a number of new features
and capabilities. Here is a brief summary; for further details see
the notes for candidate releases 2.2.0-rc1, -rc2, and -rc3, below, and
of course the updated WSJT-X 2.2 User Guide.
- Significant improvements to the decoders for FT4, FT8, JT4, JT65,
and WSPR.
- New format for "EU VHF Contest" Tx2 and Tx3 messages
When "EU VHF Contest" is selected, the Tx2 and Tx3 messages (those
conveying signal report, serial number, and 6-character locator)
now use hashcodes for both callsigns. This change is NOT backward
compatible with earlier versions of _WSJT-X_, so all users of EU
VHF Contest messages should be sure to upgrade to version 2.2.0.
- Accessibility
Keyboard shortcuts have been added as an aid to accessibility:
Alt+R sets Tx4 message to RR73, Ctrl+R sets it to RRR.
As an aid for partial color-blindness, the "inverted goal posts"
marking Rx frequency on the Wide Graph's frequency scale are now
rendered in a darker shade of green.
- User Interface Translations have been enabled. Translations are
now available for Catalan, Spanish, Japanese, Chinese, and Hong
Kong Chinese. Additiional languages will follow, when available.
Note that UI translation is automatic, based on your system primary
language. If you do not want the WSJT-X UI translated to your local
language then start WSJT-X with the '--language=en' command line
option:
wsjtx --language=en
If you wish to contribute by authoring WSJT-X UI translations
please join the new discussion group wsjtx-l10n@Groups.io
(https://groups.io/g/wsjtx-l10n), where help from other translation
authors and coordination with the development team is available.
- Minor enhancements and bug fixes
"Save None" now writes no .wav files to disk, even temporarily.
An explicit entry for "WW Digi Contest" has been added to
"Special operating activities" on the "Settings | Advanced" tab.
Contest mode FT4 now always uses RR73 for the Tx4 message.
The Status bar now displays the number of decodes found in the
most recent Rx sequence.
The "Highlight Callsign" UDP message has been enhanced to allow
clearing of old highlighting for a specified callsign. Please note
a recommended restriction on the use of this message in the
documentation here: https://tinyurl.com/y85nc3tg
- Hamlib - this library which we use for direct rig control has had
many defect repairs and enhancements, we thank the contributors to
that project for their work.
Release: WSJT-X 2.2.0-rc3
May 30, 2020
May 29, 2020
-------------------------
WSJT-X 2.2.0-rc3 is the third release candidate for WSJT-X 2.2.0.

View File

@ -376,9 +376,11 @@ HamlibTransceiver::HamlibTransceiver (int model_number, TransceiverFactory::Para
case TransceiverFactory::PTT_method_DTR:
case TransceiverFactory::PTT_method_RTS:
if (!params.ptt_port.isEmpty ()
if (params.ptt_port.size ()
&& params.ptt_port != "None"
&& (is_dummy_ || params.ptt_port != params.serial_port))
&& (is_dummy_
|| RIG_PORT_SERIAL != rig_->caps->port_type
|| params.ptt_port != params.serial_port))
{
#if defined (WIN32)
set_conf ("ptt_pathname", ("\\\\.\\" + params.ptt_port).toLatin1 ().data ());

View File

@ -162,6 +162,9 @@ int OmniRigTransceiver::do_start ()
Q_ASSERT (rig_);
Q_ASSERT (!rig_->isNull ());
// COM/OLE exceptions get signaled
connect (&*rig_, SIGNAL (exception (int, QString, QString, QString)), this, SLOT (handle_COM_exception (int, QString, QString, QString)));
offline_timer_.reset (new QTimer); // instantiate here as
// constructor runs in wrong
// thread
@ -175,12 +178,17 @@ int OmniRigTransceiver::do_start ()
Q_ASSERT (port_);
Q_ASSERT (!port_->isNull ());
// COM/OLE exceptions get signaled
connect (&*port_, SIGNAL (exception (int, QString, QString, QString)), this, SLOT (handle_COM_exception (int, QString, QString, QString)));
TRACE_CAT ("OmniRigTransceiver", "OmniRig RTS state:" << port_->Rts ());
if (!port_->Lock ()) // try to take exclusive use of the OmniRig serial port for PTT
{
TRACE_CAT ("OmniRigTransceiver", "Failed to get exclusive use of serial port for PTT from OmniRig");
}
// remove locking because it doesn't seem to work properly
// if (!port_->Lock ()) // try to take exclusive use of the OmniRig serial port for PTT
// {
// TRACE_CAT ("OmniRigTransceiver", "Failed to get exclusive use of serial port for PTT from OmniRig");
// }
// start off so we don't accidentally key the radio
if (TransceiverFactory::PTT_method_DTR == ptt_type_)
@ -314,9 +322,9 @@ void OmniRigTransceiver::do_stop ()
// destructor as destructor runs in
// wrong thread
if (port_)
if (port_ && !port_->isNull ())
{
port_->Unlock (); // release serial port
// port_->Unlock (); // release serial port
port_->clear ();
port_.reset ();
}

View File

@ -176,8 +176,8 @@ contains
endif
df=12000.0/8192.0 !df = 1.465 Hz
if(bVHF) then
ia=max(1,nint(nfa/df)-ntol)
ib=min(NSZ,nint(nfb/df)+ntol)
ia=max(1,nint((nfa-100)/df))
ib=min(NSZ,nint((nfb+100)/df))
nz=ib-ia+1
call lorentzian(savg(ia),nz,a)
baseline=a(1)

View File

@ -124,7 +124,6 @@ namespace
// 7110 LSB EMCOMM
//
{7038600, Modes::WSPR, IARURegions::ALL},
{7071000, Modes::FT8, IARURegions::ALL},
{7074000, Modes::FT8, IARURegions::ALL},
{7076000, Modes::JT65, IARURegions::ALL},
{7078000, Modes::JT9, IARURegions::ALL},
@ -158,7 +157,6 @@ namespace
// 10142.25 OLIVIA, Contestia, etc.
// 10143.25 OLIVIA, Contestia, etc. (main QRQ)
//
{10133000, Modes::FT8, IARURegions::ALL},
{10136000, Modes::FT8, IARURegions::ALL},
{10138000, Modes::JT65, IARURegions::ALL},
{10138700, Modes::WSPR, IARURegions::ALL},
@ -203,7 +201,6 @@ namespace
// 14106.5 OLIVIA 1000 (main QRG)
//
{14095600, Modes::WSPR, IARURegions::ALL},
{14071000, Modes::FT8, IARURegions::ALL},
{14074000, Modes::FT8, IARURegions::ALL},
{14076000, Modes::JT65, IARURegions::ALL},
{14078000, Modes::JT9, IARURegions::ALL},
@ -270,7 +267,6 @@ namespace
{50293000, Modes::WSPR, IARURegions::R3},
{50310000, Modes::JT65, IARURegions::ALL},
{50312000, Modes::JT9, IARURegions::ALL},
{50310000, Modes::FT8, IARURegions::ALL},
{50313000, Modes::FT8, IARURegions::ALL},
{50318000, Modes::FT4, IARURegions::ALL}, // provisional
{50323000, Modes::FT8, IARURegions::ALL},

View File

@ -608,9 +608,12 @@ void DisplayText::highlight_callsign (QString const& callsign, QColor const& bg,
}
}
}
else if (pos != highlighted_calls_.end ())
else
{
highlighted_calls_.erase (pos);
if (pos != highlighted_calls_.end ())
{
highlighted_calls_.erase (pos);
}
QTextCursor cursor {document ()};
while (!cursor.isNull ())
{

View File

@ -3137,6 +3137,7 @@ void MainWindow::readFromStdout() //readFromStdout
if(line_read.indexOf("<DecodeFinished>") >= 0) {
m_bDecoded = line_read.mid(20).trimmed().toInt() > 0;
if(m_nDecodes==0) ndecodes_label.setText("0");
decodeDone ();
return;
} else {

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
@ -2911,6 +2911,9 @@ list. The list can be maintained in Settings (F2).</string>
<property name="text">
<string>About WSJT-X</string>
</property>
<property name="menuRole">
<enum>QAction::AboutRole</enum>
</property>
</action>
<action name="actionWide_Waterfall">
<property name="text">
@ -3198,6 +3201,9 @@ list. The list can be maintained in Settings (F2).</string>
<property name="text">
<string>Settings...</string>
</property>
<property name="menuRole">
<enum>QAction::PreferencesRole</enum>
</property>
</action>
<action name="actionLocal_User_Guide">
<property name="text">