Merge branch 'master' into ms-preserve-reporter-layout
commit
ec59a8f94b
|
@ -196,6 +196,7 @@
|
|||
<li><a href="https://freedv-reporter.k6aq.net/">FreeDV Reporter</a></li>
|
||||
</ul>
|
||||
<p>The frequency that FreeDV reports is set by changing the “Report Frequency” drop down box in the main window. This is in kilohertz (kHz) and will turn red if the entered value is invalid. If Hamlib support is also enabled, this frequency will automatically remain in sync with the current VFO on the radio (i.e. if the frequency is changed in the application, the radio will also change its frequency).</p>
|
||||
<p><em>Note: in some setups (such as when using ALE), it is not preferred to have the reporting frequency automatically be in sync with the radio. For example, in the case of ALE, the radio’s frequency changes multiple times per second while waiting for a contact, which is faster than FreeDV can pull the latest from the radio (every five seconds). This can be disabled by enabling “Manual Frequency Reporting” in Tools->Options.</em></p>
|
||||
<p>FreeDV will also show the callsigns of previously received signals. To view those, click on the arrow next to the last received callsign at the bottom of the window. These are in descending order by time of receipt (i.e. the most recently received callsign will appear at the top of the list).</p>
|
||||
<h1 data-number="7" id="multiple-mode-support"><span class="header-section-number">7</span> Multiple Mode Support</h1>
|
||||
<p>FreeDV can simultaneously decode the following modes when selected prior to pushing “Start”:</p>
|
||||
|
@ -626,6 +627,7 @@ FMA - Supports FMA extensions using YMM state</code></pre>
|
|||
<li>Auto-size columns in Audio Options to improve readability. (PR #461)</li>
|
||||
<li>Add support for modifying the drop down frequency list. (PR #460)</li>
|
||||
<li>Preserve size and position of Audio Configuration dialog. (PR #466)</li>
|
||||
<li>Add ability to suppress automatic frequency reporting on radio changes. (PR #469)</li>
|
||||
</ul></li>
|
||||
<li>Build system:
|
||||
<ul>
|
||||
|
|
|
@ -339,6 +339,11 @@ is in kilohertz (kHz) and will turn red if the entered value is invalid. If Haml
|
|||
this frequency will automatically remain in sync with the current VFO on the radio (i.e. if the frequency is changed
|
||||
in the application, the radio will also change its frequency).
|
||||
|
||||
*Note: in some setups (such as when using ALE), it is not preferred to have the reporting frequency automatically be
|
||||
in sync with the radio. For example, in the case of ALE, the radio's frequency changes multiple times per second while
|
||||
waiting for a contact, which is faster than FreeDV can pull the latest from the radio (every five seconds). This can
|
||||
be disabled by enabling "Manual Frequency Reporting" in Tools->Options.*
|
||||
|
||||
FreeDV will also show the callsigns of previously received signals. To view those, click on the arrow
|
||||
next to the last received callsign at the bottom of the window. These are in descending order by time
|
||||
of receipt (i.e. the most recently received callsign will appear at the top of the list).
|
||||
|
@ -884,6 +889,7 @@ LDPC | Low Density Parity Check Codes - a family of powerful FEC codes
|
|||
* Auto-size columns in Audio Options to improve readability. (PR #461)
|
||||
* Add support for modifying the drop down frequency list. (PR #460)
|
||||
* Preserve size and position of Audio Configuration dialog. (PR #466)
|
||||
* Add ability to suppress automatic frequency reporting on radio changes. (PR #469)
|
||||
3. Build system:
|
||||
* Bump Codec2 version to v1.1.1. (PR #437)
|
||||
* Generate PDF/HTML docs only on PR merge. (PR #471)
|
||||
|
|
|
@ -33,6 +33,8 @@ ReportingConfiguration::ReportingConfiguration()
|
|||
|
||||
, reportingFrequency("/Reporting/Frequency", 0)
|
||||
|
||||
, manualFrequencyReporting("/Reporting/ManualFrequencyReporting", false)
|
||||
|
||||
, pskReporterEnabled("/Reporting/PSKReporter/Enable", false)
|
||||
|
||||
, freedvReporterEnabled("/Reporting/FreeDV/Enable", true)
|
||||
|
@ -87,6 +89,8 @@ void ReportingConfiguration::load(wxConfigBase* config)
|
|||
|
||||
load_(config, reportingFrequencyList);
|
||||
|
||||
load_(config, manualFrequencyReporting);
|
||||
|
||||
// Special load handling for reporting below.
|
||||
wxString freqStr = config->Read(reportingFrequency.getElementName(), oldFreqStr);
|
||||
reportingFrequency.setWithoutProcessing(atoll(freqStr.ToUTF8()));
|
||||
|
@ -109,6 +113,8 @@ void ReportingConfiguration::save(wxConfigBase* config)
|
|||
|
||||
save_(config, reportingFrequencyList);
|
||||
|
||||
save_(config, manualFrequencyReporting);
|
||||
|
||||
// Special save handling for reporting below.
|
||||
wxString tempFreqStr = wxString::Format(wxT("%" PRIu64), reportingFrequency.getWithoutProcessing());
|
||||
config->Write(reportingFrequency.getElementName(), tempFreqStr);
|
||||
|
|
|
@ -42,6 +42,8 @@ public:
|
|||
// uint64_t inside the FreeDV application.
|
||||
ConfigurationDataElement<uint64_t> reportingFrequency;
|
||||
|
||||
ConfigurationDataElement<bool> manualFrequencyReporting;
|
||||
|
||||
ConfigurationDataElement<bool> pskReporterEnabled;
|
||||
|
||||
ConfigurationDataElement<bool> freedvReporterEnabled;
|
||||
|
|
|
@ -116,6 +116,11 @@ OptionsDlg::OptionsDlg(wxWindow* parent, wxWindowID id, const wxString& title, c
|
|||
|
||||
sbSizerReportingRows->Add(sbSizerReportingGeneral, 0, wxALL | wxEXPAND, 5);
|
||||
|
||||
wxBoxSizer* sbSizerReportingManualFrequency = new wxBoxSizer(wxHORIZONTAL);
|
||||
m_ckboxManualFrequencyReporting = new wxCheckBox(m_reportingTab, wxID_ANY, _("Manual Frequency Reporting"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE);
|
||||
sbSizerReportingManualFrequency->Add(m_ckboxManualFrequencyReporting, 0, wxALL | wxEXPAND, 5);
|
||||
sbSizerReportingRows->Add(sbSizerReportingManualFrequency, 0, wxALL | wxEXPAND, 5);
|
||||
|
||||
// PSK Reporter options
|
||||
wxBoxSizer* sbSizerReportingPSK = new wxBoxSizer(wxHORIZONTAL);
|
||||
m_ckboxPskReporterEnable = new wxCheckBox(m_reportingTab, wxID_ANY, _("Enable PSK Reporter"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE);
|
||||
|
@ -737,7 +742,8 @@ void OptionsDlg::ExchangeData(int inout, bool storePersistent)
|
|||
m_ckboxReportingEnable->SetValue(wxGetApp().appConfiguration.reportingConfiguration.reportingEnabled);
|
||||
m_txt_callsign->SetValue(wxGetApp().appConfiguration.reportingConfiguration.reportingCallsign);
|
||||
m_txt_grid_square->SetValue(wxGetApp().appConfiguration.reportingConfiguration.reportingGridSquare);
|
||||
|
||||
m_ckboxManualFrequencyReporting->SetValue(wxGetApp().appConfiguration.reportingConfiguration.manualFrequencyReporting);
|
||||
|
||||
// PSK Reporter options
|
||||
m_ckboxPskReporterEnable->SetValue(wxGetApp().appConfiguration.reportingConfiguration.pskReporterEnabled);
|
||||
|
||||
|
@ -869,7 +875,8 @@ void OptionsDlg::ExchangeData(int inout, bool storePersistent)
|
|||
wxGetApp().appConfiguration.reportingConfiguration.reportingEnabled = m_ckboxReportingEnable->GetValue();
|
||||
wxGetApp().appConfiguration.reportingConfiguration.reportingCallsign = m_txt_callsign->GetValue();
|
||||
wxGetApp().appConfiguration.reportingConfiguration.reportingGridSquare = m_txt_grid_square->GetValue();
|
||||
|
||||
wxGetApp().appConfiguration.reportingConfiguration.manualFrequencyReporting = m_ckboxManualFrequencyReporting->GetValue();
|
||||
|
||||
// PSK Reporter options
|
||||
wxGetApp().appConfiguration.reportingConfiguration.pskReporterEnabled = m_ckboxPskReporterEnable->GetValue();
|
||||
|
||||
|
@ -1070,6 +1077,7 @@ void OptionsDlg::updateReportingState()
|
|||
m_txtCtrlCallSign->Enable(false);
|
||||
m_txt_callsign->Enable(true);
|
||||
m_txt_grid_square->Enable(true);
|
||||
m_ckboxManualFrequencyReporting->Enable(true);
|
||||
m_ckboxPskReporterEnable->Enable(true);
|
||||
m_ckboxFreeDVReporterEnable->Enable(true);
|
||||
|
||||
|
@ -1090,6 +1098,7 @@ void OptionsDlg::updateReportingState()
|
|||
m_ckboxPskReporterEnable->Enable(false);
|
||||
m_ckboxFreeDVReporterEnable->Enable(false);
|
||||
m_freedvReporterHostname->Enable(false);
|
||||
m_ckboxManualFrequencyReporting->Enable(false);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -1099,6 +1108,7 @@ void OptionsDlg::updateReportingState()
|
|||
m_txtCtrlCallSign->Enable(false);
|
||||
m_txt_callsign->Enable(false);
|
||||
m_txt_grid_square->Enable(false);
|
||||
m_ckboxManualFrequencyReporting->Enable(false);
|
||||
m_ckboxPskReporterEnable->Enable(false);
|
||||
m_ckboxFreeDVReporterEnable->Enable(false);
|
||||
m_freedvReporterHostname->Enable(false);
|
||||
|
|
|
@ -130,6 +130,8 @@ class OptionsDlg : public wxDialog
|
|||
wxTextCtrl *m_txt_callsign;
|
||||
wxTextCtrl *m_txt_grid_square;
|
||||
|
||||
wxCheckBox *m_ckboxManualFrequencyReporting;
|
||||
|
||||
wxCheckBox *m_ckboxPskReporterEnable;
|
||||
|
||||
wxCheckBox *m_ckboxFreeDVReporterEnable;
|
||||
|
|
|
@ -648,7 +648,10 @@ void Hamlib::update_mode_status()
|
|||
}
|
||||
|
||||
// Update frequency box
|
||||
m_freqBox->SetValue(wxString::Format("%.4f", m_currFreq/1000.0/1000.0));
|
||||
if (m_freqBox != nullptr)
|
||||
{
|
||||
m_freqBox->SetValue(wxString::Format("%.4f", m_currFreq/1000.0/1000.0));
|
||||
}
|
||||
|
||||
// Refresh
|
||||
m_modeBox->Refresh();
|
||||
|
|
|
@ -263,7 +263,11 @@ bool MainFrame::OpenHamlibRig() {
|
|||
{
|
||||
wxGetApp().m_hamlib->setFrequencyAndMode(wxGetApp().appConfiguration.reportingConfiguration.reportingFrequency, wxGetApp().appConfiguration.rigControlConfiguration.hamlibUseAnalogModes ? true : g_analog);
|
||||
}
|
||||
wxGetApp().m_hamlib->enable_mode_detection(m_txtModeStatus, m_cboReportFrequency, g_mode == FREEDV_MODE_2400B);
|
||||
wxGetApp().m_hamlib->enable_mode_detection(
|
||||
m_txtModeStatus,
|
||||
wxGetApp().appConfiguration.reportingConfiguration.reportingEnabled &&
|
||||
wxGetApp().appConfiguration.reportingConfiguration.manualFrequencyReporting ? nullptr : m_cboReportFrequency,
|
||||
g_mode == FREEDV_MODE_2400B);
|
||||
}
|
||||
|
||||
return status;
|
||||
|
|
Loading…
Reference in New Issue