Rev 199 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 199 | Rev 227 | ||
---|---|---|---|
1 | /*************************************************************************** |
1 | /*************************************************************************** |
2 | * Copyright (C) 2008 by Manuel Schrape * |
2 | * Copyright (C) 2008 by Manuel Schrape * |
3 | * manuel.schrape@gmx.de * |
3 | * manuel.schrape@gmx.de * |
4 | * * |
4 | * * |
5 | * This program is free software; you can redistribute it and/or modify * |
5 | * This program is free software; you can redistribute it and/or modify * |
6 | * it under the terms of the GNU General Public License as published by * |
6 | * it under the terms of the GNU General Public License as published by * |
7 | * the Free Software Foundation; either version 2 of the License. * |
7 | * the Free Software Foundation; either version 2 of the License. * |
8 | * * |
8 | * * |
9 | * This program is distributed in the hope that it will be useful, * |
9 | * This program is distributed in the hope that it will be useful, * |
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * |
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * |
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * |
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * |
12 | * GNU General Public License for more details. * |
12 | * GNU General Public License for more details. * |
13 | * * |
13 | * * |
14 | * You should have received a copy of the GNU General Public License * |
14 | * You should have received a copy of the GNU General Public License * |
15 | * along with this program; if not, write to the * |
15 | * along with this program; if not, write to the * |
16 | * Free Software Foundation, Inc., * |
16 | * Free Software Foundation, Inc., * |
17 | * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * |
17 | * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * |
18 | ***************************************************************************/ |
18 | ***************************************************************************/ |
19 | #include <QFileDialog> |
19 | #include <QFileDialog> |
20 | #include <QSettings> |
20 | #include <QSettings> |
21 | 21 | ||
22 | #include "wdg_Settings.h" |
22 | #include "wdg_Settings.h" |
23 | #include "../ToolBox.h" |
23 | #include "../Classes/ToolBox.h" |
24 | 24 | ||
25 | wdg_Settings::wdg_Settings(QWidget *parent) : QWidget(parent) |
25 | wdg_Settings::wdg_Settings(QWidget *parent) : QWidget(parent) |
26 | { |
26 | { |
27 | setupUi(this); |
27 | setupUi(this); |
28 | 28 | ||
29 | connect(pb_Load, SIGNAL(clicked()), this, SLOT(slot_LoadParameter())); |
29 | connect(pb_Load, SIGNAL(clicked()), this, SLOT(slot_LoadParameter())); |
30 | connect(pb_Save, SIGNAL(clicked()), this, SLOT(slot_SaveParameter())); |
30 | connect(pb_Save, SIGNAL(clicked()), this, SLOT(slot_SaveParameter())); |
31 | 31 | ||
32 | // Settings - Looping-Pfeile |
32 | // Settings - Looping-Pfeile |
33 | connect(tb_9_6, SIGNAL(clicked()), this, SLOT(slot_tbUp())); |
33 | connect(tb_9_6, SIGNAL(clicked()), this, SLOT(slot_tbUp())); |
34 | connect(tb_9_7, SIGNAL(clicked()), this, SLOT(slot_tbDown())); |
34 | connect(tb_9_7, SIGNAL(clicked()), this, SLOT(slot_tbDown())); |
35 | connect(tb_9_8, SIGNAL(clicked()), this, SLOT(slot_tbLeft())); |
35 | connect(tb_9_8, SIGNAL(clicked()), this, SLOT(slot_tbLeft())); |
36 | connect(tb_9_9, SIGNAL(clicked()), this, SLOT(slot_tbRight())); |
36 | connect(tb_9_9, SIGNAL(clicked()), this, SLOT(slot_tbRight())); |
37 | 37 | ||
38 | // Settings - LED's J16 |
38 | // Settings - LED's J16 |
39 | connect(J16_0, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
39 | connect(J16_0, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
40 | connect(J16_1, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
40 | connect(J16_1, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
41 | connect(J16_2, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
41 | connect(J16_2, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
42 | connect(J16_3, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
42 | connect(J16_3, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
43 | connect(J16_4, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
43 | connect(J16_4, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
44 | connect(J16_5, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
44 | connect(J16_5, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
45 | connect(J16_6, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
45 | connect(J16_6, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
46 | connect(J16_7, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
46 | connect(J16_7, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
47 | 47 | ||
48 | // Settings - LED's J17 |
48 | // Settings - LED's J17 |
49 | connect(J17_0, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
49 | connect(J17_0, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
50 | connect(J17_1, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
50 | connect(J17_1, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
51 | connect(J17_2, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
51 | connect(J17_2, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
52 | connect(J17_3, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
52 | connect(J17_3, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
53 | connect(J17_4, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
53 | connect(J17_4, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
54 | connect(J17_5, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
54 | connect(J17_5, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
55 | connect(J17_6, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
55 | connect(J17_6, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
56 | connect(J17_7, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
56 | connect(J17_7, SIGNAL(clicked()), this, SLOT(slot_LEDtoValue())); |
57 | 57 | ||
58 | connect(sb_11_1, SIGNAL(valueChanged(int)), this, SLOT(slot_ValuetoLED16(int))); |
58 | connect(sb_11_1, SIGNAL(valueChanged(int)), this, SLOT(slot_ValuetoLED16(int))); |
59 | connect(sb_11_3, SIGNAL(valueChanged(int)), this, SLOT(slot_ValuetoLED17(int))); |
59 | connect(sb_11_3, SIGNAL(valueChanged(int)), this, SLOT(slot_ValuetoLED17(int))); |
60 | } |
60 | } |
- | 61 | ||
- | 62 | void wdg_Settings::set_Config(cSettings *pConfig) |
|
- | 63 | { |
|
- | 64 | Config = pConfig; |
|
- | 65 | } |
|
61 | 66 | ||
62 | void wdg_Settings::set_LED(QToolButton *ToolButton, bool On) |
67 | void wdg_Settings::set_LED(QToolButton *ToolButton, bool On) |
63 | { |
68 | { |
64 | if (ToolButton->text() == QString("0") && On) |
69 | if (ToolButton->text() == QString("0") && On) |
65 | { |
70 | { |
66 | ToolButton->setIcon(ToolBox::Icon(0)); |
71 | ToolButton->setIcon(ToolBox::Icon(0)); |
67 | ToolButton->setText("1"); |
72 | ToolButton->setText("1"); |
68 | } |
73 | } |
69 | else if (ToolButton->text() == QString("1") && !On) |
74 | else if (ToolButton->text() == QString("1") && !On) |
70 | { |
75 | { |
71 | ToolButton->setIcon(ToolBox::Icon(4)); |
76 | ToolButton->setIcon(ToolBox::Icon(4)); |
72 | ToolButton->setText("0"); |
77 | ToolButton->setText("0"); |
73 | } |
78 | } |
74 | else if (ToolButton->text() == QString("00") && On) |
79 | else if (ToolButton->text() == QString("00") && On) |
75 | { |
80 | { |
76 | ToolButton->setIcon(ToolBox::Icon(0)); |
81 | ToolButton->setIcon(ToolBox::Icon(0)); |
77 | ToolButton->setText("11"); |
82 | ToolButton->setText("11"); |
78 | } |
83 | } |
79 | else if (ToolButton->text() == QString("11") && !On) |
84 | else if (ToolButton->text() == QString("11") && !On) |
80 | { |
85 | { |
81 | ToolButton->setIcon(ToolBox::Icon(4)); |
86 | ToolButton->setIcon(ToolBox::Icon(4)); |
82 | ToolButton->setText("00"); |
87 | ToolButton->setText("00"); |
83 | } |
88 | } |
84 | } |
89 | } |
85 | 90 | ||
86 | void wdg_Settings::slot_LEDtoValue() |
91 | void wdg_Settings::slot_LEDtoValue() |
87 | { |
92 | { |
88 | QToolButton *ToolButton = (QToolButton*)sender(); |
93 | QToolButton *ToolButton = (QToolButton*)sender(); |
89 | if (ToolButton->text() == QString("0")) |
94 | if (ToolButton->text() == QString("0")) |
90 | { |
95 | { |
91 | set_LED(ToolButton, true); |
96 | set_LED(ToolButton, true); |
92 | sb_11_1->setValue(sb_11_1->value() + ToolButton->toolTip().toInt()); |
97 | sb_11_1->setValue(sb_11_1->value() + ToolButton->toolTip().toInt()); |
93 | } |
98 | } |
94 | else if (ToolButton->text() == QString("1")) |
99 | else if (ToolButton->text() == QString("1")) |
95 | { |
100 | { |
96 | set_LED(ToolButton); |
101 | set_LED(ToolButton); |
97 | sb_11_1->setValue(sb_11_1->value() - ToolButton->toolTip().toInt()); |
102 | sb_11_1->setValue(sb_11_1->value() - ToolButton->toolTip().toInt()); |
98 | } |
103 | } |
99 | else if (ToolButton->text() == QString("00")) |
104 | else if (ToolButton->text() == QString("00")) |
100 | { |
105 | { |
101 | set_LED(ToolButton, true); |
106 | set_LED(ToolButton, true); |
102 | sb_11_3->setValue(sb_11_3->value() + ToolButton->toolTip().toInt()); |
107 | sb_11_3->setValue(sb_11_3->value() + ToolButton->toolTip().toInt()); |
103 | } |
108 | } |
104 | else if (ToolButton->text() == QString("11")) |
109 | else if (ToolButton->text() == QString("11")) |
105 | { |
110 | { |
106 | set_LED(ToolButton); |
111 | set_LED(ToolButton); |
107 | sb_11_3->setValue(sb_11_3->value() - ToolButton->toolTip().toInt()); |
112 | sb_11_3->setValue(sb_11_3->value() - ToolButton->toolTip().toInt()); |
108 | } |
113 | } |
109 | } |
114 | } |
110 | 115 | ||
111 | void wdg_Settings::slot_ValuetoLED16(int Wert) |
116 | void wdg_Settings::slot_ValuetoLED16(int Wert) |
112 | { |
117 | { |
113 | // QSpinBox *SpinBox = (QSpinBox*)sender(); |
118 | // QSpinBox *SpinBox = (QSpinBox*)sender(); |
114 | 119 | ||
115 | // int Wert = SpinBox->value(); |
120 | // int Wert = SpinBox->value(); |
116 | 121 | ||
117 | set_LED(J16_0); |
122 | set_LED(J16_0); |
118 | set_LED(J16_1); |
123 | set_LED(J16_1); |
119 | set_LED(J16_2); |
124 | set_LED(J16_2); |
120 | set_LED(J16_3); |
125 | set_LED(J16_3); |
121 | set_LED(J16_4); |
126 | set_LED(J16_4); |
122 | set_LED(J16_5); |
127 | set_LED(J16_5); |
123 | set_LED(J16_6); |
128 | set_LED(J16_6); |
124 | set_LED(J16_7); |
129 | set_LED(J16_7); |
125 | 130 | ||
126 | for (int a = 0; a < 8; a++) |
131 | for (int a = 0; a < 8; a++) |
127 | { |
132 | { |
128 | if (Wert > 127) |
133 | if (Wert > 127) |
129 | { |
134 | { |
130 | set_LED(J16_0, true); |
135 | set_LED(J16_0, true); |
131 | Wert = Wert - 128; |
136 | Wert = Wert - 128; |
132 | } |
137 | } |
133 | if (Wert > 63) |
138 | if (Wert > 63) |
134 | { |
139 | { |
135 | set_LED(J16_1, true); |
140 | set_LED(J16_1, true); |
136 | Wert = Wert - 64; |
141 | Wert = Wert - 64; |
137 | } |
142 | } |
138 | if (Wert > 31) |
143 | if (Wert > 31) |
139 | { |
144 | { |
140 | set_LED(J16_2, true); |
145 | set_LED(J16_2, true); |
141 | Wert = Wert - 32; |
146 | Wert = Wert - 32; |
142 | } |
147 | } |
143 | if (Wert > 15) |
148 | if (Wert > 15) |
144 | { |
149 | { |
145 | set_LED(J16_3, true); |
150 | set_LED(J16_3, true); |
146 | Wert = Wert - 16; |
151 | Wert = Wert - 16; |
147 | } |
152 | } |
148 | if (Wert > 7) |
153 | if (Wert > 7) |
149 | { |
154 | { |
150 | set_LED(J16_4, true); |
155 | set_LED(J16_4, true); |
151 | Wert = Wert - 8; |
156 | Wert = Wert - 8; |
152 | } |
157 | } |
153 | if (Wert > 3) |
158 | if (Wert > 3) |
154 | { |
159 | { |
155 | set_LED(J16_5, true); |
160 | set_LED(J16_5, true); |
156 | Wert = Wert - 4; |
161 | Wert = Wert - 4; |
157 | } |
162 | } |
158 | if (Wert > 1) |
163 | if (Wert > 1) |
159 | { |
164 | { |
160 | set_LED(J16_6, true); |
165 | set_LED(J16_6, true); |
161 | Wert = Wert - 2; |
166 | Wert = Wert - 2; |
162 | } |
167 | } |
163 | if (Wert > 0) |
168 | if (Wert > 0) |
164 | { |
169 | { |
165 | set_LED(J16_7, true); |
170 | set_LED(J16_7, true); |
166 | Wert = Wert - 1; |
171 | Wert = Wert - 1; |
167 | } |
172 | } |
168 | } |
173 | } |
169 | } |
174 | } |
170 | 175 | ||
171 | void wdg_Settings::slot_ValuetoLED17(int Wert) |
176 | void wdg_Settings::slot_ValuetoLED17(int Wert) |
172 | { |
177 | { |
173 | // QSpinBox *SpinBox = (QSpinBox*)sender(); |
178 | // QSpinBox *SpinBox = (QSpinBox*)sender(); |
174 | 179 | ||
175 | // int Wert = SpinBox->value(); |
180 | // int Wert = SpinBox->value(); |
176 | 181 | ||
177 | set_LED(J17_0); |
182 | set_LED(J17_0); |
178 | set_LED(J17_1); |
183 | set_LED(J17_1); |
179 | set_LED(J17_2); |
184 | set_LED(J17_2); |
180 | set_LED(J17_3); |
185 | set_LED(J17_3); |
181 | set_LED(J17_4); |
186 | set_LED(J17_4); |
182 | set_LED(J17_5); |
187 | set_LED(J17_5); |
183 | set_LED(J17_6); |
188 | set_LED(J17_6); |
184 | set_LED(J17_7); |
189 | set_LED(J17_7); |
185 | 190 | ||
186 | for (int a = 0; a < 8; a++) |
191 | for (int a = 0; a < 8; a++) |
187 | { |
192 | { |
188 | if (Wert > 127) |
193 | if (Wert > 127) |
189 | { |
194 | { |
190 | set_LED(J17_0, true); |
195 | set_LED(J17_0, true); |
191 | Wert = Wert - 128; |
196 | Wert = Wert - 128; |
192 | } |
197 | } |
193 | if (Wert > 63) |
198 | if (Wert > 63) |
194 | { |
199 | { |
195 | set_LED(J17_1, true); |
200 | set_LED(J17_1, true); |
196 | Wert = Wert - 64; |
201 | Wert = Wert - 64; |
197 | } |
202 | } |
198 | if (Wert > 31) |
203 | if (Wert > 31) |
199 | { |
204 | { |
200 | set_LED(J17_2, true); |
205 | set_LED(J17_2, true); |
201 | Wert = Wert - 32; |
206 | Wert = Wert - 32; |
202 | } |
207 | } |
203 | if (Wert > 15) |
208 | if (Wert > 15) |
204 | { |
209 | { |
205 | set_LED(J17_3, true); |
210 | set_LED(J17_3, true); |
206 | Wert = Wert - 16; |
211 | Wert = Wert - 16; |
207 | } |
212 | } |
208 | if (Wert > 7) |
213 | if (Wert > 7) |
209 | { |
214 | { |
210 | set_LED(J17_4, true); |
215 | set_LED(J17_4, true); |
211 | Wert = Wert - 8; |
216 | Wert = Wert - 8; |
212 | } |
217 | } |
213 | if (Wert > 3) |
218 | if (Wert > 3) |
214 | { |
219 | { |
215 | set_LED(J17_5, true); |
220 | set_LED(J17_5, true); |
216 | Wert = Wert - 4; |
221 | Wert = Wert - 4; |
217 | } |
222 | } |
218 | if (Wert > 1) |
223 | if (Wert > 1) |
219 | { |
224 | { |
220 | set_LED(J17_6, true); |
225 | set_LED(J17_6, true); |
221 | Wert = Wert - 2; |
226 | Wert = Wert - 2; |
222 | } |
227 | } |
223 | if (Wert > 0) |
228 | if (Wert > 0) |
224 | { |
229 | { |
225 | set_LED(J17_7, true); |
230 | set_LED(J17_7, true); |
226 | Wert = Wert - 1; |
231 | Wert = Wert - 1; |
227 | } |
232 | } |
228 | } |
233 | } |
229 | } |
234 | } |
230 | 235 | ||
231 | void wdg_Settings::slot_tbUp() |
236 | void wdg_Settings::slot_tbUp() |
232 | { |
237 | { |
233 | if (tb_9_6->text() == QString("0")) |
238 | if (tb_9_6->text() == QString("0")) |
234 | { |
239 | { |
235 | tb_9_6->setIcon(ToolBox::Icon(20)); |
240 | // tb_9_6->setIcon(ToolBox::Icon(20)); |
236 | tb_9_6->setText("1"); |
241 | tb_9_6->setText("1"); |
237 | } |
242 | } |
238 | else |
243 | else |
239 | { |
244 | { |
240 | tb_9_6->setIcon(ToolBox::Icon(21)); |
245 | // tb_9_6->setIcon(ToolBox::Icon(21)); |
241 | tb_9_6->setText("0"); |
246 | tb_9_6->setText("0"); |
242 | } |
247 | } |
243 | } |
248 | } |
244 | 249 | ||
245 | void wdg_Settings::slot_tbDown() |
250 | void wdg_Settings::slot_tbDown() |
246 | { |
251 | { |
247 | if (tb_9_7->text() == QString("0")) |
252 | if (tb_9_7->text() == QString("0")) |
248 | { |
253 | { |
249 | tb_9_7->setIcon(ToolBox::Icon(22)); |
254 | // tb_9_7->setIcon(ToolBox::Icon(22)); |
250 | tb_9_7->setText("1"); |
255 | tb_9_7->setText("1"); |
251 | } |
256 | } |
252 | else |
257 | else |
253 | { |
258 | { |
254 | tb_9_7->setIcon(ToolBox::Icon(23)); |
259 | // tb_9_7->setIcon(ToolBox::Icon(23)); |
255 | tb_9_7->setText("0"); |
260 | tb_9_7->setText("0"); |
256 | } |
261 | } |
257 | } |
262 | } |
258 | 263 | ||
259 | void wdg_Settings::slot_tbLeft() |
264 | void wdg_Settings::slot_tbLeft() |
260 | { |
265 | { |
261 | if (tb_9_8->text() == QString("0")) |
266 | if (tb_9_8->text() == QString("0")) |
262 | { |
267 | { |
263 | tb_9_8->setIcon(ToolBox::Icon(24)); |
268 | // tb_9_8->setIcon(ToolBox::Icon(24)); |
264 | tb_9_8->setText("1"); |
269 | tb_9_8->setText("1"); |
265 | } |
270 | } |
266 | else |
271 | else |
267 | { |
272 | { |
268 | tb_9_8->setIcon(ToolBox::Icon(25)); |
273 | // tb_9_8->setIcon(ToolBox::Icon(25)); |
269 | tb_9_8->setText("0"); |
274 | tb_9_8->setText("0"); |
270 | } |
275 | } |
271 | } |
276 | } |
272 | 277 | ||
273 | void wdg_Settings::slot_tbRight() |
278 | void wdg_Settings::slot_tbRight() |
274 | { |
279 | { |
275 | if (tb_9_9->text() == QString("0")) |
280 | if (tb_9_9->text() == QString("0")) |
276 | { |
281 | { |
277 | tb_9_9->setIcon(ToolBox::Icon(26)); |
282 | // tb_9_9->setIcon(ToolBox::Icon(26)); |
278 | tb_9_9->setText("1"); |
283 | tb_9_9->setText("1"); |
279 | } |
284 | } |
280 | else |
285 | else |
281 | { |
286 | { |
282 | tb_9_9->setIcon(ToolBox::Icon(27)); |
287 | // tb_9_9->setIcon(ToolBox::Icon(27)); |
283 | tb_9_9->setText("0"); |
288 | tb_9_9->setText("0"); |
284 | } |
289 | } |
285 | } |
290 | } |
286 | 291 | ||
287 | void wdg_Settings::slot_LoadParameter() // DONE 0.71g |
292 | void wdg_Settings::slot_LoadParameter() // DONE 0.71g |
288 | { |
293 | { |
289 | QString Filename = QFileDialog::getOpenFileName(this, "Mikrokopter Parameter laden", /*Settings->DIR.Parameter*/ "", "Mikrokopter Parameter(*.mkp);;Alle Dateien (*)"); |
294 | QString Filename = QFileDialog::getOpenFileName(this, "Mikrokopter Parameter laden", Config->DIR.Parameter + "", "Mikrokopter Parameter(*.mkp);;Alle Dateien (*)"); |
290 | 295 | ||
291 | if (!Filename.isEmpty()) |
296 | if (!Filename.isEmpty()) |
292 | { |
297 | { |
293 | int Set = sb_Set->value(); |
298 | int Set = sb_Set->value(); |
294 | QSettings Setting(Filename, QSettings::IniFormat); |
299 | QSettings Setting(Filename, QSettings::IniFormat); |
295 | 300 | ||
296 | Setting.beginGroup("Setup"); |
301 | Setting.beginGroup("Setup"); |
297 | QString Name = Setting.value("Name", QString("--noname--")).toString(); |
302 | QString Name = Setting.value("Name", QString("--noname--")).toString(); |
298 | char *CName = Name.toLatin1().data(); |
303 | char *CName = Name.toLatin1().data(); |
299 | int a; |
304 | int a; |
300 | 305 | ||
301 | for (a=0; a < Name.length(); a++) |
306 | for (a=0; a < Name.length(); a++) |
302 | { |
307 | { |
303 | ParameterSet[Set][P_NAME+a] = CName[a]; |
308 | ParameterSet[Set][P_NAME+a] = CName[a]; |
304 | } |
309 | } |
305 | while (a < 12) |
310 | while (a < 12) |
306 | { |
311 | { |
307 | ParameterSet[Set][P_NAME+a] = 0; |
312 | ParameterSet[Set][P_NAME+a] = 0; |
308 | a++; |
313 | a++; |
309 | } |
314 | } |
310 | 315 | ||
311 | ParameterSet[Set][P_GLOBAL_CONF] = Setting.value("GlobalConfig", 0).toInt(); |
316 | ParameterSet[Set][P_GLOBAL_CONF] = Setting.value("GlobalConfig", 0).toInt(); |
312 | Setting.endGroup(); |
317 | Setting.endGroup(); |
313 | 318 | ||
314 | Setting.beginGroup("Channels"); |
319 | Setting.beginGroup("Channels"); |
315 | ParameterSet[Set][P_KANAL_NICK] = Setting.value("Nick", 1).toInt(); |
320 | ParameterSet[Set][P_KANAL_NICK] = Setting.value("Nick", 1).toInt(); |
316 | ParameterSet[Set][P_KANAL_ROLL] = Setting.value("Roll", 2).toInt(); |
321 | ParameterSet[Set][P_KANAL_ROLL] = Setting.value("Roll", 2).toInt(); |
317 | ParameterSet[Set][P_KANAL_GAS] = Setting.value("Gas", 3).toInt(); |
322 | ParameterSet[Set][P_KANAL_GAS] = Setting.value("Gas", 3).toInt(); |
318 | ParameterSet[Set][P_KANAL_GIER] = Setting.value("Gier", 4).toInt(); |
323 | ParameterSet[Set][P_KANAL_GIER] = Setting.value("Gier", 4).toInt(); |
319 | ParameterSet[Set][P_KANAL_POTI1] = Setting.value("Poti_1", 5).toInt(); |
324 | ParameterSet[Set][P_KANAL_POTI1] = Setting.value("Poti_1", 5).toInt(); |
320 | ParameterSet[Set][P_KANAL_POTI2] = Setting.value("Poti_2", 6).toInt(); |
325 | ParameterSet[Set][P_KANAL_POTI2] = Setting.value("Poti_2", 6).toInt(); |
321 | ParameterSet[Set][P_KANAL_POTI3] = Setting.value("Poti_3", 7).toInt(); |
326 | ParameterSet[Set][P_KANAL_POTI3] = Setting.value("Poti_3", 7).toInt(); |
322 | ParameterSet[Set][P_KANAL_POTI4] = Setting.value("Poti_4", 8).toInt(); |
327 | ParameterSet[Set][P_KANAL_POTI4] = Setting.value("Poti_4", 8).toInt(); |
323 | Setting.endGroup(); |
328 | Setting.endGroup(); |
324 | 329 | ||
325 | Setting.beginGroup("Stick"); |
330 | Setting.beginGroup("Stick"); |
326 | ParameterSet[Set][P_STICK_P] = Setting.value("Nick_Roll-P", 4).toInt(); |
331 | ParameterSet[Set][P_STICK_P] = Setting.value("Nick_Roll-P", 4).toInt(); |
327 | ParameterSet[Set][P_STICK_D] = Setting.value("Nick_Roll-D", 8).toInt(); |
332 | ParameterSet[Set][P_STICK_D] = Setting.value("Nick_Roll-D", 8).toInt(); |
328 | ParameterSet[Set][P_GIER_P] = Setting.value("Gier-P", 1).toInt(); |
333 | ParameterSet[Set][P_GIER_P] = Setting.value("Gier-P", 1).toInt(); |
329 | ParameterSet[Set][P_EXTERNAL] = Setting.value("ExternalControl", 1).toInt(); |
334 | ParameterSet[Set][P_EXTERNAL] = Setting.value("ExternalControl", 1).toInt(); |
330 | Setting.endGroup(); |
335 | Setting.endGroup(); |
331 | 336 | ||
332 | Setting.beginGroup("Altitude"); |
337 | Setting.beginGroup("Altitude"); |
333 | ParameterSet[Set][P_MAXHOEHE] = Setting.value("Setpoint", 251).toInt(); |
338 | ParameterSet[Set][P_MAXHOEHE] = Setting.value("Setpoint", 251).toInt(); |
334 | ParameterSet[Set][P_MIN_GAS] = Setting.value("MinGas", 30).toInt(); |
339 | ParameterSet[Set][P_MIN_GAS] = Setting.value("MinGas", 30).toInt(); |
335 | ParameterSet[Set][P_HOEHE_P] = Setting.value("P", 10).toInt(); |
340 | ParameterSet[Set][P_HOEHE_P] = Setting.value("P", 10).toInt(); |
336 | ParameterSet[Set][P_DRUCK_D] = Setting.value("Barometric-D", 30).toInt(); |
341 | ParameterSet[Set][P_DRUCK_D] = Setting.value("Barometric-D", 30).toInt(); |
337 | ParameterSet[Set][P_HOEHE_ACC] = Setting.value("Z-ACC-Effect", 30).toInt(); |
342 | ParameterSet[Set][P_HOEHE_ACC] = Setting.value("Z-ACC-Effect", 30).toInt(); |
338 | ParameterSet[Set][P_HOEHE_GAIN] = Setting.value("Gain", 3).toInt(); |
343 | ParameterSet[Set][P_HOEHE_GAIN] = Setting.value("Gain", 3).toInt(); |
339 | Setting.endGroup(); |
344 | Setting.endGroup(); |
340 | 345 | ||
341 | Setting.beginGroup("Gyro"); |
346 | Setting.beginGroup("Gyro"); |
342 | ParameterSet[Set][P_GYRO_P] = Setting.value("P", 80).toInt(); |
347 | ParameterSet[Set][P_GYRO_P] = Setting.value("P", 80).toInt(); |
343 | ParameterSet[Set][P_GYRO_I] = Setting.value("I", 120).toInt(); |
348 | ParameterSet[Set][P_GYRO_I] = Setting.value("I", 120).toInt(); |
344 | ParameterSet[Set][P_DYNAMIC_STAB] = Setting.value("DynamicStability", 75).toInt(); |
349 | ParameterSet[Set][P_DYNAMIC_STAB] = Setting.value("DynamicStability", 75).toInt(); |
345 | ParameterSet[Set][P_GYRO_ACC_FAKTOR] = Setting.value("ACC_Gyro-Factor", 30).toInt(); |
350 | ParameterSet[Set][P_GYRO_ACC_FAKTOR] = Setting.value("ACC_Gyro-Factor", 30).toInt(); |
346 | ParameterSet[Set][P_GYRO_ACC_ABGL] = Setting.value("ACC_Gyro-Compensation", 32).toInt(); |
351 | ParameterSet[Set][P_GYRO_ACC_ABGL] = Setting.value("ACC_Gyro-Compensation", 32).toInt(); |
347 | ParameterSet[Set][P_DRIFT_KOMP] = Setting.value("DriftCompensation", 4).toInt(); |
352 | ParameterSet[Set][P_DRIFT_KOMP] = Setting.value("DriftCompensation", 4).toInt(); |
348 | ParameterSet[Set][P_FAKTOR_I] = Setting.value("Main-I", 32).toInt(); |
353 | ParameterSet[Set][P_FAKTOR_I] = Setting.value("Main-I", 32).toInt(); |
349 | Setting.endGroup(); |
354 | Setting.endGroup(); |
350 | 355 | ||
351 | Setting.beginGroup("Camera"); |
356 | Setting.beginGroup("Camera"); |
352 | ParameterSet[Set][P_SERVO_NICK_CONT] = Setting.value("ServoNickControl", 100).toInt(); |
357 | ParameterSet[Set][P_SERVO_NICK_CONT] = Setting.value("ServoNickControl", 100).toInt(); |
353 | ParameterSet[Set][P_SERVO_NICK_COMP] = Setting.value("ServoNickCompensation", 40).toInt(); |
358 | ParameterSet[Set][P_SERVO_NICK_COMP] = Setting.value("ServoNickCompensation", 40).toInt(); |
354 | ParameterSet[Set][P_SERVO_NICK_COMPI] = Setting.value("ServoNickInvert", 0).toInt(); |
359 | ParameterSet[Set][P_SERVO_NICK_COMPI] = Setting.value("ServoNickInvert", 0).toInt(); |
355 | ParameterSet[Set][P_SERVO_NICK_MIN] = Setting.value("ServoNickMin", 50).toInt(); |
360 | ParameterSet[Set][P_SERVO_NICK_MIN] = Setting.value("ServoNickMin", 50).toInt(); |
356 | ParameterSet[Set][P_SERVO_NICK_MAX] = Setting.value("ServoNickMax", 150).toInt(); |
361 | ParameterSet[Set][P_SERVO_NICK_MAX] = Setting.value("ServoNickMax", 150).toInt(); |
357 | ParameterSet[Set][P_SERVO_NICK_REFR] = Setting.value("ServoNickRefreshRate", 5).toInt(); |
362 | ParameterSet[Set][P_SERVO_NICK_REFR] = Setting.value("ServoNickRefreshRate", 5).toInt(); |
358 | Setting.endGroup(); |
363 | Setting.endGroup(); |
359 | 364 | ||
360 | Setting.beginGroup("Others"); |
365 | Setting.beginGroup("Others"); |
361 | ParameterSet[Set][P_GAS_MIN] = Setting.value("MinGas", 8).toInt(); |
366 | ParameterSet[Set][P_GAS_MIN] = Setting.value("MinGas", 8).toInt(); |
362 | ParameterSet[Set][P_GAS_MAX] = Setting.value("MaxGas", 230).toInt(); |
367 | ParameterSet[Set][P_GAS_MAX] = Setting.value("MaxGas", 230).toInt(); |
363 | ParameterSet[Set][P_KOMPASS_WIRKUNG] = Setting.value("Compass-Effect", 128).toInt(); |
368 | ParameterSet[Set][P_KOMPASS_WIRKUNG] = Setting.value("Compass-Effect", 128).toInt(); |
364 | ParameterSet[Set][P_UNTERSPANNUNG] = Setting.value("UnderVoltage", 94).toInt(); |
369 | ParameterSet[Set][P_UNTERSPANNUNG] = Setting.value("UnderVoltage", 94).toInt(); |
365 | ParameterSet[Set][P_NOTGAS] = Setting.value("NotGas", 35).toInt(); |
370 | ParameterSet[Set][P_NOTGAS] = Setting.value("NotGas", 35).toInt(); |
366 | ParameterSet[Set][P_NOTGASZEIT] = Setting.value("NotGasTime", 30).toInt(); |
371 | ParameterSet[Set][P_NOTGASZEIT] = Setting.value("NotGasTime", 30).toInt(); |
367 | Setting.endGroup(); |
372 | Setting.endGroup(); |
368 | 373 | ||
369 | Setting.beginGroup("Coupling"); |
374 | Setting.beginGroup("Coupling"); |
370 | ParameterSet[Set][P_ACHS_KOPPLUNG] = Setting.value("YawPosFeedback", 90).toInt(); |
375 | ParameterSet[Set][P_ACHS_KOPPLUNG] = Setting.value("YawPosFeedback", 90).toInt(); |
371 | ParameterSet[Set][P_ACHS_GKOPPLUNG] = Setting.value("YawNegFeedback", 5).toInt(); |
376 | ParameterSet[Set][P_ACHS_GKOPPLUNG] = Setting.value("YawNegFeedback", 5).toInt(); |
372 | Setting.endGroup(); |
377 | Setting.endGroup(); |
373 | 378 | ||
374 | Setting.beginGroup("Loop"); |
379 | Setting.beginGroup("Loop"); |
375 | ParameterSet[Set][P_LOOP_CONFIG] = Setting.value("Config", 0).toInt(); |
380 | ParameterSet[Set][P_LOOP_CONFIG] = Setting.value("Config", 0).toInt(); |
376 | ParameterSet[Set][P_LOOP_GAS_LIMIT] = Setting.value("GasLimit", 50).toInt(); |
381 | ParameterSet[Set][P_LOOP_GAS_LIMIT] = Setting.value("GasLimit", 50).toInt(); |
377 | ParameterSet[Set][P_LOOP_THRESHOLD] = Setting.value("StickThreshold", 90).toInt(); |
382 | ParameterSet[Set][P_LOOP_THRESHOLD] = Setting.value("StickThreshold", 90).toInt(); |
378 | ParameterSet[Set][P_LOOP_HYSTERESE] = Setting.value("LoopHysteresis", 50).toInt(); |
383 | ParameterSet[Set][P_LOOP_HYSTERESE] = Setting.value("LoopHysteresis", 50).toInt(); |
379 | ParameterSet[Set][P_WINKEL_NICK] = Setting.value("TurnOverNick", 85).toInt(); |
384 | ParameterSet[Set][P_WINKEL_NICK] = Setting.value("TurnOverNick", 85).toInt(); |
380 | ParameterSet[Set][P_WINKEL_ROLL] = Setting.value("TurnOverRoll", 85).toInt(); |
385 | ParameterSet[Set][P_WINKEL_ROLL] = Setting.value("TurnOverRoll", 85).toInt(); |
381 | Setting.endGroup(); |
386 | Setting.endGroup(); |
382 | 387 | ||
383 | Setting.beginGroup("User"); |
388 | Setting.beginGroup("User"); |
384 | ParameterSet[Set][P_USER_1] = Setting.value("Parameter_1", 0).toInt(); |
389 | ParameterSet[Set][P_USER_1] = Setting.value("Parameter_1", 0).toInt(); |
385 | ParameterSet[Set][P_USER_2] = Setting.value("Parameter_2", 0).toInt(); |
390 | ParameterSet[Set][P_USER_2] = Setting.value("Parameter_2", 0).toInt(); |
386 | ParameterSet[Set][P_USER_3] = Setting.value("Parameter_3", 0).toInt(); |
391 | ParameterSet[Set][P_USER_3] = Setting.value("Parameter_3", 0).toInt(); |
387 | ParameterSet[Set][P_USER_4] = Setting.value("Parameter_4", 0).toInt(); |
392 | ParameterSet[Set][P_USER_4] = Setting.value("Parameter_4", 0).toInt(); |
388 | ParameterSet[Set][P_USER_5] = Setting.value("Parameter_5", 0).toInt(); |
393 | ParameterSet[Set][P_USER_5] = Setting.value("Parameter_5", 0).toInt(); |
389 | ParameterSet[Set][P_USER_6] = Setting.value("Parameter_6", 0).toInt(); |
394 | ParameterSet[Set][P_USER_6] = Setting.value("Parameter_6", 0).toInt(); |
390 | ParameterSet[Set][P_USER_7] = Setting.value("Parameter_7", 0).toInt(); |
395 | ParameterSet[Set][P_USER_7] = Setting.value("Parameter_7", 0).toInt(); |
391 | ParameterSet[Set][P_USER_8] = Setting.value("Parameter_8", 0).toInt(); |
396 | ParameterSet[Set][P_USER_8] = Setting.value("Parameter_8", 0).toInt(); |
392 | Setting.endGroup(); |
397 | Setting.endGroup(); |
393 | 398 | ||
394 | Setting.beginGroup("Output"); |
399 | Setting.beginGroup("Output"); |
395 | ParameterSet[Set][P_J16_BITMASK] = Setting.value("J16_Bitmask", 255).toInt(); |
400 | ParameterSet[Set][P_J16_BITMASK] = Setting.value("J16_Bitmask", 255).toInt(); |
396 | ParameterSet[Set][P_J16_TIMING] = Setting.value("J16_Timing", 251).toInt(); |
401 | ParameterSet[Set][P_J16_TIMING] = Setting.value("J16_Timing", 251).toInt(); |
397 | ParameterSet[Set][P_J17_BITMASK] = Setting.value("J17_Bitmask", 255).toInt(); |
402 | ParameterSet[Set][P_J17_BITMASK] = Setting.value("J17_Bitmask", 255).toInt(); |
398 | ParameterSet[Set][P_J17_TIMING] = Setting.value("J17_Timing", 251).toInt(); |
403 | ParameterSet[Set][P_J17_TIMING] = Setting.value("J17_Timing", 251).toInt(); |
399 | Setting.endGroup(); |
404 | Setting.endGroup(); |
400 | 405 | ||
401 | Setting.beginGroup("NaviCtrl"); |
406 | Setting.beginGroup("NaviCtrl"); |
402 | ParameterSet[Set][P_NAV_GPS_MODE] = Setting.value("GPS_ModeControl", 253).toInt(); |
407 | ParameterSet[Set][P_NAV_GPS_MODE] = Setting.value("GPS_ModeControl", 253).toInt(); |
403 | ParameterSet[Set][P_NAV_GPS_GAIN] = Setting.value("GPS_Gain", 100).toInt(); |
408 | ParameterSet[Set][P_NAV_GPS_GAIN] = Setting.value("GPS_Gain", 100).toInt(); |
404 | ParameterSet[Set][P_NAV_GPS_P] = Setting.value("GPS_P", 90).toInt(); |
409 | ParameterSet[Set][P_NAV_GPS_P] = Setting.value("GPS_P", 90).toInt(); |
405 | ParameterSet[Set][P_NAV_GPS_I] = Setting.value("GPS_I", 90).toInt(); |
410 | ParameterSet[Set][P_NAV_GPS_I] = Setting.value("GPS_I", 90).toInt(); |
406 | ParameterSet[Set][P_NAV_GPS_D] = Setting.value("GPS_D", 90).toInt(); |
411 | ParameterSet[Set][P_NAV_GPS_D] = Setting.value("GPS_D", 90).toInt(); |
407 | ParameterSet[Set][P_NAV_GPS_ACC] = Setting.value("GPS_Acc", 0).toInt(); |
412 | ParameterSet[Set][P_NAV_GPS_ACC] = Setting.value("GPS_Acc", 0).toInt(); |
408 | ParameterSet[Set][P_NAV_GPS_MIN] = Setting.value("GPS_MinSat", 6).toInt(); |
413 | ParameterSet[Set][P_NAV_GPS_MIN] = Setting.value("GPS_MinSat", 6).toInt(); |
409 | ParameterSet[Set][P_NAV_STICK_THRE] = Setting.value("GPS_StickThreshold", 8).toInt(); |
414 | ParameterSet[Set][P_NAV_STICK_THRE] = Setting.value("GPS_StickThreshold", 8).toInt(); |
410 | ParameterSet[Set][P_NAV_WIND_CORR] = Setting.value("GPS_WindCorrection", 90).toInt(); |
415 | ParameterSet[Set][P_NAV_WIND_CORR] = Setting.value("GPS_WindCorrection", 90).toInt(); |
411 | ParameterSet[Set][P_NAV_SPEED_COMP] = Setting.value("GPS_SpeedCompensation", 30).toInt(); |
416 | ParameterSet[Set][P_NAV_SPEED_COMP] = Setting.value("GPS_SpeedCompensation", 30).toInt(); |
412 | ParameterSet[Set][P_NAV_RADIUS] = Setting.value("GPS_MaxRadius", 100).toInt(); |
417 | ParameterSet[Set][P_NAV_RADIUS] = Setting.value("GPS_MaxRadius", 100).toInt(); |
413 | ParameterSet[Set][P_NAV_ANGLE_LIMIT] = Setting.value("GPS_AngleLimit", 60).toInt(); |
418 | ParameterSet[Set][P_NAV_ANGLE_LIMIT] = Setting.value("GPS_AngleLimit", 60).toInt(); |
414 | Setting.endGroup(); |
419 | Setting.endGroup(); |
415 | 420 | ||
416 | show_FCSettings(Set, ParameterSet[Set]); |
421 | show_FCSettings(Set, ParameterSet[Set]); |
417 | } |
422 | } |
418 | } |
423 | } |
419 | 424 | ||
420 | int wdg_Settings::get_Value(QComboBox *Combo) |
425 | int wdg_Settings::get_Value(QComboBox *Combo) |
421 | { |
426 | { |
422 | if (Combo->currentText() == QString("Poti 1")) |
427 | if (Combo->currentText() == QString("Poti 1")) |
423 | return 251; |
428 | return 251; |
424 | if (Combo->currentText() == QString("Poti 2")) |
429 | if (Combo->currentText() == QString("Poti 2")) |
425 | return 252; |
430 | return 252; |
426 | if (Combo->currentText() == QString("Poti 3")) |
431 | if (Combo->currentText() == QString("Poti 3")) |
427 | return 253; |
432 | return 253; |
428 | if (Combo->currentText() == QString("Poti 4")) |
433 | if (Combo->currentText() == QString("Poti 4")) |
429 | return 254; |
434 | return 254; |
430 | return Combo->currentText().toInt(); |
435 | return Combo->currentText().toInt(); |
431 | } |
436 | } |
432 | 437 | ||
433 | void wdg_Settings::store_ParameterSet(int Set) // DONE 0.71h |
438 | void wdg_Settings::store_ParameterSet(int Set) // DONE 0.71h |
434 | { |
439 | { |
435 | char *Name = le_SetName->text().toLatin1().data(); |
440 | char *Name = le_SetName->text().toLatin1().data(); |
436 | 441 | ||
437 | int a; |
442 | int a; |
438 | 443 | ||
439 | for (a = 0; a < le_SetName->text().length(); a++) |
444 | for (a = 0; a < le_SetName->text().length(); a++) |
440 | { |
445 | { |
441 | ParameterSet[Set][P_NAME+a] = Name[a]; |
446 | ParameterSet[Set][P_NAME+a] = Name[a]; |
442 | } |
447 | } |
443 | 448 | ||
444 | while(a < 12) |
449 | while(a < 12) |
445 | { |
450 | { |
446 | ParameterSet[Set][P_NAME+a] = 0; |
451 | ParameterSet[Set][P_NAME+a] = 0; |
447 | a++; |
452 | a++; |
448 | } |
453 | } |
449 | 454 | ||
450 | // Seite 1 |
455 | // Seite 1 |
451 | ParameterSet[Set][P_GLOBAL_CONF] = 0; |
456 | ParameterSet[Set][P_GLOBAL_CONF] = 0; |
452 | 457 | ||
453 | if (cb_1_1->isChecked()) |
458 | if (cb_1_1->isChecked()) |
454 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x01; |
459 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x01; |
455 | if (cb_1_2->isChecked()) |
460 | if (cb_1_2->isChecked()) |
456 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x02; |
461 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x02; |
457 | if (cb_1_3->isChecked()) |
462 | if (cb_1_3->isChecked()) |
458 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x04; |
463 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x04; |
459 | if (cb_1_4->isChecked()) |
464 | if (cb_1_4->isChecked()) |
460 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x08; |
465 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x08; |
461 | if (cb_1_5->isChecked()) |
466 | if (cb_1_5->isChecked()) |
462 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x10; |
467 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x10; |
463 | if (cb_1_6->isChecked()) |
468 | if (cb_1_6->isChecked()) |
464 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x20; |
469 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x20; |
465 | if (cb_1_7->isChecked()) |
470 | if (cb_1_7->isChecked()) |
466 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x40; |
471 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x40; |
467 | if (cb_1_8->isChecked()) |
472 | if (cb_1_8->isChecked()) |
468 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x80; |
473 | ParameterSet[Set][P_GLOBAL_CONF] = ParameterSet[Set][P_GLOBAL_CONF] | 0x80; |
469 | 474 | ||
470 | // Seite 2 |
475 | // Seite 2 |
471 | ParameterSet[Set][P_KANAL_NICK] = sb_2_1->value(); |
476 | ParameterSet[Set][P_KANAL_NICK] = sb_2_1->value(); |
472 | ParameterSet[Set][P_KANAL_ROLL] = sb_2_2->value(); |
477 | ParameterSet[Set][P_KANAL_ROLL] = sb_2_2->value(); |
473 | ParameterSet[Set][P_KANAL_GAS] = sb_2_3->value(); |
478 | ParameterSet[Set][P_KANAL_GAS] = sb_2_3->value(); |
474 | ParameterSet[Set][P_KANAL_GIER] = sb_2_4->value(); |
479 | ParameterSet[Set][P_KANAL_GIER] = sb_2_4->value(); |
475 | ParameterSet[Set][P_KANAL_POTI1] = sb_2_5->value(); |
480 | ParameterSet[Set][P_KANAL_POTI1] = sb_2_5->value(); |
476 | ParameterSet[Set][P_KANAL_POTI2] = sb_2_6->value(); |
481 | ParameterSet[Set][P_KANAL_POTI2] = sb_2_6->value(); |
477 | ParameterSet[Set][P_KANAL_POTI3] = sb_2_7->value(); |
482 | ParameterSet[Set][P_KANAL_POTI3] = sb_2_7->value(); |
478 | ParameterSet[Set][P_KANAL_POTI4] = sb_2_8->value(); |
483 | ParameterSet[Set][P_KANAL_POTI4] = sb_2_8->value(); |
479 | 484 | ||
480 | // Seite 3 |
485 | // Seite 3 |
481 | ParameterSet[Set][P_STICK_P] = sb_3_1->value(); |
486 | ParameterSet[Set][P_STICK_P] = sb_3_1->value(); |
482 | ParameterSet[Set][P_STICK_D] = sb_3_2->value(); |
487 | ParameterSet[Set][P_STICK_D] = sb_3_2->value(); |
483 | ParameterSet[Set][P_GIER_P] = get_Value(cb_3_3); |
488 | ParameterSet[Set][P_GIER_P] = get_Value(cb_3_3); |
484 | ParameterSet[Set][P_EXTERNAL] = get_Value(cb_3_4); |
489 | ParameterSet[Set][P_EXTERNAL] = get_Value(cb_3_4); |
485 | 490 | ||
486 | // Seite 4 |
491 | // Seite 4 |
487 | ParameterSet[Set][P_MAXHOEHE] = get_Value(cb_4_1); |
492 | ParameterSet[Set][P_MAXHOEHE] = get_Value(cb_4_1); |
488 | ParameterSet[Set][P_MIN_GAS] = sb_4_2->value(); |
493 | ParameterSet[Set][P_MIN_GAS] = sb_4_2->value(); |
489 | ParameterSet[Set][P_HOEHE_P] = get_Value(cb_4_3); |
494 | ParameterSet[Set][P_HOEHE_P] = get_Value(cb_4_3); |
490 | ParameterSet[Set][P_DRUCK_D] = get_Value(cb_4_4); |
495 | ParameterSet[Set][P_DRUCK_D] = get_Value(cb_4_4); |
491 | ParameterSet[Set][P_HOEHE_ACC] = get_Value(cb_4_5); |
496 | ParameterSet[Set][P_HOEHE_ACC] = get_Value(cb_4_5); |
492 | ParameterSet[Set][P_HOEHE_GAIN] = sb_4_6->value(); |
497 | ParameterSet[Set][P_HOEHE_GAIN] = sb_4_6->value(); |
493 | 498 | ||
494 | // Seite 5 |
499 | // Seite 5 |
495 | ParameterSet[Set][P_GYRO_P] = get_Value(cb_5_1); |
500 | ParameterSet[Set][P_GYRO_P] = get_Value(cb_5_1); |
496 | ParameterSet[Set][P_GYRO_I] = get_Value(cb_5_2); |
501 | ParameterSet[Set][P_GYRO_I] = get_Value(cb_5_2); |
497 | ParameterSet[Set][P_DYNAMIC_STAB] = get_Value(cb_5_3); |
502 | ParameterSet[Set][P_DYNAMIC_STAB] = get_Value(cb_5_3); |
498 | ParameterSet[Set][P_GYRO_ACC_FAKTOR] = sb_5_4->value(); |
503 | ParameterSet[Set][P_GYRO_ACC_FAKTOR] = sb_5_4->value(); |
499 | ParameterSet[Set][P_GYRO_ACC_ABGL] = sb_5_5->value(); |
504 | ParameterSet[Set][P_GYRO_ACC_ABGL] = sb_5_5->value(); |
500 | ParameterSet[Set][P_FAKTOR_I] = get_Value(cb_5_6); |
505 | ParameterSet[Set][P_FAKTOR_I] = get_Value(cb_5_6); |
501 | ParameterSet[Set][P_DRIFT_KOMP] = sb_5_7->value(); |
506 | ParameterSet[Set][P_DRIFT_KOMP] = sb_5_7->value(); |
502 | 507 | ||
503 | // Seite 6 |
508 | // Seite 6 |
504 | ParameterSet[Set][P_SERVO_NICK_CONT] = get_Value(cb_6_1); |
509 | ParameterSet[Set][P_SERVO_NICK_CONT] = get_Value(cb_6_1); |
505 | ParameterSet[Set][P_SERVO_NICK_COMP] = sb_6_2->value(); |
510 | ParameterSet[Set][P_SERVO_NICK_COMP] = sb_6_2->value(); |
506 | ParameterSet[Set][P_SERVO_NICK_MIN] = sb_6_3->value(); |
511 | ParameterSet[Set][P_SERVO_NICK_MIN] = sb_6_3->value(); |
507 | ParameterSet[Set][P_SERVO_NICK_MAX] = sb_6_4->value(); |
512 | ParameterSet[Set][P_SERVO_NICK_MAX] = sb_6_4->value(); |
508 | ParameterSet[Set][P_SERVO_NICK_REFR] = sb_6_5->value(); |
513 | ParameterSet[Set][P_SERVO_NICK_REFR] = sb_6_5->value(); |
509 | ParameterSet[Set][P_SERVO_NICK_COMPI] = cb_6_6->isChecked(); |
514 | ParameterSet[Set][P_SERVO_NICK_COMPI] = cb_6_6->isChecked(); |
510 | 515 | ||
511 | // Seite 7 |
516 | // Seite 7 |
512 | ParameterSet[Set][P_GAS_MIN] = sb_7_1->value(); |
517 | ParameterSet[Set][P_GAS_MIN] = sb_7_1->value(); |
513 | ParameterSet[Set][P_GAS_MAX] = sb_7_2->value(); |
518 | ParameterSet[Set][P_GAS_MAX] = sb_7_2->value(); |
514 | ParameterSet[Set][P_KOMPASS_WIRKUNG] = get_Value(cb_7_3); |
519 | ParameterSet[Set][P_KOMPASS_WIRKUNG] = get_Value(cb_7_3); |
515 | ParameterSet[Set][P_UNTERSPANNUNG] = sb_7_4->value(); |
520 | ParameterSet[Set][P_UNTERSPANNUNG] = sb_7_4->value(); |
516 | ParameterSet[Set][P_NOTGASZEIT] = sb_7_5->value(); |
521 | ParameterSet[Set][P_NOTGASZEIT] = sb_7_5->value(); |
517 | ParameterSet[Set][P_NOTGAS] = sb_7_6->value(); |
522 | ParameterSet[Set][P_NOTGAS] = sb_7_6->value(); |
518 | 523 | ||
519 | // Seite 8 |
524 | // Seite 8 |
520 | ParameterSet[Set][P_ACHS_KOPPLUNG] = get_Value(cb_8_1); |
525 | ParameterSet[Set][P_ACHS_KOPPLUNG] = get_Value(cb_8_1); |
521 | ParameterSet[Set][P_ACHS_GKOPPLUNG] = get_Value(cb_8_2); |
526 | ParameterSet[Set][P_ACHS_GKOPPLUNG] = get_Value(cb_8_2); |
522 | 527 | ||
523 | // Seite 9 |
528 | // Seite 9 |
524 | ParameterSet[Set][P_LOOP_CONFIG] = 0; |
529 | ParameterSet[Set][P_LOOP_CONFIG] = 0; |
525 | if (tb_9_6->text() == QString("1")) |
530 | if (tb_9_6->text() == QString("1")) |
526 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x01; |
531 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x01; |
527 | if (tb_9_7->text() == QString("1")) |
532 | if (tb_9_7->text() == QString("1")) |
528 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x02; |
533 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x02; |
529 | if (tb_9_8->text() == QString("1")) |
534 | if (tb_9_8->text() == QString("1")) |
530 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x04; |
535 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x04; |
531 | if (tb_9_9->text() == QString("1")) |
536 | if (tb_9_9->text() == QString("1")) |
532 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x08; |
537 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x08; |
533 | if (cb_4_7->isChecked()) |
538 | if (cb_4_7->isChecked()) |
534 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x10; |
539 | ParameterSet[Set][P_LOOP_CONFIG] = ParameterSet[Set][P_LOOP_CONFIG] | 0x10; |
535 | 540 | ||
536 | ParameterSet[Set][P_LOOP_GAS_LIMIT] = get_Value(cb_9_1); |
541 | ParameterSet[Set][P_LOOP_GAS_LIMIT] = get_Value(cb_9_1); |
537 | ParameterSet[Set][P_LOOP_THRESHOLD] = sb_9_2->value(); |
542 | ParameterSet[Set][P_LOOP_THRESHOLD] = sb_9_2->value(); |
538 | ParameterSet[Set][P_WINKEL_NICK] = sb_9_3->value(); |
543 | ParameterSet[Set][P_WINKEL_NICK] = sb_9_3->value(); |
539 | ParameterSet[Set][P_LOOP_HYSTERESE] = sb_9_4->value(); |
544 | ParameterSet[Set][P_LOOP_HYSTERESE] = sb_9_4->value(); |
540 | ParameterSet[Set][P_WINKEL_ROLL] = sb_9_5->value(); |
545 | ParameterSet[Set][P_WINKEL_ROLL] = sb_9_5->value(); |
541 | 546 | ||
542 | // Seite 10 |
547 | // Seite 10 |
543 | ParameterSet[Set][P_USER_1] = get_Value(cb_10_1); |
548 | ParameterSet[Set][P_USER_1] = get_Value(cb_10_1); |
544 | ParameterSet[Set][P_USER_2] = get_Value(cb_10_2); |
549 | ParameterSet[Set][P_USER_2] = get_Value(cb_10_2); |
545 | ParameterSet[Set][P_USER_3] = get_Value(cb_10_3); |
550 | ParameterSet[Set][P_USER_3] = get_Value(cb_10_3); |
546 | ParameterSet[Set][P_USER_4] = get_Value(cb_10_4); |
551 | ParameterSet[Set][P_USER_4] = get_Value(cb_10_4); |
547 | ParameterSet[Set][P_USER_5] = get_Value(cb_10_5); |
552 | ParameterSet[Set][P_USER_5] = get_Value(cb_10_5); |
548 | ParameterSet[Set][P_USER_6] = get_Value(cb_10_6); |
553 | ParameterSet[Set][P_USER_6] = get_Value(cb_10_6); |
549 | ParameterSet[Set][P_USER_7] = get_Value(cb_10_7); |
554 | ParameterSet[Set][P_USER_7] = get_Value(cb_10_7); |
550 | ParameterSet[Set][P_USER_8] = get_Value(cb_10_8); |
555 | ParameterSet[Set][P_USER_8] = get_Value(cb_10_8); |
551 | 556 | ||
552 | // Seite 11 |
557 | // Seite 11 |
553 | ParameterSet[Set][P_J16_BITMASK] = sb_11_1->value(); |
558 | ParameterSet[Set][P_J16_BITMASK] = sb_11_1->value(); |
554 | ParameterSet[Set][P_J16_TIMING] = get_Value(cb_11_2); |
559 | ParameterSet[Set][P_J16_TIMING] = get_Value(cb_11_2); |
555 | ParameterSet[Set][P_J17_BITMASK] = sb_11_3->value(); |
560 | ParameterSet[Set][P_J17_BITMASK] = sb_11_3->value(); |
556 | ParameterSet[Set][P_J17_TIMING] = get_Value(cb_11_4); |
561 | ParameterSet[Set][P_J17_TIMING] = get_Value(cb_11_4); |
557 | 562 | ||
558 | // Seite 12 |
563 | // Seite 12 |
559 | ParameterSet[Set][P_NAV_GPS_MODE] = get_Value(cb_12_1); |
564 | ParameterSet[Set][P_NAV_GPS_MODE] = get_Value(cb_12_1); |
560 | ParameterSet[Set][P_NAV_GPS_GAIN] = get_Value(cb_12_2); |
565 | ParameterSet[Set][P_NAV_GPS_GAIN] = get_Value(cb_12_2); |
561 | ParameterSet[Set][P_NAV_STICK_THRE] = sb_12_3->value(); |
566 | ParameterSet[Set][P_NAV_STICK_THRE] = sb_12_3->value(); |
562 | ParameterSet[Set][P_NAV_GPS_MIN] = sb_12_4->value(); |
567 | ParameterSet[Set][P_NAV_GPS_MIN] = sb_12_4->value(); |
563 | ParameterSet[Set][P_NAV_GPS_P] = get_Value(cb_12_5); |
568 | ParameterSet[Set][P_NAV_GPS_P] = get_Value(cb_12_5); |
564 | ParameterSet[Set][P_NAV_GPS_I] = get_Value(cb_12_6); |
569 | ParameterSet[Set][P_NAV_GPS_I] = get_Value(cb_12_6); |
565 | ParameterSet[Set][P_NAV_GPS_D] = get_Value(cb_12_7); |
570 | ParameterSet[Set][P_NAV_GPS_D] = get_Value(cb_12_7); |
566 | ParameterSet[Set][P_NAV_GPS_ACC] = get_Value(cb_12_8); |
571 | ParameterSet[Set][P_NAV_GPS_ACC] = get_Value(cb_12_8); |
567 | 572 | ||
568 | //Seite 13 |
573 | //Seite 13 |
569 | ParameterSet[Set][P_NAV_WIND_CORR] = get_Value(cb_13_1); |
574 | ParameterSet[Set][P_NAV_WIND_CORR] = get_Value(cb_13_1); |
570 | ParameterSet[Set][P_NAV_SPEED_COMP] = get_Value(cb_13_2); |
575 | ParameterSet[Set][P_NAV_SPEED_COMP] = get_Value(cb_13_2); |
571 | ParameterSet[Set][P_NAV_RADIUS] = get_Value(cb_13_3); |
576 | ParameterSet[Set][P_NAV_RADIUS] = get_Value(cb_13_3); |
572 | ParameterSet[Set][P_NAV_ANGLE_LIMIT] = get_Value(cb_13_4); |
577 | ParameterSet[Set][P_NAV_ANGLE_LIMIT] = get_Value(cb_13_4); |
573 | } |
578 | } |
574 | - | ||
575 | 579 | ||
576 | void wdg_Settings::slot_SaveParameter() // DONE 0.71g |
580 | void wdg_Settings::slot_SaveParameter() // DONE 0.71g |
577 | { |
581 | { |
578 | int Set = sb_Set->value() + 5; |
582 | int Set = sb_Set->value() + 5; |
579 | 583 | ||
580 | QString Filename = QFileDialog::getSaveFileName(this, "Mikrokopter Parameter speichern", /*Settings->DIR.Parameter*/ "" + le_SetName->text(), "Mikrokopter Parameter(*.mkp);;Alle Dateien (*)"); |
584 | QString Filename = QFileDialog::getSaveFileName(this, "Mikrokopter Parameter speichern", Config->DIR.Parameter + "" + le_SetName->text(), "Mikrokopter Parameter(*.mkp);;Alle Dateien (*)"); |
581 | 585 | ||
582 | if (!Filename.isEmpty()) |
586 | if (!Filename.isEmpty()) |
583 | { |
587 | { |
584 | if (!(Filename.endsWith(".mkp", Qt::CaseInsensitive))) |
588 | if (!(Filename.endsWith(".mkp", Qt::CaseInsensitive))) |
585 | { |
589 | { |
586 | Filename = Filename + QString(".mkp"); |
590 | Filename = Filename + QString(".mkp"); |
587 | } |
591 | } |
588 | store_ParameterSet(Set); |
592 | store_ParameterSet(Set); |
589 | 593 | ||
590 | QSettings Setting(Filename, QSettings::IniFormat); |
594 | QSettings Setting(Filename, QSettings::IniFormat); |
591 | 595 | ||
592 | Setting.beginGroup("Setup"); |
596 | Setting.beginGroup("Setup"); |
593 | Setting.setValue("Name", le_SetName->text()); |
597 | Setting.setValue("Name", le_SetName->text()); |
594 | Setting.setValue("GlobalConfig", ParameterSet[Set][P_GLOBAL_CONF]); |
598 | Setting.setValue("GlobalConfig", ParameterSet[Set][P_GLOBAL_CONF]); |
595 | Setting.endGroup(); |
599 | Setting.endGroup(); |
596 | 600 | ||
597 | Setting.beginGroup("Channels"); |
601 | Setting.beginGroup("Channels"); |
598 | Setting.setValue("Nick", ParameterSet[Set][P_KANAL_NICK]); |
602 | Setting.setValue("Nick", ParameterSet[Set][P_KANAL_NICK]); |
599 | Setting.setValue("Roll", ParameterSet[Set][P_KANAL_ROLL]); |
603 | Setting.setValue("Roll", ParameterSet[Set][P_KANAL_ROLL]); |
600 | Setting.setValue("Gas", ParameterSet[Set][P_KANAL_GAS]); |
604 | Setting.setValue("Gas", ParameterSet[Set][P_KANAL_GAS]); |
601 | Setting.setValue("Gier", ParameterSet[Set][P_KANAL_GIER]); |
605 | Setting.setValue("Gier", ParameterSet[Set][P_KANAL_GIER]); |
602 | Setting.setValue("Poti_1", ParameterSet[Set][P_KANAL_POTI1]); |
606 | Setting.setValue("Poti_1", ParameterSet[Set][P_KANAL_POTI1]); |
603 | Setting.setValue("Poti_2", ParameterSet[Set][P_KANAL_POTI2]); |
607 | Setting.setValue("Poti_2", ParameterSet[Set][P_KANAL_POTI2]); |
604 | Setting.setValue("Poti_3", ParameterSet[Set][P_KANAL_POTI3]); |
608 | Setting.setValue("Poti_3", ParameterSet[Set][P_KANAL_POTI3]); |
605 | Setting.setValue("Poti_4", ParameterSet[Set][P_KANAL_POTI4]); |
609 | Setting.setValue("Poti_4", ParameterSet[Set][P_KANAL_POTI4]); |
606 | Setting.endGroup(); |
610 | Setting.endGroup(); |
607 | 611 | ||
608 | Setting.beginGroup("Stick"); |
612 | Setting.beginGroup("Stick"); |
609 | Setting.setValue("Nick_Roll-P", ParameterSet[Set][P_STICK_P]); |
613 | Setting.setValue("Nick_Roll-P", ParameterSet[Set][P_STICK_P]); |
610 | Setting.setValue("Nick_Roll-D", ParameterSet[Set][P_STICK_D]); |
614 | Setting.setValue("Nick_Roll-D", ParameterSet[Set][P_STICK_D]); |
611 | Setting.setValue("Gier-P", ParameterSet[Set][P_GIER_P]); |
615 | Setting.setValue("Gier-P", ParameterSet[Set][P_GIER_P]); |
612 | Setting.setValue("ExternalControl", ParameterSet[Set][P_EXTERNAL]); |
616 | Setting.setValue("ExternalControl", ParameterSet[Set][P_EXTERNAL]); |
613 | Setting.endGroup(); |
617 | Setting.endGroup(); |
614 | 618 | ||
615 | Setting.beginGroup("Altitude"); |
619 | Setting.beginGroup("Altitude"); |
616 | Setting.setValue("Setpoint", ParameterSet[Set][P_MAXHOEHE]); |
620 | Setting.setValue("Setpoint", ParameterSet[Set][P_MAXHOEHE]); |
617 | Setting.setValue("MinGas", ParameterSet[Set][P_MIN_GAS]); |
621 | Setting.setValue("MinGas", ParameterSet[Set][P_MIN_GAS]); |
618 | Setting.setValue("P", ParameterSet[Set][P_HOEHE_P]); |
622 | Setting.setValue("P", ParameterSet[Set][P_HOEHE_P]); |
619 | Setting.setValue("Barometric-D", ParameterSet[Set][P_DRUCK_D]); |
623 | Setting.setValue("Barometric-D", ParameterSet[Set][P_DRUCK_D]); |
620 | Setting.setValue("Z-ACC-Effect", ParameterSet[Set][P_HOEHE_ACC]); |
624 | Setting.setValue("Z-ACC-Effect", ParameterSet[Set][P_HOEHE_ACC]); |
621 | Setting.setValue("Gain", ParameterSet[Set][P_HOEHE_GAIN]); |
625 | Setting.setValue("Gain", ParameterSet[Set][P_HOEHE_GAIN]); |
622 | Setting.endGroup(); |
626 | Setting.endGroup(); |
623 | 627 | ||
624 | Setting.beginGroup("Gyro"); |
628 | Setting.beginGroup("Gyro"); |
625 | Setting.setValue("P", ParameterSet[Set][P_GYRO_P]); |
629 | Setting.setValue("P", ParameterSet[Set][P_GYRO_P]); |
626 | Setting.setValue("I", ParameterSet[Set][P_GYRO_I]); |
630 | Setting.setValue("I", ParameterSet[Set][P_GYRO_I]); |
627 | Setting.setValue("DynamicStability", ParameterSet[Set][P_DYNAMIC_STAB]); |
631 | Setting.setValue("DynamicStability", ParameterSet[Set][P_DYNAMIC_STAB]); |
628 | Setting.setValue("ACC_Gyro-Factor", ParameterSet[Set][P_GYRO_ACC_FAKTOR]); |
632 | Setting.setValue("ACC_Gyro-Factor", ParameterSet[Set][P_GYRO_ACC_FAKTOR]); |
629 | Setting.setValue("ACC_Gyro-Compensation", ParameterSet[Set][P_GYRO_ACC_ABGL]); |
633 | Setting.setValue("ACC_Gyro-Compensation", ParameterSet[Set][P_GYRO_ACC_ABGL]); |
630 | Setting.setValue("DriftCompensation", ParameterSet[Set][P_DRIFT_KOMP]); |
634 | Setting.setValue("DriftCompensation", ParameterSet[Set][P_DRIFT_KOMP]); |
631 | Setting.setValue("Main-I", ParameterSet[Set][P_FAKTOR_I]); |
635 | Setting.setValue("Main-I", ParameterSet[Set][P_FAKTOR_I]); |
632 | Setting.endGroup(); |
636 | Setting.endGroup(); |
633 | 637 | ||
634 | Setting.beginGroup("Camera"); |
638 | Setting.beginGroup("Camera"); |
635 | Setting.setValue("ServoNickControl", ParameterSet[Set][P_SERVO_NICK_CONT]); |
639 | Setting.setValue("ServoNickControl", ParameterSet[Set][P_SERVO_NICK_CONT]); |
636 | Setting.setValue("ServoNickCompensation", ParameterSet[Set][P_SERVO_NICK_COMP]); |
640 | Setting.setValue("ServoNickCompensation", ParameterSet[Set][P_SERVO_NICK_COMP]); |
637 | Setting.setValue("ServoNickInvert", ParameterSet[Set][P_SERVO_NICK_COMPI]); |
641 | Setting.setValue("ServoNickInvert", ParameterSet[Set][P_SERVO_NICK_COMPI]); |
638 | Setting.setValue("ServoNickMin", ParameterSet[Set][P_SERVO_NICK_MIN]); |
642 | Setting.setValue("ServoNickMin", ParameterSet[Set][P_SERVO_NICK_MIN]); |
639 | Setting.setValue("ServoNickMax", ParameterSet[Set][P_SERVO_NICK_MAX]); |
643 | Setting.setValue("ServoNickMax", ParameterSet[Set][P_SERVO_NICK_MAX]); |
640 | Setting.setValue("ServoNickRefreshRate", ParameterSet[Set][P_SERVO_NICK_REFR]); |
644 | Setting.setValue("ServoNickRefreshRate", ParameterSet[Set][P_SERVO_NICK_REFR]); |
641 | Setting.endGroup(); |
645 | Setting.endGroup(); |
642 | 646 | ||
643 | Setting.beginGroup("Others"); |
647 | Setting.beginGroup("Others"); |
644 | Setting.setValue("MinGas", ParameterSet[Set][P_GAS_MIN]); |
648 | Setting.setValue("MinGas", ParameterSet[Set][P_GAS_MIN]); |
645 | Setting.setValue("MaxGas", ParameterSet[Set][P_GAS_MAX]); |
649 | Setting.setValue("MaxGas", ParameterSet[Set][P_GAS_MAX]); |
646 | Setting.setValue("Compass-Effect", ParameterSet[Set][P_KOMPASS_WIRKUNG]); |
650 | Setting.setValue("Compass-Effect", ParameterSet[Set][P_KOMPASS_WIRKUNG]); |
647 | Setting.setValue("UnderVoltage", ParameterSet[Set][P_UNTERSPANNUNG]); |
651 | Setting.setValue("UnderVoltage", ParameterSet[Set][P_UNTERSPANNUNG]); |
648 | Setting.setValue("NotGas", ParameterSet[Set][P_NOTGAS]); |
652 | Setting.setValue("NotGas", ParameterSet[Set][P_NOTGAS]); |
649 | Setting.setValue("NotGasTime", ParameterSet[Set][P_NOTGASZEIT]); |
653 | Setting.setValue("NotGasTime", ParameterSet[Set][P_NOTGASZEIT]); |
650 | Setting.endGroup(); |
654 | Setting.endGroup(); |
651 | 655 | ||
652 | Setting.beginGroup("Coupling"); |
656 | Setting.beginGroup("Coupling"); |
653 | Setting.setValue("YawPosFeedback", ParameterSet[Set][P_ACHS_KOPPLUNG]); |
657 | Setting.setValue("YawPosFeedback", ParameterSet[Set][P_ACHS_KOPPLUNG]); |
654 | Setting.setValue("YawNegFeedback", ParameterSet[Set][P_ACHS_GKOPPLUNG]); |
658 | Setting.setValue("YawNegFeedback", ParameterSet[Set][P_ACHS_GKOPPLUNG]); |
655 | Setting.endGroup(); |
659 | Setting.endGroup(); |
656 | 660 | ||
657 | Setting.beginGroup("Loop"); |
661 | Setting.beginGroup("Loop"); |
658 | Setting.setValue("Config", ParameterSet[Set][P_LOOP_CONFIG]); |
662 | Setting.setValue("Config", ParameterSet[Set][P_LOOP_CONFIG]); |
659 | Setting.setValue("GasLimit", ParameterSet[Set][P_LOOP_GAS_LIMIT]); |
663 | Setting.setValue("GasLimit", ParameterSet[Set][P_LOOP_GAS_LIMIT]); |
660 | Setting.setValue("StickThreshold", ParameterSet[Set][P_LOOP_THRESHOLD]); |
664 | Setting.setValue("StickThreshold", ParameterSet[Set][P_LOOP_THRESHOLD]); |
661 | Setting.setValue("LoopHysteresis", ParameterSet[Set][P_LOOP_HYSTERESE]); |
665 | Setting.setValue("LoopHysteresis", ParameterSet[Set][P_LOOP_HYSTERESE]); |
662 | Setting.setValue("TurnOverNick", ParameterSet[Set][P_WINKEL_NICK]); |
666 | Setting.setValue("TurnOverNick", ParameterSet[Set][P_WINKEL_NICK]); |
663 | Setting.setValue("TurnOverRoll", ParameterSet[Set][P_WINKEL_ROLL]); |
667 | Setting.setValue("TurnOverRoll", ParameterSet[Set][P_WINKEL_ROLL]); |
664 | Setting.endGroup(); |
668 | Setting.endGroup(); |
665 | 669 | ||
666 | Setting.beginGroup("User"); |
670 | Setting.beginGroup("User"); |
667 | Setting.setValue("Parameter_1", ParameterSet[Set][P_USER_1]); |
671 | Setting.setValue("Parameter_1", ParameterSet[Set][P_USER_1]); |
668 | Setting.setValue("Parameter_2", ParameterSet[Set][P_USER_2]); |
672 | Setting.setValue("Parameter_2", ParameterSet[Set][P_USER_2]); |
669 | Setting.setValue("Parameter_3", ParameterSet[Set][P_USER_3]); |
673 | Setting.setValue("Parameter_3", ParameterSet[Set][P_USER_3]); |
670 | Setting.setValue("Parameter_4", ParameterSet[Set][P_USER_4]); |
674 | Setting.setValue("Parameter_4", ParameterSet[Set][P_USER_4]); |
671 | Setting.setValue("Parameter_5", ParameterSet[Set][P_USER_5]); |
675 | Setting.setValue("Parameter_5", ParameterSet[Set][P_USER_5]); |
672 | Setting.setValue("Parameter_6", ParameterSet[Set][P_USER_6]); |
676 | Setting.setValue("Parameter_6", ParameterSet[Set][P_USER_6]); |
673 | Setting.setValue("Parameter_7", ParameterSet[Set][P_USER_7]); |
677 | Setting.setValue("Parameter_7", ParameterSet[Set][P_USER_7]); |
674 | Setting.setValue("Parameter_8", ParameterSet[Set][P_USER_8]); |
678 | Setting.setValue("Parameter_8", ParameterSet[Set][P_USER_8]); |
675 | Setting.endGroup(); |
679 | Setting.endGroup(); |
676 | 680 | ||
677 | Setting.beginGroup("Output"); |
681 | Setting.beginGroup("Output"); |
678 | Setting.setValue("J16_Bitmask", ParameterSet[Set][P_J16_BITMASK]); |
682 | Setting.setValue("J16_Bitmask", ParameterSet[Set][P_J16_BITMASK]); |
679 | Setting.setValue("J16_Timing", ParameterSet[Set][P_J16_TIMING]); |
683 | Setting.setValue("J16_Timing", ParameterSet[Set][P_J16_TIMING]); |
680 | Setting.setValue("J17_Bitmask", ParameterSet[Set][P_J17_BITMASK]); |
684 | Setting.setValue("J17_Bitmask", ParameterSet[Set][P_J17_BITMASK]); |
681 | Setting.setValue("J17_Timing", ParameterSet[Set][P_J17_TIMING]); |
685 | Setting.setValue("J17_Timing", ParameterSet[Set][P_J17_TIMING]); |
682 | Setting.endGroup(); |
686 | Setting.endGroup(); |
683 | 687 | ||
684 | Setting.beginGroup("NaviCtrl"); |
688 | Setting.beginGroup("NaviCtrl"); |
685 | Setting.setValue("GPS_ModeControl", ParameterSet[Set][P_NAV_GPS_MODE]); |
689 | Setting.setValue("GPS_ModeControl", ParameterSet[Set][P_NAV_GPS_MODE]); |
686 | Setting.setValue("GPS_Gain", ParameterSet[Set][P_NAV_GPS_GAIN]); |
690 | Setting.setValue("GPS_Gain", ParameterSet[Set][P_NAV_GPS_GAIN]); |
687 | Setting.setValue("GPS_P", ParameterSet[Set][P_NAV_GPS_P]); |
691 | Setting.setValue("GPS_P", ParameterSet[Set][P_NAV_GPS_P]); |
688 | Setting.setValue("GPS_I", ParameterSet[Set][P_NAV_GPS_I]); |
692 | Setting.setValue("GPS_I", ParameterSet[Set][P_NAV_GPS_I]); |
689 | Setting.setValue("GPS_D", ParameterSet[Set][P_NAV_GPS_D]); |
693 | Setting.setValue("GPS_D", ParameterSet[Set][P_NAV_GPS_D]); |
690 | Setting.setValue("GPS_Acc", ParameterSet[Set][P_NAV_GPS_ACC]); |
694 | Setting.setValue("GPS_Acc", ParameterSet[Set][P_NAV_GPS_ACC]); |
691 | Setting.setValue("GPS_MinSat", ParameterSet[Set][P_NAV_GPS_MIN]); |
695 | Setting.setValue("GPS_MinSat", ParameterSet[Set][P_NAV_GPS_MIN]); |
692 | Setting.setValue("GPS_StickThreshold", ParameterSet[Set][P_NAV_STICK_THRE]); |
696 | Setting.setValue("GPS_StickThreshold", ParameterSet[Set][P_NAV_STICK_THRE]); |
693 | Setting.setValue("GPS_WindCorrection", ParameterSet[Set][P_NAV_WIND_CORR]); |
697 | Setting.setValue("GPS_WindCorrection", ParameterSet[Set][P_NAV_WIND_CORR]); |
694 | Setting.setValue("GPS_SpeedCompensation", ParameterSet[Set][P_NAV_SPEED_COMP]); |
698 | Setting.setValue("GPS_SpeedCompensation", ParameterSet[Set][P_NAV_SPEED_COMP]); |
695 | Setting.setValue("GPS_MaxRadius", ParameterSet[Set][P_NAV_RADIUS]); |
699 | Setting.setValue("GPS_MaxRadius", ParameterSet[Set][P_NAV_RADIUS]); |
696 | Setting.setValue("GPS_AngleLimit", ParameterSet[Set][P_NAV_ANGLE_LIMIT]); |
700 | Setting.setValue("GPS_AngleLimit", ParameterSet[Set][P_NAV_ANGLE_LIMIT]); |
697 | Setting.endGroup(); |
701 | Setting.endGroup(); |
698 | } |
702 | } |
699 | } |
703 | } |
700 | 704 | ||
701 | char *wdg_Settings::GetFCSettings() // DONE 0.71g |
705 | char *wdg_Settings::GetFCSettings() // DONE 0.71g |
702 | { |
706 | { |
703 | store_ParameterSet(sb_Set->value()); |
707 | store_ParameterSet(sb_Set->value()); |
704 | 708 | ||
705 | char *TX_Data = new char[150]; |
709 | char *TX_Data = new char[150]; |
706 | 710 | ||
707 | TX_Data[0] = sb_Set->value(); |
711 | TX_Data[0] = sb_Set->value(); |
708 | TX_Data[1] = VERSION_SETTINGS; |
712 | TX_Data[1] = VERSION_SETTINGS; |
709 | 713 | ||
710 | for (int a = 0; a < MaxParameter; a++) |
714 | for (int a = 0; a < MaxParameter; a++) |
711 | { |
715 | { |
712 | TX_Data[a + 2] = ParameterSet[sb_Set->value()][a]; |
716 | TX_Data[a + 2] = ParameterSet[sb_Set->value()][a]; |
713 | } |
717 | } |
714 | 718 | ||
715 | return TX_Data; |
719 | return TX_Data; |
716 | 720 | ||
717 | // store_ParameterSet(sb_Set->value()); |
721 | // store_ParameterSet(sb_Set->value()); |
718 | 722 | ||
719 | // send_Data('s', ADDRESS_FC, TX_Data, MaxParameter + 2, false); |
723 | // send_Data('s', ADDRESS_FC, TX_Data, MaxParameter + 2, false); |
720 | } |
724 | } |
721 | 725 | ||
722 | QComboBox *wdg_Settings::setCombo(QComboBox *Combo, int Set, int Wert) |
726 | QComboBox *wdg_Settings::setCombo(QComboBox *Combo, int Set, int Wert) |
723 | { |
727 | { |
724 | Set = Set; |
728 | Set = Set; |
725 | 729 | ||
726 | if (Wert <= 250) |
730 | if (Wert <= 250) |
727 | { |
731 | { |
728 | Combo->setItemText(4, QString("%1").arg(Wert)); |
732 | Combo->setItemText(4, QString("%1").arg(Wert)); |
729 | Combo->setCurrentIndex(4); |
733 | Combo->setCurrentIndex(4); |
730 | } |
734 | } |
731 | else |
735 | else |
732 | { |
736 | { |
733 | Combo->setCurrentIndex(Wert - 251); |
737 | Combo->setCurrentIndex(Wert - 251); |
734 | } |
738 | } |
735 | return Combo; |
739 | return Combo; |
736 | } |
740 | } |
737 | 741 | ||
738 | void wdg_Settings::show_FCSettings(int Set, int FCSettings[MaxParameter]) // DONE 0.71h |
742 | void wdg_Settings::show_FCSettings(int Set, int FCSettings[MaxParameter]) // DONE 0.71h |
739 | { |
743 | { |
740 | memcpy(Settings, FCSettings, sizeof(FCSettings)); |
744 | memcpy(Settings, FCSettings, sizeof(FCSettings)); |
741 | // memcpy(ParameterSet, ParamSet, sizeof(ParamSet)); |
745 | // memcpy(ParameterSet, ParamSet, sizeof(ParamSet)); |
742 | 746 | ||
743 | memcpy(ParameterSet[Set], FCSettings, sizeof(FCSettings)); |
747 | memcpy(ParameterSet[Set], FCSettings, sizeof(FCSettings)); |
744 | 748 | ||
745 | sb_Set->setValue(Set); |
749 | sb_Set->setValue(Set); |
746 | 750 | ||
747 | char Name[12]; |
751 | char Name[12]; |
748 | for (int a = 0; a < 12; a++) |
752 | for (int a = 0; a < 12; a++) |
749 | { |
753 | { |
750 | Name[a] = FCSettings[P_NAME+a]; |
754 | Name[a] = FCSettings[P_NAME+a]; |
751 | } |
755 | } |
752 | le_SetName->setText(QString(Name)); |
756 | le_SetName->setText(QString(Name)); |
- | 757 | ||
753 | 758 | ||
754 | // Seite 1 |
759 | // Seite 1 |
755 | { |
760 | { |
756 | cb_1_1->setChecked(FCSettings[P_GLOBAL_CONF] & 0x01); |
761 | cb_1_1->setChecked(FCSettings[P_GLOBAL_CONF] & 0x01); |
757 | cb_1_2->setChecked(FCSettings[P_GLOBAL_CONF] & 0x02); |
762 | cb_1_2->setChecked(FCSettings[P_GLOBAL_CONF] & 0x02); |
758 | cb_1_3->setChecked(FCSettings[P_GLOBAL_CONF] & 0x04); |
763 | cb_1_3->setChecked(FCSettings[P_GLOBAL_CONF] & 0x04); |
759 | cb_1_4->setChecked(FCSettings[P_GLOBAL_CONF] & 0x08); |
764 | cb_1_4->setChecked(FCSettings[P_GLOBAL_CONF] & 0x08); |
760 | cb_1_5->setChecked(FCSettings[P_GLOBAL_CONF] & 0x10); |
765 | cb_1_5->setChecked(FCSettings[P_GLOBAL_CONF] & 0x10); |
761 | cb_1_6->setChecked(FCSettings[P_GLOBAL_CONF] & 0x20); |
766 | cb_1_6->setChecked(FCSettings[P_GLOBAL_CONF] & 0x20); |
762 | cb_1_7->setChecked(FCSettings[P_GLOBAL_CONF] & 0x40); |
767 | cb_1_7->setChecked(FCSettings[P_GLOBAL_CONF] & 0x40); |
763 | cb_1_8->setChecked(FCSettings[P_GLOBAL_CONF] & 0x80); |
768 | cb_1_8->setChecked(FCSettings[P_GLOBAL_CONF] & 0x80); |
764 | } |
769 | } |
765 | // Seite 2 |
770 | // Seite 2 |
766 | { |
771 | { |
767 | sb_2_1->setValue(FCSettings[P_KANAL_NICK]); |
772 | sb_2_1->setValue(FCSettings[P_KANAL_NICK]); |
768 | sb_2_2->setValue(FCSettings[P_KANAL_ROLL]); |
773 | sb_2_2->setValue(FCSettings[P_KANAL_ROLL]); |
769 | sb_2_3->setValue(FCSettings[P_KANAL_GAS]); |
774 | sb_2_3->setValue(FCSettings[P_KANAL_GAS]); |
770 | sb_2_4->setValue(FCSettings[P_KANAL_GIER]); |
775 | sb_2_4->setValue(FCSettings[P_KANAL_GIER]); |
771 | sb_2_5->setValue(FCSettings[P_KANAL_POTI1]); |
776 | sb_2_5->setValue(FCSettings[P_KANAL_POTI1]); |
772 | sb_2_6->setValue(FCSettings[P_KANAL_POTI2]); |
777 | sb_2_6->setValue(FCSettings[P_KANAL_POTI2]); |
773 | sb_2_7->setValue(FCSettings[P_KANAL_POTI3]); |
778 | sb_2_7->setValue(FCSettings[P_KANAL_POTI3]); |
774 | sb_2_8->setValue(FCSettings[P_KANAL_POTI4]); |
779 | sb_2_8->setValue(FCSettings[P_KANAL_POTI4]); |
775 | } |
780 | } |
776 | // Seite 3 |
781 | // Seite 3 |
777 | { |
782 | { |
778 | sb_3_1->setValue(FCSettings[P_STICK_P]); |
783 | sb_3_1->setValue(FCSettings[P_STICK_P]); |
779 | sb_3_2->setValue(FCSettings[P_STICK_D]); |
784 | sb_3_2->setValue(FCSettings[P_STICK_D]); |
780 | cb_3_3 = setCombo(cb_3_3, Set, FCSettings[P_GIER_P]); |
785 | cb_3_3 = setCombo(cb_3_3, Set, FCSettings[P_GIER_P]); |
781 | cb_3_4 = setCombo(cb_3_4, Set, FCSettings[P_EXTERNAL]); |
786 | cb_3_4 = setCombo(cb_3_4, Set, FCSettings[P_EXTERNAL]); |
782 | } |
787 | } |
783 | // Seite 4 |
788 | // Seite 4 |
784 | { |
789 | { |
785 | cb_4_1 = setCombo(cb_4_1, Set, FCSettings[P_MAXHOEHE]); |
790 | cb_4_1 = setCombo(cb_4_1, Set, FCSettings[P_MAXHOEHE]); |
786 | sb_4_2->setValue(FCSettings[P_MIN_GAS]); |
791 | sb_4_2->setValue(FCSettings[P_MIN_GAS]); |
787 | cb_4_3 = setCombo(cb_4_3, Set, FCSettings[P_HOEHE_P]); |
792 | cb_4_3 = setCombo(cb_4_3, Set, FCSettings[P_HOEHE_P]); |
788 | cb_4_4 = setCombo(cb_4_4, Set, FCSettings[P_DRUCK_D]); |
793 | cb_4_4 = setCombo(cb_4_4, Set, FCSettings[P_DRUCK_D]); |
789 | cb_4_5 = setCombo(cb_4_5, Set, FCSettings[P_HOEHE_ACC]); |
794 | cb_4_5 = setCombo(cb_4_5, Set, FCSettings[P_HOEHE_ACC]); |
790 | sb_4_6->setValue(FCSettings[P_HOEHE_GAIN]); |
795 | sb_4_6->setValue(FCSettings[P_HOEHE_GAIN]); |
791 | cb_4_7->setChecked(FCSettings[P_LOOP_CONFIG] & 0x10); |
796 | cb_4_7->setChecked(FCSettings[P_LOOP_CONFIG] & 0x10); |
792 | } |
797 | } |
793 | // Seite 5 |
798 | // Seite 5 |
794 | { |
799 | { |
795 | cb_5_1 = setCombo(cb_5_1, Set, FCSettings[P_GYRO_P]); |
800 | cb_5_1 = setCombo(cb_5_1, Set, FCSettings[P_GYRO_P]); |
796 | cb_5_2 = setCombo(cb_5_2, Set, FCSettings[P_GYRO_I]); |
801 | cb_5_2 = setCombo(cb_5_2, Set, FCSettings[P_GYRO_I]); |
797 | cb_5_3 = setCombo(cb_5_3, Set, FCSettings[P_DYNAMIC_STAB]); |
802 | cb_5_3 = setCombo(cb_5_3, Set, FCSettings[P_DYNAMIC_STAB]); |
798 | sb_5_4->setValue(FCSettings[P_GYRO_ACC_FAKTOR]); |
803 | sb_5_4->setValue(FCSettings[P_GYRO_ACC_FAKTOR]); |
799 | sb_5_5->setValue(FCSettings[P_GYRO_ACC_ABGL]); |
804 | sb_5_5->setValue(FCSettings[P_GYRO_ACC_ABGL]); |
800 | cb_5_6 = setCombo(cb_5_6, Set, FCSettings[P_FAKTOR_I]); |
805 | cb_5_6 = setCombo(cb_5_6, Set, FCSettings[P_FAKTOR_I]); |
801 | sb_5_7->setValue(FCSettings[P_DRIFT_KOMP]); |
806 | sb_5_7->setValue(FCSettings[P_DRIFT_KOMP]); |
802 | } |
807 | } |
803 | // Seite 6 |
808 | // Seite 6 |
804 | { |
809 | { |
805 | cb_6_1 = setCombo(cb_6_1, Set, FCSettings[P_SERVO_NICK_CONT]); |
810 | cb_6_1 = setCombo(cb_6_1, Set, FCSettings[P_SERVO_NICK_CONT]); |
806 | sb_6_2->setValue(FCSettings[P_SERVO_NICK_COMP]); |
811 | sb_6_2->setValue(FCSettings[P_SERVO_NICK_COMP]); |
807 | sb_6_3->setValue(FCSettings[P_SERVO_NICK_MIN]); |
812 | sb_6_3->setValue(FCSettings[P_SERVO_NICK_MIN]); |
808 | sb_6_4->setValue(FCSettings[P_SERVO_NICK_MAX]); |
813 | sb_6_4->setValue(FCSettings[P_SERVO_NICK_MAX]); |
809 | sb_6_5->setValue(FCSettings[P_SERVO_NICK_REFR]); |
814 | sb_6_5->setValue(FCSettings[P_SERVO_NICK_REFR]); |
810 | cb_6_6->setChecked(FCSettings[P_SERVO_NICK_COMPI]); |
815 | cb_6_6->setChecked(FCSettings[P_SERVO_NICK_COMPI]); |
811 | } |
816 | } |
812 | // Seite 7 |
817 | // Seite 7 |
813 | { |
818 | { |
814 | sb_7_1->setValue(FCSettings[P_GAS_MIN]); |
819 | sb_7_1->setValue(FCSettings[P_GAS_MIN]); |
815 | sb_7_2->setValue(FCSettings[P_GAS_MAX]); |
820 | sb_7_2->setValue(FCSettings[P_GAS_MAX]); |
816 | cb_7_3 = setCombo(cb_7_3, Set, FCSettings[P_KOMPASS_WIRKUNG]); |
821 | cb_7_3 = setCombo(cb_7_3, Set, FCSettings[P_KOMPASS_WIRKUNG]); |
817 | sb_7_4->setValue(FCSettings[P_UNTERSPANNUNG]); |
822 | sb_7_4->setValue(FCSettings[P_UNTERSPANNUNG]); |
818 | sb_7_5->setValue(FCSettings[P_NOTGASZEIT]); |
823 | sb_7_5->setValue(FCSettings[P_NOTGASZEIT]); |
819 | sb_7_6->setValue(FCSettings[P_NOTGAS]); |
824 | sb_7_6->setValue(FCSettings[P_NOTGAS]); |
820 | } |
825 | } |
821 | // Seite 8 |
826 | // Seite 8 |
822 | { |
827 | { |
823 | cb_8_1 = setCombo(cb_8_1, Set, FCSettings[P_ACHS_KOPPLUNG]); |
828 | cb_8_1 = setCombo(cb_8_1, Set, FCSettings[P_ACHS_KOPPLUNG]); |
824 | cb_8_2 = setCombo(cb_8_2, Set, FCSettings[P_ACHS_GKOPPLUNG]); |
829 | cb_8_2 = setCombo(cb_8_2, Set, FCSettings[P_ACHS_GKOPPLUNG]); |
825 | } |
830 | } |
826 | // Seite 9 |
831 | // Seite 9 |
827 | { |
832 | { |
828 | if (FCSettings[P_LOOP_CONFIG] & 0x01) |
833 | if (FCSettings[P_LOOP_CONFIG] & 0x01) |
829 | { |
834 | { |
830 | tb_9_6->setIcon(ToolBox::Icon(20)); |
- | |
831 | tb_9_6->setText("1"); |
835 | tb_9_6->setText("1"); |
- | 836 | tb_9_6->setChecked(true); |
|
832 | } |
837 | } |
833 | else |
838 | else |
834 | { |
839 | { |
835 | tb_9_6->setIcon(ToolBox::Icon(21)); |
- | |
836 | tb_9_6->setText("0"); |
840 | tb_9_6->setText("0"); |
- | 841 | tb_9_6->setChecked(false); |
|
837 | } |
842 | } |
838 | 843 | ||
839 | if (FCSettings[P_LOOP_CONFIG] & 0x02) |
844 | if (FCSettings[P_LOOP_CONFIG] & 0x02) |
840 | { |
845 | { |
841 | tb_9_7->setIcon(ToolBox::Icon(22)); |
- | |
842 | tb_9_7->setText("1"); |
846 | tb_9_7->setText("1"); |
843 | } |
847 | } |
844 | else |
848 | else |
845 | { |
849 | { |
846 | tb_9_7->setIcon(ToolBox::Icon(23)); |
- | |
847 | tb_9_7->setText("0"); |
850 | tb_9_7->setText("0"); |
848 | } |
851 | } |
849 | 852 | ||
850 | if (FCSettings[P_LOOP_CONFIG] & 0x04) |
853 | if (FCSettings[P_LOOP_CONFIG] & 0x04) |
851 | { |
854 | { |
852 | tb_9_8->setIcon(ToolBox::Icon(24)); |
- | |
853 | tb_9_8->setText("1"); |
855 | tb_9_8->setText("1"); |
854 | } |
856 | } |
855 | else |
857 | else |
856 | { |
858 | { |
857 | tb_9_8->setIcon(ToolBox::Icon(25)); |
- | |
858 | tb_9_8->setText("0"); |
859 | tb_9_8->setText("0"); |
859 | } |
860 | } |
860 | 861 | ||
861 | if (FCSettings[P_LOOP_CONFIG] & 0x08) |
862 | if (FCSettings[P_LOOP_CONFIG] & 0x08) |
862 | { |
863 | { |
863 | tb_9_9->setIcon(ToolBox::Icon(26)); |
- | |
864 | tb_9_9->setText("1"); |
864 | tb_9_9->setText("1"); |
865 | } |
865 | } |
866 | else |
866 | else |
867 | { |
867 | { |
868 | tb_9_9->setIcon(ToolBox::Icon(27)); |
- | |
869 | tb_9_9->setText("0"); |
868 | tb_9_9->setText("0"); |
870 | } |
869 | } |
871 | 870 | ||
872 | cb_9_1 = setCombo(cb_9_1, Set, FCSettings[P_LOOP_GAS_LIMIT]); |
871 | cb_9_1 = setCombo(cb_9_1, Set, FCSettings[P_LOOP_GAS_LIMIT]); |
873 | sb_9_2->setValue(FCSettings[P_LOOP_THRESHOLD]); |
872 | sb_9_2->setValue(FCSettings[P_LOOP_THRESHOLD]); |
874 | sb_9_3->setValue(FCSettings[P_WINKEL_NICK]); |
873 | sb_9_3->setValue(FCSettings[P_WINKEL_NICK]); |
875 | sb_9_4->setValue(FCSettings[P_LOOP_HYSTERESE]); |
874 | sb_9_4->setValue(FCSettings[P_LOOP_HYSTERESE]); |
876 | sb_9_5->setValue(FCSettings[P_WINKEL_ROLL]); |
875 | sb_9_5->setValue(FCSettings[P_WINKEL_ROLL]); |
877 | } |
876 | } |
878 | // Seite 10 |
877 | // Seite 10 |
879 | { |
878 | { |
880 | cb_10_1 = setCombo(cb_10_1, Set, FCSettings[P_USER_1]); |
879 | cb_10_1 = setCombo(cb_10_1, Set, FCSettings[P_USER_1]); |
881 | cb_10_2 = setCombo(cb_10_2, Set, FCSettings[P_USER_2]); |
880 | cb_10_2 = setCombo(cb_10_2, Set, FCSettings[P_USER_2]); |
882 | cb_10_3 = setCombo(cb_10_3, Set, FCSettings[P_USER_3]); |
881 | cb_10_3 = setCombo(cb_10_3, Set, FCSettings[P_USER_3]); |
883 | cb_10_4 = setCombo(cb_10_4, Set, FCSettings[P_USER_4]); |
882 | cb_10_4 = setCombo(cb_10_4, Set, FCSettings[P_USER_4]); |
884 | cb_10_5 = setCombo(cb_10_5, Set, FCSettings[P_USER_5]); |
883 | cb_10_5 = setCombo(cb_10_5, Set, FCSettings[P_USER_5]); |
885 | cb_10_6 = setCombo(cb_10_6, Set, FCSettings[P_USER_6]); |
884 | cb_10_6 = setCombo(cb_10_6, Set, FCSettings[P_USER_6]); |
886 | cb_10_7 = setCombo(cb_10_7, Set, FCSettings[P_USER_7]); |
885 | cb_10_7 = setCombo(cb_10_7, Set, FCSettings[P_USER_7]); |
887 | cb_10_8 = setCombo(cb_10_8, Set, FCSettings[P_USER_8]); |
886 | cb_10_8 = setCombo(cb_10_8, Set, FCSettings[P_USER_8]); |
888 | } |
887 | } |
889 | // Seite 11 |
888 | // Seite 11 |
890 | { |
889 | { |
891 | sb_11_1->setValue(FCSettings[P_J16_BITMASK]); |
890 | sb_11_1->setValue(FCSettings[P_J16_BITMASK]); |
892 | cb_11_2 = setCombo(cb_11_2, Set, FCSettings[P_J16_TIMING]); |
891 | cb_11_2 = setCombo(cb_11_2, Set, FCSettings[P_J16_TIMING]); |
893 | sb_11_3->setValue(FCSettings[P_J17_BITMASK]); |
892 | sb_11_3->setValue(FCSettings[P_J17_BITMASK]); |
894 | cb_11_4 = setCombo(cb_11_4, Set, FCSettings[P_J17_TIMING]); |
893 | cb_11_4 = setCombo(cb_11_4, Set, FCSettings[P_J17_TIMING]); |
895 | } |
894 | } |
896 | // Seite 12 |
895 | // Seite 12 |
897 | { |
896 | { |
898 | cb_12_1 = setCombo(cb_12_1, Set, FCSettings[P_NAV_GPS_MODE]); |
897 | cb_12_1 = setCombo(cb_12_1, Set, FCSettings[P_NAV_GPS_MODE]); |
899 | cb_12_2 = setCombo(cb_12_2, Set, FCSettings[P_NAV_GPS_GAIN]); |
898 | cb_12_2 = setCombo(cb_12_2, Set, FCSettings[P_NAV_GPS_GAIN]); |
900 | sb_12_3->setValue(FCSettings[P_NAV_STICK_THRE]); |
899 | sb_12_3->setValue(FCSettings[P_NAV_STICK_THRE]); |
901 | sb_12_4->setValue(FCSettings[P_NAV_GPS_MIN]); |
900 | sb_12_4->setValue(FCSettings[P_NAV_GPS_MIN]); |
902 | cb_12_5 = setCombo(cb_12_5, Set, FCSettings[P_NAV_GPS_P]); |
901 | cb_12_5 = setCombo(cb_12_5, Set, FCSettings[P_NAV_GPS_P]); |
903 | cb_12_6 = setCombo(cb_12_6, Set, FCSettings[P_NAV_GPS_I]); |
902 | cb_12_6 = setCombo(cb_12_6, Set, FCSettings[P_NAV_GPS_I]); |
904 | cb_12_7 = setCombo(cb_12_7, Set, FCSettings[P_NAV_GPS_D]); |
903 | cb_12_7 = setCombo(cb_12_7, Set, FCSettings[P_NAV_GPS_D]); |
905 | cb_12_8 = setCombo(cb_12_8, Set, FCSettings[P_NAV_GPS_ACC]); |
904 | cb_12_8 = setCombo(cb_12_8, Set, FCSettings[P_NAV_GPS_ACC]); |
906 | } |
905 | } |
907 | // Seite 13 |
906 | // Seite 13 |
908 | { |
907 | { |
909 | cb_13_1 = setCombo(cb_13_1, Set, FCSettings[P_NAV_WIND_CORR]); |
908 | cb_13_1 = setCombo(cb_13_1, Set, FCSettings[P_NAV_WIND_CORR]); |
910 | cb_13_2 = setCombo(cb_13_2, Set, FCSettings[P_NAV_SPEED_COMP]); |
909 | cb_13_2 = setCombo(cb_13_2, Set, FCSettings[P_NAV_SPEED_COMP]); |
911 | cb_13_3 = setCombo(cb_13_3, Set, FCSettings[P_NAV_RADIUS]); |
910 | cb_13_3 = setCombo(cb_13_3, Set, FCSettings[P_NAV_RADIUS]); |
912 | cb_13_4 = setCombo(cb_13_4, Set, FCSettings[P_NAV_ANGLE_LIMIT]); |
911 | cb_13_4 = setCombo(cb_13_4, Set, FCSettings[P_NAV_ANGLE_LIMIT]); |
913 | } |
912 | } |
914 | } |
913 | } |
915 | 914 | ||
916 | wdg_Settings::~wdg_Settings() |
915 | wdg_Settings::~wdg_Settings() |
917 | { |
916 | { |
918 | } |
917 | } |
919 | 918 | ||
920 | 919 |