41 #include <QtWidgets/QTableWidget> |
42 #include <QtWidgets/QTableWidget> |
42 #include <QtWidgets/QGroupBox> |
43 #include <QtWidgets/QGroupBox> |
43 #include <QtWidgets/QPushButton> |
44 #include <QtWidgets/QPushButton> |
44 |
45 |
45 |
46 |
46 MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) |
47 MainWindow::MainWindow(bool useDevelopOption, bool startConfigOption, QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) |
47 { |
48 { |
48 qDebug() << Q_FUNC_INFO; |
49 qDebug() << Q_FUNC_INFO << useDevelopOption << startConfigOption; |
49 ui->setupUi(this); |
50 ui->setupUi(this); |
50 |
51 setWindowTitle( QString("BMSapp - %1").arg(VERSIONSTRING) ); |
51 setWindowTitle( QString("BMSapp - %1").arg(VERSIONSTRING) ); |
52 |
|
53 readsettings(); |
|
54 db = new DataBase(); |
|
55 db->openDataBase(useDevelopOption); |
52 } |
56 } |
53 |
57 |
54 |
58 |
55 MainWindow::~MainWindow() |
59 MainWindow::~MainWindow() |
56 { |
60 { |
57 qDebug() << Q_FUNC_INFO; |
61 qDebug() << Q_FUNC_INFO; |
|
62 |
|
63 writesettings(); |
|
64 db->closeDataBase(); |
58 delete ui; |
65 delete ui; |
|
66 } |
|
67 |
|
68 |
|
69 void MainWindow::readsettings() |
|
70 { |
|
71 QSettings settings(QSettings::IniFormat, QSettings::UserScope, "mbse", "bmsapp"); |
|
72 |
|
73 settings.beginGroup("dbprod"); |
|
74 dbProd.host = settings.value("host").toString(); |
|
75 if (dbProd.host.isEmpty()) { |
|
76 dbProd.host = "localhost"; |
|
77 dbProd.port = "3306"; |
|
78 dbProd.name = "bms_prod"; |
|
79 dbProd.user = "nobody"; |
|
80 dbProd.pass = "secret"; |
|
81 dbProd.charset = "utf8"; |
|
82 settings.setValue("host", dbProd.host); |
|
83 settings.setValue("port", dbProd.port); |
|
84 settings.setValue("name", dbProd.name); |
|
85 settings.setValue("user", dbProd.user); |
|
86 settings.setValue("pass", dbProd.pass); |
|
87 settings.setValue("charset", dbProd.charset); |
|
88 } else { |
|
89 dbProd.port = settings.value("port").toString(); |
|
90 dbProd.name = settings.value("name").toString(); |
|
91 dbProd.user = settings.value("user").toString(); |
|
92 dbProd.pass = settings.value("pass").toString(); |
|
93 dbProd.charset = settings.value("charset").toString(); |
|
94 } |
|
95 settings.endGroup(); |
|
96 qDebug() << "MySQL prod" << dbProd.host << dbProd.port << dbProd.name << dbProd.pass; |
|
97 |
|
98 settings.beginGroup("dbdev"); |
|
99 dbDev.host = settings.value("host").toString(); |
|
100 if (dbDev.host.isEmpty()) { |
|
101 dbDev.host = "localhost"; |
|
102 dbDev.port = "3306"; |
|
103 dbDev.name = "bms_dev"; |
|
104 dbDev.user = "nobody"; |
|
105 dbDev.pass = "secret"; |
|
106 dbDev.charset = "utf8"; |
|
107 settings.setValue("host", dbDev.host); |
|
108 settings.setValue("port", dbDev.port); |
|
109 settings.setValue("name", dbDev.name); |
|
110 settings.setValue("user", dbDev.user); |
|
111 settings.setValue("pass", dbDev.pass); |
|
112 settings.setValue("charset", dbDev.charset); |
|
113 } else { |
|
114 dbDev.port = settings.value("port").toString(); |
|
115 dbDev.name = settings.value("name").toString(); |
|
116 dbDev.user = settings.value("user").toString(); |
|
117 dbDev.pass = settings.value("pass").toString(); |
|
118 dbDev.charset = settings.value("charset").toString(); |
|
119 } |
|
120 settings.endGroup(); |
|
121 qDebug() << "MySQL dev" << dbDev.host << dbDev.port << dbDev.name << dbDev.pass; |
|
122 |
|
123 settings.beginGroup("mqttprod"); |
|
124 mqttProd.host = settings.value("host").toString(); |
|
125 if (mqttProd.host.isEmpty()) { |
|
126 mqttProd.host = "localhost"; |
|
127 mqttProd.port = "1883"; |
|
128 mqttProd.user = "nobody"; |
|
129 mqttProd.pass = "secret"; |
|
130 settings.setValue("host", mqttProd.host); |
|
131 settings.setValue("port", mqttProd.port); |
|
132 settings.setValue("user", mqttProd.user); |
|
133 settings.setValue("pass", mqttProd.pass); |
|
134 } else { |
|
135 mqttProd.port = settings.value("port").toString(); |
|
136 mqttProd.user = settings.value("user").toString(); |
|
137 mqttProd.pass = settings.value("pass").toString(); |
|
138 } |
|
139 settings.endGroup(); |
|
140 qDebug() << "MQTT prod" << mqttProd.host << mqttProd.port << mqttProd.user << mqttProd.pass; |
|
141 |
|
142 settings.beginGroup("mqttdev"); |
|
143 mqttDev.host = settings.value("host").toString(); |
|
144 if (mqttDev.host.isEmpty()) { |
|
145 mqttDev.host = "localhost"; |
|
146 mqttDev.port = "1883"; |
|
147 mqttDev.user = "nobody"; |
|
148 mqttDev.pass = "secret"; |
|
149 settings.setValue("host", mqttDev.host); |
|
150 settings.setValue("port", mqttDev.port); |
|
151 settings.setValue("user", mqttDev.user); |
|
152 settings.setValue("pass", mqttDev.pass); |
|
153 } else { |
|
154 mqttDev.port = settings.value("port").toString(); |
|
155 mqttDev.user = settings.value("user").toString(); |
|
156 mqttDev.pass = settings.value("pass").toString(); |
|
157 } |
|
158 settings.endGroup(); |
|
159 qDebug() << "MQTT dev" << mqttDev.host << mqttDev.port << mqttDev.user << mqttDev.pass; |
|
160 } |
|
161 |
|
162 |
|
163 void MainWindow::writesettings() |
|
164 { |
|
165 QSettings settings(QSettings::IniFormat, QSettings::UserScope, "mbse", "bmsapp"); |
|
166 |
|
167 settings.beginGroup("dbprod"); |
|
168 settings.setValue("host", dbProd.host); |
|
169 settings.setValue("port", dbProd.port); |
|
170 settings.setValue("name", dbProd.name); |
|
171 settings.setValue("user", dbProd.user); |
|
172 settings.setValue("pass", dbProd.pass); |
|
173 settings.setValue("charset", dbProd.charset); |
|
174 settings.endGroup(); |
|
175 |
|
176 settings.beginGroup("dbdev"); |
|
177 settings.setValue("host", dbDev.host); |
|
178 settings.setValue("port", dbDev.port); |
|
179 settings.setValue("name", dbDev.name); |
|
180 settings.setValue("user", dbDev.user); |
|
181 settings.setValue("pass", dbDev.pass); |
|
182 settings.setValue("charset", dbDev.charset); |
|
183 settings.endGroup(); |
|
184 |
|
185 settings.beginGroup("mqttprod"); |
|
186 settings.setValue("host", mqttProd.host); |
|
187 settings.setValue("port", mqttProd.port); |
|
188 settings.setValue("user", mqttProd.user); |
|
189 settings.setValue("pass", mqttProd.pass); |
|
190 settings.endGroup(); |
|
191 |
|
192 settings.beginGroup("mqttdev"); |
|
193 settings.setValue("host", mqttDev.host); |
|
194 settings.setValue("port", mqttDev.port); |
|
195 settings.setValue("user", mqttDev.user); |
|
196 settings.setValue("pass", mqttDev.pass); |
|
197 settings.endGroup(); |
|
198 |
|
199 qDebug() << "writesettings() done."; |
59 } |
200 } |
60 |
201 |
61 |
202 |
62 void MainWindow::on_actionExit_triggered() |
203 void MainWindow::on_actionExit_triggered() |
63 { |
204 { |