1 /***************************************************************************
2 infowidget.h - description
3 -------------------
4 begin : ago 2017
5 copyright : (C) 2017 by Jaime Robles
6 email : jaime@robles.es
7 ***************************************************************************/
8
9 /*****************************************************************************
10 * This file is part of KLog. *
11 * *
12 * KLog is free software: you can redistribute it and/or modify *
13 * it under the terms of the GNU General Public License as published by *
14 * the Free Software Foundation, either version 3 of the License, or *
15 * (at your option) any later version. *
16 * *
17 * KLog is distributed in the hope that it will be useful, *
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
20 * GNU General Public License for more details. *
21 * *
22 * You should have received a copy of the GNU General Public License *
23 * along with KLog. If not, see <https://www.gnu.org/licenses/>. *
24 * *
25 *****************************************************************************/
26
27 #include "infowidget.h"
28
InfoWidget(DataProxy_SQLite * dp,QWidget * parent)29 InfoWidget::InfoWidget(DataProxy_SQLite *dp, QWidget *parent) :
30 QWidget(parent)
31 {
32 //qDebug() << "InfoWidget::InfoWidget: " << QT_ENDL;
33 dataProxy = dp;
34 awards = new Awards(dataProxy, Q_FUNC_INFO); //Just to know colors
35
36 locator = new Locator();
37 world = new World(dataProxy, Q_FUNC_INFO);
38
39 bandLabel1 = new QLabel;
40 bandLabel2 = new QLabel;
41 bandLabel3 = new QLabel;
42 bandLabel4 = new QLabel;
43 bandLabel5 = new QLabel;
44 bandLabel6 = new QLabel;
45 bandLabel7 = new QLabel;
46 bandLabel8 = new QLabel;
47 bandLabel9 = new QLabel;
48 bandLabel10 = new QLabel;
49 bandLabel11 = new QLabel;
50 bandLabel12 = new QLabel;
51
52 continentLabel = new QLabel;
53 prefixLabel = new QLabel;
54 cqzLabel = new QLabel;
55 ituzLabel = new QLabel;
56 gradShortLabel = new QLabel;
57 distShortLabel = new QLabel;
58 gradLongLabel = new QLabel;
59 distLongLabel = new QLabel;
60
61 distShortLabelN = new QLabel;
62 distLongLabelN = new QLabel;
63
64 imperialSystem=false;
65 dxLocator.clear();
66
67 createUI();
68 clearBandLabels();
69 //qDebug() << "InfoWidget::InfoWidget: - END" << QT_ENDL;
70 }
71
createUI()72 void InfoWidget::createUI()
73 {
74 bandLabel1->setText(tr("10M"));
75 bandLabel2->setText(tr("15M"));
76 bandLabel3->setText(tr("20M"));
77 bandLabel4->setText(tr("40M"));
78 bandLabel5->setText(tr("80M"));
79 bandLabel6->setText(tr("160M"));
80 bandLabel7->setText(tr("2M"));
81 bandLabel8->setText(tr("6M"));
82 bandLabel9->setText(tr("12M"));
83 bandLabel10->setText(tr("17M"));
84 bandLabel11->setText(tr("30M"));
85 bandLabel12->setText(tr("70CM"));
86
87 bandLabel1->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
88 bandLabel2->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
89 bandLabel3->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
90 bandLabel4->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
91 bandLabel5->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
92 bandLabel6->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
93 bandLabel7->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
94 bandLabel8->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
95 bandLabel9->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
96 bandLabel10->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
97 bandLabel11->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
98 bandLabel12->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
99
100 QLabel *continentLabelN = new QLabel(tr("Continent"));
101 continentLabelN->setAlignment(Qt::AlignVCenter | Qt::AlignCenter);
102 continentLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
103
104 QLabel *prefixLabelN = new QLabel(tr("Prefix"));
105 prefixLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
106 prefixLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
107
108 QLabel *cqzLabelN = new QLabel(tr("CQ"));
109 cqzLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
110 cqzLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
111
112 QLabel *ituzLabelN = new QLabel(tr("ITU"));
113 ituzLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
114 ituzLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
115
116 QLabel *shortLabelN = new QLabel(tr("Short Path"));
117 shortLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
118
119 QLabel *longLabelN = new QLabel(tr("Long Path"));
120 longLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
121
122 QLabel *gradShortLabelN = new QLabel(tr("Deg"));
123 gradShortLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
124 gradShortLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
125 distShortLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
126
127 QLabel *gradLongLabelN = new QLabel(tr("Deg"));
128 gradLongLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
129 gradLongLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
130 distShortLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
131
132 distLongLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
133 distLongLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
134
135 clear();
136
137
138 //continentLabel->setText("--");
139 //prefixLabel->setText("--");
140 //cqzLabel->setText("0");
141 //ituzLabel->setText("0");
142 //gradShortLabel->setText("0");
143 //gradLongLabel->setText("0");
144 //distLongLabel->setText("0");
145 //distShortLabel->setText("0");
146
147 QGridLayout *infoLayout1 = new QGridLayout;
148 infoLayout1->addWidget(continentLabelN, 0, 0);
149 infoLayout1->addWidget(continentLabel, 1, 0);
150 infoLayout1->addWidget(prefixLabelN, 0, 1);
151 infoLayout1->addWidget(prefixLabel, 1, 1);
152 infoLayout1->addWidget(cqzLabelN, 0, 2);
153 infoLayout1->addWidget(cqzLabel, 1, 2);
154 infoLayout1->addWidget(ituzLabelN, 0, 3);
155 infoLayout1->addWidget(ituzLabel, 1, 3);
156
157 QGridLayout *shortPathLayout = new QGridLayout;
158 shortPathLayout->addWidget(shortLabelN, 0, 0, 1, 0);
159 shortPathLayout->addWidget(gradShortLabelN, 1, 0);
160 shortPathLayout->addWidget(gradShortLabel, 1, 1);
161 shortPathLayout->addWidget(distShortLabelN, 1, 2);
162 shortPathLayout->addWidget(distShortLabel, 1, 3);
163
164 QGridLayout *longPathLayout = new QGridLayout;
165 longPathLayout->addWidget(longLabelN, 0, 0, 1, 0);
166 longPathLayout->addWidget(gradLongLabelN, 1, 0);
167 longPathLayout->addWidget(gradLongLabel, 1, 1);
168 longPathLayout->addWidget(distLongLabelN, 1, 2);
169 longPathLayout->addWidget(distLongLabel, 1, 3);
170
171 QHBoxLayout *pathsLayout = new QHBoxLayout;
172 pathsLayout->addLayout(shortPathLayout);
173 pathsLayout->addLayout(longPathLayout);
174
175 QGridLayout *bandsLayout = new QGridLayout;
176 bandsLayout->addWidget(bandLabel1, 0, 0);
177 bandsLayout->addWidget(bandLabel2, 0, 1);
178 bandsLayout->addWidget(bandLabel3, 0, 2);
179 bandsLayout->addWidget(bandLabel4, 0, 3);
180 bandsLayout->addWidget(bandLabel5, 0, 4);
181 bandsLayout->addWidget(bandLabel6, 0, 5);
182 bandsLayout->addWidget(bandLabel7, 1, 0);
183 bandsLayout->addWidget(bandLabel8, 1, 1);
184 bandsLayout->addWidget(bandLabel9, 1, 2);
185 bandsLayout->addWidget(bandLabel10, 1, 3);
186 bandsLayout->addWidget(bandLabel11, 1, 4);
187 bandsLayout->addWidget(bandLabel12, 1, 5);
188
189 QVBoxLayout *mainLayout = new QVBoxLayout;
190 mainLayout->addLayout(bandsLayout);
191 mainLayout->addLayout(infoLayout1);
192 mainLayout->addLayout(pathsLayout);
193
194 #ifdef Q_OS_WIN
195 continentLabel->setFrameShadow(QFrame::Raised);
196 continentLabel->setFrameStyle(QFrame::StyledPanel);
197 continentLabelN->setFrameShadow(QFrame::Raised);
198 continentLabelN->setFrameStyle(QFrame::StyledPanel);
199 prefixLabelN->setFrameShadow(QFrame::Raised);
200 prefixLabelN->setFrameStyle(QFrame::StyledPanel);
201 prefixLabel->setFrameShadow(QFrame::Raised);
202 prefixLabel->setFrameStyle(QFrame::StyledPanel);
203 cqzLabelN->setFrameShadow(QFrame::Raised);
204 cqzLabelN->setFrameStyle(QFrame::StyledPanel);
205 cqzLabel->setFrameShadow(QFrame::Raised);
206 cqzLabel->setFrameStyle(QFrame::StyledPanel);
207 ituzLabel->setFrameShadow(QFrame::Raised);
208 ituzLabel->setFrameStyle(QFrame::StyledPanel);
209 ituzLabelN->setFrameShadow(QFrame::Raised);
210 ituzLabelN->setFrameStyle(QFrame::StyledPanel);
211 shortLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
212 shortLabelN->setFrameShadow(QFrame::Raised);
213 shortLabelN->setFrameStyle(QFrame::StyledPanel);
214
215 longLabelN->setFrameShadow(QFrame::Raised);
216 longLabelN->setFrameStyle(QFrame::StyledPanel);
217 gradShortLabelN->setFrameShadow(QFrame::Raised);
218 gradShortLabelN->setFrameStyle(QFrame::StyledPanel);
219 gradShortLabel->setFrameShadow(QFrame::Raised);
220 gradShortLabel->setFrameStyle(QFrame::StyledPanel);
221 distShortLabelN->setFrameShadow(QFrame::Raised);
222 distShortLabelN->setFrameStyle(QFrame::StyledPanel);
223 distShortLabel->setFrameShadow(QFrame::Raised);
224 distShortLabel->setFrameStyle(QFrame::StyledPanel);
225 gradLongLabelN->setFrameShadow(QFrame::Raised);
226 gradLongLabelN->setFrameStyle(QFrame::StyledPanel);
227 gradLongLabel->setFrameShadow(QFrame::Raised);
228 gradLongLabel->setFrameStyle(QFrame::StyledPanel);
229 distLongLabelN->setFrameShadow(QFrame::Raised);
230 distLongLabelN->setFrameStyle(QFrame::StyledPanel);
231 distLongLabel->setFrameShadow(QFrame::Raised);
232 distLongLabel->setFrameStyle(QFrame::StyledPanel);
233
234
235 bandLabel1->setFrameShadow(QFrame::Raised);
236 bandLabel1->setFrameStyle(QFrame::StyledPanel);
237 bandLabel2->setFrameShadow(QFrame::Raised);
238 bandLabel2->setFrameStyle(QFrame::StyledPanel);
239 bandLabel3->setFrameShadow(QFrame::Raised);
240 bandLabel3->setFrameStyle(QFrame::StyledPanel);
241 bandLabel4->setFrameShadow(QFrame::Raised);
242 bandLabel4->setFrameStyle(QFrame::StyledPanel);
243 bandLabel5->setFrameShadow(QFrame::Raised);
244 bandLabel5->setFrameStyle(QFrame::StyledPanel);
245 bandLabel6->setFrameShadow(QFrame::Raised);
246 bandLabel6->setFrameStyle(QFrame::StyledPanel);
247
248 bandLabel7->setFrameShadow(QFrame::Raised);
249 bandLabel7->setFrameStyle(QFrame::StyledPanel);
250 bandLabel8->setFrameShadow(QFrame::Raised);
251 bandLabel8->setFrameStyle(QFrame::StyledPanel);
252 bandLabel9->setFrameShadow(QFrame::Raised);
253 bandLabel9->setFrameStyle(QFrame::StyledPanel);
254 bandLabel10->setFrameShadow(QFrame::Raised);
255 bandLabel10->setFrameStyle(QFrame::StyledPanel);
256 bandLabel11->setFrameShadow(QFrame::Raised);
257 bandLabel11->setFrameStyle(QFrame::StyledPanel);
258 bandLabel12->setFrameShadow(QFrame::Raised);
259 bandLabel12->setFrameStyle(QFrame::StyledPanel);
260
261 #else
262 continentLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
263 continentLabel->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
264 prefixLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
265 prefixLabel->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
266 cqzLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
267 cqzLabel->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
268 ituzLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
269 ituzLabel->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
270 shortLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
271 longLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
272 gradShortLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
273 gradShortLabel->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
274 distShortLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
275 distShortLabel->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
276 gradLongLabel->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
277 distLongLabel->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
278 distLongLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
279 gradLongLabelN->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
280
281 bandLabel1->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
282 bandLabel2->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
283 bandLabel3->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
284 bandLabel4->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
285 bandLabel5->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
286 bandLabel6->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
287 bandLabel7->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
288 bandLabel8->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
289 bandLabel9->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
290 bandLabel10->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
291 bandLabel11->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
292 bandLabel12->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
293 #endif
294
295 setLayout(mainLayout);
296
297 }
298
clearBandLabels()299 void InfoWidget::clearBandLabels()
300 {
301 QString defaultColorName = (awards->getDefaultColor()).name();
302 bandLabel1->setStyleSheet("* { background-color: " + defaultColorName + "; }");
303 bandLabel2->setStyleSheet("* { background-color: " + defaultColorName + "; }");
304 bandLabel3->setStyleSheet("* { background-color: " + defaultColorName + "; }");
305 bandLabel4->setStyleSheet("* { background-color: " + defaultColorName + "; }");
306 bandLabel5->setStyleSheet("* { background-color: " + defaultColorName + "; }");
307 bandLabel6->setStyleSheet("* { background-color: " + defaultColorName + "; }");
308 bandLabel7->setStyleSheet("* { background-color: " + defaultColorName + "; }");
309 bandLabel8->setStyleSheet("* { background-color: " + defaultColorName + "; }");
310 bandLabel9->setStyleSheet("* { background-color: " + defaultColorName + "; }");
311 bandLabel10->setStyleSheet("* { background-color: " + defaultColorName + "; }");
312 bandLabel11->setStyleSheet("* { background-color: " + defaultColorName + "; }");
313 bandLabel12->setStyleSheet("* { background-color: " + defaultColorName + "; }");
314 }
315
316
clearInfoFromLocators()317 void InfoWidget::clearInfoFromLocators()
318 {
319 //qDebug() << "InfoWidget::clearInfoFromLocators" << QT_ENDL;
320 gradShortLabel->setText( "0" );
321 gradLongLabel->setText( "0" );
322 distShortLabel->setText( "0" );
323 distLongLabel->setText( "0" );
324 cqzLabel->setText("0");
325 ituzLabel->setText("0");
326 }
327
clear()328 void InfoWidget::clear()
329 {
330 continentLabel->setText("--");
331 prefixLabel->setText("--");
332 clearBandLabels();
333 clearInfoFromLocators();
334 }
335
setColors(const QString & _newOne,const QString & _needed,const QString & _worked,const QString & _confirmed,const QString & _default)336 void InfoWidget::setColors (const QString &_newOne, const QString &_needed, const QString &_worked, const QString &_confirmed, const QString &_default)
337 {
338 awards->setColors (_newOne, _needed, _worked, _confirmed, _default);
339 }
340
setCurrentLog(const int _log)341 void InfoWidget::setCurrentLog(const int _log)
342 {
343 currentLog = _log;
344 }
345
setImperialSystem(const bool _imp)346 void InfoWidget::setImperialSystem (const bool _imp)
347 {
348 imperialSystem = _imp;
349
350 if (imperialSystem)
351 {
352 distShortLabelN->setText(tr("Miles"));
353 distLongLabelN->setText(tr("Miles"));
354 //distShortLabel->setText( QString::number( Km2Mile(imperialSystem, (distShortLabel->text()).toInt() )) );
355 //distLongLabel->setText( QString::number(Km2Mile(imperialSystem, (distLongLabel->text()).toInt()) ) );
356 }
357 else
358 {
359 distShortLabelN->setText(tr("Km"));
360 distLongLabelN->setText(tr("Km"));
361 }
362 }
363
getStyleColorToLabelFromBand(const QString & _b,const QString & _q)364 QString InfoWidget::getStyleColorToLabelFromBand(const QString &_b, const QString &_q)
365 { // Receives band name, Entity number (as a String)
366 //qDebug() << "InfoWidget::getStyleColorToLabelFromBand: " << _b << "/" << _q << QT_ENDL;
367 QStringList _qs;
368 _qs.clear();
369
370 _qs << _q << QString::number(dataProxy->getIdFromBandName(_b)) << QString::number(-1) << QString::number(currentLog);
371 //TODO: Check if we can know the mode and replace the -1
372 //qDebug() << "InfoWidget::getStyleColorToLabelFromBand (Band/background-color): " << _b << (awards->getQRZDXStatusColor(_qs)).name() << QT_ENDL;
373 return "* { background-color: " + (awards->getQRZDXStatusColor(_qs)).name() + "; }";
374 }
375
376
377 //void InfoWidget::showInfo(const int _entity, const int _bandid, const int _modeid, const int _log)
showInfo(const int _entity)378 void InfoWidget::showInfo(const int _entity)
379 { // Default values of _modeid & _log = -1
380 //qDebug() << "InfoWidget::showInfo: " << QString::number(_entity) << QT_ENDL;
381 //QColor getQRZDXStatusColor(const QStringList _qs); // Receives Entity, band, mode & log
382 if (_entity <1)
383 {
384 clearBandLabels();
385 }
386
387 bandLabel1->setStyleSheet(getStyleColorToLabelFromBand(bandLabel1->text(), QString::number(_entity)));
388 bandLabel2->setStyleSheet(getStyleColorToLabelFromBand(bandLabel2->text(), QString::number(_entity)));
389 bandLabel3->setStyleSheet(getStyleColorToLabelFromBand(bandLabel3->text(), QString::number(_entity)));
390 bandLabel4->setStyleSheet(getStyleColorToLabelFromBand(bandLabel4->text(), QString::number(_entity)));
391 bandLabel5->setStyleSheet(getStyleColorToLabelFromBand(bandLabel5->text(), QString::number(_entity)));
392 bandLabel6->setStyleSheet(getStyleColorToLabelFromBand(bandLabel6->text(), QString::number(_entity)));
393 bandLabel7->setStyleSheet(getStyleColorToLabelFromBand(bandLabel7->text(), QString::number(_entity)));
394 bandLabel8->setStyleSheet(getStyleColorToLabelFromBand(bandLabel8->text(), QString::number(_entity)));
395 bandLabel9->setStyleSheet(getStyleColorToLabelFromBand(bandLabel9->text(), QString::number(_entity)));
396 bandLabel10->setStyleSheet(getStyleColorToLabelFromBand(bandLabel10->text(), QString::number(_entity)));
397 bandLabel11->setStyleSheet(getStyleColorToLabelFromBand(bandLabel11->text(), QString::number(_entity)));
398 bandLabel12->setStyleSheet(getStyleColorToLabelFromBand(bandLabel12->text(), QString::number(_entity)));
399 }
400
showEntityInfo(const int _enti,int _cq,int _itu)401 void InfoWidget::showEntityInfo(const int _enti, int _cq, int _itu)
402 {
403 //qDebug() << "InfoWidget::showEntityInfo" << QString::number(_enti) << QT_ENDL;
404
405 if (_enti<=0)
406 {
407 return;
408 }
409
410 /* TO paint a flag of the Worked entity
411 QString flagSt;
412 flagSt.clear();
413 QString aux;
414 aux = dataProxy->getISOName(_enti);
415 if (aux.length()>1)
416 {
417 flagSt = ":/" + aux + ".png";
418 }
419 else
420 {
421 flagSt.clear();
422 }
423
424 flagSt = ":/flags/" + dataProxy->getISOName(_enti) + ".png";
425 flagIcon->setIcon(QIcon(flagSt));
426 */
427
428 //infoLabel2->setText(world->getEntityName(_enti));
429 continentLabel->setText( world->getContinentShortName(_enti) );
430 prefixLabel->setText( world->getEntityMainPrefix(_enti));
431
432 int i = -1;
433
434 if ((_cq>0) && (_cq<41))
435 {
436 cqzLabel->setText( QString::number(_cq) );
437 }
438 else
439 {
440 i = world->getEntityCqz(_enti);
441 if( i > 0 )
442 {
443 cqzLabel->setText( QString::number(i) );
444 }
445 else
446 {
447 cqzLabel->setText("0");
448 }
449 }
450
451 if (_itu>0)
452 {
453 ituzLabel->setText( QString::number(_itu) );
454 }
455 else
456 {
457 i = world->getEntityItuz(_enti);
458 if ( i > 0 )
459 {
460 ituzLabel->setText( QString::number(i) );
461 }
462 else
463 {
464 ituzLabel->setText("0");
465 }
466 }
467
468 }
469
470
showDistanceAndBearing(const QString & _locLocal,const QString & _locDX)471 void InfoWidget::showDistanceAndBearing(const QString &_locLocal, const QString &_locDX)
472 {// Local / DX
473 //qDebug() << "InfoWidget::showDistanceAndBearing: " << _locLocal << "/" << _locDX << QT_ENDL;
474 QString lloc = _locLocal.toUpper();
475 QString ldx = _locDX.toUpper();
476
477 if ( locator->isValidLocator(lloc) )
478 {
479
480 if ( locator->isValidLocator(ldx) )
481 {
482 dxLocator = ldx;
483
484 int beam = locator->getBeamBetweenLocators(lloc, dxLocator);
485
486
487 gradShortLabel->setText( QString::number(beam) );
488
489 if (beam >= 180)
490 {
491 gradLongLabel->setText( QString::number(beam -180 ) );
492 }
493 else
494 {
495 gradLongLabel->setText( QString::number(beam + 180 ) );
496 }
497
498 distShortLabel->setText( QString::number( locator->getDistanceBetweenLocators(lloc, dxLocator, imperialSystem) ) );
499 distLongLabel->setText( QString::number( 40000 - locator->getDistanceBetweenLocators(lloc, dxLocator, imperialSystem) ) );
500 }
501 else
502 {
503 clearInfoFromLocators();
504 return;
505 }
506 }
507 else
508 {
509 clearInfoFromLocators();
510 return ;
511 }
512 }
513
setLocalLocator(const QString & _loc)514 void InfoWidget::setLocalLocator(const QString &_loc)
515 {
516 if (locator->isValidLocator(_loc))
517 {
518 localLocator = _loc;
519 }
520 }
521
setDXLocator(const QString & _loc)522 void InfoWidget::setDXLocator(const QString &_loc)
523 {
524 if (locator->isValidLocator(_loc))
525 {
526 dxLocator = _loc;
527 }
528 }
529
530