source: ntrip/trunk/BNC/src/bncwindow.h@ 8231

Last change on this file since 8231 was 8231, checked in by wiese, 6 years ago

CHANGE: #105 QT5

File size: 7.2 KB
Line 
1// Part of BNC, a utility for retrieving decoding and
2// converting GNSS data streams from NTRIP broadcasters.
3//
4// Copyright (C) 2007
5// German Federal Agency for Cartography and Geodesy (BKG)
6// http://www.bkg.bund.de
7// Czech Technical University Prague, Department of Geodesy
8// http://www.fsv.cvut.cz
9//
10// Email: euref-ip@bkg.bund.de
11//
12// This program is free software; you can redistribute it and/or
13// modify it under the terms of the GNU General Public License
14// as published by the Free Software Foundation, version 2.
15//
16// This program is distributed in the hope that it will be useful,
17// but WITHOUT ANY WARRANTY; without even the implied warranty of
18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19// GNU General Public License for more details.
20//
21// You should have received a copy of the GNU General Public License
22// along with this program; if not, write to the Free Software
23// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24
25#ifndef BNCWINDOW_H
26#define BNCWINDOW_H
27
28#include <QtWidgets>
29#include <QMainWindow>
30#include <QWhatsThis>
31
32#include "bncgetthread.h"
33#include "bnccaster.h"
34#include "pppWidgets.h"
35
36class bncAboutDlg : public QDialog {
37 Q_OBJECT
38 public:
39 bncAboutDlg(QWidget* parent);
40 ~bncAboutDlg();
41};
42
43class bncFlowchartDlg : public QDialog {
44 Q_OBJECT
45
46 public:
47 bncFlowchartDlg(QWidget* parent);
48 ~bncFlowchartDlg();
49};
50
51class bncFigure;
52class bncFigureLate;
53class bncFigurePPP;
54class bncBytesCounter;
55class bncEphUploadCaster;
56class qtFileChooser;
57class bncMapWin;
58
59class bncWindow : public QMainWindow {
60 Q_OBJECT
61
62 public:
63 bncWindow();
64 ~bncWindow();
65 void CreateMenu();
66 void AddToolbar();
67
68 public slots:
69 void slotMountPointsRead(QList<bncGetThread*>);
70 void slotBncTextChanged();
71
72 private slots:
73 void slotWindowMessage(const QByteArray msg, bool showOnScreen);
74 void slotHelp();
75 void slotAbout();
76 void slotFlowchart();
77 void slotFontSel();
78 void slotSaveOptions();
79 void slotAddMountPoints();
80 void slotMapMountPoints();
81 void slotMapPPP();
82 void slotMapPPPClosed();
83 void slotStart();
84 void slotStop();
85 void slotNewMountPoints(QStringList* mountPoints);
86 void slotDeleteMountPoints();
87 void slotGetThreadsFinished();
88 void slotSelectionChanged();
89 void slotWhatsThis();
90 void slotAddCmbRow();
91 void slotDelCmbRow();
92 void slotAddUploadRow();
93 void slotDelUploadRow();
94 void slotAddUploadEphRow();
95 void slotDelUploadEphRow();
96 void slotSetUploadTrafo();
97 void slotReqcEditOption();
98 void slotPostProcessingFinished();
99 void slotPostProcessingProgress(int);
100
101 protected:
102 virtual void closeEvent(QCloseEvent *);
103
104 private:
105 void saveOptions();
106 void populateMountPointsTable();
107 void populateCmbTable();
108 void populateUploadTable();
109 void populateUploadEphTable();
110 void enableWidget(bool enable, QWidget* widget);
111 void startRealTime();
112 void enableStartStop();
113
114 QMenu* _menuHlp;
115 QMenu* _menuFile;
116
117 QAction* _actHelp;
118 QAction* _actAbout;
119 QAction* _actFlowchart;
120 QAction* _actFontSel;
121 QAction* _actSaveOpt;
122 QAction* _actQuit;
123 QAction* _actMapMountPoints;
124 QAction* _actStart;
125 QAction* _actStop;
126 QAction* _actAddMountPoints;
127 QAction* _actDeleteMountPoints;
128 QAction* _actwhatsthis;
129 QAction* _actwhatsthismenu;
130
131 QLineEdit* _proxyHostLineEdit;
132 QLineEdit* _proxyPortLineEdit;
133 QLineEdit* _sslCaCertPathLineEdit;
134 QCheckBox* _sslIgnoreErrorsCheckBox;
135 QLineEdit* _outFileLineEdit;
136 QLineEdit* _outPortLineEdit;
137 QLineEdit* _outUPortLineEdit;
138 QLineEdit* _ephOutPortLineEdit;
139 QLineEdit* _corrPortLineEdit;
140 QLineEdit* _rnxPathLineEdit;
141 QLineEdit* _ephPathLineEdit;
142 QLineEdit* _corrPathLineEdit;
143 QLineEdit* _miscMountLineEdit;
144 QLineEdit* _miscPortLineEdit;
145
146 QComboBox* _reqcActionComboBox;
147 QPushButton* _reqcEditOptionButton;
148 qtFileChooser* _reqcObsFileChooser;
149 qtFileChooser* _reqcNavFileChooser;
150 QLineEdit* _reqcOutObsLineEdit;
151 QLineEdit* _reqcOutNavLineEdit;
152 QLineEdit* _reqcOutLogLineEdit;
153 QLineEdit* _reqcPlotDirLineEdit;
154 QLineEdit* _reqcSkyPlotSignals;
155 QCheckBox* _reqcLogSummaryOnly;
156
157 qtFileChooser* _sp3CompFileChooser;
158 QLineEdit* _sp3CompExclude;
159 QLineEdit* _sp3CompLogLineEdit;
160
161 QCheckBox* _rnxV3CheckBox;
162 QLineEdit* _rnxV2Priority;
163 QCheckBox* _ephV3CheckBox;
164 QCheckBox* _ephV3filenameCheckBox;
165 QLineEdit* _rnxSkelLineEdit;
166 QCheckBox* _rnxFileCheckBox;
167 QCheckBox* _rnxV3filenameCheckBox;
168 QLineEdit* _rnxScrpLineEdit;
169 QLineEdit* _logFileLineEdit;
170 QLineEdit* _rawOutFileLineEdit;
171 QComboBox* _rnxIntrComboBox;
172 QComboBox* _ephIntrComboBox;
173 QComboBox* _corrIntrComboBox;
174 QSpinBox* _rnxSamplSpinBox;
175 QSpinBox* _outSamplSpinBox;
176 QCheckBox* _rnxAppendCheckBox;
177 QCheckBox* _autoStartCheckBox;
178 QCheckBox* _miscScanRTCMCheckBox;
179 QSpinBox* _outWaitSpinBox;
180 QComboBox* _adviseObsRateComboBox;
181 QSpinBox* _adviseFailSpinBox;
182 QSpinBox* _adviseRecoSpinBox;
183 QLineEdit* _adviseScriptLineEdit;
184 QComboBox* _miscIntrComboBox;
185 QTableWidget* _mountPointsTable;
186
187 QLineEdit* _serialPortNameLineEdit;
188 QLineEdit* _serialMountPointLineEdit;
189 QComboBox* _serialBaudRateComboBox;
190 QComboBox* _serialParityComboBox;
191 QComboBox* _serialDataBitsComboBox;
192 QComboBox* _serialStopBitsComboBox;
193 QComboBox* _serialFlowControlComboBox;
194 QLineEdit* _serialHeightNMEALineEdit;
195 QLineEdit* _serialFileNMEALineEdit;
196 QComboBox* _serialAutoNMEAComboBox;
197 QSpinBox* _serialManualNMEASamplingSpinBox;
198
199 QLineEdit* _LatLineEdit;
200 QLineEdit* _LonLineEdit;
201
202 QComboBox* _onTheFlyComboBox;
203
204 QTextEdit* _log;
205
206 QWidget* _canvas;
207 QTabWidget* _aogroup;
208
209 QTabWidget* _loggroup;
210 bncFigure* _bncFigure;
211 bncFigureLate* _bncFigureLate;
212 bncFigurePPP* _bncFigurePPP;
213
214 QTableWidget* _cmbTable;
215 QLineEdit* _cmbMaxresLineEdit;
216 QComboBox* _cmbMethodComboBox;
217 QSpinBox* _cmbSamplSpinBox;
218 QCheckBox* _cmbUseGlonass;
219
220 QTableWidget* _uploadTable;
221 QComboBox* _uploadIntrComboBox;
222 QSpinBox* _uploadSamplRtcmEphCorrSpinBox;
223 QSpinBox* _uploadSamplSp3SpinBox;
224 QSpinBox* _uploadSamplClkRnxSpinBox;
225 qtFileChooser* _uploadAntexFile;
226
227 QTableWidget* _uploadEphTable;
228 QSpinBox* _uploadSamplRtcmEphSpinBox;
229
230 bncCaster* _caster;
231 bncEphUploadCaster* _casterEph;
232
233 bool _runningRealTime;
234 bool _runningPPP;
235 bool _runningEdit;
236 bool _runningQC;
237 bool _runningSp3Comp;
238
239 bool running() {return _runningRealTime || _runningPPP || _runningEdit ||
240 _runningQC || _runningSp3Comp;}
241
242 bncMapWin* _mapWin;
243
244 QList<bncGetThread*> _threads;
245
246 t_pppWidgets _pppWidgets;
247};
248
249#ifdef GNSSCENTER_PLUGIN
250#include "plugininterface.h"
251class t_bncFactory : public QObject, public GnssCenter::t_pluginFactoryInterface {
252 Q_OBJECT
253 Q_INTERFACES(GnssCenter::t_pluginFactoryInterface)
254 public:
255 virtual QWidget* create() {return new bncWindow();}
256 virtual QString getName() const {return QString("BNC");}
257};
258#endif
259
260#endif
Note: See TracBrowser for help on using the repository browser.