Changeset 3729 in ntrip
- Timestamp:
- Mar 23, 2012, 8:51:55 AM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/bncwindow.cpp
r3727 r3729 83 83 static const QStringList labels = QString("account, Streams: resource loader / mountpoint, decoder, lat, long, nmea, ntrip, bytes").split(","); 84 84 85 setMinimumSize(85*ww, 65*ww); 85 setMinimumSize(85*ww, 65*ww); 86 86 87 87 setWindowTitle(tr("BKG Ntrip Client (BNC) Version " BNCVERSION)); … … 355 355 // ----------- 356 356 _pppMountLineEdit = new QLineEdit(settings.value("pppMount").toString()); 357 _pppMountLineEdit->setMaximumWidth( 6*ww);357 _pppMountLineEdit->setMaximumWidth(8*ww); 358 358 _pppCorrMountLineEdit = new QLineEdit(settings.value("pppCorrMount").toString()); 359 359 _pppCorrMountLineEdit->setMaximumWidth(8*ww); … … 385 385 _pppSPPComboBox = new QComboBox(); 386 386 _pppSPPComboBox->setEditable(false); 387 _pppSPPComboBox->addItems(QString("PPP,SPP ,Post-Processing").split(","));387 _pppSPPComboBox->addItems(QString("PPP,SPP").split(",")); 388 388 int ik = _pppSPPComboBox->findText(settings.value("pppSPP").toString()); 389 389 if (ik != -1) { … … 446 446 447 447 connect(_pppQuickStartLineEdit, SIGNAL(textChanged(const QString &)), 448 this, SLOT(slotBncTextChanged())); 449 450 // Post Processing 451 // --------------- 452 _postProcComboBox = new QComboBox(); 453 _postProcComboBox->setEditable(false); 454 _postProcComboBox->addItems(QString(",PPP").split(",")); 455 int in = _postProcComboBox->findText(settings.value("postProc").toString()); 456 if (in != -1) { 457 _postProcComboBox->setCurrentIndex(in); 458 } 459 460 connect(_postProcComboBox, SIGNAL(currentIndexChanged(const QString &)), 448 461 this, SLOT(slotBncTextChanged())); 449 462 … … 568 581 _uploadEphBytesCounter = new bncBytesCounter; 569 582 570 // WhatsThis 583 // WhatsThis weber 571 584 // --------- 572 585 _proxyHostLineEdit->setWhatsThis(tr("<p>If you are running BNC within a protected Local Area Network (LAN), you might need to use a proxy server to access the Internet. Enter your proxy server IP and port number in case one is operated in front of BNC. If you do not know the IP and port of your proxy server, check the proxy server settings in your Internet browser or ask your network administrator.</p><p>Note that IP streaming is sometimes not allowed in a LAN. In this case you need to ask your network administrator for an appropriate modification of the local security policy or for the installation of a TCP relay to the NTRIP broadcasters. If these are not possible, you might need to run BNC outside your LAN on a network that has unobstructed connection to the Internet.</p>")); 573 586 _proxyPortLineEdit->setWhatsThis(tr("<p>Enter your proxy server port number in case a proxy is operated in front of BNC.</p>")); 587 _sslCaCertPathLineEdit->setWhatsThis(tr("<p>Communication with an NTRIP broadcaster over SSL requires the exchange of client and/or server certificates. Specify the path to a directory where you save certificates on your system. Don't try communication via SSL if you are not sure wheter this is supported by the involved NTRIP broadcaster. Note that SSL communication is usually done over port 443.</p>")); 588 _ignoreSslErrorsCheckBox->setWhatsThis(tr("<p>SSL communication may involve queries coming from the NTRIP broadcaster. Tick 'Ignore SSL authorization erros' if you don't want to be bothered with this.</p>")); 574 589 _waitTimeSpinBox->setWhatsThis(tr("<p>When feeding a real-time GNSS network engine waiting for synchronized input epoch by epoch, BNC drops whatever is received later than 'Wait for full epoch' seconds. A value of 3 to 5 seconds is recommended, depending on the latency of the incoming streams and the delay acceptable to your real-time GNSS network engine or products.</p>")); 575 590 _outFileLineEdit->setWhatsThis(tr("Specify the full path to a file where synchronized observations are saved in plain ASCII format. Beware that the size of this file can rapidly increase depending on the number of incoming streams.")); … … 621 636 _pppCorrMountLineEdit->setWhatsThis(tr("<p>You must specify an orbit/clock corrections stream by its mountpoint from the 'Streams' list compiled below. Example: 'CLK10'</p>")); 622 637 _pppSPPComboBox->setWhatsThis(tr("<p>Choose between plain Single Point Positioning (SPP) and Precise Point Positioning (PPP).</p>")); 638 _postProcComboBox->setWhatsThis(tr("<p>Select a post-processing mode.</p>")); 623 639 _pppUsePhaseCheckBox->setWhatsThis(tr("<p>By default BNC applies a PPP solution using an ionosphere free P3 linear combination of code observations.</p><p>Tick 'Use phase obs' for an ionosphere free L3 linear combination of phase observations.</p>")); 624 640 _pppEstTropoCheckBox->setWhatsThis(tr("<p>By default BNC does not introduce troposphere parameters when estimating coordinates.</p><p>Tick 'Estimate tropo' to introduce troposphere parameters when estimating coordinates.</p>")); 625 _pppGLONASSCheckBox->setWhatsThis(tr("<p>By default BNC does not use GLONASS observations in PPP mode.</p><p>Tick 'Use GLONASS' for a combined processing of both, GPS and GLONASS observations in PPP mode.</p>"));626 _pppGalileoCheckBox->setWhatsThis(tr("<p>By default BNC does not use Galileo observations in PPP mode.</p><p>Tick 'Use Galileo' for a combined processing of both, GPS and Galileo observations in PPP mode.</p>"));641 _pppGLONASSCheckBox->setWhatsThis(tr("<p>By default BNC does not use GLONASS observations in PPP mode.</p><p>Tick 'Use GLONASS' for adding GLONASS observations to GPS and Galileo (optional) in a PPP solution.</p>")); 642 _pppGalileoCheckBox->setWhatsThis(tr("<p>By default BNC does not use Galileo observations in PPP mode.</p><p>Tick 'Use Galileo' for adding Galileo observations to GPS and GLONASS (optional) in a PPP solution.</p>")); 627 643 _pppPlotCoordinates->setWhatsThis(tr("<p>BNC will plot PPP results in the 'PPP Plot' tab as North (red), East (green) and Up (blue) displacements when this option is selected. Values will be either referred to an XYZ reference coordinate (if specified) or referred to the first estimated coordinate. The sliding PPP time series window will cover the period of the latest 5 minutes.</p><p>Note that a PPP time series makes only sense for a stationary operated receiver.")); 628 644 _pppNMEALineEdit->setWhatsThis(tr("<p>Specify the full path to a file where PPP results are saved as NMEA messages.</p>")); … … 636 652 _pppSigCrdP->setWhatsThis(tr("<p>Enter a sigma in meters for the white noise of estimated XYZ coordinate components. A value of 100.0 (default) may be appropriate considering the potential movement of a rover position.</p>")); 637 653 _pppSigTrp0->setWhatsThis(tr("<p>Enter a sigma in meters for the a-priory model based tropospheric delay estimation. A value of 0.1 (default) may be an appropriate choice.</p>")); 638 _pppSigTrpP->setWhatsThis(tr("<p>Enter a sigma in meters per second to describe the expected variation of the tropospheric effect.</p><p>Supposing 1Hz observation data, a value of 1e-6 (default) would mean that the tropospheric effect may vary for 3600 * 1e-6 = 0.0 036meters per hour.</p>"));654 _pppSigTrpP->setWhatsThis(tr("<p>Enter a sigma in meters per second to describe the expected variation of the tropospheric effect.</p><p>Supposing 1Hz observation data, a value of 1e-6 (default) would mean that the tropospheric effect may vary for 3600 * 1e-6 = 0.018 meters per hour.</p>")); 639 655 _pppRefCrdXLineEdit->setWhatsThis(tr("<p>Enter reference coordinate X of the receiver's position.</p>")); 640 656 _pppRefCrdYLineEdit->setWhatsThis(tr("<p>Enter reference coordinate Y of the receiver's position.</p>")); … … 653 669 _pppAntennaLineEdit->setWhatsThis(tr("<p>Specify the receiver's antenna name as defined in your ANTEX file. Observations will be corrected for the antenna phase center's offset which may result in a reduction of a few centimeters at max. Corrections for phase center variations are not yet applied by BNC. The specified name must consist of 20 characters. Add trailing blanks if the antenna name has less then 20 characters.</p><p>Default is an empty option field meaning that you don't want to correct observations for antenna phase center offsets.</p>")); 654 670 _pppApplySatAntCheckBox->setWhatsThis(tr("<p>This option is not yet working.</p><p>Satellite orbit and clock corrections refer to the satellite's antenna phase centers and hence observations are actually <u>not</u> to be corrected for satellite antenna phase center offsets. However, you may like to tick 'Apply Offsets' to force BNC to correct observations for satellite antenna phase center offsets.</p><p>Default is to <u>not</u> correct observations for satellite antenna phase center offsets.")); 655 _cmbTable->setWhatsThis(tr("<p>BNC allows to process several orbit and clock corrections streams in real-time to produce, encode, upload and save a combination of correctors from various providers. Hit the 'Add Row' button, Double click on the 'Mountpoint' field to enter a Broadcast Ephemeris corrections mountpoint from the 'Streams' section below and hit Enter. Then double click on the 'AC Name' field to enter your choice of an abbreviation for the Analysis Center (AC) providing the stream. Finally, double click on the 'Weight' field to enter the weight to be applied for this stream in the combination.</p><p>Note that an appropriate 'Wait for full epoch' value needs to be specified for the combination under the 'Broadcast Corrections' tab. A value of 15 seconds would make sense there if the update rate of incoming clock corrections is i.e. 10 seconds.</p><p>Note further that the sequence of rows in the 'Combination Table' is of importance because the orbit information in the final combination stream is just copied from the stream listed in the first row. Hence the first line in the 'Combination Table' defines a kind of 'Master AC'. The update rate of the combination product follows the 'Master AC's update rate.</p><p>The combination process requires Broadcast Ephemeris. Besides the orbit and clock corrections stream(s) BNC must therefore pull a stream carrying Broadcast Ephemeris in the form of RTCM Version 3 messages.</p>")); 671 _cmbTable->setWhatsThis(tr("<p>BNC allows to process several orbit and clock corrections streams in real-time to produce, encode, upload and save a combination of correctors coming from various providers. Hit the 'Add Row' button, double click on the 'Mountpoint' field to enter a Broadcast Ephemeris corrections mountpoint from the 'Streams' section below and hit Enter. Then double click on the 'AC Name' field to enter your choice of an abbreviation for the Analysis Center (AC) providing the stream. Finally, double click on the 'Weight' field to enter the weight to be applied for this stream in the combination.</p><p>Note that an appropriate 'Wait for full epoch' value needs to be specified for the combination under the 'Broadcast Corrections' tab. A value of 15 seconds would make sense there if the update rate of incoming clock corrections is i.e. 10 seconds.</p><p>Note further that the orbit information in the final combination stream is just copied from one of the incoming streams. The stream used for providing the orbits may vary over time: if the orbit providing stream has an outage then BNC switches to the next remaining streams to get hold of the orbit information.</p><p>The combination process requires Broadcast Ephemeris. Besides the orbit and clock corrections stream(s) BNC must therefore pull a stream carrying Broadcast Ephemeris in the form of RTCM Version 3 messages.</p>")); 672 _cmbMaxresLineEdit->setWhatsThis(tr("<p>BNC combines all incoming clocks according to specified weights. Individual clock estimates that differ by more than 'Maximal Residuum' meters from the average of all clocks will be ignored.<p></p>It is suggested to specify a value of about 0.2 m for the Kalman filter combination approach and a value of about 3.0 meters for the Single-Epoch combination approach.</p><p>Default is a value of '999.0'.</p>")); 673 _cmbMethodComboBox->setWhatsThis(tr("<p>Select a clock combination approach. Options are 'Single-Epoch' and Kalman 'Filter'. It is suggested to use the Kalman filter approach for the purpose of Precise Point Positioning.</p>")); 674 _uploadTable->setWhatsThis(tr("<p>BNC can upload clock and orbit corrections to broadcast ephemeris (Broadcast Corrections) in RTCM Version 3 SSR format. The clock and orbit corrections may either come from a Real-time Network Engine or from a combination of incoming orbit/clock streams.</p><p>Hit the 'Add Row' button, double click on the 'Host' field to enter the IP or URL of an NTRIP broadcaster and hit Enter. Then double click on the 'Port' field to enter the NTRIP broadcaster IP port.</p>")); 675 656 676 addCmbRowButton->setWhatsThis(tr("Hit 'Add Row' button to add another line to the mountpoints table.")); 657 677 delCmbRowButton->setWhatsThis(tr("Hit 'Delete' button to delete the highlighted line from the mountpoints table.")); 678 658 679 659 680 // Canvas with Editable Fields … … 674 695 QWidget* pppgroup = new QWidget(); 675 696 QWidget* ppp2group = new QWidget(); 697 QWidget* postgroup = new QWidget(); 676 698 QWidget* cmbgroup = new QWidget(); 677 699 QWidget* uploadgroup = new QWidget(); … … 688 710 _aogroup->addTab(pppgroup,tr("PPP (1)")); 689 711 _aogroup->addTab(ppp2group,tr("PPP (2)")); 712 _aogroup->addTab(postgroup,tr("Post-Processing")); 690 713 #ifdef USE_COMBINATION 691 714 _aogroup->addTab(cmbgroup,tr("Combination")); … … 708 731 _proxyPortLineEdit->setMaximumWidth(9*ww); 709 732 710 pLayout->addWidget(new QLabel("Proxy host"), 0, 0); 711 pLayout->addWidget(_proxyHostLineEdit, 0, 1, 1,10); 712 pLayout->addWidget(new QLabel("Proxy port"), 1, 0); 713 pLayout->addWidget(_proxyPortLineEdit, 1, 1); 714 pLayout->addWidget(new QLabel("Settings for proxy in protected networks, leave boxes blank if none."),2, 0, 1, 50, Qt::AlignLeft); 715 pLayout->addWidget(new QLabel(" "),3,0); 716 pLayout->addWidget(new QLabel(" "),4,0); 717 pLayout->addWidget(new QLabel("Path to SSL Certificates"), 5, 0); 718 pLayout->addWidget(_sslCaCertPathLineEdit, 5, 1, 1,10); 719 pLayout->addWidget(new QLabel("default: " + bncSslConfig::defaultPath()), 5, 12, 1,20); 720 pLayout->addWidget(new QLabel("Ignore SSL Authorization Errors"), 6,0); 721 pLayout->addWidget(_ignoreSslErrorsCheckBox, 6, 1, 1,10); 722 pLayout->addWidget(new QLabel("Settings for SSL Authorization."),7, 0, 1, 50, Qt::AlignLeft); 733 pLayout->addWidget(new QLabel("Proxy host"), 0, 0); 734 pLayout->addWidget(_proxyHostLineEdit, 0, 1, 1,10); 735 pLayout->addWidget(new QLabel("Proxy port"), 1, 0); 736 pLayout->addWidget(_proxyPortLineEdit, 1, 1); 737 pLayout->addWidget(new QLabel("Path to SSL certificates"), 2, 0); 738 pLayout->addWidget(_sslCaCertPathLineEdit, 2, 1, 1,10); 739 pLayout->addWidget(new QLabel("default: " + bncSslConfig::defaultPath()), 2, 12, 1,20); 740 pLayout->addWidget(new QLabel("Ignore SSL authorization errors"), 3,0); 741 pLayout->addWidget(_ignoreSslErrorsCheckBox, 3, 1, 1,10); 742 pLayout->addWidget(new QLabel("Settings for proxy in protected networks and settings for SSL authorization, leave boxes blank if none."),4, 0, 1, 50, Qt::AlignLeft); 743 pLayout->addWidget(new QLabel(" "), 5,0); 744 pLayout->addWidget(new QLabel(" "), 6,0); 723 745 pgroup->setLayout(pLayout); 724 746 … … 740 762 gLayout->addWidget(_rawOutFileLineEdit, 4, 1, 1,30); 741 763 gLayout->addWidget(new QLabel("General settings for logfile, file handling, configuration on-the-fly, and auto-start."),5, 0, 1, 50, Qt::AlignLeft); 764 gLayout->addWidget(new QLabel(" "), 6, 0); 742 765 ggroup->setLayout(gLayout); 743 766 … … 749 772 _rnxSamplSpinBox->setMaximumWidth(9*ww); 750 773 751 oLayout->addWidget(new QLabel("Directory"), 0, 0); 752 oLayout->addWidget(_rnxPathLineEdit, 0, 1,1,24); 753 oLayout->addWidget(new QLabel("Interval"), 1, 0); 754 oLayout->addWidget(_rnxIntrComboBox, 1, 1); 755 oLayout->addWidget(new QLabel(" Sampling"), 1, 2, Qt::AlignRight); 756 oLayout->addWidget(_rnxSamplSpinBox, 1, 3, Qt::AlignLeft); 757 oLayout->addWidget(new QLabel("Skeleton extension"), 2, 0); 758 oLayout->addWidget(_rnxSkelLineEdit, 2, 1,1,1, Qt::AlignLeft); 759 oLayout->addWidget(new QLabel("Script (full path)"), 3, 0); 760 oLayout->addWidget(_rnxScrpLineEdit, 3, 1,1,24); 761 oLayout->addWidget(new QLabel("Version 3"), 4, 0); 762 oLayout->addWidget(_rnxV3CheckBox, 4, 1); 763 oLayout->addWidget(new QLabel("Saving RINEX observation files."),5,0,1,50, Qt::AlignLeft); 774 oLayout->addWidget(new QLabel("Directory"), 0, 0); 775 oLayout->addWidget(_rnxPathLineEdit, 0, 1, 1, 24); 776 oLayout->addWidget(new QLabel("Interval"), 1, 0); 777 oLayout->addWidget(_rnxIntrComboBox, 1, 1); 778 oLayout->addWidget(new QLabel(" Sampling"), 1, 2, Qt::AlignRight); 779 oLayout->addWidget(_rnxSamplSpinBox, 1, 3, Qt::AlignLeft); 780 oLayout->addWidget(new QLabel("Skeleton extension"), 2, 0); 781 oLayout->addWidget(_rnxSkelLineEdit, 2, 1, 1, 1, Qt::AlignLeft); 782 oLayout->addWidget(new QLabel("Script (full path)"), 3, 0); 783 oLayout->addWidget(_rnxScrpLineEdit, 3, 1, 1, 24); 784 oLayout->addWidget(new QLabel("Version 3"), 4, 0); 785 oLayout->addWidget(_rnxV3CheckBox, 4, 1); 786 oLayout->addWidget(new QLabel("Saving RINEX observation files."),5, 0, 1, 50, Qt::AlignLeft); 787 oLayout->addWidget(new QLabel(" "), 6, 0); 764 788 ogroup->setLayout(oLayout); 765 789 … … 780 804 eLayout->addWidget(_ephV3CheckBox, 3, 1); 781 805 eLayout->addWidget(new QLabel("Saving RINEX ephemeris files and ephemeris output through IP port."),4,0,1,50,Qt::AlignLeft); 782 eLayout->addWidget(new QLabel(" "),5,0); 806 eLayout->addWidget(new QLabel(" "), 5, 0); 807 eLayout->addWidget(new QLabel(" "), 6, 0); 783 808 egroup->setLayout(eLayout); 784 809 … … 803 828 cLayout->addWidget(new QLabel(" "),4,0); 804 829 cLayout->addWidget(new QLabel(" "),5,0); 830 cLayout->addWidget(new QLabel(" "),6,0); 805 831 cgroup->setLayout(cLayout); 806 832 … … 826 852 sLayout->addWidget(new QLabel("Output decoded observations in a binary format to feed a real-time GNSS network engine."),4,0,1,50); 827 853 sLayout->addWidget(new QLabel(" "),5,0); 854 sLayout->addWidget(new QLabel(" "),6,0); 828 855 sgroup->setLayout(sLayout); 829 856 … … 840 867 _serialHeightNMEALineEdit->setMaximumWidth(8*ww); 841 868 842 serLayout->addWidget(new QLabel("Mountpoint"), 0, 0, Qt::AlignLeft);843 serLayout->addWidget(_serialMountPointLineEdit, 0, 1,1,2);844 serLayout->addWidget(new QLabel("Port name"), 1, 0, Qt::AlignLeft);845 serLayout->addWidget(_serialPortNameLineEdit, 1, 1,1,2);846 serLayout->addWidget(new QLabel("Baud rate"), 2, 0, Qt::AlignLeft);847 serLayout->addWidget(_serialBaudRateComboBox, 2, 1);848 serLayout->addWidget(new QLabel("Flow control"), 2, 2, Qt::AlignRight);849 serLayout->addWidget(_serialFlowControlComboBox, 2, 3);850 serLayout->addWidget(new QLabel("Data bits"), 3, 0, Qt::AlignLeft);851 serLayout->addWidget(_serialDataBitsComboBox, 3, 1);852 serLayout->addWidget(new QLabel("Parity"), 3, 2, Qt::AlignRight);853 serLayout->addWidget(_serialParityComboBox, 3, 3);854 serLayout->addWidget(new QLabel(" Stop bits"), 3, 4, Qt::AlignRight);855 serLayout->addWidget(_serialStopBitsComboBox, 3, 5);856 serLayout->addWidget(new QLabel("NMEA"), 4, 0);857 serLayout->addWidget(_serialAutoNMEAComboBox, 4, 1);858 serLayout->addWidget(new QLabel(" File (full path)"), 4, 2, Qt::AlignRight);859 serLayout->addWidget(_serialFileNMEALineEdit, 4, 3,1,15);869 serLayout->addWidget(new QLabel("Mountpoint"), 0, 0, Qt::AlignLeft); 870 serLayout->addWidget(_serialMountPointLineEdit, 0, 1,1,2); 871 serLayout->addWidget(new QLabel("Port name"), 1, 0, Qt::AlignLeft); 872 serLayout->addWidget(_serialPortNameLineEdit, 1, 1,1,2); 873 serLayout->addWidget(new QLabel("Baud rate"), 2, 0, Qt::AlignLeft); 874 serLayout->addWidget(_serialBaudRateComboBox, 2, 1); 875 serLayout->addWidget(new QLabel("Flow control"), 2, 2, Qt::AlignRight); 876 serLayout->addWidget(_serialFlowControlComboBox, 2, 3); 877 serLayout->addWidget(new QLabel("Data bits"), 3, 0, Qt::AlignLeft); 878 serLayout->addWidget(_serialDataBitsComboBox, 3, 1); 879 serLayout->addWidget(new QLabel("Parity"), 3, 2, Qt::AlignRight); 880 serLayout->addWidget(_serialParityComboBox, 3, 3); 881 serLayout->addWidget(new QLabel(" Stop bits"), 3, 4, Qt::AlignRight); 882 serLayout->addWidget(_serialStopBitsComboBox, 3, 5); 883 serLayout->addWidget(new QLabel("NMEA"), 4, 0); 884 serLayout->addWidget(_serialAutoNMEAComboBox, 4, 1); 885 serLayout->addWidget(new QLabel(" File (full path)"), 4, 2, Qt::AlignRight); 886 serLayout->addWidget(_serialFileNMEALineEdit, 4, 3, 1,15); 860 887 serLayout->addWidget(new QLabel("Height"), 4,20, Qt::AlignRight); 861 serLayout->addWidget(_serialHeightNMEALineEdit, 4,21, 1,11);888 serLayout->addWidget(_serialHeightNMEALineEdit, 4,21, 1,11); 862 889 serLayout->addWidget(new QLabel("Port settings to feed a serial connected receiver."),5,0,1,30); 890 serLayout->addWidget(new QLabel(" "), 6, 0); 863 891 864 892 sergroup->setLayout(serLayout); … … 882 910 aLayout->addWidget(new QLabel("Failure and recovery reports, advisory notes."),4,0,1,50,Qt::AlignLeft); 883 911 aLayout->addWidget(new QLabel(" "), 5, 0); 912 aLayout->addWidget(new QLabel(" "), 6, 0); 884 913 agroup->setLayout(aLayout); 885 914 … … 899 928 rLayout->addWidget(new QLabel(" "), 4, 0); 900 929 rLayout->addWidget(new QLabel(" "), 5, 0); 930 rLayout->addWidget(new QLabel(" "), 6, 0); 901 931 rgroup->setLayout(rLayout); 902 932 … … 916 946 _pppRefCrdYLineEdit->setMaximumWidth(10*ww); 917 947 _pppRefCrdZLineEdit->setMaximumWidth(10*ww); 918 _pppRefdNLineEdit->setMaximumWidth( 5*ww);919 _pppRefdELineEdit->setMaximumWidth( 5*ww);920 _pppRefdULineEdit->setMaximumWidth( 5*ww);948 _pppRefdNLineEdit->setMaximumWidth(6*ww); 949 _pppRefdELineEdit->setMaximumWidth(6*ww); 950 _pppRefdULineEdit->setMaximumWidth(6*ww); 921 951 _pppSync->setMaximumWidth(6*ww); 922 952 _pppSPPComboBox->setMaximumWidth(15*ww); 923 953 _pppNMEAPortLineEdit->setMaximumWidth(6*ww); 924 954 925 _postObsFileChooser = new qtFileChooser; 926 _postObsFileChooser->setFileName(settings.value("postObsFile").toString()); 927 _postObsFileChooser->setWhatsThis(tr("Full Path to RINEX Observation File")); 928 929 _postNavFileChooser = new qtFileChooser; 930 _postNavFileChooser->setFileName(settings.value("postNavFile").toString()); 931 _postNavFileChooser->setWhatsThis(tr("Full Path to RINEX Navigation File")); 932 933 _postCorrFileChooser = new qtFileChooser; 934 _postCorrFileChooser->setFileName(settings.value("postCorrFile").toString()); 935 _postCorrFileChooser->setWhatsThis(tr("Full Path to DGPS Correction File")); 936 937 _postOutLineEdit = new QLineEdit(settings.value("postOutFile").toString()); 938 _postOutLineEdit->setWhatsThis(tr("Full Path to DGPS Correction File")); 939 940 int ir = 0; 941 pppLayout->addWidget(new QLabel("<b>Precise Point Positioning (Panel 1)</b>"), ir, 0, 1, 8); 942 ++ir; 943 pppLayout->addWidget(new QLabel("Obs Mountpoint"), ir, 0); 944 pppLayout->addWidget(_pppMountLineEdit, ir, 1); 945 pppLayout->addWidget(_pppSPPComboBox, ir, 2); 946 pppLayout->addWidget(new QLabel(" X "), ir, 3, Qt::AlignRight); 947 pppLayout->addWidget(_pppRefCrdXLineEdit, ir, 4); 948 pppLayout->addWidget(new QLabel(" Y "), ir, 5, Qt::AlignRight); 949 pppLayout->addWidget(_pppRefCrdYLineEdit, ir, 6); 950 pppLayout->addWidget(new QLabel(" Z "), ir, 7, Qt::AlignRight); 951 pppLayout->addWidget(_pppRefCrdZLineEdit, ir, 8); 952 ++ir; 953 pppLayout->addWidget(new QLabel("Corr Mountpoint "), ir, 0); 954 pppLayout->addWidget(_pppCorrMountLineEdit, ir, 1); 955 pppLayout->addWidget(new QLabel(" dN "), ir, 3, Qt::AlignRight); 956 pppLayout->addWidget(_pppRefdNLineEdit, ir, 4); 957 pppLayout->addWidget(new QLabel(" dE "), ir, 5, Qt::AlignRight); 958 pppLayout->addWidget(_pppRefdELineEdit, ir, 6); 959 pppLayout->addWidget(new QLabel(" dU "), ir, 7, Qt::AlignRight); 960 pppLayout->addWidget(_pppRefdULineEdit, ir, 8); 961 ++ir; 962 pppLayout->addWidget(new QLabel("Output"), ir, 0); 963 pppLayout->addWidget(new QLabel("NMEA File"), ir, 1, Qt::AlignRight); 964 pppLayout->addWidget(_pppNMEALineEdit, ir, 2, 1, 2); 965 pppLayout->addWidget(new QLabel("NMEA Port"), ir, 5, Qt::AlignRight); 966 pppLayout->addWidget(_pppNMEAPortLineEdit, ir, 6); 967 pppLayout->addWidget(new QLabel("PPP Plot"), ir, 7, Qt::AlignRight); 968 pppLayout->addWidget(_pppPlotCoordinates, ir, 8); 969 ++ir; 970 pppLayout->addWidget(new QLabel("<b>Post-Processing </b>")); 971 { 972 QHBoxLayout* hlpLayout = new QHBoxLayout; 973 hlpLayout->addWidget(new QLabel("Obs")); 974 hlpLayout->addWidget(_postObsFileChooser); 975 hlpLayout->addWidget(new QLabel(" Nav")); 976 hlpLayout->addWidget(_postNavFileChooser); 977 hlpLayout->addWidget(new QLabel(" Corr")); 978 hlpLayout->addWidget(_postCorrFileChooser); 979 pppLayout->addLayout(hlpLayout, ir, 1, 1, 8); 980 } 981 ++ir; 982 pppLayout->addWidget(new QLabel("Output"), ir, 1); 983 pppLayout->addWidget(_postOutLineEdit, ir, 2, 1, 2); 955 pppLayout->addWidget(new QLabel("Obs Mountpoint"), 0, 0); 956 pppLayout->addWidget(_pppMountLineEdit, 0, 1); 957 pppLayout->addWidget(_pppSPPComboBox, 0, 2); 958 pppLayout->addWidget(new QLabel(" X "), 0, 3, Qt::AlignRight); 959 pppLayout->addWidget(_pppRefCrdXLineEdit, 0, 4); 960 pppLayout->addWidget(new QLabel(" Y "), 0, 5, Qt::AlignRight); 961 pppLayout->addWidget(_pppRefCrdYLineEdit, 0, 6); 962 pppLayout->addWidget(new QLabel(" Z "), 0, 7, Qt::AlignRight); 963 pppLayout->addWidget(_pppRefCrdZLineEdit, 0, 8); 964 pppLayout->addWidget(new QLabel("Corr Mountpoint "), 1, 0); 965 pppLayout->addWidget(_pppCorrMountLineEdit, 1, 1); 966 pppLayout->addWidget(new QLabel(" dN "), 1, 3, Qt::AlignRight); 967 pppLayout->addWidget(_pppRefdNLineEdit, 1, 4); 968 pppLayout->addWidget(new QLabel(" dE "), 1, 5, Qt::AlignRight); 969 pppLayout->addWidget(_pppRefdELineEdit, 1, 6); 970 pppLayout->addWidget(new QLabel(" dU "), 1, 7, Qt::AlignRight); 971 pppLayout->addWidget(_pppRefdULineEdit, 1, 8); 972 pppLayout->addWidget(new QLabel("Output"), 2, 0); 973 pppLayout->addWidget(new QLabel("NMEA File"), 2, 1, Qt::AlignRight); 974 pppLayout->addWidget(_pppNMEALineEdit, 2, 2, 1, 3); 975 pppLayout->addWidget(new QLabel(" NMEA Port"), 2, 5, Qt::AlignRight); 976 pppLayout->addWidget(_pppNMEAPortLineEdit, 2, 6); 977 pppLayout->addWidget(new QLabel("PPP Plot"), 2, 7, Qt::AlignRight); 978 pppLayout->addWidget(_pppPlotCoordinates, 2, 8); 979 pppLayout->addWidget(new QLabel("Coordinates from Precise Point Positioning (PPP)."), 3, 0, 1, 8, Qt::AlignLeft); 980 pppLayout->addWidget(new QLabel(" "), 4, 0, 1, 5); 981 pppLayout->addWidget(new QLabel(" "), 5, 0, 1, 5); 982 pppLayout->addWidget(new QLabel(" "), 6, 0); 984 983 985 984 pppgroup->setLayout(pppLayout); … … 988 987 // ------------------------- 989 988 QGridLayout* ppp2Layout = new QGridLayout; 990 ir = 0; 991 ppp2Layout->addWidget(new QLabel("<b>Precise Point Positioning (Panel 2)</b>"), ir, 0, 1, 8); 992 ++ir; 993 ppp2Layout->addWidget(new QLabel("Antennas"), ir, 0); 994 { 995 QHBoxLayout* hlpLayout = new QHBoxLayout; 996 hlpLayout->addWidget(_pppAntexFileChooser); 997 hlpLayout->addWidget(new QLabel("ANTEX File")); 998 hlpLayout->addWidget(_pppAntennaLineEdit); 999 hlpLayout->addWidget(new QLabel("Antenna Name")); 1000 hlpLayout->addWidget(_pppApplySatAntCheckBox); 1001 hlpLayout->addWidget(new QLabel("Apply Sat. Ant. Offsets")); 1002 ppp2Layout->addLayout(hlpLayout, ir, 1, 1, 8); 1003 } 1004 ++ir; 1005 ppp2Layout->addWidget(new QLabel("Sigmas"), ir, 0); 1006 ppp2Layout->addWidget(_pppSigCLineEdit, ir, 1, Qt::AlignRight); 1007 ppp2Layout->addWidget(new QLabel("Code"), ir, 2); 1008 ppp2Layout->addWidget(_pppSigPLineEdit, ir, 3); 1009 ppp2Layout->addWidget(new QLabel("Phase"), ir, 4); 1010 ppp2Layout->addWidget(_pppSigTrp0, ir, 5, Qt::AlignRight); 1011 ppp2Layout->addWidget(new QLabel("Tropo Init "), ir, 6); 1012 ppp2Layout->addWidget(_pppSigTrpP, ir, 7); 1013 ppp2Layout->addWidget(new QLabel("Tropo White Noise"), ir, 8); 1014 ++ir; 1015 ppp2Layout->addWidget(new QLabel("Options"), ir, 0, 1, 5); 1016 ppp2Layout->addWidget(_pppUsePhaseCheckBox, ir, 1, Qt::AlignRight); 1017 ppp2Layout->addWidget(new QLabel("Use phase obs"), ir, 2); 1018 ppp2Layout->addWidget(_pppEstTropoCheckBox, ir, 3, Qt::AlignRight); 1019 ppp2Layout->addWidget(new QLabel("Estimate tropo"), ir, 4); 1020 ppp2Layout->addWidget(_pppGLONASSCheckBox, ir, 5, Qt::AlignRight); 1021 ppp2Layout->addWidget(new QLabel("Use GLONASS"), ir, 6); 1022 ppp2Layout->addWidget(_pppGalileoCheckBox, ir, 7, Qt::AlignRight); 1023 ppp2Layout->addWidget(new QLabel("Use Galileo "), ir, 8); 1024 ++ir; 1025 ppp2Layout->addWidget(new QLabel("Options cont'd"), ir, 0); 1026 ppp2Layout->addWidget(_pppSigCrd0, ir, 1, Qt::AlignRight); 1027 ppp2Layout->addWidget(new QLabel("Sigma XYZ Init "), ir, 2); 1028 ppp2Layout->addWidget(_pppSigCrdP, ir, 3, Qt::AlignRight); 1029 ppp2Layout->addWidget(new QLabel("Sigma XYZ Noise "), ir, 4); 1030 ppp2Layout->addWidget(_pppQuickStartLineEdit, ir, 5, Qt::AlignRight); 1031 ppp2Layout->addWidget(new QLabel("Quick-Start (sec) "), ir, 6); 1032 ppp2Layout->addWidget(_pppMaxSolGapLineEdit, ir, 7, Qt::AlignRight); 1033 ppp2Layout->addWidget(new QLabel("Max Sol. Gap (sec)"), ir, 8); 1034 ++ir; 1035 ppp2Layout->addWidget(new QLabel("Options cont'd"), ir, 0); 1036 ppp2Layout->addWidget(_pppSync, ir, 1); 1037 ppp2Layout->addWidget(new QLabel("Sync Corr (sec) "), ir, 2); 1038 ppp2Layout->addWidget(_pppAverageLineEdit, ir, 3, Qt::AlignRight); 1039 ppp2Layout->addWidget(new QLabel("Averaging (min)") , ir, 4); 989 _pppAntennaLineEdit->setMinimumWidth(18*ww); 990 991 ppp2Layout->addWidget(new QLabel("ANTEX file"), 0, 0); 992 ppp2Layout->addWidget(_pppAntexFileChooser, 0, 1, 1, 3); 993 ppp2Layout->addWidget(_pppAntennaLineEdit, 0, 4, 1, 2, Qt::AlignRight); 994 ppp2Layout->addWidget(new QLabel("Antenna Name"), 0, 6); 995 ppp2Layout->addWidget(_pppApplySatAntCheckBox, 0, 7, Qt::AlignRight); 996 ppp2Layout->addWidget(new QLabel("Apply Sat. Ant. Offsets"), 0, 8); 997 ppp2Layout->addWidget(new QLabel("Options"), 1, 0); 998 ppp2Layout->addWidget(_pppUsePhaseCheckBox, 1, 1, Qt::AlignRight); 999 ppp2Layout->addWidget(new QLabel("Use phase obs"), 1, 2); 1000 ppp2Layout->addWidget(_pppEstTropoCheckBox, 1, 3, Qt::AlignRight); 1001 ppp2Layout->addWidget(new QLabel("Estimate tropo"), 1, 4); 1002 ppp2Layout->addWidget(_pppGLONASSCheckBox, 1, 5, Qt::AlignRight); 1003 ppp2Layout->addWidget(new QLabel("Use GLONASS"), 1, 6); 1004 ppp2Layout->addWidget(_pppGalileoCheckBox, 1, 7, Qt::AlignRight); 1005 ppp2Layout->addWidget(new QLabel("Use Galileo "), 1, 8); 1006 ppp2Layout->addWidget(new QLabel("Options cont'd"), 2, 0); 1007 ppp2Layout->addWidget(_pppSync, 2, 1); 1008 ppp2Layout->addWidget(new QLabel("Sync Corr (sec) "), 2, 2); 1009 ppp2Layout->addWidget(_pppAverageLineEdit, 2, 3, Qt::AlignRight); 1010 ppp2Layout->addWidget(new QLabel("Averaging (min)") , 2, 4); 1011 ppp2Layout->addWidget(_pppQuickStartLineEdit, 2, 5, Qt::AlignRight); 1012 ppp2Layout->addWidget(new QLabel("Quick-Start (sec) "), 2, 6); 1013 ppp2Layout->addWidget(_pppMaxSolGapLineEdit, 2, 7, Qt::AlignRight); 1014 ppp2Layout->addWidget(new QLabel("Max Sol. Gap (sec)"), 2, 8); 1015 ppp2Layout->addWidget(new QLabel("Sigmas"), 3, 0); 1016 ppp2Layout->addWidget(_pppSigCLineEdit, 3, 1, Qt::AlignRight); 1017 ppp2Layout->addWidget(new QLabel("Code"), 3, 2); 1018 ppp2Layout->addWidget(_pppSigPLineEdit, 3, 3); 1019 ppp2Layout->addWidget(new QLabel("Phase"), 3, 4); 1020 ppp2Layout->addWidget(_pppSigTrp0, 3, 5, Qt::AlignRight); 1021 ppp2Layout->addWidget(new QLabel("Tropo Init "), 3, 6); 1022 ppp2Layout->addWidget(_pppSigTrpP, 3, 7); 1023 ppp2Layout->addWidget(new QLabel("Tropo White Noise"), 3, 8); 1024 ppp2Layout->addWidget(new QLabel("Sigmas cont'd"), 4, 0); 1025 ppp2Layout->addWidget(_pppSigCrd0, 4, 1, Qt::AlignRight); 1026 ppp2Layout->addWidget(new QLabel("Sigma XYZ Init "), 4, 2); 1027 ppp2Layout->addWidget(_pppSigCrdP, 4, 3, Qt::AlignRight); 1028 ppp2Layout->addWidget(new QLabel("Sigma XYZ Noise "), 4, 4); 1029 ppp2Layout->addWidget(new QLabel("Coordinates from Precise Point Positioning (PPP), continued."), 5, 0, 1, 5); 1030 ppp2Layout->addWidget(new QLabel(" "), 6, 0); 1040 1031 1041 1032 ppp2group->setLayout(ppp2Layout); 1033 1034 // Post Processing 1035 // --------------- 1036 QGridLayout* postLayout = new QGridLayout; 1037 postLayout->setColumnMinimumWidth(0,14*ww); 1038 _postProcComboBox->setMaximumWidth(10*ww); 1039 1040 _postObsFileChooser = new qtFileChooser; 1041 _postObsFileChooser->setFileName(settings.value("postObsFile").toString()); 1042 _postObsFileChooser->setWhatsThis(tr("Specify the full path to an observation file in RINEX v2 or v3 format.")); 1043 1044 _postNavFileChooser = new qtFileChooser; 1045 _postNavFileChooser->setFileName(settings.value("postNavFile").toString()); 1046 _postNavFileChooser->setWhatsThis(tr("Specify the full path to a RINEX v2 or v3 navigation file.")); 1047 1048 _postCorrFileChooser = new qtFileChooser; 1049 _postCorrFileChooser->setFileName(settings.value("postCorrFile").toString()); 1050 _postCorrFileChooser->setWhatsThis(tr("Specify the full path to an orbit/clock corrections file in plain ASCII format.")); 1051 1052 _postOutLineEdit = new QLineEdit(settings.value("postOutFile").toString()); 1053 _postOutLineEdit->setWhatsThis(tr("Specify the full path to an output file.")); 1054 1055 postLayout->addWidget(new QLabel("Mode"), 0, 0); 1056 postLayout->addWidget(_postProcComboBox, 0, 1); 1057 postLayout->addWidget(new QLabel("Input files (full path)"), 1, 0); 1058 1059 postLayout->addWidget(_postObsFileChooser, 1, 1); 1060 postLayout->addWidget(new QLabel("Obs "), 1, 2); 1061 postLayout->addWidget(_postNavFileChooser, 1, 3); 1062 postLayout->addWidget(new QLabel("Nav "), 1, 4); 1063 postLayout->addWidget(_postCorrFileChooser, 1, 5); 1064 postLayout->addWidget(new QLabel("Corr"), 1, 6); 1065 1066 postLayout->addWidget(new QLabel("Output file (full path)"), 2, 0); 1067 postLayout->addWidget(_postOutLineEdit, 2, 1, 1, 2); 1068 postLayout->addWidget(new QLabel("Post-processing, input, output, options."), 3, 0, 1, 5); 1069 postLayout->addWidget(new QLabel(" "), 4, 0); 1070 postLayout->addWidget(new QLabel(" "), 5, 0); 1071 postLayout->addWidget(new QLabel(" "), 6, 0); 1072 1073 postgroup->setLayout(postLayout); 1042 1074 1043 1075 // Combination … … 1045 1077 QGridLayout* cmbLayout = new QGridLayout; 1046 1078 1079 cmbLayout->setColumnMinimumWidth(0,12*ww); 1080 _cmbMethodComboBox->setMaximumWidth(12*ww); 1081 addCmbRowButton->setMaximumWidth(12*ww); 1082 delCmbRowButton->setMaximumWidth(12*ww); 1083 _cmbMaxresLineEdit->setMaximumWidth(8*ww); 1084 1047 1085 populateCmbTable(); 1048 cmbLayout->addWidget(_cmbTable,0,0,6,3); 1049 1050 cmbLayout->addWidget(addCmbRowButton,1,3); 1086 cmbLayout->addWidget(_cmbTable, 0,0,4,3); 1087 cmbLayout->addWidget(addCmbRowButton, 0,2); 1051 1088 connect(addCmbRowButton, SIGNAL(clicked()), this, SLOT(slotAddCmbRow())); 1052 cmbLayout->addWidget(delCmbRowButton, 2,3);1053 cmbLayout->addWidget(new QLabel("Method"), 3, 3);1054 cmbLayout->addWidget(_cmbMethodComboBox, 3, 4, Qt::AlignRight);1055 cmbLayout->addWidget(new QLabel("Maximal Residuum"), 4, 3);1056 cmbLayout->addWidget(_cmbMaxresLineEdit, 4, 4, Qt::AlignRight);1089 cmbLayout->addWidget(delCmbRowButton, 0,3); 1090 cmbLayout->addWidget(new QLabel("Method"), 1, 2); 1091 cmbLayout->addWidget(_cmbMethodComboBox, 1, 3, Qt::AlignRight); 1092 cmbLayout->addWidget(new QLabel("Maximal Residuum"), 2, 2); 1093 cmbLayout->addWidget(_cmbMaxresLineEdit, 2, 3, Qt::AlignRight); 1057 1094 connect(delCmbRowButton, SIGNAL(clicked()), this, SLOT(slotDelCmbRow())); 1058 1059 cmbLayout->addWidget(new QLabel(" Combine Broadcast Ephemeris corrections streams."),5,3,1,3); 1095 cmbLayout->addWidget(new QLabel("Combine Broadcast Ephemeris correction streams."),3,2,1,3); 1096 cmbLayout->addWidget(new QLabel(" "), 4, 0); 1097 cmbLayout->addWidget(new QLabel(" "), 5, 0); 1098 cmbLayout->addWidget(new QLabel(" "), 6, 0); 1060 1099 1061 1100 cmbgroup->setLayout(cmbLayout); … … 1065 1104 QGridLayout* uploadHlpLayout = new QGridLayout(); 1066 1105 1067 uploadHlpLayout->addWidget(new QLabel("Upload RTNet or Combination Results"),0,0);1068 1069 uploadHlpLayout->addWidget(addUploadRowButton,0,1);1070 1106 connect(addUploadRowButton, SIGNAL(clicked()), this, SLOT(slotAddUploadRow())); 1071 1072 uploadHlpLayout->addWidget(delUploadRowButton,0,2);1073 1107 connect(delUploadRowButton, SIGNAL(clicked()), this, SLOT(slotDelUploadRow())); 1074 1075 uploadHlpLayout->addWidget(setUploadTrafoButton,1,1);1076 1108 connect(setUploadTrafoButton, SIGNAL(clicked()), this, SLOT(slotSetUploadTrafo())); 1077 1109 1078 uploadHlpLayout->addWidget(new QLabel("Interval"),0,3, Qt::AlignRight); 1079 uploadHlpLayout->addWidget(_uploadIntrComboBox,0,4); 1080 1081 uploadHlpLayout->addWidget(new QLabel("Sampling"),1,3, Qt::AlignRight); 1082 uploadHlpLayout->addWidget(_uploadSamplSpinBox,1,4); 1083 1084 uploadHlpLayout->addWidget(new QLabel("Sampling (Orb)"),1,5, Qt::AlignRight); 1085 uploadHlpLayout->addWidget(_uploadSamplOrbSpinBox,1,6); 1110 uploadHlpLayout->addWidget(addUploadRowButton, 0,0); 1111 uploadHlpLayout->addWidget(delUploadRowButton, 0,1); 1112 uploadHlpLayout->addWidget(new QLabel("Interval"), 0,2, Qt::AlignRight); 1113 uploadHlpLayout->addWidget(_uploadIntrComboBox, 0,3); 1114 uploadHlpLayout->addWidget(new QLabel(" Sampling (Clk)"),0,4, Qt::AlignRight); 1115 uploadHlpLayout->addWidget(_uploadSamplSpinBox, 0,5); 1116 uploadHlpLayout->addWidget(new QLabel(" Sampling (Orb)"),0,6, Qt::AlignRight); 1117 uploadHlpLayout->addWidget(_uploadSamplOrbSpinBox, 0,7); 1118 uploadHlpLayout->addWidget(setUploadTrafoButton, 0,8); 1119 uploadHlpLayout->addWidget(new QLabel("Upload orbit/clock stream coming from Real-time Network Engine or upload orbit/clock combination stream."),1,0,1,8); 1086 1120 1087 1121 QBoxLayout* uploadLayout = new QBoxLayout(QBoxLayout::TopToBottom); … … 1102 1136 1103 1137 uploadLayoutEph->addWidget(new QLabel("Host"), 0, 0); 1104 uploadLayoutEph->addWidget(_uploadEphHostLineEdit, 0, 1, 1, 3);1138 uploadLayoutEph->addWidget(_uploadEphHostLineEdit, 0, 1, 1, 2); 1105 1139 uploadLayoutEph->addWidget(new QLabel(" Port"), 0, 4, Qt::AlignRight); 1106 1140 uploadLayoutEph->addWidget(_uploadEphPortLineEdit, 0, 5, 1, 1); … … 1108 1142 uploadLayoutEph->addWidget(_uploadEphMountpointLineEdit, 1, 1); 1109 1143 uploadLayoutEph->addWidget(new QLabel(" Password"), 1, 2, Qt::AlignRight); 1110 uploadLayoutEph->addWidget(_uploadEphPasswordLineEdit, 1, 3 );1144 uploadLayoutEph->addWidget(_uploadEphPasswordLineEdit, 1, 3, 1, 2); 1111 1145 uploadLayoutEph->addWidget(new QLabel("Sampling"), 2, 0); 1112 1146 uploadLayoutEph->addWidget(_uploadEphSampleSpinBox, 2, 1); 1113 uploadLayoutEph->addWidget(new QLabel("Upload concatenated RTCMv3 Broadcast Ephemeris to caster."), 3, 0, 1, 5); 1114 uploadLayoutEph->addWidget(_uploadEphBytesCounter, 3, 5); 1115 1116 uploadEphgroup->setLayout(uploadLayoutEph); 1147 uploadLayoutEph->addWidget(new QLabel("Upload concatenated RTCMv3 Broadcast Ephemeris to caster:"), 3, 0, 1, 50); 1148 uploadLayoutEph->addWidget(_uploadEphBytesCounter, 3, 5); 1149 uploadLayoutEph->addWidget(new QLabel(" "), 4, 0); 1150 uploadLayoutEph->addWidget(new QLabel(" "), 5, 0); 1151 uploadLayoutEph->addWidget(new QLabel(" "), 6, 0); 1152 1153 uploadEphgroup->setLayout(uploadLayoutEph); 1117 1154 1118 1155 connect(_uploadEphHostLineEdit, SIGNAL(textChanged(const QString &)), … … 1502 1539 settings.setValue("pppAntex", _pppAntexFileChooser->fileName()); 1503 1540 settings.setValue("pppApplySatAnt", _pppApplySatAntCheckBox->checkState()); 1541 settings.setValue("postProc", _postProcComboBox->currentText()); 1504 1542 settings.setValue("mountPoints", mountPoints); 1505 1543 settings.setValue("obsRate", _obsRateComboBox->currentText()); … … 1980 2018 } 1981 2019 2020 // Post Processing 2021 // --------------- 2022 if (sender() == 0 2023 || sender() == _postProcComboBox ) { 2024 enable = (_postProcComboBox->currentText() == "PPP"); 2025 2026 bool enable9 = _postProcComboBox->currentText() == "PPP"; 2027 enableWidget(enable9, _postObsFileChooser); 2028 enableWidget(enable9, _postNavFileChooser); 2029 enableWidget(enable9, _postCorrFileChooser); 2030 enableWidget(enable9, _postOutLineEdit); 2031 _actPostProcessing->setEnabled(enable9); 2032 if (enable9) { 2033 _actGetData->setEnabled(false); 2034 } 2035 else { 2036 _actGetData->setEnabled(true); 2037 } 2038 } 2039 1982 2040 // PPP Client 1983 2041 // ---------- … … 1999 2057 2000 2058 enable = (!_pppMountLineEdit->text().isEmpty() && !_pppCorrMountLineEdit->text().isEmpty()) || 2001 (!_pppMountLineEdit->text().isEmpty() && _pppSPPComboBox->currentText() == "SPP") || 2002 (_pppSPPComboBox->currentText() == "Post-Processing"); 2059 (!_pppMountLineEdit->text().isEmpty() && _pppSPPComboBox->currentText() == "SPP"); 2003 2060 2004 2061 enableWidget(enable, _pppNMEALineEdit); … … 2046 2103 bool enable8 = _pppSPPComboBox->currentText() == "PPP"; 2047 2104 enableWidget(enable8, _pppCorrMountLineEdit); 2048 2049 bool enable9 = _pppSPPComboBox->currentText() == "Post-Processing";2050 enableWidget(enable9, _postObsFileChooser);2051 enableWidget(enable9, _postNavFileChooser);2052 enableWidget(enable9, _postCorrFileChooser);2053 enableWidget(enable9, _postOutLineEdit);2054 _actPostProcessing->setEnabled(enable9);2055 2056 enableWidget(!enable9, _pppMountLineEdit);2057 2105 } 2058 2106 }
Note:
See TracChangeset
for help on using the changeset viewer.