mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-31 13:10:19 -04:00 
			
		
		
		
	Merge branch 'release-2.2.0' into develop
This commit is contained in:
		
						commit
						90a89c5a98
					
				| @ -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. | ||||
|  | ||||
| @ -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 ()); | ||||
|  | ||||
| @ -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 (); | ||||
|     } | ||||
|  | ||||
| @ -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) | ||||
|  | ||||
| @ -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}, | ||||
|  | ||||
| @ -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 ()) | ||||
|             { | ||||
|  | ||||
| @ -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 { | ||||
|  | ||||
| @ -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"> | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user