Changeset 10791 in ntrip for trunk/BNC/src/pppWidgets.cpp
- Timestamp:
- Dec 3, 2025, 5:37:16 PM (10 days ago)
- File:
-
- 1 edited
-
trunk/BNC/src/pppWidgets.cpp (modified) (18 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/src/pppWidgets.cpp
r10638 r10791 65 65 _rinexNav = new qtFileChooser(); _rinexNav ->setObjectName("PPP/rinexNav"); _widgets << _rinexNav; 66 66 _corrMount = new QLineEdit(); _corrMount ->setObjectName("PPP/corrMount"); _widgets << _corrMount; 67 _biasMount = new QLineEdit(); _biasMount ->setObjectName("PPP/biasMount"); _widgets << _biasMount; 67 68 _ionoMount = new QLineEdit(); _ionoMount ->setObjectName("PPP/ionoMount"); _widgets << _ionoMount; 68 69 _corrFile = new qtFileChooser(); _corrFile ->setObjectName("PPP/corrFile"); _widgets << _corrFile; 70 _biasFile = new qtFileChooser(); _biasFile ->setObjectName("PPP/biasFile"); _widgets << _biasFile; 69 71 _ionoFile = new qtFileChooser(); _ionoFile ->setObjectName("PPP/ionoFile"); _widgets << _ionoFile; 70 72 _crdFile = new qtFileChooser(); _crdFile ->setObjectName("PPP/crdFile"); _widgets << _crdFile; … … 72 74 _blqFile = new qtFileChooser(); _blqFile ->setObjectName("PPP/blqFile"); _widgets << _blqFile; 73 75 _logPath = new QLineEdit(); _logPath ->setObjectName("PPP/logPath"); _widgets << _logPath; 76 _logMode = new QComboBox(); _logMode ->setObjectName("PPP/logMode"); _widgets << _logMode; 74 77 _nmeaPath = new QLineEdit(); _nmeaPath ->setObjectName("PPP/nmeaPath"); _widgets << _nmeaPath; 75 78 _snxtroPath = new QLineEdit(); _snxtroPath ->setObjectName("PPP/snxtroPath"); _widgets << _snxtroPath; 76 _snxtroSampl = new QComboBox(); _snxtroSampl->setObjectName("PPP/snxtroSampl"); _widgets << _snxtroSampl;79 _snxtroSampl = new QComboBox(); _snxtroSampl ->setObjectName("PPP/snxtroSampl"); _widgets << _snxtroSampl; 77 80 _snxtroIntr = new QComboBox(); _snxtroIntr ->setObjectName("PPP/snxtroIntr"); _widgets << _snxtroIntr; 78 81 _snxtroAc = new QLineEdit(); _snxtroAc ->setObjectName("PPP/snxtroAc"); _widgets << _snxtroAc; 79 82 _snxtroSolId = new QLineEdit(); _snxtroSolId ->setObjectName("PPP/snxtroSolId"); _widgets << _snxtroSolId; 80 83 _snxtroSolType= new QLineEdit(); _snxtroSolType->setObjectName("PPP/snxtroSolType");_widgets << _snxtroSolType; 81 _snxtroCampId = new QLineEdit(); _snxtroCampId ->setObjectName("PPP/snxtroCampId"); _widgets << _snxtroCampId;84 _snxtroCampId = new QLineEdit(); _snxtroCampId ->setObjectName("PPP/snxtroCampId");_widgets << _snxtroCampId; 82 85 _staTable = new QTableWidget(); _staTable ->setObjectName("PPP/staTable"); _widgets << _staTable; 83 86 _lcGPS = new QComboBox(); _lcGPS ->setObjectName("PPP/lcGPS"); _widgets << _lcGPS; … … 99 102 _corrWaitTime = new QSpinBox(); _corrWaitTime->setObjectName("PPP/corrWaitTime"); _widgets << _corrWaitTime; 100 103 104 _arGPS = new QCheckBox(); _arGPS ->setObjectName("PPP/arGPS"); _widgets << _arGPS; 105 _arGalileo = new QCheckBox(); _arGalileo ->setObjectName("PPP/arGalileo"); _widgets << _arGalileo; 106 _arBDS = new QCheckBox(); _arBDS ->setObjectName("PPP/arBDS"); _widgets << _arBDS; 107 _arMinNumEpo = new QSpinBox(); _arMinNumEpo ->setObjectName("PPP/arMinNumEpo"); _widgets << _arMinNumEpo; 108 _arMinNumSat = new QSpinBox(); _arMinNumSat ->setObjectName("PPP/arMinNumSat"); _widgets << _arMinNumSat; 109 _arUseYaw = new QCheckBox(); _arUseYaw ->setObjectName("PPP/arUseYaw"); _widgets << _arUseYaw; 110 _arMaxFrac = new QLineEdit(); _arMaxFrac ->setObjectName("PPP/arMaxFrac"); _widgets << _arMaxFrac; 111 _arMaxSig = new QLineEdit(); _arMaxSig ->setObjectName("PPP/arMaxSig"); _widgets << _arMaxSig; 112 101 113 _addStaButton = new QPushButton("Add Station"); _widgets << _addStaButton; 102 114 _delStaButton = new QPushButton("Delete Station"); _widgets << _delStaButton; … … 116 128 connect(_dataSource, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(slotEnableWidgets())); 117 129 connect(_constraints, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(slotEnableWidgets())); 130 connect(_arGPS, SIGNAL(stateChanged(int)), this, SLOT(slotEnableWidgets())); 131 connect(_arGalileo, SIGNAL(stateChanged(int)), this, SLOT(slotEnableWidgets())); 132 connect(_arBDS, SIGNAL(stateChanged(int)), this, SLOT(slotEnableWidgets())); 118 133 connect(_snxtroPath, SIGNAL(textChanged(const QString &)), this, SLOT(slotPPPTextChanged())); 119 134 connect(_snxtroAc, SIGNAL(textChanged(const QString &)), this, SLOT(slotPPPTextChanged())); … … 122 137 connect(_snxtroCampId, SIGNAL(textChanged(const QString &)), this, SLOT(slotPPPTextChanged())); 123 138 139 _logMode->setEditable(false); 140 _logMode->addItems(QString("normal,debug,all").split(",")); 141 124 142 slotEnableWidgets(); 125 143 126 _lcGPS->setEditable(false); 127 #ifdef USE_PPP_SSR_I 128 _lcGPS->addItems(QString("P3,P3&L3").split(",")); 129 #else 130 _lcGPS->addItems(QString("Pi&Li,Pi,P1&L1,P1,P3&L3,P3,L3,no").split(",")); 131 #endif 144 _lcGPS->setEditable(true); 145 _lcGPS->addItems(QString("Pi&Li,Pi,P1&L1,P1,P3&L3,P3,L3,no,P125&L125").split(",")); 132 146 133 147 _lcGLONASS->setEditable(false); 134 #ifdef USE_PPP_SSR_I135 _lcGLONASS->addItems(QString("no,P3,L3,P3&L3").split(","));136 #else137 148 _lcGLONASS->addItems(QString("Pi&Li,Pi,P1&L1,P1,P3&L3,P3,L3,no").split(",")); 138 #endif 139 140 _lcGalileo->setEditable(false); 141 #ifdef USE_PPP_SSR_I 142 _lcGalileo->addItems(QString("no,P3,L3,P3&L3").split(",")); 143 #else 144 _lcGalileo->addItems(QString("Pi&Li,Pi,P1&L1,P1,P3&L3,P3,L3,no").split(",")); 145 #endif 146 147 _lcBDS->setEditable(false); 148 #ifdef USE_PPP_SSR_I 149 _lcBDS->addItems(QString("no,P3,L3,P3&L3").split(",")); 150 #else 151 _lcBDS->addItems(QString("Pi&Li,Pi,P1&L1,P1,P3&L3,P3,L3,no").split(",")); 152 #endif 153 154 #ifdef USE_PPP 149 150 _lcGalileo->setEditable(true); 151 _lcGalileo->addItems(QString("Pi&Li,Pi,P1&L1,P1,P3&L3,P3,L3,no,P1576&L1576").split(",")); 152 153 _lcBDS->setEditable(true); 154 _lcBDS->addItems(QString("Pi&Li,Pi,P1&L1,P1,P3&L3,P3,L3,no,P1576&L1576").split(",")); 155 155 156 _constraints->setEditable(false); 156 157 _constraints->addItems(QString("no,Ionosphere: pseudo-obs").split(",")); 157 #endif 158 158 159 _snxtroSampl->setEditable(false); 159 160 _snxtroSampl->addItems(QString("1 sec,5 sec,10 sec,30 sec,60 sec,300 sec").split(",")); … … 172 173 _minEle->setSuffix(" deg"); 173 174 175 _arMinNumEpo->setMinimum(5); 176 _arMinNumEpo->setMaximum(60); 177 _arMinNumEpo->setSingleStep(5); 178 179 _arMinNumSat->setMinimum(4); 180 _arMinNumSat->setMaximum(8); 181 _arMinNumSat->setSingleStep(1); 182 174 183 _corrWaitTime->setMinimum(0); 175 184 _corrWaitTime->setMaximum(20); … … 210 219 // WhatsThis, PPP (3) 211 220 // ------------------ 212 #ifdef USE_PPP213 221 _staTable->setWhatsThis(tr("<p>Specify values for Sigma and white Noise of the Stations North, East and Height coordinate components in meters. Specify also a Sigma in meters for a priori model based Tropospheric delays and a Sigma in meters per second for the delay's Noise. You can also specify a 'NMEA Port' to output coordinates in NMEA format through an IP port of your local host. Specify a list of signal priorities for the observations that shall be used for PPP.</p>" 214 222 "<p>'Sigma' is meant to describe the uncertainty of a single coordinate or tropospheric delay estimated for one epoch. 'Noise' is meant to describe the variation of estimates from epoch to epoch.</p><p><ul><li>A Sigma of 100.0 meters may be an appropriate choice e.g. for the initial N/E/H coordinates. However, this value may be significantly smaller (i.e. 0.01) for stations with well-known a priori coordinates.</li><li>A Noise of 100.0 meters for the estimated N/E/H coordinates may also be appropriate considering the potential movement of a rover position.</li><li>A value of 0.1 meters may be an appropriate Sigma for the a priori model based Tropospheric delay estimation.</li><li>Specify a Noise to describe the expected variation of the tropospheric effect over time. Supposing 1Hz observation data, specifying a value of 3e-6 would mean that the tropospheric effect may vary 3600 * 3e-6 = 0.01 meters per hour.</li></ul></p>" … … 222 230 "<p>But it is recommended to specify it in more detail per individual station, e.g.:</p> <ul> <li>'G:12&W R:12&P E:1&C E:5&Q C:26&I'</li></ul> " 223 231 "<p> <i>[key: PPP/staTable]</i></p>")); 224 #else 225 _staTable->setWhatsThis(tr("<p>Specify values for Sigma and white Noise of the Stations North, East and Height coordinate components in meters. Specify also a Sigma in meters for a priori model based Tropospheric delays and a Sigma in meters per second for the delay's Noise. You can also specify a 'NMEA Port' to output coordinates in NMEA format through an IP port of your local host.<i>[key: PPP/staTable]</i></p>")); 226 #endif 232 227 233 // WhatsThis, PPP (4) 228 234 // ------------------ … … 240 246 //////////////////////////////////////////////////////////////////////////// 241 247 t_pppWidgets::~t_pppWidgets() { 242 delete _dataSource;243 delete _rinexObs;244 delete _rinexNav;245 delete _corrMount;246 delete _ionoMount;247 delete _corrFile;248 delete _ionoFile;249 delete _crdFile;250 delete _antexFile;251 delete _blqFile;252 delete _logPath;253 delete _nmeaPath;254 delete _snxtroPath;255 delete _snxtroSampl;256 delete _snxtroIntr;257 delete _snxtroAc;258 delete _snxtroSolId;259 delete _snxtroSolType;260 delete _snxtroCampId;261 for (int iRow = _staTable->rowCount()-1; iRow >=0; iRow--) {262 _staTable->removeRow(iRow);263 }264 delete _staTable;265 delete _lcGPS;266 delete _lcGLONASS;267 delete _lcGalileo;268 delete _lcBDS;269 delete _constraints;270 delete _sigmaC1;271 delete _sigmaL1;272 delete _sigmaGIM;273 delete _maxResC1;274 delete _maxResL1;275 delete _maxResGIM;276 delete _minObs;277 delete _minEle;278 delete _eleWgtCode;279 delete _eleWgtPhase;280 delete _seedingTime;281 delete _corrWaitTime;282 delete _addStaButton;283 delete _delStaButton;284 delete _plotCoordinates;285 delete _mapWinButton;286 delete _audioResponse;287 delete _mapWinDotSize;288 delete _mapWinDotColor;289 delete _mapSpeedSlider;290 248 } 291 249 … … 296 254 bncSettings settings; 297 255 298 // ComboBoxes 299 // ---------- 300 int ii = _dataSource->findText(settings.value(_dataSource->objectName()).toString()); 301 if (ii != -1) { 302 _dataSource->setCurrentIndex(ii); 303 } 304 ii = _lcGPS->findText(settings.value(_lcGPS->objectName()).toString()); 305 if (ii != -1) { 306 _lcGPS->setCurrentIndex(ii); 307 } 308 ii = _lcGLONASS->findText(settings.value(_lcGLONASS->objectName()).toString()); 309 if (ii != -1) { 310 _lcGLONASS->setCurrentIndex(ii); 311 } 312 ii = _lcGalileo->findText(settings.value(_lcGalileo->objectName()).toString()); 313 if (ii != -1) { 314 _lcGalileo->setCurrentIndex(ii); 315 } 316 ii = _lcBDS->findText(settings.value(_lcBDS->objectName()).toString()); 317 if (ii != -1) { 318 _lcBDS->setCurrentIndex(ii); 319 } 320 ii = _constraints->findText(settings.value(_constraints->objectName()).toString()); 321 if (ii != -1) { 322 _constraints->setCurrentIndex(ii); 323 } 324 ii = _snxtroIntr->findText(settings.value(_snxtroIntr->objectName()).toString()); 325 if (ii != -1) { 326 _snxtroIntr->setCurrentIndex(ii); 327 } 328 329 // FileChoosers 330 // ------------ 331 _rinexObs ->setFileName(settings.value(_rinexObs ->objectName()).toString()); 332 _rinexNav ->setFileName(settings.value(_rinexNav ->objectName()).toString()); 333 _corrFile ->setFileName(settings.value(_corrFile ->objectName()).toString()); 334 _ionoFile ->setFileName(settings.value(_ionoFile ->objectName()).toString()); 335 _crdFile ->setFileName(settings.value(_crdFile ->objectName()).toString()); 336 _antexFile->setFileName(settings.value(_antexFile->objectName()).toString()); 337 _blqFile->setFileName(settings.value(_blqFile->objectName()).toString()); 338 339 // LineEdits 340 // --------- 341 _corrMount ->setText(settings.value(_corrMount ->objectName()).toString()); 342 _ionoMount ->setText(settings.value(_ionoMount ->objectName()).toString()); 343 _logPath ->setText(settings.value(_logPath ->objectName()).toString()); 344 _nmeaPath ->setText(settings.value(_nmeaPath ->objectName()).toString()); 345 _snxtroPath ->setText(settings.value(_snxtroPath ->objectName()).toString()); 346 _snxtroAc ->setText(settings.value(_snxtroAc ->objectName()).toString()); 347 _snxtroSolId ->setText(settings.value(_snxtroSolId ->objectName()).toString()); 348 _snxtroSolType->setText(settings.value(_snxtroSolType ->objectName()).toString()); 349 _snxtroCampId ->setText(settings.value(_snxtroCampId ->objectName()).toString()); 350 351 if (!settings.value(_sigmaC1->objectName()).toString().isEmpty()) { 352 _sigmaC1->setText(settings.value(_sigmaC1->objectName()).toString()); 353 } 354 else { 355 _sigmaC1->setText("1.0"); 356 } 357 358 if (!settings.value(_sigmaL1->objectName()).toString().isEmpty()) { 359 _sigmaL1->setText(settings.value(_sigmaL1->objectName()).toString()); 360 } 361 else { 362 _sigmaL1->setText("0.01"); 363 } 364 365 if (!settings.value(_sigmaGIM->objectName()).toString().isEmpty()) { 366 _sigmaGIM->setText(settings.value(_sigmaGIM->objectName()).toString()); 367 } 368 else { 369 _sigmaGIM->setText("1.0"); 370 } 371 372 if (!settings.value(_maxResC1->objectName()).toString().isEmpty()) { 373 _maxResC1->setText(settings.value(_maxResC1->objectName()).toString()); 374 } 375 else { 376 _maxResC1->setText("3.0"); 377 } 378 379 if (!settings.value(_maxResL1->objectName()).toString().isEmpty()) { 380 _maxResL1->setText(settings.value(_maxResL1->objectName()).toString()); 381 } 382 else { 383 _maxResL1->setText("0.03"); 384 } 385 386 if (!settings.value(_maxResGIM->objectName()).toString().isEmpty()) { 387 _maxResGIM->setText(settings.value(_maxResGIM->objectName()).toString()); 388 } 389 else { 390 _maxResGIM->setText("3.0"); 391 } 392 393 394 if (!settings.value(_seedingTime->objectName()).toString().isEmpty()) { 395 _seedingTime->setText(settings.value(_seedingTime->objectName()).toString()); 396 } 397 else { 398 _seedingTime->setText("0"); 399 } 400 401 // CheckBoxes 402 // ---------- 403 _eleWgtCode ->setCheckState(Qt::CheckState(settings.value(_eleWgtCode ->objectName()).toInt())); 404 _eleWgtPhase->setCheckState(Qt::CheckState(settings.value(_eleWgtPhase->objectName()).toInt())); 405 406 // SpinBoxex 407 // --------- 408 _minObs->setValue(settings.value(_minObs->objectName()).toInt()); 409 _minEle->setValue(settings.value(_minEle->objectName()).toInt()); 410 _corrWaitTime->setValue(settings.value(_corrWaitTime->objectName()).toInt()); 411 412 413 ii = _snxtroSampl->findText(settings.value(_snxtroSampl->objectName()).toString()); 414 if (ii != -1) { 415 _snxtroSampl->setCurrentIndex(ii); 416 } 417 256 auto setWidgetValue = [settings](QWidget* widget, QString defValue = QString()) { 257 if (auto* obj = qobject_cast<QLineEdit*>(widget)) { 258 QString text = settings.value(obj->objectName()).toString(); 259 if (text.isEmpty() && !defValue.isEmpty()) { 260 text = defValue; 261 } 262 obj->setText(text); 263 } 264 else if (auto* obj = qobject_cast<QComboBox*>(widget)) { 265 QString text = settings.value(obj->objectName()).toString(); 266 int ii = obj->findText(text); 267 if (ii != -1) { 268 obj->setCurrentIndex(ii); 269 } 270 else if (obj->isEditable()) { 271 obj->insertItem(0, text); 272 obj->setCurrentIndex(0); 273 } 274 } 275 else if (auto* obj = qobject_cast<qtFileChooser*>(widget)) { 276 obj->setFileName(settings.value(obj->objectName()).toString()); 277 } 278 else if (auto* obj = qobject_cast<QCheckBox*>(widget)) { 279 obj->setCheckState(Qt::CheckState(settings.value(obj->objectName()).toInt())); 280 } 281 else if (auto* obj = qobject_cast<QSpinBox*>(widget)) { 282 obj->setValue(settings.value(obj->objectName()).toInt()); 283 } 284 else if (auto* obj = qobject_cast<QSlider*>(widget)) { 285 int value = settings.value(obj->objectName()).toInt(); 286 if (value == 0) value = obj->maximum(); 287 obj->setSliderPosition(value); 288 } 289 }; 290 291 QListIterator<QWidget*> iw(_widgets); 292 while (iw.hasNext()) { 293 setWidgetValue(iw.next()); 294 } 295 296 // Set default values for some widgets 297 // ----------------------------------- 298 setWidgetValue(_sigmaC1, "1.0"); 299 setWidgetValue(_sigmaL1, "0.01"); 300 setWidgetValue(_sigmaGIM, "1.0"); 301 setWidgetValue(_maxResC1, "3.0"); 302 setWidgetValue(_maxResL1, "0.03"); 303 setWidgetValue(_maxResGIM, "3.0"); 304 setWidgetValue(_seedingTime, "0"); 305 418 306 // Table with stations 419 307 // ------------------- … … 431 319 } 432 320 } 433 434 // Plots and Maps435 // --------------436 _plotCoordinates ->setText(settings.value(_plotCoordinates->objectName()).toString());437 _audioResponse ->setText(settings.value(_audioResponse->objectName()).toString());438 _mapWinDotSize ->setText(settings.value(_mapWinDotSize->objectName()).toString());439 440 ii = _mapWinDotColor->findText(settings.value(_mapWinDotColor->objectName()).toString());441 if (ii != -1) {442 _mapWinDotColor->setCurrentIndex(ii);443 }444 445 int speed = settings.value(_mapSpeedSlider->objectName()).toInt();446 if (speed == 0) speed = _mapSpeedSlider->maximum();447 _mapSpeedSlider->setSliderPosition(speed);448 321 } 449 322 … … 454 327 bncSettings settings; 455 328 456 settings.setValue(_dataSource ->objectName(), _dataSource ->currentText()); 457 settings.setValue(_rinexObs ->objectName(), _rinexObs ->fileName()); 458 settings.setValue(_rinexNav ->objectName(), _rinexNav ->fileName()); 459 settings.setValue(_corrMount ->objectName(), _corrMount ->text()); 460 settings.setValue(_ionoMount ->objectName(), _ionoMount ->text()); 461 settings.setValue(_corrFile ->objectName(), _corrFile ->fileName()); 462 settings.setValue(_ionoFile ->objectName(), _ionoFile ->fileName()); 463 settings.setValue(_crdFile ->objectName(), _crdFile ->fileName()); 464 settings.setValue(_antexFile ->objectName(), _antexFile ->fileName()); 465 settings.setValue(_blqFile ->objectName(), _blqFile ->fileName()); 466 settings.setValue(_logPath ->objectName(), _logPath ->text()); 467 settings.setValue(_nmeaPath ->objectName(), _nmeaPath ->text()); 468 settings.setValue(_snxtroPath ->objectName(), _snxtroPath ->text()); 469 settings.setValue(_snxtroSampl ->objectName(), _snxtroSampl ->currentText()); 470 settings.setValue(_snxtroIntr ->objectName(), _snxtroIntr ->currentText()); 471 settings.setValue(_snxtroAc ->objectName(), _snxtroAc ->text()); 472 settings.setValue(_snxtroSolId ->objectName(), _snxtroSolId ->text()); 473 settings.setValue(_snxtroSolType->objectName(), _snxtroSolType ->text()); 474 settings.setValue(_snxtroCampId ->objectName(), _snxtroCampId ->text()); 475 settings.setValue(_lcGPS ->objectName(), _lcGPS ->currentText()); 476 settings.setValue(_lcGLONASS ->objectName(), _lcGLONASS ->currentText()); 477 settings.setValue(_lcGalileo ->objectName(), _lcGalileo ->currentText()); 478 settings.setValue(_lcBDS ->objectName(), _lcBDS ->currentText()); 479 settings.setValue(_constraints ->objectName(), _constraints ->currentText()); 480 settings.setValue(_sigmaC1 ->objectName(), _sigmaC1 ->text()); 481 settings.setValue(_sigmaL1 ->objectName(), _sigmaL1 ->text()); 482 settings.setValue(_sigmaGIM ->objectName(), _sigmaGIM ->text()); 483 settings.setValue(_corrWaitTime->objectName(), _corrWaitTime->value()); 484 settings.setValue(_maxResC1 ->objectName(), _maxResC1 ->text()); 485 settings.setValue(_maxResL1 ->objectName(), _maxResL1 ->text()); 486 settings.setValue(_maxResGIM ->objectName(), _maxResGIM ->text()); 487 settings.setValue(_seedingTime ->objectName(), _seedingTime ->text()); 488 settings.setValue(_minObs ->objectName(), _minObs ->value()); 489 settings.setValue(_minEle ->objectName(), _minEle ->value()); 490 settings.setValue(_eleWgtCode ->objectName(), _eleWgtCode ->checkState()); 491 settings.setValue(_eleWgtPhase ->objectName(), _eleWgtPhase ->checkState()); 329 auto storeWidgetValue = [&settings](QWidget* widget) { 330 if (auto* obj = qobject_cast<QLineEdit*>(widget)) { 331 settings.setValue(obj->objectName(), obj->text()); 332 } 333 else if (auto* obj = qobject_cast<QComboBox*>(widget)) { 334 settings.setValue(obj->objectName(), obj->currentText()); 335 } 336 else if (auto* obj = qobject_cast<qtFileChooser*>(widget)) { 337 settings.setValue(obj->objectName(), obj->fileName()); 338 } 339 else if (auto* obj = qobject_cast<QCheckBox*>(widget)) { 340 settings.setValue(obj->objectName(), obj->checkState()); 341 } 342 else if (auto* obj = qobject_cast<QSpinBox*>(widget)) { 343 settings.setValue(obj->objectName(), obj->value()); 344 } 345 else if (auto* obj = qobject_cast<QSlider*>(widget)) { 346 settings.setValue(obj->objectName(), obj->value()); 347 } 348 }; 349 350 QListIterator<QWidget*> it(_widgets); 351 while (it.hasNext()) { 352 storeWidgetValue(it.next()); 353 } 492 354 493 355 QStringList staList; … … 504 366 } 505 367 settings.setValue(_staTable->objectName(), staList); 506 507 settings.setValue(_plotCoordinates ->objectName(), _plotCoordinates ->text());508 settings.setValue(_audioResponse ->objectName(), _audioResponse ->text());509 settings.setValue(_mapWinDotSize ->objectName(), _mapWinDotSize ->text());510 settings.setValue(_mapWinDotColor ->objectName(), _mapWinDotColor ->currentText());511 settings.setValue(_mapSpeedSlider ->objectName(), _mapSpeedSlider ->value());512 368 } 513 369 … … 534 390 _rinexNav->setEnabled(false); 535 391 _corrFile->setEnabled(false); 392 _biasFile->setEnabled(false); 536 393 _ionoFile->setEnabled(false); 537 394 } 538 395 else if (rinexFiles) { 539 396 _corrMount ->setEnabled(false); 397 _biasMount ->setEnabled(false); 540 398 _ionoMount ->setEnabled(false); 541 399 _audioResponse->setEnabled(false); … … 543 401 544 402 if ( _snxtroPath->text() != "" && !allDisabled) { 545 _snxtroSampl->setEnabled(true); 546 _snxtroIntr ->setEnabled(true); 547 _snxtroAc ->setEnabled(true); 403 _snxtroSampl ->setEnabled(true); 404 _snxtroIntr ->setEnabled(true); 405 _snxtroAc ->setEnabled(true); 548 406 _snxtroSolId ->setEnabled(true); 549 _snxtroSolType ->setEnabled(true);550 _snxtroCampId ->setEnabled(true);407 _snxtroSolType->setEnabled(true); 408 _snxtroCampId ->setEnabled(true); 551 409 } 552 410 else { 553 _snxtroSampl->setEnabled(false); 554 _snxtroIntr ->setEnabled(false); 555 _snxtroAc ->setEnabled(false); 411 _snxtroSampl ->setEnabled(false); 412 _snxtroIntr ->setEnabled(false); 413 _snxtroAc ->setEnabled(false); 556 414 _snxtroSolId ->setEnabled(false); 557 _snxtroSolType ->setEnabled(false);558 _snxtroCampId ->setEnabled(false);415 _snxtroSolType->setEnabled(false); 416 _snxtroCampId ->setEnabled(false); 559 417 } 560 418 … … 568 426 } 569 427 428 bool ar = (_arGPS->checkState() == Qt::Checked || 429 _arGalileo->checkState() == Qt::Checked || 430 _arBDS->checkState() == Qt::Checked); 431 _arMinNumEpo->setEnabled(ar); 432 _arMinNumSat->setEnabled(ar); 433 _arUseYaw ->setEnabled(ar); 434 _arMaxFrac ->setEnabled(ar); 435 _arMaxSig ->setEnabled(ar); 436 570 437 _dataSource->setEnabled(true); 571 438 … … 629 496 630 497 const static QPalette paletteWhite(QColor(255, 255, 255)); 631 const static QPalette paletteGray(QColor(230, 230, 230)); 498 const static QPalette paletteGray (QColor(230, 230, 230)); 632 499 633 500 // SNX TRO file sampling … … 635 502 if (sender() == 0 || sender() == _snxtroPath) { 636 503 if ( _snxtroPath->text() != "" ) { 637 _snxtroSampl->setEnabled(true); 638 _snxtroIntr ->setEnabled(true); 639 _snxtroAc ->setEnabled(true); 504 _snxtroSampl ->setEnabled(true); 505 _snxtroIntr ->setEnabled(true); 506 _snxtroAc ->setEnabled(true); 640 507 _snxtroSolId ->setEnabled(true); 641 _snxtroSolType ->setEnabled(true);642 _snxtroCampId ->setEnabled(true);643 _snxtroSampl->setPalette(paletteWhite); 644 _snxtroIntr ->setPalette(paletteWhite); 645 _snxtroAc ->setPalette(paletteWhite); 508 _snxtroSolType->setEnabled(true); 509 _snxtroCampId ->setEnabled(true); 510 _snxtroSampl ->setPalette(paletteWhite); 511 _snxtroIntr ->setPalette(paletteWhite); 512 _snxtroAc ->setPalette(paletteWhite); 646 513 _snxtroSolId ->setPalette(paletteWhite); 647 _snxtroSolType ->setPalette(paletteWhite);648 _snxtroCampId ->setPalette(paletteWhite);514 _snxtroSolType->setPalette(paletteWhite); 515 _snxtroCampId ->setPalette(paletteWhite); 649 516 } 650 517 else { 651 _snxtroSampl->setEnabled(false); 652 _snxtroIntr ->setEnabled(false); 653 _snxtroAc ->setEnabled(false); 518 _snxtroSampl ->setEnabled(false); 519 _snxtroIntr ->setEnabled(false); 520 _snxtroAc ->setEnabled(false); 654 521 _snxtroSolId ->setEnabled(false); 655 _snxtroSolType ->setEnabled(false);656 _snxtroCampId ->setEnabled(false);657 _snxtroSampl->setPalette(paletteGray); 658 _snxtroIntr ->setPalette(paletteGray); 659 _snxtroAc ->setPalette(paletteGray); 522 _snxtroSolType->setEnabled(false); 523 _snxtroCampId ->setEnabled(false); 524 _snxtroSampl ->setPalette(paletteGray); 525 _snxtroIntr ->setPalette(paletteGray); 526 _snxtroAc ->setPalette(paletteGray); 660 527 _snxtroSolId ->setPalette(paletteGray); 661 _snxtroSolType ->setPalette(paletteGray);662 _snxtroCampId ->setPalette(paletteGray);663 } 664 } 665 666 667 } 528 _snxtroSolType->setPalette(paletteGray); 529 _snxtroCampId ->setPalette(paletteGray); 530 } 531 } 532 533 534 }
Note:
See TracChangeset
for help on using the changeset viewer.
