General Purpose Geodetic Library
VcStartupWizard.h
Go to the documentation of this file.
1 /*
2  * This file is a part of vgosDbCalc. vgosDbCalc is a part of CALC/SOLVE
3  * system and is designed to calculate theoretical values and store them
4  * in the vgosDb format.
5  * Copyright (C) 2016-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 VC_STARTUP_WIZARD_H
23 #define VC_STARTUP_WIZARD_H
24 
25 
26 #ifdef HAVE_CONFIG_H
27 # include <config.h>
28 #endif
29 
30 
31 #include <QtCore/QtGlobal>
32 
33 #if QT_VERSION >= 0x050000
34 # include <QtWidgets/QLabel>
35 # include <QtWidgets/QVBoxLayout>
36 # include <QtWidgets/QWizard>
37 # include <QtWidgets/QWizardPage>
38 #else
39 # include <QtGui/QLabel>
40 # include <QtGui/QVBoxLayout>
41 # include <QtGui/QWizard>
42 # include <QtGui/QWizardPage>
43 #endif
44 
45 
46 
47 
48 
49 
50 class QButtonGroup;
51 class QCheckBox;
52 class QLineEdit;
53 class QRadioButton;
54 class QSpinBox;
55 class QSettings;
56 
57 
58 
59 
60 /*=====================================================================================================*/
61 class VcWizardPage : public QWizardPage
62 {
63 public:
64  inline VcWizardPage(QWidget* parent=0) : QWizardPage(parent) {};
65  inline void registerField(const QString& name, QWidget* widget, const char* property=0,
66  const char* changedSignal=0)
67  {QWizardPage::registerField(name, widget, property, changedSignal);};
68 };
69 /*=====================================================================================================*/
70 
71 
72 
73 
74 /*=====================================================================================================*/
75 class VcStartupWizard : public QWizard
76 {
77  Q_OBJECT
78 public:
79 
80  //
81  // constructors/destructors:
82  //
85  VcStartupWizard(bool isFirstRun, bool isForcedRun, bool isSystemWideRun,
86  QSettings *settings, QWidget *parent=0);
87 
91  virtual ~VcStartupWizard();
92 
93 
94 
95  //
96  // Interfaces:
97  //
98  static int serialNumber();
99 
100  //
101  // Functions:
102  //
103  inline QString className() const {return "VcStartupWizard";};
104 
106 
108 
110 
112 
114 
116  //
117  // Friends:
118  //
119 
120 
121 
122  //
123  // I/O:
124  //
125  //
126 
127 private slots:
128  void accept();
129 
130 private:
131  // other variables:
135 
136  // user identities:
137  QLineEdit *leUserName_;
138  QLineEdit *leUserEmail_;
139  QLineEdit *leUserInitials_;
140  QLineEdit *leAcFullName_;
141  QLineEdit *leAcAbbrevName_;
142  QLineEdit *leAcAbbName_;
143  QLineEdit *leHomeDirName_;
144  QLineEdit *leVgosDbDirName_;
147  QLineEdit *leFile4Sites_;
148  QLineEdit *leFile4Sources_;
149  QLineEdit *leFile4OceanLd_;
150  QLineEdit *leFile4Eops_;
151  QLineEdit *leFile4Tilts_;
153  QLineEdit *leAuxLogsDirName_;
154  QCheckBox *cbMakeAuxLog_;
155  QCheckBox *cbUseLocalLocale_;
156  // for logger:
157  QCheckBox *cbLogStoreInFile_;
158  QCheckBox *cbLogTimeLabel_;
159  QLineEdit *eLogFileName_;
160  QSpinBox *sLogCapacity_;
161  QButtonGroup *bgLogLevels_;
162  //
163  static const int serialNumber_;
164  QSettings *settings_;
165 
166 protected:
167 };
168 /*=====================================================================================================*/
169 
170 
171 
172 
173 
174 
175 
176 
177 
178 
179 /*=====================================================================================================*/
180 #endif // VC_STARTUP_WIZARD_H
QLineEdit * leFile4OceanLd_
QLineEdit * leMasterFilesDirName_
QLineEdit * leFile4Eops_
QButtonGroup * bgLogLevels_
QLineEdit * leAuxLogsDirName_
QLineEdit * leFile4Tilts_
QLineEdit * leVgosDbDirName_
QCheckBox * cbLogTimeLabel_
VcStartupWizard(bool isFirstRun, bool isForcedRun, bool isSystemWideRun, QSettings *settings, QWidget *parent=0)
static int serialNumber()
QLineEdit * leAcAbbrevName_
VcWizardPage * createConclusionPage()
QLineEdit * leUserName_
static const int serialNumber_
virtual ~VcStartupWizard()
QLineEdit * eLogFileName_
QLineEdit * leUserEmail_
QLineEdit * leFile4Sites_
QCheckBox * cbMakeAuxLog_
QString className() const
VcWizardPage * createPageOne()
QLineEdit * leFile4OceanPoleTideLd_
QLineEdit * leSolveAPrioriDirName_
QSettings * settings_
QCheckBox * cbLogStoreInFile_
QLineEdit * leHomeDirName_
VcWizardPage * createPageHomeDir()
QLineEdit * leFile4Sources_
QLineEdit * leUserInitials_
QLineEdit * leAcAbbName_
VcWizardPage * createPageTwo()
QSpinBox * sLogCapacity_
QCheckBox * cbUseLocalLocale_
QLineEdit * leAcFullName_
VcWizardPage * createIntroPage()
VcWizardPage * createPageThree()
void registerField(const QString &name, QWidget *widget, const char *property=0, const char *changedSignal=0)
VcWizardPage(QWidget *parent=0)