General Purpose Geodetic Library
NsMainWindow.h
Go to the documentation of this file.
1 /*
2  *
3  * This file is a part of nuSolve. nuSolve is a part of CALC/SOLVE system
4  * and is designed to perform data analyis of a geodetic VLBI session.
5  * Copyright (C) 2010-2020 Sergei Bolotin.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 #ifndef NS_MAIN_WINDOW_H
23 #define NS_MAIN_WINDOW_H
24 
25 
26 #ifdef HAVE_CONFIG_H
27 # include <config.h>
28 #endif
29 
30 
31 #include <SgParametersDescriptor.h>
32 #include <SgTaskConfig.h>
33 
34 
35 #if QT_VERSION >= 0x050000
36 # include <QtWidgets/QMainWindow>
37 # include <QtWidgets/QStatusBar>
38 # include <QtWidgets/QProgressBar>
39 #else
40 # include <QtGui/QMainWindow>
41 # include <QtGui/QStatusBar>
42 # include <QtGui/QProgressBar>
43 #endif
44 
45 
46 
47 
48 
49 class QLabel;
50 class NsMainWindow;
51 extern NsMainWindow *mainWindow;
52 
53 void longOperationStartDisplay(int minStep, int maxStep, const QString& message);
54 void longOperationProgressDisplay(int step);
56 void longOperationMessageDisplay(const QString& message);
57 void longOperationShowStats(const QString& label, int numTot, int numPrc, double wrms, double chi2);
58 
59 
60 /*=====================================================================================================*/
61 class NsMainWindow : public QMainWindow
62 {
63  Q_OBJECT
64 public:
65  // Statics:
66 
67 
68  //
69  // constructors/destructors:
70  //
74  NsMainWindow(QWidget *parent=0, Qt::WindowFlags flags=0);
75 
79  virtual ~NsMainWindow();
80 
81 
82 
83  //
84  // Interfaces:
85  //
86  QProgressBar* progressBar() {return progressBar_;};
87 
89 
90 
91  //
92  // Functions:
93  //
94  inline QString className() const {return "NsMainWindow";};
95  void showStats(const QString& label, int numTot, int numPrc, double wrms, double chi2);
96 
97 
98  //
99  // Friends:
100  //
101 
102 
103  //
104  // I/O:
105  //
106  //
107 
108 private slots:
109  // File menu:
110  void newFile();
111  void openFile();
112  void saveFile();
113  void printFile();
114  void closeFile();
115  void closeAll();
116  void flushLog();
117  void quit();
118  // Edit menu:
119  void editGenConfig();
120  void editSession();
121  void openWrapperFile();
122  void openSession();
123  void openAgvFile();
124  void loadLnfSession();
125  void undo();
126  void redo();
127  void cut();
128  void copy();
129  void paste();
130  void preferences();
131  void selectFont();
132  // sub menu:
133  void switchToStyle(QAction*);
134  // Tools menu:
135  void makeSomething1();
136  void testSomething1();
137  // Test menu:
138  void testPlotter();
139  void testFour1();
140  void test1();
141  void test2();
142  // Help menu:
143  void about();
144  void aboutQt();
145 
146 
147 private:
148  QMenu *fileMenu_;
149  QMenu *editMenu_;
151  QMenu *toolsMenu_;
152  QMenu *helpMenu_;
153  QMenu *testMenu_;
154  //
155  QStatusBar *statusBar_;
156  QProgressBar *progressBar_;
157  QLabel *lStats_;
158  // QActionGroup *alignmentGroup_;
159  // File menu:
160  QAction *newFileAct_;
161  QAction *openFileAct_;
162  QAction *saveFileAct_;
163  QAction *printFileAct_;
164  QAction *closeFileAct_;
165  QAction *closeAllAct_;
166  QAction *flushLogAct_;
167  QAction *quitAct_;
168  // Edit menu:
170  QAction *editSessionAct_;
172  QAction *openSessionAct_;
173  QAction *openAgvAct_;
175  QAction *undoAct_;
176  QAction *redoAct_;
177  QAction *cutAct_;
178  QAction *copyAct_;
179  QAction *pasteAct_;
180  QAction *preferencesAct_;
181  QAction *selectFontAct_;
182  // Tools menu:
185  // Test menu:
186  QAction *testPlotterAct_;
187  QAction *testFour1Act_;
188  QAction *test1Act_;
189  // Help menu:
190  QAction *aboutAct_;
191  QAction *aboutQtAct_;
192 
193  void createActions();
194  void createMenus();
195  void createStatusBar();
197 
198 protected:
199  QToolBar *toolBar_;
200  QStringList styleKeys_;
201 };
202 /*=====================================================================================================*/
203 
204 
205 
206 
207 
208 
209 
210 
211 
212 /*=====================================================================================================*/
213 #endif // NS_MAIN_WINDOW_H
void longOperationStartDisplay(int minStep, int maxStep, const QString &message)
NsMainWindow * mainWindow
void longOperationStopDisplay()
void longOperationMessageDisplay(const QString &message)
void longOperationShowStats(const QString &label, int numTot, int numPrc, double wrms, double chi2)
void longOperationProgressDisplay(int step)
QAction * quitAct_
Definition: NsMainWindow.h:167
void showStats(const QString &label, int numTot, int numPrc, double wrms, double chi2)
QAction * testSomething1Act_
Definition: NsMainWindow.h:184
QAction * test1Act_
Definition: NsMainWindow.h:188
void createStatusBar()
void openSession()
void preferences()
QAction * aboutAct_
Definition: NsMainWindow.h:190
QMenu * editMenu_
Definition: NsMainWindow.h:149
QProgressBar * progressBar()
Definition: NsMainWindow.h:86
virtual ~NsMainWindow()
QAction * newFileAct_
Definition: NsMainWindow.h:160
QAction * openAgvAct_
Definition: NsMainWindow.h:173
QAction * printFileAct_
Definition: NsMainWindow.h:163
void openWrapperFile()
QMenu * fileMenu_
Definition: NsMainWindow.h:148
QAction * openWrapperFileAct_
Definition: NsMainWindow.h:171
QAction * redoAct_
Definition: NsMainWindow.h:176
QProgressBar * progressBar_
Definition: NsMainWindow.h:156
QLabel * lStats_
Definition: NsMainWindow.h:157
QAction * saveFileAct_
Definition: NsMainWindow.h:162
QAction * pasteAct_
Definition: NsMainWindow.h:179
QAction * closeFileAct_
Definition: NsMainWindow.h:164
NsMainWindow(QWidget *parent=0, Qt::WindowFlags flags=0)
QMenu * helpMenu_
Definition: NsMainWindow.h:152
QAction * makeSomething1Act_
Definition: NsMainWindow.h:183
QLabel * statusBarMessager()
Definition: NsMainWindow.h:88
QAction * openFileAct_
Definition: NsMainWindow.h:161
QString className() const
Definition: NsMainWindow.h:94
QToolBar * toolBar_
Definition: NsMainWindow.h:199
QAction * aboutQtAct_
Definition: NsMainWindow.h:191
QAction * copyAct_
Definition: NsMainWindow.h:178
void createActions()
QMenu * toolsMenu_
Definition: NsMainWindow.h:151
QAction * flushLogAct_
Definition: NsMainWindow.h:166
QAction * loadLnfSessionAct_
Definition: NsMainWindow.h:174
QAction * selectFontAct_
Definition: NsMainWindow.h:181
QAction * openSessionAct_
Definition: NsMainWindow.h:172
QAction * undoAct_
Definition: NsMainWindow.h:175
QAction * testPlotterAct_
Definition: NsMainWindow.h:186
void openAgvFile()
QAction * editGenConfigAct_
Definition: NsMainWindow.h:169
void createMenus()
void makeSomething1()
QLabel * statusBarMessager_
Definition: NsMainWindow.h:196
void switchToStyle(QAction *)
void testPlotter()
QMenu * changeStyleMenu_
Definition: NsMainWindow.h:150
QAction * preferencesAct_
Definition: NsMainWindow.h:180
QStringList styleKeys_
Definition: NsMainWindow.h:200
void loadLnfSession()
QAction * editSessionAct_
Definition: NsMainWindow.h:170
QAction * cutAct_
Definition: NsMainWindow.h:177
void testSomething1()
void editSession()
QAction * testFour1Act_
Definition: NsMainWindow.h:187
QAction * closeAllAct_
Definition: NsMainWindow.h:165
QMenu * testMenu_
Definition: NsMainWindow.h:153
void editGenConfig()
QStatusBar * statusBar_
Definition: NsMainWindow.h:155