mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-11-04 05:50:31 -05:00 
			
		
		
		
	Repair a long standing defect with per band Tune & Tx power levels
This commit is contained in:
		
							parent
							
								
									54cba15e47
								
							
						
					
					
						commit
						f3cb1d76c0
					
				@ -66,7 +66,7 @@ private:
 | 
				
			|||||||
  double m_dphi;
 | 
					  double m_dphi;
 | 
				
			||||||
  double m_amp;
 | 
					  double m_amp;
 | 
				
			||||||
  double m_nsps;
 | 
					  double m_nsps;
 | 
				
			||||||
  double volatile m_frequency;
 | 
					  double m_frequency;
 | 
				
			||||||
  double m_frequency0;
 | 
					  double m_frequency0;
 | 
				
			||||||
  double m_snr;
 | 
					  double m_snr;
 | 
				
			||||||
  double m_fac;
 | 
					  double m_fac;
 | 
				
			||||||
@ -80,9 +80,9 @@ private:
 | 
				
			|||||||
  qint16 m_ramp;
 | 
					  qint16 m_ramp;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  unsigned m_frameRate;
 | 
					  unsigned m_frameRate;
 | 
				
			||||||
  ModulatorState volatile m_state;
 | 
					  ModulatorState m_state;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  bool volatile m_tuning;
 | 
					  bool m_tuning;
 | 
				
			||||||
  bool m_addNoise;
 | 
					  bool m_addNoise;
 | 
				
			||||||
  bool m_bFastMode;
 | 
					  bool m_bFastMode;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -825,7 +825,7 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
 | 
				
			|||||||
  connect(&logQSOTimer, &QTimer::timeout, this, &MainWindow::on_logQSOButton_clicked);
 | 
					  connect(&logQSOTimer, &QTimer::timeout, this, &MainWindow::on_logQSOButton_clicked);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  tuneButtonTimer.setSingleShot(true);
 | 
					  tuneButtonTimer.setSingleShot(true);
 | 
				
			||||||
  connect(&tuneButtonTimer, &QTimer::timeout, this, &MainWindow::on_stopTxButton_clicked);
 | 
					  connect(&tuneButtonTimer, &QTimer::timeout, this, &MainWindow::end_tuning);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  tuneATU_Timer.setSingleShot(true);
 | 
					  tuneATU_Timer.setSingleShot(true);
 | 
				
			||||||
  connect(&tuneATU_Timer, &QTimer::timeout, this, &MainWindow::stopTuneATU);
 | 
					  connect(&tuneATU_Timer, &QTimer::timeout, this, &MainWindow::stopTuneATU);
 | 
				
			||||||
@ -6935,8 +6935,8 @@ void MainWindow::on_bandComboBox_activated (int index)
 | 
				
			|||||||
void MainWindow::band_changed (Frequency f)
 | 
					void MainWindow::band_changed (Frequency f)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  // Set the attenuation value if options are checked
 | 
					  // Set the attenuation value if options are checked
 | 
				
			||||||
  QString curBand = ui->bandComboBox->currentText();
 | 
					 | 
				
			||||||
  if (m_config.pwrBandTxMemory() && !m_tune) {
 | 
					  if (m_config.pwrBandTxMemory() && !m_tune) {
 | 
				
			||||||
 | 
					    auto const&curBand = ui->bandComboBox->currentText();
 | 
				
			||||||
    if (m_pwrBandTxMemory.contains(curBand)) {
 | 
					    if (m_pwrBandTxMemory.contains(curBand)) {
 | 
				
			||||||
      ui->outAttenuation->setValue(m_pwrBandTxMemory[curBand].toInt());
 | 
					      ui->outAttenuation->setValue(m_pwrBandTxMemory[curBand].toInt());
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@ -7012,9 +7012,9 @@ void MainWindow::on_tuneButton_clicked (bool checked)
 | 
				
			|||||||
  static bool lastChecked = false;
 | 
					  static bool lastChecked = false;
 | 
				
			||||||
  if (lastChecked == checked) return;
 | 
					  if (lastChecked == checked) return;
 | 
				
			||||||
  lastChecked = checked;
 | 
					  lastChecked = checked;
 | 
				
			||||||
  QString curBand = ui->bandComboBox->currentText();
 | 
					 | 
				
			||||||
  if (checked && m_tune==false) { // we're starting tuning so remember Tx and change pwr to Tune value
 | 
					  if (checked && m_tune==false) { // we're starting tuning so remember Tx and change pwr to Tune value
 | 
				
			||||||
    if (m_config.pwrBandTuneMemory ()) {
 | 
					    if (m_config.pwrBandTuneMemory ()) {
 | 
				
			||||||
 | 
					      auto const& curBand = ui->bandComboBox->currentText();
 | 
				
			||||||
      m_pwrBandTxMemory[curBand] = ui->outAttenuation->value(); // remember our Tx pwr
 | 
					      m_pwrBandTxMemory[curBand] = ui->outAttenuation->value(); // remember our Tx pwr
 | 
				
			||||||
      m_PwrBandSetOK = false;
 | 
					      m_PwrBandSetOK = false;
 | 
				
			||||||
      if (m_pwrBandTuneMemory.contains(curBand)) {
 | 
					      if (m_pwrBandTuneMemory.contains(curBand)) {
 | 
				
			||||||
@ -7023,15 +7023,6 @@ void MainWindow::on_tuneButton_clicked (bool checked)
 | 
				
			|||||||
      m_PwrBandSetOK = true;
 | 
					      m_PwrBandSetOK = true;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  else { // we're turning off so remember our Tune pwr setting and reset to Tx pwr
 | 
					 | 
				
			||||||
    if (m_config.pwrBandTuneMemory() || m_config.pwrBandTxMemory()) {
 | 
					 | 
				
			||||||
      stopTx();
 | 
					 | 
				
			||||||
      m_pwrBandTuneMemory[curBand] = ui->outAttenuation->value(); // remember our Tune pwr
 | 
					 | 
				
			||||||
      m_PwrBandSetOK = false;
 | 
					 | 
				
			||||||
      ui->outAttenuation->setValue(m_pwrBandTxMemory[curBand].toInt()); // set to Tx pwr
 | 
					 | 
				
			||||||
      m_PwrBandSetOK = true;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  if (m_tune) {
 | 
					  if (m_tune) {
 | 
				
			||||||
    tuneButtonTimer.start(250);
 | 
					    tuneButtonTimer.start(250);
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
@ -7043,6 +7034,19 @@ void MainWindow::on_tuneButton_clicked (bool checked)
 | 
				
			|||||||
  Q_EMIT tune (checked);
 | 
					  Q_EMIT tune (checked);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void MainWindow::end_tuning ()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  on_stopTxButton_clicked ();
 | 
				
			||||||
 | 
					  // we're turning off so remember our Tune pwr setting and reset to Tx pwr
 | 
				
			||||||
 | 
					  if (m_config.pwrBandTuneMemory() || m_config.pwrBandTxMemory()) {
 | 
				
			||||||
 | 
					    auto const& curBand = ui->bandComboBox->currentText();
 | 
				
			||||||
 | 
					    m_pwrBandTuneMemory[curBand] = ui->outAttenuation->value(); // remember our Tune pwr
 | 
				
			||||||
 | 
					    m_PwrBandSetOK = false;
 | 
				
			||||||
 | 
					    ui->outAttenuation->setValue(m_pwrBandTxMemory[curBand].toInt()); // set to Tx pwr
 | 
				
			||||||
 | 
					    m_PwrBandSetOK = true;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void MainWindow::stop_tuning ()
 | 
					void MainWindow::stop_tuning ()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  on_tuneButton_clicked(false);
 | 
					  on_tuneButton_clicked(false);
 | 
				
			||||||
 | 
				
			|||||||
@ -254,6 +254,7 @@ private slots:
 | 
				
			|||||||
  void on_actionShort_list_of_add_on_prefixes_and_suffixes_triggered();
 | 
					  void on_actionShort_list_of_add_on_prefixes_and_suffixes_triggered();
 | 
				
			||||||
  void band_changed (Frequency);
 | 
					  void band_changed (Frequency);
 | 
				
			||||||
  void monitor (bool);
 | 
					  void monitor (bool);
 | 
				
			||||||
 | 
					  void end_tuning ();
 | 
				
			||||||
  void stop_tuning ();
 | 
					  void stop_tuning ();
 | 
				
			||||||
  void stopTuneATU();
 | 
					  void stopTuneATU();
 | 
				
			||||||
  void auto_tx_mode(bool);
 | 
					  void auto_tx_mode(bool);
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user