mirror of
https://github.com/ea4k/klog.git
synced 2024-09-21 10:28:06 +00:00
dataproxy and callsign validation fix
This commit is contained in:
parent
ed19610de8
commit
9122aad121
@ -1,6 +1,14 @@
|
||||
TBD - 2.3.1
|
||||
- Bugfix: When no validating callsigns, some ADIF fields were exported even if they were empty.
|
||||
- Bugfix: In some conditions, not identified propagation modes were exported as "NO".
|
||||
- Bugfix: In some conditions, not identified propagation modes were exported as "NO". (Closes #518)
|
||||
- Bugfix: VUCC_GRIDS validation was not properly done.
|
||||
- Bugfix: It was not possible to select the second pair of freqs of a Sat (Closes #483)
|
||||
- Bugfix: Export/Upload lists of QSOs where not properly created due to cal validation issues.
|
||||
TEST: Bugfix: LoTW export was not using the selected grid when exporting (Closes #539)
|
||||
- Improvement: Code improvement in the MainWindowInputQSO class.
|
||||
- UI: Removed the locator, TX Freq and RX freq widgets from the Satellite tab. (Closes #534, 535, #536)
|
||||
TEST: Bug: Export all in macOS opens another "empty" windows while exporting.
|
||||
TEST: Bug: When uploading to LoTW, no calls are shown
|
||||
|
||||
Oct 2022 - 2.3
|
||||
- Improvement: Code optimization (TNX JohnS0819)
|
||||
|
@ -42,6 +42,8 @@ DataProxy_SQLite::DataProxy_SQLite(const QString &_parentFunction, const QString
|
||||
util = new Utilities(Q_FUNC_INFO);
|
||||
util->setVersion(_softVersion);
|
||||
util->setCallValidation(false);
|
||||
util->setLongPrefixes(getLongPrefixes());
|
||||
util->setSpecialCalls(getSpecialCallsigns());
|
||||
qso = new QSO;
|
||||
|
||||
db = new DataBase(Q_FUNC_INFO, _softVersion, util->getKLogDBFile());
|
||||
@ -254,6 +256,11 @@ int DataProxy_SQLite::getModeIdFromSubModeId(const int _sm)
|
||||
return getIdFromModeName(getNameFromSubMode(getSubModeFromId(_sm)));
|
||||
}
|
||||
|
||||
void DataProxy_SQLite::setCallValidation(const bool _v)
|
||||
{
|
||||
util->setCallValidation(_v);
|
||||
}
|
||||
|
||||
bool DataProxy_SQLite::isModeDeprecated (const QString &_sm)
|
||||
{
|
||||
logEvent (Q_FUNC_INFO, "Start", Debug);
|
||||
@ -968,12 +975,12 @@ int DataProxy_SQLite::getLastQSOid()
|
||||
|
||||
QDate DataProxy_SQLite::getFirstQSODateFromCall (const QString &_call)
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getFirstQSODateFromCall: " << _call << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": " << _call;
|
||||
|
||||
QSqlQuery query;
|
||||
QString stringQuery;
|
||||
QDate _date;
|
||||
if (util->isValidCall(_call))
|
||||
if (util->isValidCall(_call, true))
|
||||
{
|
||||
stringQuery = QString("SELECT qso_date from log where station_callsign='%1' ORDER BY qso_date ASC LIMIT 1").arg(_call);
|
||||
}
|
||||
@ -983,6 +990,7 @@ QDate DataProxy_SQLite::getFirstQSODateFromCall (const QString &_call)
|
||||
}
|
||||
|
||||
bool sqlOK = query.exec(stringQuery);
|
||||
qDebug() << Q_FUNC_INFO << ": " << query.lastQuery();
|
||||
|
||||
if (sqlOK)
|
||||
{
|
||||
@ -995,19 +1003,19 @@ QDate DataProxy_SQLite::getFirstQSODateFromCall (const QString &_call)
|
||||
query.finish();
|
||||
if (_date.isValid())
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getFirstQSODateFromCall: END OK" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": END OK" << QT_ENDL;
|
||||
return _date;
|
||||
}
|
||||
else
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getFirstQSODateFromCall: END-1 " << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": END-1 " << QT_ENDL;
|
||||
return QDate();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
query.finish();
|
||||
//qDebug() << "DataProxy_SQLite::getFirstQSODateFromCall: END-2" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": END-2" << QT_ENDL;
|
||||
return QDate();
|
||||
}
|
||||
}
|
||||
@ -1015,18 +1023,18 @@ QDate DataProxy_SQLite::getFirstQSODateFromCall (const QString &_call)
|
||||
{
|
||||
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().nativeErrorCode(), query.lastQuery());
|
||||
query.finish();
|
||||
//qDebug() << "DataProxy_SQLite::getFirstQSODateFromCall: END-3" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": END-3" << QT_ENDL;
|
||||
return QDate();
|
||||
}
|
||||
}
|
||||
|
||||
QDate DataProxy_SQLite::getLastQSODateFromCall (const QString &_call)
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getLastQSODateFromCall: " << _call << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": " << _call;
|
||||
QSqlQuery query;
|
||||
QString stringQuery;
|
||||
QDate _date;
|
||||
if (util->isValidCall(_call))
|
||||
if (util->isValidCall(_call, true))
|
||||
{
|
||||
stringQuery = QString("SELECT qso_date from log where station_callsign='%1' ORDER BY qso_date DESC LIMIT 1").arg(_call);
|
||||
}
|
||||
@ -1048,19 +1056,19 @@ QDate DataProxy_SQLite::getLastQSODateFromCall (const QString &_call)
|
||||
query.finish();
|
||||
if (_date.isValid())
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getLastQSODateFromCall: OK" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": OK" << QT_ENDL;
|
||||
return _date;
|
||||
}
|
||||
else
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getLastQSODateFromCall: END-1" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": END-1" << QT_ENDL;
|
||||
return QDate();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
query.finish();
|
||||
//qDebug() << "DataProxy_SQLite::getLastQSODateFromCall: END-2" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": END-2" << QT_ENDL;
|
||||
return QDate();
|
||||
}
|
||||
}
|
||||
@ -1068,7 +1076,7 @@ QDate DataProxy_SQLite::getLastQSODateFromCall (const QString &_call)
|
||||
{
|
||||
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().nativeErrorCode(), query.lastQuery());
|
||||
query.finish();
|
||||
//qDebug() << "DataProxy_SQLite::getLastQSODateFromCall: END-3" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": END-3" << QT_ENDL;
|
||||
return QDate();
|
||||
}
|
||||
}
|
||||
@ -3517,7 +3525,7 @@ int DataProxy_SQLite::lotwUpdateQSLReception (const QString &_call, const QDateT
|
||||
|
||||
QList<int> DataProxy_SQLite::getQSOsListLoTWToSend(const QString &_stationCallsign, const QString &_myGrid, const QDate &_startDate, const QDate &_endDate, bool _justQueued, int _logN)
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getQSOsListLoTWToSend Call/Start/end: " << _stationCallsign << _startDate.toString("yyyyMMdd") << "/" << _endDate.toString("yyyyMMdd") << QT_ENDL;
|
||||
qDebug() << "DataProxy_SQLite::getQSOsListLoTWToSend Call/Start/end: " << _stationCallsign << _myGrid << _startDate.toString("yyyyMMdd") << "/" << _endDate.toString("yyyyMMdd") << QT_ENDL;
|
||||
|
||||
QList <int> qsoList;
|
||||
qsoList.clear();
|
||||
@ -3528,17 +3536,17 @@ QList<int> DataProxy_SQLite::getQSOsListLoTWToSend(const QString &_stationCallsi
|
||||
QString queryString;
|
||||
|
||||
QString _queryST_string;
|
||||
if (util->isValidCall(_stationCallsign))
|
||||
if (util->isValidCall(_stationCallsign, true))
|
||||
{
|
||||
_queryST_string = QString("station_callsign='%1'").arg(_stationCallsign);
|
||||
}
|
||||
else if (_stationCallsign == "ALL")
|
||||
{
|
||||
_queryST_string = QString("station_callsign!='ALL'");
|
||||
_queryST_string = QString("((station_callsign!='ALL') OR (station_callsign IS NULL) OR (station_callsign=''))");
|
||||
}
|
||||
else
|
||||
{
|
||||
_queryST_string = QString("(station_callsign='' OR station_callsign IS NULL)");
|
||||
_queryST_string = QString("((station_callsign!='ALL') OR (station_callsign IS NULL))");
|
||||
}
|
||||
|
||||
QString _queryGrid_string;
|
||||
@ -3546,9 +3554,9 @@ QList<int> DataProxy_SQLite::getQSOsListLoTWToSend(const QString &_stationCallsi
|
||||
{
|
||||
_queryGrid_string = QString("my_gridsquare='%1'").arg(_myGrid);
|
||||
}
|
||||
else if (_stationCallsign == "ALL")
|
||||
else if (_myGrid == "ALL")
|
||||
{
|
||||
_queryGrid_string = QString("my_gridsquare!='ALL'");
|
||||
_queryGrid_string = QString("(my_gridsquare!='ALL' OR my_gridsquare IS NULL)");
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -3577,7 +3585,7 @@ QList<int> DataProxy_SQLite::getQSOsListLoTWToSend(const QString &_stationCallsi
|
||||
_query_logNumber.clear ();
|
||||
}
|
||||
|
||||
queryString = QString("SELECT id, qso_date FROM log WHERE %1 AND %2 %3 AND %4").arg(_queryST_string).arg(_query_justQueued).arg(_query_logNumber).arg(_queryGrid_string);
|
||||
queryString = QString("SELECT id, qso_date FROM log WHERE %1 AND %2 AND %3 AND %4").arg(_queryST_string).arg(_queryGrid_string).arg(_query_justQueued).arg(_query_logNumber);
|
||||
|
||||
// queryString = QString("SELECT id, qso_date FROM log WHERE ") + _queryST_string + " AND " + _query_justQueued;
|
||||
|
||||
@ -3585,7 +3593,7 @@ QList<int> DataProxy_SQLite::getQSOsListLoTWToSend(const QString &_stationCallsi
|
||||
QSqlQuery query;
|
||||
|
||||
bool sqlOK = query.exec(queryString);
|
||||
//qDebug() << "DataProxy_SQLite::getQSOsListLoTWToSend Query: " << query.lastQuery() ;
|
||||
qDebug() << "DataProxy_SQLite::getQSOsListLoTWToSend Query: " << query.lastQuery() ;
|
||||
|
||||
if (sqlOK)
|
||||
{
|
||||
@ -3620,28 +3628,27 @@ QList<int> DataProxy_SQLite::getQSOsListLoTWToSend(const QString &_stationCallsi
|
||||
|
||||
QStringList DataProxy_SQLite::getGridsToBeSent(const QString &_stationCallsign, const QDate &_startDate, const QDate &_endDate, bool _justModified, int _logN)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - Start";
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
QStringList grids;
|
||||
grids.clear ();
|
||||
|
||||
QDate tmpDate;
|
||||
QString aux = QString();
|
||||
QStringList qs;
|
||||
qs.clear();
|
||||
QString queryString;
|
||||
|
||||
QString _queryST_string;
|
||||
if (util->isValidCall(_stationCallsign))
|
||||
if (util->isValidCall(_stationCallsign, true))
|
||||
{
|
||||
_queryST_string = QString("station_callsign='%1'").arg(_stationCallsign);
|
||||
}
|
||||
else if (_stationCallsign == "ALL")
|
||||
{
|
||||
_queryST_string = QString("station_callsign!='ALL'");
|
||||
_queryST_string = QString("((station_callsign!='ALL') OR (station_callsign IS NULL) OR (station_callsign=''))");
|
||||
}
|
||||
else
|
||||
{
|
||||
_queryST_string = QString("(station_callsign='' OR station_callsign IS NULL)");
|
||||
_queryST_string = QString("((station_callsign='') OR (station_callsign IS NULL))");
|
||||
}
|
||||
|
||||
QString _query_justQueued;
|
||||
@ -3663,12 +3670,12 @@ QStringList DataProxy_SQLite::getGridsToBeSent(const QString &_stationCallsign,
|
||||
{
|
||||
_query_logNumber.clear ();
|
||||
}
|
||||
queryString = QString("SELECT DISTINCT my_gridsquare FROM log WHERE station_callsign = '%1' AND my_gridsquare<>'' AND qso_date>='%2' AND qso_date<='%3' AND %4").arg(_stationCallsign).arg(util->getDateSQLiteStringFromDate(_startDate)).arg(util->getDateSQLiteStringFromDate(_endDate.addDays (1))).arg(_query_justQueued);
|
||||
queryString = QString("SELECT DISTINCT my_gridsquare FROM log WHERE station_callsign = '%1' AND ((my_gridsquare<>'') OR (my_gridsquare IS NOT NULL)) AND qso_date>='%2' AND qso_date<='%3' AND %4").arg(_stationCallsign).arg(util->getDateSQLiteStringFromDate(_startDate)).arg(util->getDateSQLiteStringFromDate(_endDate.addDays (1))).arg(_query_justQueued);
|
||||
|
||||
QSqlQuery query;
|
||||
|
||||
bool sqlOK = query.exec(queryString);
|
||||
//qDebug() << Q_FUNC_INFO << ": " << query.lastQuery ();
|
||||
qDebug() << Q_FUNC_INFO << ": " << query.lastQuery ();
|
||||
|
||||
if (sqlOK)
|
||||
{
|
||||
@ -3676,7 +3683,11 @@ QStringList DataProxy_SQLite::getGridsToBeSent(const QString &_stationCallsign,
|
||||
if (query.isValid())
|
||||
{
|
||||
aux.clear();
|
||||
grids.append ((query.value(0)).toString());
|
||||
aux = (query.value(0)).toString();
|
||||
if (aux.length()>1)
|
||||
{
|
||||
grids.append ((query.value(0)).toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -3685,14 +3696,13 @@ QStringList DataProxy_SQLite::getGridsToBeSent(const QString &_stationCallsign,
|
||||
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().nativeErrorCode(), query.lastQuery());
|
||||
query.finish();
|
||||
grids.sort ();
|
||||
qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return grids;
|
||||
}
|
||||
query.finish();
|
||||
grids.sort();
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
return grids;
|
||||
|
||||
|
||||
//qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
QList<int> DataProxy_SQLite::getQSOsListClubLogToSent(const QString &_stationCallsign, const QDate &_startDate, const QDate &_endDate, bool _justModified, int _logN)
|
||||
@ -3708,13 +3718,13 @@ QList<int> DataProxy_SQLite::getQSOsListClubLogToSent(const QString &_stationCal
|
||||
QString queryString;
|
||||
|
||||
QString _queryST_string;
|
||||
if (util->isValidCall(_stationCallsign))
|
||||
if (util->isValidCall(_stationCallsign, true))
|
||||
{
|
||||
_queryST_string = QString("station_callsign='%1'").arg(_stationCallsign);
|
||||
}
|
||||
else if (_stationCallsign == "ALL")
|
||||
{
|
||||
_queryST_string = QString("station_callsign!='ALL'");
|
||||
_queryST_string = QString("((station_callsign!='ALL') OR (station_callsign IS NULL) OR (station_callsign=''))");
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -3800,17 +3810,17 @@ QList<int> DataProxy_SQLite::getQSOsListEQSLToSent(const QString &_stationCallsi
|
||||
QString queryString;
|
||||
|
||||
QString _queryST_string;
|
||||
if (util->isValidCall(_stationCallsign))
|
||||
if (util->isValidCall(_stationCallsign, true))
|
||||
{
|
||||
_queryST_string = QString("station_callsign='%1'").arg(_stationCallsign);
|
||||
}
|
||||
else if (_stationCallsign == "ALL")
|
||||
{
|
||||
_queryST_string = QString("station_callsign!='ALL'");
|
||||
_queryST_string = QString("((station_callsign!='ALL') OR (station_callsign IS NULL) OR (station_callsign=''))");
|
||||
}
|
||||
else
|
||||
{
|
||||
_queryST_string = QString("(station_callsign OR station_callsign IS NULL)");
|
||||
_queryST_string = QString("(station_callsign='' OR station_callsign IS NULL)");
|
||||
}
|
||||
|
||||
QString _query_justModified;
|
||||
@ -3837,7 +3847,7 @@ QList<int> DataProxy_SQLite::getQSOsListEQSLToSent(const QString &_stationCallsi
|
||||
queryString = QString("SELECT id, qso_date FROM log WHERE %1 AND %2 '%3'").arg(_queryST_string).arg(_query_justQueued).arg(_query_logNumber);
|
||||
|
||||
*/
|
||||
queryString = QString("SELECT id, qso_date FROM log WHERE ") + _queryST_string + " AND " + _query_justModified;
|
||||
queryString = QString("SELECT id, qso_date FROM log WHERE ") + _queryST_string + _query_justModified;
|
||||
|
||||
|
||||
QSqlQuery query;
|
||||
@ -3889,13 +3899,13 @@ QList<int> DataProxy_SQLite::getQSOsListQRZCOMToSent(const QString &_stationCall
|
||||
QString queryString;
|
||||
|
||||
QString _queryST_string;
|
||||
if (util->isValidCall(_stationCallsign))
|
||||
if (util->isValidCall(_stationCallsign, true))
|
||||
{
|
||||
_queryST_string = QString("station_callsign='%1'").arg(_stationCallsign);
|
||||
}
|
||||
else if (_stationCallsign == "ALL")
|
||||
{
|
||||
_queryST_string = QString("station_callsign!='ALL'");
|
||||
_queryST_string = QString("((station_callsign!='ALL') OR (station_callsign IS NULL) OR (station_callsign=''))");
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -3966,9 +3976,10 @@ QList<int> DataProxy_SQLite::getQSOsListQRZCOMToSent(const QString &_stationCall
|
||||
}
|
||||
|
||||
|
||||
QList<int> DataProxy_SQLite::getQSOsListToBeExported(const QString &_stationCallsign, const QDate &_startDate, const QDate &_endDate)
|
||||
QList<int> DataProxy_SQLite::getQSOsListToBeExported(const QString &_stationCallsign, const QString &_grid, const QDate &_startDate, const QDate &_endDate)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << ": Call/Start/end: " << _stationCallsign << _startDate.toString("yyyyMMdd") << "/" << _endDate.toString("yyyyMMdd") << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << QString("Call: %1, Grid: %2, StartDate: %3, EndDate: %4").arg(_stationCallsign).arg(_grid).arg(_startDate.toString("yyyyMMdd")).arg(_endDate.toString("yyyyMMdd"));
|
||||
|
||||
QList <int> qsoList;
|
||||
qsoList.clear();
|
||||
QDate tmpDate;
|
||||
@ -3978,18 +3989,37 @@ QList<int> DataProxy_SQLite::getQSOsListToBeExported(const QString &_stationCall
|
||||
QString queryString;
|
||||
|
||||
QString _queryST_string;
|
||||
if (util->isValidCall(_stationCallsign))
|
||||
if (util->isValidCall(_stationCallsign, true))
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << ": Valid call";
|
||||
_queryST_string = QString("station_callsign='%1'").arg(_stationCallsign);
|
||||
}
|
||||
else if (_stationCallsign == "ALL")
|
||||
{
|
||||
_queryST_string = QString("station_callsign!='ALL'");
|
||||
qDebug() << Q_FUNC_INFO << ": ALL";
|
||||
_queryST_string = QString("((station_callsign!='ALL') OR (station_callsign IS NULL) OR (station_callsign=''))");
|
||||
}
|
||||
else
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << ": Non valid nor ALL";
|
||||
_queryST_string = QString("(station_callsign='' OR station_callsign IS NULL)");
|
||||
}
|
||||
|
||||
QString _queryGrid_String;
|
||||
if (util->isValidGrid (_grid))
|
||||
{
|
||||
_queryGrid_String = QString("AND my_gridsquare='%1'").arg(_grid);
|
||||
}
|
||||
else if (_grid == "ALL")
|
||||
{
|
||||
_queryGrid_String = QString();
|
||||
//_queryGrid_String = QString("((my_gridsquare!='ALL') OR (my_gridsquare IS NULL))");
|
||||
}
|
||||
else
|
||||
{
|
||||
_queryGrid_String = QString("AND (my_gridsquare='' OR my_gridsquare IS NULL)");
|
||||
}
|
||||
|
||||
/* Modify accordingly to add log number support
|
||||
QString _query_logNumber;
|
||||
if (doesThisLogExist (_logN))
|
||||
@ -4004,12 +4034,12 @@ QList<int> DataProxy_SQLite::getQSOsListToBeExported(const QString &_stationCall
|
||||
|
||||
*/
|
||||
|
||||
queryString = QString("SELECT id, qso_date FROM log WHERE ") + _queryST_string ;
|
||||
queryString = QString("SELECT id, qso_date FROM log WHERE ") + _queryST_string + _queryGrid_String;
|
||||
|
||||
QSqlQuery query;
|
||||
|
||||
bool sqlOK = query.exec(queryString);
|
||||
//qDebug() << Q_FUNC_INFO << ": Query: " << query.lastQuery() << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << ": Query: " << query.lastQuery() << QT_ENDL;
|
||||
|
||||
if (sqlOK)
|
||||
{
|
||||
@ -4055,17 +4085,18 @@ QList<int> DataProxy_SQLite::getQSOsListeQSLNotSent(const QString &_stationCalls
|
||||
QString queryString;
|
||||
|
||||
QString _queryST_string;
|
||||
if (util->isValidCall(_stationCallsign))
|
||||
if (util->isValidCall(_stationCallsign, true))
|
||||
{
|
||||
_queryST_string = QString("station_callsign='%1'").arg(_stationCallsign);
|
||||
}
|
||||
else if (_stationCallsign == "ALL")
|
||||
{
|
||||
_queryST_string = QString("station_callsign!='ALL'");
|
||||
|
||||
_queryST_string = QString("((station_callsign!='ALL') OR (station_callsign IS NULL) OR (station_callsign=''))");
|
||||
}
|
||||
else
|
||||
{
|
||||
_queryST_string = QString("(station_callsign='' OR station_callsign IS NULL)");
|
||||
_queryST_string = QString("((station_callsign='') OR (station_callsign IS NULL))");
|
||||
}
|
||||
|
||||
QString _query_justQueued;
|
||||
@ -4987,12 +5018,12 @@ int DataProxy_SQLite::getDBSatId(const QString &_arrlId)
|
||||
}
|
||||
else
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getSatelliteUplink: query failed: " << query.lastQuery() << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << ": query failed: " << query.lastQuery() << QT_ENDL;
|
||||
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().nativeErrorCode(), query.lastQuery());
|
||||
query.finish();
|
||||
}
|
||||
|
||||
//qDebug() << "DataProxy_SQLite::getSatelliteUplink: final: " << aux ;
|
||||
//qDebug() << ":: final: " << aux ;
|
||||
query.finish();
|
||||
return aux;
|
||||
}
|
||||
@ -5032,9 +5063,9 @@ QStringList DataProxy_SQLite::getSatellitesList()
|
||||
}
|
||||
|
||||
|
||||
QString DataProxy_SQLite::getSatelliteUplink(const QString &_sat)
|
||||
QString DataProxy_SQLite::getSatelliteUplink(const QString &_sat, int _pair)
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getSatelliteUplink: " << _sat << QT_ENDL;
|
||||
//qDebug() << "DataProxy_SQLite::getSatelliteUplink: " << _sat << QT_ENDL;
|
||||
QString aux = QString();
|
||||
//QString aux2 = QString();
|
||||
//double fr1, fr2, fr;
|
||||
@ -5049,7 +5080,7 @@ QString DataProxy_SQLite::getSatelliteUplink(const QString &_sat)
|
||||
if (query.isValid())
|
||||
{
|
||||
aux = query.value(0).toString();
|
||||
aux = QString::number(getFreqFromRange(aux));
|
||||
aux = QString::number(getFreqFromRange(aux, _pair));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -5072,7 +5103,7 @@ QString DataProxy_SQLite::getSatelliteUplink(const QString &_sat)
|
||||
}
|
||||
|
||||
|
||||
QString DataProxy_SQLite::getSatelliteDownlink(const QString &_sat)
|
||||
QString DataProxy_SQLite::getSatelliteDownlink(const QString &_sat, int _pair)
|
||||
{
|
||||
//qDebug() << "DataProxy_SQLite::getSatelliteDownlink: " << _sat << QT_ENDL;
|
||||
QString aux = QString();
|
||||
@ -5090,7 +5121,7 @@ QString DataProxy_SQLite::getSatelliteDownlink(const QString &_sat)
|
||||
if (query.isValid())
|
||||
{
|
||||
aux = query.value(0).toString();
|
||||
aux = QString::number(getFreqFromRange(aux));
|
||||
aux = QString::number(getFreqFromRange(aux,_pair));
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -5331,7 +5362,7 @@ QString DataProxy_SQLite::getSateliteArrlIdFromId(const int _id)
|
||||
return aux;
|
||||
}
|
||||
|
||||
double DataProxy_SQLite::getFreqFromRange(QString _fr)
|
||||
double DataProxy_SQLite::getFreqFromRange(QString _fr, int _pair)
|
||||
{ //May even receive: 145.900-146.00 and should return the mid in the range (145.950)
|
||||
//qDebug() << "DataProxy_SQLite::getFreqFromRange: " << _fr << QT_ENDL;
|
||||
QString fr1, fr2, aux;
|
||||
@ -5345,11 +5376,13 @@ double DataProxy_SQLite::getFreqFromRange(QString _fr)
|
||||
aux = _fr;
|
||||
|
||||
if (aux.contains(','))
|
||||
{ // Potentially somethink like: 435.030-435.456,146.180
|
||||
// We select the first range
|
||||
|
||||
{ // Potentially somethink like: 435.030-435.456,146.180
|
||||
if((_pair<0) || (_pair>1))
|
||||
{
|
||||
_pair = 0;
|
||||
}
|
||||
//qDebug() << "DataProxy_SQLite::getFreqFromRange: has several freqs: " << aux << QT_ENDL;
|
||||
aux = aux.section(',', 0, 0); // We select the first package
|
||||
aux = aux.section(',', _pair, _pair); // We select the selected package
|
||||
}
|
||||
if (aux.contains('-')) // Potentially somethink like: 435.030-435.456
|
||||
{
|
||||
|
@ -67,7 +67,7 @@ public:
|
||||
int getIdFromBandName(const QString& _bandName);
|
||||
int getSubModeIdFromSubMode(const QString &_subModeName);
|
||||
int getModeIdFromSubModeId(const int _sm);
|
||||
|
||||
void setCallValidation(const bool _v);
|
||||
QStringList getFields();
|
||||
QStringList getBands();
|
||||
QStringList getModes();
|
||||
@ -188,7 +188,7 @@ public:
|
||||
QList<int> getQSOsListClubLogToSent(const QString &_stationCallsign, const QDate &_startDate, const QDate &_endDate, bool _justModified=true, int _logN = -1);
|
||||
QList<int> getQSOsListEQSLToSent(const QString &_stationCallsign, const QDate &_startDate, const QDate &_endDate, bool _justModified=true);
|
||||
QList<int> getQSOsListQRZCOMToSent(const QString &_stationCallsign, const QDate &_startDate, const QDate &_endDate, bool _justModified=true);
|
||||
QList<int> getQSOsListToBeExported(const QString &_stationCallsign, const QDate &_startDate, const QDate &_endDate);
|
||||
QList<int> getQSOsListToBeExported(const QString &_stationCallsign, const QString &_grid, const QDate &_startDate, const QDate &_endDate);
|
||||
QStringList getGridsToBeSent(const QString &_stationCallsign, const QDate &_startDate, const QDate &_endDate, bool _justModified=true, int _logN = -1);
|
||||
|
||||
|
||||
@ -273,8 +273,8 @@ public:
|
||||
bool addSatellite(const QString &_arrlId, const QString &_name, const QString &_downLink, const QString &_upLink, const QString &_mode, int id = -1);
|
||||
int getDBSatId(const QString &_arrlId);
|
||||
QStringList getSatellitesList();
|
||||
QString getSatelliteUplink(const QString &_sat);
|
||||
QString getSatelliteDownlink(const QString &_sat);
|
||||
QString getSatelliteUplink(const QString &_sat, int _pair=0);
|
||||
QString getSatelliteDownlink(const QString &_sat, int _pair=0);
|
||||
QString getSatelliteMode(const QString &_sat);
|
||||
QString getSatelliteFullUplink(const QString &_sat);
|
||||
QString getSatelliteFullDownlink(const QString &_sat);
|
||||
@ -330,7 +330,7 @@ private:
|
||||
bool dbCreated;
|
||||
DataBase *db;
|
||||
QStringList sortBandIdBottonUp(const QStringList _qs);
|
||||
double getFreqFromRange(QString _fr); //May even receive: 145.900-146.00 and should return the mid in the range (145.950)
|
||||
double getFreqFromRange(QString _fr, int _pair = 0); //May even receive: 145.900-146.00 and should return the mid in the range (145.950)
|
||||
QStringList getColumnNamesFromTable(const QString &_tableName);
|
||||
|
||||
int getPrefixId(const QString &_qrz);
|
||||
|
@ -34,6 +34,8 @@ FileManager::FileManager(DataProxy_SQLite *dp)
|
||||
//qDebug() << "FileManager::FileManager()-3: Dir(2)" << _klogDir << QT_ENDL;
|
||||
dataProxy = dp;
|
||||
util = new Utilities(Q_FUNC_INFO);
|
||||
util->setLongPrefixes(dataProxy->getLongPrefixes());
|
||||
util->setSpecialCalls(dataProxy->getSpecialCallsigns());
|
||||
util->setCallValidation(false);
|
||||
db = new DataBase(Q_FUNC_INFO, klogVersion, util->getKLogDBFile());
|
||||
world = new World(dataProxy, Q_FUNC_INFO);
|
||||
@ -163,7 +165,7 @@ void FileManager::setSendQSLByDefault (const bool _send)
|
||||
sendEQSLByDefault = _send;
|
||||
}
|
||||
|
||||
QList<int> FileManager::adifLogExportReturnList(const QString& _fileName, const QString &_callsign, const QDate &_startDate, const QDate &_endDate, const int _logN, const ExportMode _em)
|
||||
QList<int> FileManager::adifLogExportReturnList(const QString& _fileName, const QString &_callsign, const QString &_grid, const QDate &_startDate, const QDate &_endDate, const int _logN, const ExportMode _em)
|
||||
//QList<int> FileManager::adifLogExportReturnList(const QString& _fileName, const QString &_callsign, const QDate &_startDate, const QDate &_endDate, const int _logN, const bool LoTWOnly)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << ": Start)" << _fileName << "/" << _callsign << QT_ENDL;
|
||||
@ -188,6 +190,7 @@ QList<int> FileManager::adifLogExportReturnList(const QString& _fileName, const
|
||||
QString queryStringCount;
|
||||
QString queryString;
|
||||
QString _queryStation;
|
||||
QString _queryGrid;
|
||||
|
||||
if (util->isValidCall(_callsign))
|
||||
{
|
||||
@ -202,6 +205,15 @@ QList<int> FileManager::adifLogExportReturnList(const QString& _fileName, const
|
||||
_queryStation = QString(" station_callsign =''");
|
||||
}
|
||||
|
||||
if (util->isValidGrid(_grid))
|
||||
{
|
||||
_queryGrid = QString(" AND my_gridsquare = '%1'").arg(_grid);
|
||||
}
|
||||
else
|
||||
{
|
||||
_queryGrid = QString();
|
||||
}
|
||||
|
||||
QString _queryDateFrom;
|
||||
|
||||
if (_startDate.isValid())
|
||||
@ -248,7 +260,7 @@ QList<int> FileManager::adifLogExportReturnList(const QString& _fileName, const
|
||||
// LoTW Required fields: call sign, UTC Date, UTC time, Mode, Band
|
||||
// LoTW Optional fields: RX band, Frecuency TX, frecuency RX, Propagation mode, Satellite
|
||||
|
||||
queryStringCount = QString("SELECT COUNT (id) FROM log WHERE") + _queryStation + QString(" AND lotw_qsl_sent='Q'") + _queryDateFrom + _queryDateTo;
|
||||
queryStringCount = QString("SELECT COUNT (id) FROM log WHERE") + _queryStation + _queryGrid + QString(" AND lotw_qsl_sent='Q'") + _queryDateFrom + _queryDateTo;
|
||||
queryString = QString("SELECT id, call, freq, bandid, band_rx, freq_rx, modeid, gridsquare, my_gridsquare, qso_date, prop_mode, sat_name, station_callsign FROM log WHERE") + _queryStation + QString(" AND lotw_qsl_sent='Q'") + _queryDateFrom + _queryDateTo;
|
||||
}
|
||||
else if (_em == ModeClubLog)
|
||||
@ -502,7 +514,8 @@ bool FileManager::adifQSOsExport(const QString& _fileName, QList<int> _qsos)
|
||||
void FileManager::setCallValidation (const bool _b)
|
||||
{
|
||||
//util->setCallValidation(_b);
|
||||
util->setCallValidation(false);
|
||||
util->setCallValidation(_b);
|
||||
dataProxy->setCallValidation(_b);
|
||||
}
|
||||
|
||||
|
||||
|
@ -76,7 +76,7 @@ public:
|
||||
//QList<int> (const QString& _fileName, const QString &_callsign, const QDate &_startDate, const QDate &_endDate, const int _logN, const bool LoTWOnly);
|
||||
|
||||
bool adifQSOsExport(const QString& _fileName, QList<int> _qsos);
|
||||
QList<int> adifLogExportReturnList(const QString& _fileName, const QString &_callsign, const QDate &_startDate, const QDate &_endDate, const int _logN, const ExportMode _em);
|
||||
QList<int> adifLogExportReturnList(const QString& _fileName, const QString &_callsign, const QString &_grid, const QDate &_startDate, const QDate &_endDate, const int _logN, const ExportMode _em);
|
||||
bool adifLogExport(const QString& _fileName, const int _logN);
|
||||
bool adifLogExportMarked(const QString& _fileName);
|
||||
bool adifReqQSLExport(const QString& _fileName);
|
||||
|
@ -703,6 +703,7 @@ bool MainWindowInputQSO::eventFilter (QObject *object, QEvent *event)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << ": " << QString::number(event->type ());
|
||||
}
|
||||
//qDebug() << Q_FUNC_INFO << ": " << object->objectName();
|
||||
|
||||
if ((event->type() == QEvent::KeyPress) || (event->type() == QEvent::ShortcutOverride)) {
|
||||
//qDebug() << Q_FUNC_INFO << "KEY PRESSED";
|
||||
@ -714,12 +715,9 @@ bool MainWindowInputQSO::eventFilter (QObject *object, QEvent *event)
|
||||
//qDebug() << Q_FUNC_INFO << "emitting to hand over to mainQSO Input";
|
||||
emit handOverFocusSignal();
|
||||
}
|
||||
|
||||
|
||||
// special tab handling here
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return QWidget::event(event);
|
||||
}
|
||||
|
@ -35,17 +35,16 @@ MainWindowSatTab::MainWindowSatTab(DataProxy_SQLite *dp, QWidget *parent) :
|
||||
satNameComboBox = new QComboBox;
|
||||
satNameLineEdit = new QLineEdit;
|
||||
satModeLineEdit = new QLineEdit;
|
||||
satDXLocatorLineEdit = new QLineEdit;
|
||||
|
||||
satOtherLabel = new QLabel;
|
||||
satBandTXComboBox = new QComboBox;
|
||||
satBandRXComboBox = new QComboBox;
|
||||
txFreqSpinBox = new QDoubleSpinBox;
|
||||
rxFreqSpinBox = new QDoubleSpinBox;
|
||||
//txFreqSpinBox = new QDoubleSpinBox;
|
||||
//rxFreqSpinBox = new QDoubleSpinBox;
|
||||
|
||||
keepThisDataForNextQSOQcheckbox = new QCheckBox;
|
||||
|
||||
dataProxy = dp;
|
||||
locator = new Locator;
|
||||
util = new Utilities(Q_FUNC_INFO);
|
||||
|
||||
createUI();
|
||||
@ -67,7 +66,6 @@ MainWindowSatTab::MainWindowSatTab(DataProxy_SQLite *dp, QWidget *parent) :
|
||||
}
|
||||
|
||||
MainWindowSatTab::~MainWindowSatTab(){
|
||||
delete(locator);
|
||||
delete(util);
|
||||
delete(dataProxy);
|
||||
}
|
||||
@ -76,18 +74,16 @@ void MainWindowSatTab::createUI()
|
||||
{
|
||||
connect(satNameLineEdit, SIGNAL(textChanged(QString)), this, SLOT(slotSatNameTextChanged() ) );
|
||||
connect(satModeLineEdit, SIGNAL(textChanged(QString)), this, SLOT(slotSatModeTextChanged() ) );
|
||||
connect(satDXLocatorLineEdit, SIGNAL(textChanged(QString)), this, SLOT(slotSatDXLocTextChanged() ) );
|
||||
//connect(satDXLocatorLineEdit, SIGNAL(textChanged(QString)), this, SLOT(slotSatDXLocTextChanged() ) );
|
||||
connect(satNameLineEdit, SIGNAL(returnPressed()), this, SLOT(slotReturnPressed()) );
|
||||
connect(satModeLineEdit, SIGNAL(returnPressed()), this, SLOT(slotReturnPressed()) );
|
||||
connect(satDXLocatorLineEdit, SIGNAL(returnPressed()), this, SLOT(slotReturnPressed()) );
|
||||
//connect(satDXLocatorLineEdit, SIGNAL(returnPressed()), this, SLOT(slotReturnPressed()) );
|
||||
|
||||
connect(satNameComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(slotSatNameComboBoxChanged() ) ) ;
|
||||
|
||||
connect(satBandRXComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(slotSatBandRXComboBoxChanged()) ) ;
|
||||
connect(satBandTXComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(slotSatBandTXComboBoxChanged()) ) ;
|
||||
|
||||
connect(txFreqSpinBox, SIGNAL(valueChanged(double)), this, SLOT(slotSatFreqTXChanged(double)) ) ;
|
||||
connect(rxFreqSpinBox, SIGNAL(valueChanged(double)), this, SLOT(slotSatFreqRXChanged(double)) ) ;
|
||||
connect (keepThisDataForNextQSOQcheckbox, SIGNAL(clicked()), this, SLOT(slotSatKeepThisDataClicked()) );
|
||||
|
||||
QLabel *keepLabel = new QLabel();
|
||||
@ -106,7 +102,6 @@ void MainWindowSatTab::createUI()
|
||||
satNameComboBox->setToolTip(tr("Select the satellite you are using."));
|
||||
satBandTXComboBox->setToolTip(tr("UpLink band."));
|
||||
satBandRXComboBox->setToolTip(tr("DownLink band."));
|
||||
satDXLocatorLineEdit->setToolTip(tr("Locator of the DX station. This box is synchronized with the Locator box in the QSO tab."));
|
||||
|
||||
QLabel *upLinkLabel = new QLabel();
|
||||
upLinkLabel->setText(tr("UpLink"));
|
||||
@ -124,21 +119,17 @@ void MainWindowSatTab::createUI()
|
||||
satModeLabel->setText(tr("Mode"));
|
||||
satModeLabel->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
|
||||
|
||||
QLabel *satDXLocLabel = new QLabel();
|
||||
satDXLocLabel->setText(tr("DX Locator"));
|
||||
satDXLocLabel->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
|
||||
|
||||
//QLabel *satOtherLabel = new QLabel();
|
||||
satOtherLabel->setText(tr("Other"));
|
||||
satOtherLabel->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
|
||||
|
||||
txFreqSpinBox->setDecimals(3);
|
||||
txFreqSpinBox->setMaximum(99999);
|
||||
txFreqSpinBox->setSuffix(" " + tr("MHz"));
|
||||
//txFreqSpinBox->setDecimals(3);
|
||||
//txFreqSpinBox->setMaximum(99999);
|
||||
//txFreqSpinBox->setSuffix(" " + tr("MHz"));
|
||||
|
||||
rxFreqSpinBox->setDecimals(3);
|
||||
rxFreqSpinBox->setMaximum(99999);
|
||||
rxFreqSpinBox->setSuffix(" " + tr("MHz"));
|
||||
//rxFreqSpinBox->setDecimals(3);
|
||||
//rxFreqSpinBox->setMaximum(99999);
|
||||
//rxFreqSpinBox->setSuffix(" " + tr("MHz"));
|
||||
|
||||
QHBoxLayout *keepLayout = new QHBoxLayout;
|
||||
keepLayout->addWidget(keepLabel);
|
||||
@ -147,8 +138,6 @@ void MainWindowSatTab::createUI()
|
||||
QHBoxLayout *lastlineLayout = new QHBoxLayout;
|
||||
//lastlineLayout->addWidget(satModeLabel);
|
||||
lastlineLayout->addWidget(satModeLineEdit);
|
||||
lastlineLayout->addWidget(satDXLocLabel);
|
||||
lastlineLayout->addWidget(satDXLocatorLineEdit);
|
||||
|
||||
QGridLayout *tabLayout = new QGridLayout;
|
||||
|
||||
@ -165,8 +154,8 @@ void MainWindowSatTab::createUI()
|
||||
//tabLayout->addWidget(satModeLineEdit,3,1,1,-1);
|
||||
|
||||
tabLayout->addWidget(satNameLineEdit,0,2);
|
||||
tabLayout->addWidget(txFreqSpinBox,1,2);
|
||||
tabLayout->addWidget(rxFreqSpinBox,2,2);
|
||||
//tabLayout->addWidget(txFreqSpinBox,1,2);
|
||||
//tabLayout->addWidget(rxFreqSpinBox,2,2);
|
||||
|
||||
tabLayout->addLayout(keepLayout,3,2);
|
||||
tabLayout->setSizeConstraint(QLayout::SetFixedSize);
|
||||
@ -175,7 +164,7 @@ void MainWindowSatTab::createUI()
|
||||
|
||||
void MainWindowSatTab::slotSatNameComboBoxChanged()
|
||||
{
|
||||
//qDebug() << "MainWindowSatTab::slotSatNameComboBoxChanged: " << satNameComboBox->currentText() << QT_ENDL;
|
||||
//qDebug() << "MainWindowSatTab::slotSatNameComboBoxChanged: " << satNameComboBox->currentText() << QT_ENDL;
|
||||
if (modifying || (satNameComboBox->currentText().length()<4))
|
||||
{
|
||||
return;
|
||||
@ -252,49 +241,6 @@ void MainWindowSatTab::slotSatModeTextChanged()
|
||||
*/
|
||||
}
|
||||
|
||||
void MainWindowSatTab::setLocator(const QString &_t)
|
||||
{
|
||||
//qDebug() << "MainWindowSatTab::setLocator: " << _t << QT_ENDL;
|
||||
satDXLocatorLineEdit->setText(_t.toUpper());
|
||||
//qDebug() << "MainWindowSatTab::setLocator - END: " << QT_ENDL;
|
||||
}
|
||||
|
||||
void MainWindowSatTab::slotSatDXLocTextChanged()
|
||||
{
|
||||
//qDebug() << "MainWindowSatTab::slotSatDXLocTextChanged: " << satDXLocatorLineEdit->text() << QT_ENDL;
|
||||
int cursorP = satDXLocatorLineEdit->cursorPosition();
|
||||
|
||||
satDXLocatorLineEdit->setText((util->getClearSQLi(satDXLocatorLineEdit->text())).toUpper());
|
||||
|
||||
if ( locator->isValidLocator(satDXLocatorLineEdit->text()) )
|
||||
{
|
||||
if (getDarkMode())
|
||||
{
|
||||
satDXLocatorLineEdit->setPalette(palWhite);
|
||||
}
|
||||
else
|
||||
{
|
||||
satDXLocatorLineEdit->setPalette(palBlack);
|
||||
}
|
||||
|
||||
satDXLocatorLineEdit->setToolTip(tr("Locator of the DX station. This box is synchronized with the Locator box in the QSO tab."));
|
||||
|
||||
//if (!modifying)
|
||||
//{
|
||||
// emit dxLocatorChanged((satDXLocatorLineEdit->text()).toUpper());
|
||||
//}
|
||||
}
|
||||
else
|
||||
{
|
||||
satDXLocatorLineEdit->setPalette(palRed);
|
||||
satDXLocatorLineEdit->setToolTip(tr("Locator of the DX station. Format should be Maidenhead like IN70AA up to 10 characters."));
|
||||
}
|
||||
satDXLocatorLineEdit->setCursorPosition(cursorP);
|
||||
emit dxLocatorChanged(satDXLocatorLineEdit->text());
|
||||
|
||||
//qDebug() << "MainWindowSatTab::slotSatDXLocTextChanged - END" << QT_ENDL;
|
||||
}
|
||||
|
||||
QString MainWindowSatTab::getSatName()
|
||||
{
|
||||
// Sat name must follow the format CC-NN to make it compatible with LOTW
|
||||
@ -398,14 +344,12 @@ void MainWindowSatTab::clear(bool _full)
|
||||
modifying = false;
|
||||
if ((keepThisDataForNextQSOQcheckbox->isChecked()) || (!_full))
|
||||
{
|
||||
satDXLocatorLineEdit->clear();
|
||||
}
|
||||
else
|
||||
{
|
||||
satModeLineEdit->clear();
|
||||
satNameComboBox->setCurrentIndex(0);
|
||||
satNameLineEdit->clear();
|
||||
satDXLocatorLineEdit->clear();
|
||||
}
|
||||
if (_full)
|
||||
{
|
||||
@ -532,137 +476,64 @@ void MainWindowSatTab::slotSatBandRXComboBoxChanged()
|
||||
{
|
||||
return;
|
||||
}
|
||||
bool freqInBand = dataProxy->isThisFreqInBand(satBandRXComboBox->currentText(), QString::number(rxFreqSpinBox->value()));
|
||||
if(!freqInBand)
|
||||
{ // If the freq does not belong to the current band, we need to update the band
|
||||
rxFreqSpinBox->setValue(dataProxy->getLowLimitBandFromBandName(satBandRXComboBox->currentText()));
|
||||
}
|
||||
//qDebug() << "MainWindowsatTab::slotSatBandRXComboBoxChanged-END" << QT_ENDL;
|
||||
autofillSatMode();
|
||||
}
|
||||
|
||||
void MainWindowSatTab::slotSatFreqRXChanged(const double _f)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << ": spingBox: " << QString::number(rxFreqSpinBox->value()) << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << ": f: " << QString::number(_f) << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << ": freqRx:" << QString::number(freqRX) << QT_ENDL;
|
||||
if (util->isSameFreq (freqRX, _f))
|
||||
{
|
||||
return;
|
||||
}
|
||||
freqRX = _f;
|
||||
|
||||
if (getDarkMode())
|
||||
{
|
||||
rxFreqSpinBox->setPalette(palWhite);
|
||||
}
|
||||
else
|
||||
{
|
||||
rxFreqSpinBox->setPalette(palBlack);
|
||||
}
|
||||
|
||||
if (modifying)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
int bandId = dataProxy->getBandIdFromFreq(rxFreqSpinBox->value());
|
||||
if (bandId<1)
|
||||
{ //This prevent that a non-hamradio frequency is used on TX
|
||||
//qDebug() << Q_FUNC_INFO << ": Not in band, exiting... " << QT_ENDL;
|
||||
rxFreqSpinBox->setToolTip(tr("RX Frequency in MHz.\nFrequency is not in a hamradio band!"));
|
||||
rxFreqSpinBox->setPalette(palRed);
|
||||
}
|
||||
else
|
||||
{
|
||||
rxFreqSpinBox->setToolTip(tr("RX Frequency in MHz."));
|
||||
bool freqInBand = dataProxy->isThisFreqInBand(satBandRXComboBox->currentText(), QString::number(rxFreqSpinBox->value()));
|
||||
if(!freqInBand)
|
||||
{ // If the freq does not belong to the current band, we need to update the band
|
||||
satBandRXComboBox->setCurrentIndex(satBandRXComboBox->findText(dataProxy->getBandNameFromFreq(rxFreqSpinBox->value()), Qt::MatchCaseSensitive));
|
||||
}
|
||||
}
|
||||
emit satRxFreqChanged(rxFreqSpinBox->value());
|
||||
//qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void MainWindowSatTab::slotSatBandTXComboBoxChanged()
|
||||
{
|
||||
//qDebug() << "MainWindowsatTab::slotSatBandTXComboBoxChanged: -" << satBandTXComboBox->currentText() << QT_ENDL;
|
||||
if (updatingBands || modifying || (satBandTXComboBox->currentText().length()<2))
|
||||
{
|
||||
return;
|
||||
}
|
||||
bool freqInBand = dataProxy->isThisFreqInBand(satBandTXComboBox->currentText(), QString::number(txFreqSpinBox->value()));
|
||||
bool freqInBand = dataProxy->isThisFreqInBand(satBandRXComboBox->currentText(), QString::number(freqRX));
|
||||
if(!freqInBand)
|
||||
{ // If the freq does not belong to the current band, we need to update the band
|
||||
//qDebug() << "MainWindowsatTab::slotSatBandTXComboBoxChanged changing to: Band: " << satBandTXComboBox->currentText() << QT_ENDL;
|
||||
//qDebug() << "MainWindowsatTab::slotSatBandTXComboBoxChanged changing to: " << QString::number(dataProxy->getLowLimitBandFromBandName(satBandTXComboBox->currentText())) << QT_ENDL;
|
||||
txFreqSpinBox->setValue(dataProxy->getLowLimitBandFromBandName(satBandTXComboBox->currentText()));
|
||||
//setUpLinkFreq(dataProxy->getLowLimitBandFromBandName(satBandTXComboBox->currentText()));
|
||||
|
||||
updateRXFreq(dataProxy->getLowLimitBandFromBandName(satBandRXComboBox->currentText()));
|
||||
}
|
||||
|
||||
//qDebug() << "MainWindowsatTab::slotSatBandRXComboBoxChanged-END" << QT_ENDL;
|
||||
autofillSatMode();
|
||||
}
|
||||
|
||||
void MainWindowSatTab::slotSatBandTXComboBoxChanged()
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - " << satBandTXComboBox->currentText();
|
||||
if (updatingBands || modifying || (satBandTXComboBox->currentText().length()<2))
|
||||
{
|
||||
return;
|
||||
}
|
||||
//qDebug() << Q_FUNC_INFO << " - Freq: " << QString::number(freqTX);
|
||||
QString tmpBand = satBandTXComboBox->currentText();
|
||||
bool freqInBand = dataProxy->isThisFreqInBand(tmpBand, QString::number(freqTX));
|
||||
if(!freqInBand)
|
||||
{ // If the freq does not belong to the current band, we need to update the band
|
||||
//qDebug() << "MainWindowsatTab::slotSatBandTXComboBoxChanged changing to: Band: " << satBandTXComboBox->currentText() << QT_ENDL;
|
||||
//qDebug() << "MainWindowsatTab::slotSatBandTXComboBoxChanged changing to: " << QString::number(dataProxy->getLowLimitBandFromBandName(satBandTXComboBox->currentText())) << QT_ENDL;
|
||||
QString tmpFreq = dataProxy->getFreqFromBandId(dataProxy->getIdFromBandName(satBandTXComboBox->currentText()));
|
||||
//qDebug() << ": Normal" << dataProxy->getSatelliteUplink(getSatName());
|
||||
//qDebug() << ": Normal1" << dataProxy->getSatelliteUplink(getSatName(), 1);
|
||||
//qDebug() << ": Normal2" << dataProxy->getSatelliteUplink(getSatName(), 2);
|
||||
//qDebug() << ": Full" << dataProxy->getSatelliteFullUplink(getSatName());
|
||||
|
||||
double upLink = tmpFreq.toDouble();
|
||||
double downLink = 0.0;
|
||||
if (dataProxy->isThisFreqInBand(tmpBand,dataProxy->getSatelliteUplink(getSatName(),1)) )
|
||||
{
|
||||
upLink = (dataProxy->getSatelliteUplink(getSatName(),1)).toDouble();
|
||||
downLink = (dataProxy->getSatelliteDownlink(getSatName(),1)).toDouble();
|
||||
updateRXFreq(downLink);
|
||||
}
|
||||
else if (dataProxy->isThisFreqInBand(tmpBand,dataProxy->getSatelliteUplink(getSatName(),0)) )
|
||||
{
|
||||
upLink = (dataProxy->getSatelliteUplink(getSatName(),0)).toDouble();
|
||||
downLink = (dataProxy->getSatelliteDownlink(getSatName(),1)).toDouble();
|
||||
updateRXFreq(downLink);
|
||||
}
|
||||
|
||||
updateTXFreq(upLink);
|
||||
}
|
||||
//qDebug() << "MainWindowsatTab::slotSatBandTXComboBoxChanged-END" << QT_ENDL;
|
||||
autofillSatMode();
|
||||
}
|
||||
|
||||
void MainWindowSatTab::slotSatFreqTXChanged(const double _f)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << QString::number(txFreqSpinBox->value());
|
||||
// user changes TX Freq
|
||||
// If band is real and band is configured, bandcombo is selected
|
||||
// If band is real and not configured, we launch the band config and select the band.
|
||||
// if band is real emit the band
|
||||
if (util->isSameFreq (freqTX, _f))
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return;
|
||||
}
|
||||
freqTX = _f;
|
||||
|
||||
if (getDarkMode())
|
||||
{
|
||||
txFreqSpinBox->setPalette(palWhite);
|
||||
}
|
||||
else
|
||||
{
|
||||
txFreqSpinBox->setPalette(palBlack);
|
||||
}
|
||||
|
||||
if (modifying)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - END-2";
|
||||
return;
|
||||
}
|
||||
|
||||
int bandId = dataProxy->getBandIdFromFreq(txFreqSpinBox->value());
|
||||
if (bandId<1)
|
||||
{ //This prevent that a non-hamradio frequency is used on TX
|
||||
//qDebug() << "MainWindowsatTab::slotSatFreqTXChanged: Not in band, exiting... " << QT_ENDL;
|
||||
txFreqSpinBox->setToolTip(tr("TX Frequency in MHz.\nFrequency is not in a hamradio band!"));
|
||||
txFreqSpinBox->setPalette(palRed);
|
||||
}
|
||||
else
|
||||
{
|
||||
txFreqSpinBox->setToolTip(tr("TX Frequency in MHz."));
|
||||
bool freqInBand = dataProxy->isThisFreqInBand(satBandTXComboBox->currentText(), QString::number(txFreqSpinBox->value()));
|
||||
if(!freqInBand)
|
||||
{ // If the freq does not belong to the current band, we need to update the band
|
||||
//qDebug() << "MainWindowsatTab::slotSatFreqTXChanged: If the freq does not belong to the current band, we need to update the band" << QT_ENDL;
|
||||
//qDebug() << "MainWindowsatTab::slotSatFreqTXChanged: We define UoLink to: " << dataProxy->getBandNameFromFreq(txFreqSpinBox->value()) << QT_ENDL;
|
||||
satBandTXComboBox->setCurrentIndex(satBandTXComboBox->findText(dataProxy->getBandNameFromFreq(txFreqSpinBox->value()), Qt::MatchCaseSensitive));
|
||||
//setUpLinkFreq(dataProxy->getLowLimitBandFromBandName(satBandTXComboBox->currentText()));
|
||||
}
|
||||
//autofillSatMode();
|
||||
}
|
||||
|
||||
//qDebug() << "MainWindowsatTab::slotSatFreqTXChanged: Emitting: " << QString::number(txFreqSpinBox->value()) << QT_ENDL;
|
||||
emit satTxFreqChanged(txFreqSpinBox->value());
|
||||
//qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void MainWindowSatTab::setUpLink(const QString &_t)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << "Start: " << _t ;
|
||||
//qDebug() << Q_FUNC_INFO << "Start: " << _t ;
|
||||
if (satBandTXComboBox->currentText () == _t)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << "END-1";
|
||||
@ -671,12 +542,17 @@ void MainWindowSatTab::setUpLink(const QString &_t)
|
||||
int index = satBandTXComboBox->findText(_t, Qt::MatchCaseSensitive);
|
||||
//qDebug() << "MainWindowsatTab::setUpLink: new index: " << QString::number(index) << QT_ENDL;
|
||||
//qDebug() << "MainWindowsatTab::setUpLink: current index: " << QString::number(satBandTXComboBox->currentIndex()) << QT_ENDL;
|
||||
int indexRX;
|
||||
//int indexRX;
|
||||
if (index>=0)
|
||||
{
|
||||
satBandTXComboBox->setCurrentIndex(index);
|
||||
if ( dataProxy->getIdFromBandName("2M") == dataProxy->getIdFromBandName(_t) )
|
||||
{
|
||||
}
|
||||
/*
|
||||
if (index>=0)
|
||||
{
|
||||
satBandTXComboBox->setCurrentIndex(index);
|
||||
if ( dataProxy->getIdFromBandName("2M") == dataProxy->getIdFromBandName(_t) )
|
||||
{
|
||||
//qDebug() << satNameComboBox->currentText() ;
|
||||
if (satNameComboBox->findText("AO-7 - AMSAT-OSCAT 7", Qt::MatchCaseSensitive))
|
||||
{
|
||||
@ -686,7 +562,6 @@ void MainWindowSatTab::setUpLink(const QString &_t)
|
||||
{
|
||||
indexRX = satBandRXComboBox->findText("70CM", Qt::MatchCaseSensitive);
|
||||
}
|
||||
|
||||
satBandRXComboBox->setCurrentIndex(indexRX);
|
||||
}
|
||||
else if ( dataProxy->getIdFromBandName("70CM") == dataProxy->getIdFromBandName(_t) )
|
||||
@ -695,49 +570,133 @@ void MainWindowSatTab::setUpLink(const QString &_t)
|
||||
satBandRXComboBox->setCurrentIndex(indexRX);
|
||||
}
|
||||
}
|
||||
*/
|
||||
//qDebug() << Q_FUNC_INFO << "END";
|
||||
}
|
||||
|
||||
void MainWindowSatTab::setUpLinkFreq(const double _t)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << ": " << QString::number(_t);
|
||||
if (util->isSameFreq (freqTX, _t))
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << "END-1";
|
||||
return;
|
||||
}
|
||||
|
||||
txFreqSpinBox->setValue(_t);
|
||||
updateTXFreq(_t);
|
||||
setUpLink(dataProxy->getBandNameFromFreq(_t));
|
||||
|
||||
//qDebug() << Q_FUNC_INFO << "END";
|
||||
}
|
||||
|
||||
double MainWindowSatTab::getRXFreq()
|
||||
{
|
||||
//qDebug() << "MainWindowsatTab::getRXFreq " << QT_ENDL;
|
||||
return rxFreqSpinBox->value();
|
||||
return freqRX;
|
||||
}
|
||||
|
||||
//double MainWindowSatTab::getTXFreq()
|
||||
//{
|
||||
// return freqTX;
|
||||
//}
|
||||
|
||||
void MainWindowSatTab::setDownLinkFreq(const double _t)
|
||||
{
|
||||
//qDebug() << "MainWindowsatTab::setDownLinkFreq: " << QString::number(_t) << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << ": " << QString::number(_t);
|
||||
if (util->isSameFreq (freqRX, _t))
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - I same freq";
|
||||
//qDebug() << Q_FUNC_INFO << " - Is same freq";
|
||||
return;
|
||||
}
|
||||
|
||||
rxFreqSpinBox->setValue(_t);
|
||||
QString downLinkBand = dataProxy->getBandNameFromFreq(_t);
|
||||
updateRXFreq(_t);
|
||||
QString downLinkBand = dataProxy->getBandNameFromFreq(freqRX);
|
||||
|
||||
int index = satBandRXComboBox->findText(downLinkBand, Qt::MatchCaseSensitive);
|
||||
//qDebug() << Q_FUNC_INFO << ": " << downLinkBand;
|
||||
if (index>=0)
|
||||
{
|
||||
satBandRXComboBox->setCurrentIndex(index);
|
||||
}
|
||||
//qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
//qDebug() << "MainWindowsatTab::setDownLinkFreq END" << QT_ENDL;
|
||||
void MainWindowSatTab::updateRXFreq(const double _f)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << QString::number(_f);
|
||||
|
||||
if (util->isSameFreq (freqRX, _f))
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return;
|
||||
}
|
||||
freqRX = _f;
|
||||
|
||||
if (modifying)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - END-2";
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
int bandId = dataProxy->getBandIdFromFreq(freqRX);
|
||||
if (bandId>=1)
|
||||
{ //This prevent that a non-hamradio frequency is used on TX
|
||||
//qDebug() << Q_FUNC_INFO << " - Freq not in ham band";
|
||||
bool freqInBand = dataProxy->isThisFreqInBand(satBandRXComboBox->currentText(), QString::number(freqRX));
|
||||
if(!freqInBand)
|
||||
{ // If the freq does not belong to the current band, we need to update the band
|
||||
//qDebug() << Q_FUNC_INFO << " - Freq in current band";
|
||||
QString aux;
|
||||
aux = dataProxy->getBandNameFromFreq(freqRX);
|
||||
if (satBandRXComboBox->findText(aux, Qt::MatchCaseSensitive)<0)
|
||||
{
|
||||
addNewBand(aux);
|
||||
}
|
||||
//addNewBand(const QString &_p)
|
||||
satBandRXComboBox->setCurrentIndex(satBandRXComboBox->findText(aux, Qt::MatchCaseSensitive));
|
||||
}
|
||||
}
|
||||
emit satRxFreqChanged(freqRX);
|
||||
//qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void MainWindowSatTab::updateTXFreq(const double _f)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << QString::number(txFreqSpinBox->value());
|
||||
// user changes TX Freq
|
||||
// If band is real and band is configured, bandcombo is selected
|
||||
// If band is real and not configured, we launch the band config and select the band.
|
||||
// if band is real emit the band
|
||||
if (util->isSameFreq (freqTX, _f))
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return;
|
||||
}
|
||||
freqTX = _f;
|
||||
|
||||
if (modifying)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - END-2";
|
||||
return;
|
||||
}
|
||||
|
||||
int bandId = dataProxy->getBandIdFromFreq(freqTX);
|
||||
if (bandId>=1)
|
||||
{ //This prevent that a non-hamradio frequency is used on TX
|
||||
bool freqInBand = dataProxy->isThisFreqInBand(satBandTXComboBox->currentText(), QString::number(freqTX));
|
||||
if(!freqInBand)
|
||||
{ // If the freq does not belong to the current band, we need to update the band
|
||||
//qDebug() << "MainWindowsatTab::slotSatFreqTXChanged: If the freq does not belong to the current band, we need to update the band" << QT_ENDL;
|
||||
//qDebug() << "MainWindowsatTab::slotSatFreqTXChanged: We define UpLink to: " << dataProxy->getBandNameFromFreq(txFreqSpinBox->value()) << QT_ENDL;
|
||||
QString aux = dataProxy->getBandNameFromFreq(freqTX);
|
||||
//qDebug() << Q_FUNC_INFO << QString("FreqTx = %1 / Band = %2").arg(freqTX).arg(aux);
|
||||
if (satBandTXComboBox->findText(aux, Qt::MatchCaseSensitive)<0)
|
||||
{
|
||||
addNewBand(aux);
|
||||
}
|
||||
satBandTXComboBox->setCurrentIndex(satBandTXComboBox->findText(aux, Qt::MatchCaseSensitive));
|
||||
//setUpLinkFreq(dataProxy->getLowLimitBandFromBandName(satBandTXComboBox->currentText()));
|
||||
}
|
||||
//autofillSatMode();
|
||||
}
|
||||
|
||||
//qDebug() << "MainWindowsatTab::slotSatFreqTXChanged: Emitting: " << QString::number(txFreqSpinBox->value()) << QT_ENDL;
|
||||
emit satTxFreqChanged(freqTX);
|
||||
//qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void MainWindowSatTab::setBandsOfSat(const QString &_p)
|
||||
@ -768,8 +727,7 @@ void MainWindowSatTab::setBandsOfSat(const QString &_p)
|
||||
else
|
||||
{
|
||||
//qDebug() << "MainWindowSatTab::setBandsOfSat upLink: setting to ZERO (should be = RX) " << QT_ENDL;
|
||||
txFreqSpinBox->setValue(0);
|
||||
//satBandTXComboBox->setCurrentIndex(0);
|
||||
updateTXFreq(0.0);
|
||||
}
|
||||
|
||||
if (downLink>0)
|
||||
@ -781,7 +739,7 @@ void MainWindowSatTab::setBandsOfSat(const QString &_p)
|
||||
else
|
||||
{
|
||||
//qDebug() << "MainWindowSatTab::setBandsOfSat downLink: setting to ZERO" << QT_ENDL;
|
||||
rxFreqSpinBox->setValue(0);
|
||||
updateRXFreq(0.0);
|
||||
//satBandRXComboBox->setCurrentIndex(0);
|
||||
}
|
||||
//qDebug() << "MainWindowSatTab::setBandsOfSat downLink: emiting: " << QString::number(downLink)<< QT_ENDL;
|
||||
@ -799,6 +757,8 @@ void MainWindowSatTab::addNewBand(const QString &_p)
|
||||
}
|
||||
QStringList bands;
|
||||
bands.clear();
|
||||
int indexRX = satBandRXComboBox->currentIndex();
|
||||
int indexTX = satBandTXComboBox->currentIndex();
|
||||
|
||||
//qDebug() << "MainWindowSatTab::addNewBand: RX Id: " << QString::number(satBandRXComboBox->count()) << QT_ENDL;
|
||||
//qDebug() << "MainWindowSatTab::addNewBand: TX Id: " << QString::number(satBandTXComboBox->count()) << QT_ENDL;
|
||||
@ -817,6 +777,8 @@ void MainWindowSatTab::addNewBand(const QString &_p)
|
||||
//bands.removeDuplicates();
|
||||
|
||||
emit newBandsToBeAdded(bands);
|
||||
satBandRXComboBox->setCurrentIndex(indexRX);
|
||||
satBandTXComboBox->setCurrentIndex(indexTX);
|
||||
//addBands(bands);
|
||||
//qDebug() << "MainWindowSatTab::addNewBand: 2 RX Id: " << QString::number(satBandRXComboBox->count()) << QT_ENDL;
|
||||
//qDebug() << "MainWindowSatTab::addNewBand: 2 TX Id: " << QString::number(satBandTXComboBox->count()) << QT_ENDL;
|
||||
@ -851,8 +813,8 @@ void MainWindowSatTab::slotSatKeepThisDataClicked()
|
||||
void MainWindowSatTab::autofillSatMode()
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO ;
|
||||
QString downLinkBand = bandToLetter(dataProxy->getBandNameFromFreq(rxFreqSpinBox->value()));
|
||||
QString upLinkBand = bandToLetter(dataProxy->getBandNameFromFreq(txFreqSpinBox->value()));
|
||||
QString downLinkBand = bandToLetter(dataProxy->getBandNameFromFreq(freqRX));
|
||||
QString upLinkBand = bandToLetter(dataProxy->getBandNameFromFreq(freqTX));
|
||||
satModeLineEdit->setText(upLinkBand + "/" + downLinkBand);
|
||||
}
|
||||
|
||||
@ -926,3 +888,4 @@ bool MainWindowSatTab::getDarkMode()
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -60,8 +60,10 @@ public:
|
||||
|
||||
void setUpLinkFreq(const double _t);
|
||||
void setDownLinkFreq(const double _t);
|
||||
void updateTXFreq(const double _f);
|
||||
void updateRXFreq(const double _f);
|
||||
|
||||
void setLocator(const QString &_t);
|
||||
//void setLocator(const QString &_t);
|
||||
void refreshData();
|
||||
void setModifying (const bool _m);
|
||||
void setKeep(const bool _b);
|
||||
@ -85,12 +87,12 @@ signals:
|
||||
private slots:
|
||||
void slotSatNameTextChanged();
|
||||
void slotSatModeTextChanged();
|
||||
void slotSatDXLocTextChanged();
|
||||
//void slotSatDXLocTextChanged();
|
||||
void slotSatNameComboBoxChanged();
|
||||
void slotSatBandRXComboBoxChanged();
|
||||
void slotSatBandTXComboBoxChanged();
|
||||
void slotSatFreqRXChanged(const double _f);
|
||||
void slotSatFreqTXChanged(const double _f);
|
||||
//void slotSatFreqRXChanged(const double _f);
|
||||
//void slotSatFreqTXChanged(const double _f);
|
||||
void slotReturnPressed();
|
||||
void slotSatKeepThisDataClicked();
|
||||
|
||||
|
@ -179,6 +179,7 @@ void MainQSOEntryWidget::setLogLevel (const DebugLogLevel _b)
|
||||
void MainQSOEntryWidget::setCallValidation (const bool _b)
|
||||
{
|
||||
util->setCallValidation(_b);
|
||||
dataProxy->setCallValidation(_b);
|
||||
}
|
||||
|
||||
void MainQSOEntryWidget::slotCheckBoxClicked()
|
||||
|
@ -700,7 +700,7 @@ void MainWindow::createActionsCommon(){
|
||||
connect(hamlib, SIGNAL(freqChanged(double)), this, SLOT(slotHamlibTXFreqChanged(double)) );
|
||||
connect(hamlib, SIGNAL(modeChanged(QString)), this, SLOT(slotHamlibModeChanged(QString)) );
|
||||
connect(lotwUtilities, SIGNAL(actionProcessLoTWDownloadedFile(QString)), this, SLOT(slotLoTWDownloadedFileProcess(QString)) );
|
||||
connect(adifLoTWExportWidget, SIGNAL(selection(QString, QDate, QDate, ExportMode)), this, SLOT(slotADIFExportSelection(QString, QDate, QDate, ExportMode)) );
|
||||
connect(adifLoTWExportWidget, SIGNAL(selection(QString, QString, QDate, QDate, ExportMode)), this, SLOT(slotADIFExportSelection(QString, QString, QDate, QDate, ExportMode)) );
|
||||
connect(dataProxy, SIGNAL(queryError(QString, QString, QString, QString)), this, SLOT(slotQueryErrorManagement(QString, QString, QString, QString)) );
|
||||
connect(dataProxy, SIGNAL(debugLog(QString, QString, DebugLogLevel)), this, SLOT(slotCaptureDebugLogs(QString, QString, DebugLogLevel)) );
|
||||
|
||||
@ -5277,6 +5277,7 @@ bool MainWindow::processConfigLine(const QString &_line){
|
||||
{
|
||||
//myLocator = ;
|
||||
myDataTabWidget->setMyLocator(value.toUpper());
|
||||
adifLoTWExportWidget->setDefaultMyGrid(value.toUpper());
|
||||
}
|
||||
}
|
||||
else if(field=="NEWONECOLOR")
|
||||
@ -5591,6 +5592,7 @@ bool MainWindow::processConfigLine(const QString &_line){
|
||||
util->setCallValidation(util->trueOrFalse (value));
|
||||
mainQSOEntryWidget->setCallValidation(util->trueOrFalse (value));
|
||||
filemanager->setCallValidation(util->trueOrFalse (value));
|
||||
adifLoTWExportWidget->setCallValidation(util->trueOrFalse (value));
|
||||
}
|
||||
//else if(field=="LATESTBACKUP")
|
||||
//{
|
||||
@ -5600,7 +5602,7 @@ bool MainWindow::processConfigLine(const QString &_line){
|
||||
//qDebug() << "MainWindow::processConfigLine: NONE: " << QT_ENDL;
|
||||
//}
|
||||
|
||||
// Lines are: Option = value;
|
||||
// Format of lines is: Option = value;
|
||||
//qDebug() << Q_FUNC_INFO << "(" << field << "/" << value << ")" << " - END";
|
||||
logEvent(Q_FUNC_INFO, "END", Debug);
|
||||
return true;
|
||||
@ -5973,11 +5975,11 @@ void MainWindow::showNumberOfSavedQSO(const QString &_fn, const int _n)
|
||||
//qDebug() << "MainWindow::showNumberOfSavedQSO - END" << QT_ENDL;
|
||||
}
|
||||
|
||||
void MainWindow::fileExportADIF(const QString &_st, const QDate &_startDate, const QDate &_endDate)
|
||||
void MainWindow::fileExportADIF(const QString &_st, const QString &_grid, const QDate &_startDate, const QDate &_endDate)
|
||||
{
|
||||
//qDebug() << "MainWindow::fileExportADIF " << _st << QT_ENDL;
|
||||
QString fileName = QFileDialog::getSaveFileName(this, tr("Save ADIF File"), util->getHomeDir(), "ADIF (*.adi *.adif)");
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _st, _startDate, _endDate, currentLog, ModeADIF);
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _st, _grid, _startDate, _endDate, currentLog, ModeADIF);
|
||||
|
||||
showNumberOfSavedQSO(fileName, qsos.count());
|
||||
|
||||
@ -6003,7 +6005,7 @@ void MainWindow::slotADIFExportAll()
|
||||
fileName = fileName + ".adi";
|
||||
}
|
||||
//qDebug() << "MainWindow::slotADIFExportAll-1: " << fileName << QT_ENDL;
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _callToUse, dataProxy->getFirstQSODateFromCall(_callToUse), dataProxy->getLastQSODateFromCall(_callToUse), -1, ModeADIF);
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _callToUse, QString(), dataProxy->getFirstQSODateFromCall(_callToUse), dataProxy->getLastQSODateFromCall(_callToUse), -1, ModeADIF);
|
||||
//qDebug() << "MainWindow::slotADIFExportAll-3" << QT_ENDL;
|
||||
showNumberOfSavedQSO(fileName, qsos.count());
|
||||
|
||||
@ -6011,9 +6013,9 @@ void MainWindow::slotADIFExportAll()
|
||||
logEvent(Q_FUNC_INFO, "END", Debug);
|
||||
}
|
||||
|
||||
void MainWindow::fileExportLoTW(const QString &_st, const QDate &_startDate, const QDate &_endDate)
|
||||
void MainWindow::fileExportLoTW(const QString &_st, const QString &_grid, const QDate &_startDate, const QDate &_endDate)
|
||||
{
|
||||
//qDebug() << "MainWindow::fileExportLoTW - Start: " << _st << "/" <<_startDate.toString("yyyyMMdd") <<"/" << _endDate.toString("yyyyMMdd") << QT_ENDL;
|
||||
qDebug() << "MainWindow::fileExportLoTW - Start: " << _st << "/" << _grid <<_startDate.toString("yyyyMMdd") <<"/" << _endDate.toString("yyyyMMdd") << QT_ENDL;
|
||||
|
||||
QMessageBox msgBox;
|
||||
|
||||
@ -6041,7 +6043,7 @@ void MainWindow::fileExportLoTW(const QString &_st, const QDate &_startDate, con
|
||||
QString fileName = util->getLoTWAdifFile();
|
||||
|
||||
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _st, _startDate, _endDate, currentLog, ModeLotW);
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _st, _grid, _startDate, _endDate, currentLog, ModeLotW);
|
||||
|
||||
if (qsos.count() <= 0)
|
||||
{ // TODO: Check if errors should be managed.
|
||||
@ -6131,7 +6133,7 @@ void MainWindow::fileExportClubLog(const QString &_st, const QDate &_startDate,
|
||||
//QString fileName = "klog-clublog-upload.adi";
|
||||
QString fileName = util->getClubLogFile();
|
||||
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _st, _startDate, _endDate, currentLog, ModeClubLog);
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _st, QString(), _startDate, _endDate, currentLog, ModeClubLog);
|
||||
|
||||
if (qsos.count() <= 0)
|
||||
{ // TODO: Check if errors should be managed.
|
||||
@ -6193,7 +6195,7 @@ void MainWindow::fileExportEQSL(const QString &_st, const QDate &_startDate, con
|
||||
//QString fileName = "klog-eqsl-upload.adi";
|
||||
QString fileName = util->getEQSLFile();
|
||||
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _st, _startDate, _endDate, currentLog, ModeEQSL);
|
||||
QList<int> qsos = filemanager->adifLogExportReturnList(fileName, _st, QString(), _startDate, _endDate, currentLog, ModeEQSL);
|
||||
|
||||
if (qsos.count() <= 0)
|
||||
{ // TODO: Check if errors should be managed.
|
||||
@ -6206,7 +6208,7 @@ void MainWindow::fileExportEQSL(const QString &_st, const QDate &_startDate, con
|
||||
//qDebug() << "MainWindow::fileExportEQSL -END " << QT_ENDL;
|
||||
}
|
||||
|
||||
void MainWindow::slotADIFExportSelection(const QString &_st, const QDate &_startDate, const QDate &_endDate, const ExportMode _eM)
|
||||
void MainWindow::slotADIFExportSelection(const QString &_st, const QString &_grid, const QDate &_startDate, const QDate &_endDate, const ExportMode _eM)
|
||||
{
|
||||
//qDebug() << "MainWindow::slotADIFExportSelection - Start: " << _st << "/" <<_startDate.toString("yyyyMMdd") <<"/" << _endDate.toString("yyyyMMdd") << QT_ENDL;
|
||||
|
||||
@ -6214,11 +6216,11 @@ void MainWindow::slotADIFExportSelection(const QString &_st, const QDate &_start
|
||||
{
|
||||
case ModeADIF: // General ADIF
|
||||
//qDebug() << "MainWindow::slotADIFExportSelection - ADIF" << QT_ENDL;
|
||||
fileExportADIF(_st, _startDate, _endDate);
|
||||
fileExportADIF(_st, _grid, _startDate, _endDate);
|
||||
break;
|
||||
case ModeLotW: // LoTW
|
||||
//qDebug() << "MainWindow::slotADIFExportSelection - LoTW" << QT_ENDL;
|
||||
fileExportLoTW(_st, _startDate, _endDate);
|
||||
fileExportLoTW(_st, _grid, _startDate, _endDate);
|
||||
break;
|
||||
case ModeClubLog: // General ADIF
|
||||
//qDebug() << "MainWindow::slotADIFExportSelection - ClubLog" << QT_ENDL;
|
||||
@ -6758,7 +6760,7 @@ void MainWindow::qsoToEdit (const int _qso)
|
||||
aux1 = (query.value(nameCol)).toString();
|
||||
//qDebug() << "MainWindow::qsoToEdit: - GRIDSQUARE: " << aux1 << QT_ENDL;
|
||||
QSOTabWidget->setDXLocator(aux1);
|
||||
satTabWidget->setLocator(aux1);
|
||||
//satTabWidget->setLocator(aux1);
|
||||
|
||||
nameCol = rec.indexOf("operator");
|
||||
aux1 = (query.value(nameCol)).toString();
|
||||
@ -7099,7 +7101,7 @@ void MainWindow::slotLocatorTextChanged(const QString &_loc)
|
||||
if ( locator->isValidLocator(_loc) )
|
||||
{
|
||||
infoWidget->showDistanceAndBearing(myDataTabWidget->getMyLocator(), _loc);
|
||||
satTabWidget->setLocator(_loc);
|
||||
//satTabWidget->setLocator(_loc);
|
||||
}
|
||||
logEvent(Q_FUNC_INFO, "END", Debug);
|
||||
}
|
||||
@ -7107,7 +7109,7 @@ void MainWindow::slotLocatorTextChanged(const QString &_loc)
|
||||
|
||||
void MainWindow::slotMyLocatorTextChanged(const QString &_loc)
|
||||
{
|
||||
//qDebug() << "MainWindowMy::slotMyLocatorTextChanged: " <<_loc << QT_ENDL;
|
||||
//qDebug() << "MainWindowMy::slotMyLocatorTextChanged: " <<_loc << QT_ENDL;
|
||||
logEvent(Q_FUNC_INFO, "Start", Debug);
|
||||
if ( locator->isValidLocator(_loc))
|
||||
{
|
||||
@ -8644,7 +8646,7 @@ void MainWindow::backupCurrentQSO()
|
||||
logEvent(Q_FUNC_INFO, "- 061", Devel);
|
||||
qso->setOperatorCallsign (myDataTabWidget->getOperator ());
|
||||
logEvent(Q_FUNC_INFO, "- 062", Devel);
|
||||
bool ok = qso->setStationCallsign (myDataTabWidget->getStationCallsign ());
|
||||
qso->setStationCallsign (myDataTabWidget->getStationCallsign ());
|
||||
//qDebug() << Q_FUNC_INFO << ": Previous went: " << util->boolToQString(ok);
|
||||
logEvent(Q_FUNC_INFO, "- 063", Devel);
|
||||
qso->setMySOTA_REF (myDataTabWidget->getMySOTA ());
|
||||
|
@ -204,7 +204,7 @@ private slots:
|
||||
void slotLoTWExport();
|
||||
void slotLoTWDownload();
|
||||
void slotLoTWFullDownload();
|
||||
void slotADIFExportSelection(const QString &_st, const QDate &_startDate, const QDate &_endDate, const ExportMode _eM);
|
||||
void slotADIFExportSelection(const QString &_st, const QString &_grid, const QDate &_startDate, const QDate &_endDate, const ExportMode _eM);
|
||||
|
||||
void slotADIFExportAll();
|
||||
void slotADIFImport();
|
||||
@ -336,10 +336,10 @@ private:
|
||||
bool setUDPServer(const bool _b);
|
||||
void logEvent(const QString &_func, const QString &_msg, DebugLogLevel _level);
|
||||
void setLogLevel(const DebugLogLevel _sev);
|
||||
void fileExportLoTW(const QString &_st, const QDate &_startDate, const QDate &_endDate);
|
||||
void fileExportLoTW(const QString &_st, const QString &_grid, const QDate &_startDate, const QDate &_endDate);
|
||||
void fileExportClubLog(const QString &_st, const QDate &_startDate, const QDate &_endDate);
|
||||
void fileExportEQSL(const QString &_st, const QDate &_startDate, const QDate &_endDate);
|
||||
void fileExportADIF(const QString &_st, const QDate &_startDate, const QDate &_endDate);
|
||||
void fileExportADIF(const QString &_st, const QString &_grid, const QDate &_startDate, const QDate &_endDate);
|
||||
bool callTQSL(const QString &_filename, const QString &_call);
|
||||
void showNumberOfSavedQSO(const QString &_fn, const int _n);
|
||||
//QString getCallToUseForLoTWExportUpload();
|
||||
|
@ -30,7 +30,7 @@
|
||||
Utilities::Utilities(const QString &_parentName)
|
||||
{
|
||||
parentName = _parentName;
|
||||
//qDebug() << "Utilities::Utilities" ;
|
||||
qDebug() << Q_FUNC_INFO << " (" << _parentName << ")";
|
||||
init();
|
||||
}
|
||||
|
||||
@ -40,6 +40,7 @@ Utilities::~Utilities()
|
||||
|
||||
void Utilities::init()
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
validateCalls = false;
|
||||
softwareVersion = "0.0";
|
||||
longPrefixes.clear();
|
||||
@ -53,7 +54,7 @@ void Utilities::init()
|
||||
logLevels << "None" << "Info" << "Debug" << "Devel";
|
||||
setLogColumnNames();
|
||||
|
||||
//callValidation = true;
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void Utilities::setLogLevel(DebugLogLevel _l)
|
||||
@ -728,11 +729,10 @@ bool Utilities::isAPrefix (const QString &_c)
|
||||
|
||||
void Utilities::setLongPrefixes (const QStringList &_p)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << ": Start count: " << QString::number(_p.count());
|
||||
qDebug() << Q_FUNC_INFO << ": Start count: " << QString::number(_p.count());
|
||||
longPrefixes.clear();
|
||||
//longPrefixes = _p;
|
||||
longPrefixes.append(_p);
|
||||
//qDebug() << Q_FUNC_INFO << ": count: " << QString::number(longPrefixes.count());
|
||||
qDebug() << Q_FUNC_INFO << ": count: " << QString::number(longPrefixes.count());
|
||||
}
|
||||
|
||||
void Utilities::setSpecialCalls (const QStringList &_p)
|
||||
@ -914,24 +914,28 @@ QString Utilities::getMainCallFromComplexCall(const QString &_complexCall)
|
||||
return call;
|
||||
}
|
||||
|
||||
bool Utilities::isValidCall(const QString &_c)
|
||||
bool Utilities::isValidCall(const QString &_c, bool _force)
|
||||
{// https://life.itu.int/radioclub/rr/art19.pdf
|
||||
//logEvent (QString("%1-%2").arg(Q_FUNC_INFO).arg(parentName), QString("Start = %1").arg(_c), Debug);
|
||||
//qDebug() << QString("%1-%2").arg(Q_FUNC_INFO).arg(parentName) << "Start: " << _c;
|
||||
//qDebug() << Q_FUNC_INFO << ": " << _c;
|
||||
qDebug() << Q_FUNC_INFO << ": " << _c;
|
||||
// Prefixes are at least 2 chars
|
||||
if (!validateCalls)
|
||||
|
||||
if ((!validateCalls) && (!_force))
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << "001 - Not validating calls: " << _c;
|
||||
qDebug() << Q_FUNC_INFO << "001 - Not validating calls: " << _c;
|
||||
//logEvent (QString("%1-%2").arg(Q_FUNC_INFO).arg(parentName), QString("END - 001 - true"), Debug);
|
||||
return true;
|
||||
}
|
||||
|
||||
qDebug() << Q_FUNC_INFO << " - Long prefixes: " << QString::number(longPrefixes.count());
|
||||
if (longPrefixes.count()<100)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << "Long prefixes < 100 " << _c;
|
||||
return false;
|
||||
}
|
||||
QString call = _c;
|
||||
//qDebug() << Q_FUNC_INFO << "000 " << _c;
|
||||
qDebug() << Q_FUNC_INFO << "000 " << _c;
|
||||
if (isAKnownCall(call))
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << "001 - Known call: " << _c;
|
||||
|
@ -98,7 +98,7 @@ public:
|
||||
// Validations
|
||||
bool isValidDate(const QDate _d);
|
||||
bool isValidDateTime(const QString &_d);
|
||||
bool isValidCall(const QString &_c);
|
||||
bool isValidCall(const QString &_c, bool _force=false);
|
||||
|
||||
bool isSameFreq(const double fr1, const double fr2);
|
||||
bool isValidBandId(const int _b);
|
||||
|
@ -32,9 +32,12 @@ AdifLoTWExportWidget::AdifLoTWExportWidget(DataProxy_SQLite *dp, const QString &
|
||||
//qDebug() << ": " << _parentFunction;
|
||||
#else
|
||||
#endif
|
||||
|
||||
qDebug() << Q_FUNC_INFO << " - Start: " + _parentFunction;
|
||||
dataProxy = dp;
|
||||
starting = true;
|
||||
util = new Utilities(Q_FUNC_INFO);
|
||||
util->setLongPrefixes(dataProxy->getLongPrefixes());
|
||||
util->setSpecialCalls(dataProxy->getSpecialCallsigns());
|
||||
stationCallsignComboBox = new QComboBox;
|
||||
myGridSquareComboBox = new QComboBox;
|
||||
startDate = new QDateEdit;
|
||||
@ -46,9 +49,12 @@ AdifLoTWExportWidget::AdifLoTWExportWidget(DataProxy_SQLite *dp, const QString &
|
||||
numberLabel = new QLabel;
|
||||
selectedEMode = ModeLotW; //By default this widget will be used for LoTW Export.
|
||||
defaultStationCallsign = QString();
|
||||
defaultMyGrid = QString();
|
||||
util->setLongPrefixes(dataProxy->getLongPrefixes());
|
||||
util->setSpecialCalls(dataProxy->getSpecialCallsigns());
|
||||
createUI();
|
||||
starting = false;
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
AdifLoTWExportWidget::~AdifLoTWExportWidget()
|
||||
{
|
||||
@ -57,14 +63,27 @@ AdifLoTWExportWidget::~AdifLoTWExportWidget()
|
||||
|
||||
void AdifLoTWExportWidget::setDefaultStationCallsign(const QString &_st)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
if (util->isValidCall(_st))
|
||||
{
|
||||
defaultStationCallsign = _st;
|
||||
}
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::setDefaultMyGrid(const QString &_st)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
if (util->isValidGrid(_st))
|
||||
{
|
||||
defaultMyGrid = _st;
|
||||
}
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::createUI()
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
//fillStationCallsignComboBox();
|
||||
tableWidget->setSortingEnabled (true);
|
||||
stationCallsignComboBox->setToolTip(tr("Select the Station Callsign that you want to use to upload the log."));
|
||||
@ -77,7 +96,6 @@ void AdifLoTWExportWidget::createUI()
|
||||
//endDate->setDate(QDate::currentDate());
|
||||
endDate->setToolTip(tr("Select the end date to export the QSOs. The default date is the date of the last QSO with this station callsign."));
|
||||
|
||||
|
||||
QLabel *stationLabel = new QLabel;
|
||||
stationLabel->setText(tr("Station callsign"));
|
||||
|
||||
@ -93,7 +111,6 @@ void AdifLoTWExportWidget::createUI()
|
||||
okButton->setText(tr("Ok"));
|
||||
cancelButton->setText(tr("Cancel"));
|
||||
|
||||
|
||||
hv = tableWidget->verticalHeader();
|
||||
hv->hide();
|
||||
hv->setStretchLastSection(true);
|
||||
@ -105,8 +122,6 @@ void AdifLoTWExportWidget::createUI()
|
||||
tableWidget->setColumnCount(header.length());
|
||||
tableWidget->setHorizontalHeaderLabels(header);
|
||||
|
||||
|
||||
|
||||
QGridLayout *mainLayout = new QGridLayout;
|
||||
mainLayout->addWidget(topLabel, 0, 0, 1, -1);
|
||||
mainLayout->addWidget(stationLabel, 1, 0);
|
||||
@ -131,184 +146,252 @@ void AdifLoTWExportWidget::createUI()
|
||||
connect(myGridSquareComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(slotMyGridChanged() ) ) ;
|
||||
connect(okButton, SIGNAL(clicked()), this, SLOT(slotOKPushButtonClicked() ) );
|
||||
connect(cancelButton, SIGNAL(clicked()), this, SLOT(slotCancelPushButtonClicked() ) );
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
|
||||
void AdifLoTWExportWidget::setDefaultStationComboBox()
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
//stationCallsignComboBox->blockSignals(true);
|
||||
if (!util->isValidCall(defaultStationCallsign))
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
//stationCallsignComboBox->blockSignals(false);
|
||||
return;
|
||||
}
|
||||
if (stationCallsignComboBox->findText(defaultStationCallsign, Qt::MatchCaseSensitive) >= 0)
|
||||
{
|
||||
stationCallsignComboBox->setCurrentIndex(stationCallsignComboBox->findText(defaultStationCallsign, Qt::MatchCaseSensitive));
|
||||
}
|
||||
//stationCallsignComboBox->blockSignals(false);
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::setDefaultMyGridComboBox()
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
if (!util->isValidGrid(defaultMyGrid))
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return;
|
||||
}
|
||||
if (myGridSquareComboBox->findText(defaultMyGrid, Qt::MatchCaseSensitive) >= 0)
|
||||
{
|
||||
myGridSquareComboBox->setCurrentIndex(myGridSquareComboBox->findText(defaultMyGrid, Qt::MatchCaseSensitive));
|
||||
qDebug() << Q_FUNC_INFO << ": 1: " << myGridSquareComboBox->currentText();
|
||||
}
|
||||
else if (myGridSquareComboBox->count()>=3)
|
||||
{
|
||||
myGridSquareComboBox->findText(myGridSquareComboBox->itemText(2), Qt::MatchCaseSensitive);
|
||||
qDebug() << Q_FUNC_INFO << ": 2: " << myGridSquareComboBox->currentText();
|
||||
}
|
||||
else
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << ": 3";
|
||||
}
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::fillStationCallsignComboBox()
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillStationCallsignComboBox" << QT_ENDL;
|
||||
//qDebug() << "AdifLoTWExportWidget::fillStationCallsignComboBox: " << QString::number(stationCallsignComboBox->count()) << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
//stationCallsignComboBox->blockSignals(true);
|
||||
stationCallsignComboBox->clear();
|
||||
//qDebug() << "AdifLoTWExportWidget::fillStationCallsignComboBox-1" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " -1" ;
|
||||
stationCallsignComboBox->addItem(tr("Not defined"));
|
||||
//qDebug() << "AdifLoTWExportWidget::fillStationCallsignComboBox-2" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " -2" ;
|
||||
if (currentExportMode == ModeADIF)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillStationCallsignComboBox-3" << QT_ENDL;
|
||||
stationCallsignComboBox->addItem(tr("All"));
|
||||
//qDebug() << "AdifLoTWExportWidget::fillStationCallsignComboBox-4" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " -3";
|
||||
stationCallsignComboBox->addItem(tr("ALL"));
|
||||
qDebug() << Q_FUNC_INFO << " -4";
|
||||
}
|
||||
|
||||
//qDebug() << "AdifLoTWExportWidget::fillStationCallsignComboBox-99" << QString::number(currentExportMode);
|
||||
stationCallsignComboBox->addItems(dataProxy->getStationCallSignsFromLogWithLoTWPendingToSend(logNumber));
|
||||
//qDebug() << "AdifLoTWExportWidget::fillStationCallsignComboBox-END" << QT_ENDL;
|
||||
if (currentExportMode == ModeLotW)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " -3";
|
||||
stationCallsignComboBox->addItems(dataProxy->getStationCallSignsFromLogWithLoTWPendingToSend(logNumber));
|
||||
qDebug() << Q_FUNC_INFO << " -4";
|
||||
}
|
||||
else
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " -5";
|
||||
stationCallsignComboBox->addItems(dataProxy->getStationCallSignsFromLog(logNumber));
|
||||
qDebug() << Q_FUNC_INFO << " -6";
|
||||
}
|
||||
//stationCallsignComboBox->blockSignals(false);
|
||||
qDebug() << QString::number(stationCallsignComboBox->count());
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::fillStationMyGridComboBox()
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " - Start";
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
// Keep the grid that is shown now
|
||||
// clean and fill the combo.
|
||||
// If the saved locator is in the list, it is selected.
|
||||
|
||||
//myGridSquareComboBox->blockSignals(true);
|
||||
QString tempGrid = myGridSquareComboBox->currentText ();
|
||||
myGridSquareComboBox->clear();
|
||||
myGridSquareComboBox->addItem(tr("Not defined"));
|
||||
|
||||
QStringList grids;
|
||||
grids.clear ();
|
||||
grids.append (dataProxy->getGridsToBeSent (stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), true, logNumber));
|
||||
myGridSquareComboBox->addItems(grids);
|
||||
if (currentExportMode != ModeLotW)
|
||||
{
|
||||
myGridSquareComboBox->addItem(tr("Not defined"));
|
||||
myGridSquareComboBox->addItem(tr("ALL"));
|
||||
grids.append (dataProxy->getGridsToBeSent (stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), false, logNumber));
|
||||
}
|
||||
else
|
||||
{
|
||||
grids.append (dataProxy->getGridsToBeSent (stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), true, logNumber));
|
||||
}
|
||||
|
||||
myGridSquareComboBox->addItems(grids);
|
||||
|
||||
if (myGridSquareComboBox->findText(tempGrid, Qt::MatchCaseSensitive) >= 0)
|
||||
{
|
||||
myGridSquareComboBox->setCurrentIndex(myGridSquareComboBox->findText(tempGrid, Qt::MatchCaseSensitive));
|
||||
}
|
||||
|
||||
//qDebug() << Q_FUNC_INFO << " - END";
|
||||
//myGridSquareComboBox->blockSignals(false);
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::setTopLabel(const QString &_t)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
topLabel->setText(_t);
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::fillDates()
|
||||
{
|
||||
// Shows the first and last QSO done with one specific callsign.
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
//startDate->blockSignals(true);
|
||||
//endDate->blockSignals(true);
|
||||
|
||||
startDate->setDate(dataProxy->getFirstQSODateFromCall(stationCallsignComboBox->currentText()));
|
||||
endDate->setDate(dataProxy->getLastQSODateFromCall(stationCallsignComboBox->currentText()));
|
||||
|
||||
//startDate->blockSignals(false);
|
||||
//endDate->blockSignals(false);
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::fillTable()
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable " << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
|
||||
QList<int> qsos;
|
||||
qsos.clear();
|
||||
qsos.clear();
|
||||
bool justQueued = true;
|
||||
switch (currentExportMode)
|
||||
{
|
||||
case ModeADIF:
|
||||
justQueued = false;
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable ADIF" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " ADIF";
|
||||
|
||||
break;
|
||||
case ModeLotW:
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable LoTW" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " LoTW";
|
||||
justQueued = true;
|
||||
|
||||
break;
|
||||
case ModeClubLog:
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable ClubLog" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " ClubLog";
|
||||
//justQueued = true;
|
||||
|
||||
break;
|
||||
case ModeEQSL:
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable EQSL" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " EQSL";
|
||||
justQueued = true;
|
||||
break;
|
||||
case ModeQRZ:
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable QRZ" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " QRZ";
|
||||
justQueued = true;
|
||||
break;
|
||||
}
|
||||
|
||||
if (stationCallsignComboBox->currentIndex() == 0)
|
||||
{ // Not defined station_callsign (blank)
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable blank station callsign " << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " blank station callsign ";
|
||||
qsos.append(dataProxy->getQSOsListLoTWToSend(QString(), myGridSquareComboBox->currentText(), startDate->date(), endDate->date(), justQueued, logNumber));
|
||||
}
|
||||
else if((stationCallsignComboBox->currentIndex() == 1) && (currentExportMode == ModeADIF))
|
||||
{ // ALL stations, no matter the station.
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable ALL station callsign " << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " ALL station callsign ";
|
||||
qsos.append(dataProxy->getQSOsListLoTWToSend("ALL", myGridSquareComboBox->currentText (), startDate->date(), endDate->date(), justQueued, logNumber));
|
||||
//qsos.append(dataProxy->getQSOsListToBeExported(stationCallsignComboBox->currentText(), startDate->date(), endDate->date()));
|
||||
}
|
||||
else
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable OTHER station callsign " << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " OTHER station callsign ";
|
||||
if (currentExportMode == ModeClubLog)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable Mode ClubLog" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " Mode ClubLog";
|
||||
qsos.append(dataProxy->getQSOsListClubLogToSent(stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), true, logNumber));
|
||||
}
|
||||
else if (currentExportMode == ModeEQSL)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable Mode eQSL" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " Mode eQSL";
|
||||
qsos.append(dataProxy->getQSOsListEQSLToSent(stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), true));
|
||||
}
|
||||
else if (currentExportMode == ModeQRZ)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable Mode QRZ" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " Mode QRZ";
|
||||
qsos.append(dataProxy->getQSOsListQRZCOMToSent(stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), true));
|
||||
}
|
||||
else if (currentExportMode == ModeLotW)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable Mode QRZ" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " Mode LoTW";
|
||||
qsos.append(dataProxy->getQSOsListLoTWToSend (stationCallsignComboBox->currentText(), myGridSquareComboBox->currentText (), startDate->date(), endDate->date(), true, logNumber));
|
||||
//qsos.append(dataProxy->getQSOsListQRZCOMToSent(stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), true));
|
||||
}
|
||||
else
|
||||
{//(currentExportMode == ModeADIF)
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable Mode LoTW" << QT_ENDL;
|
||||
qsos.append(dataProxy->getQSOsListToBeExported(stationCallsignComboBox->currentText(), startDate->date(), endDate->date()));
|
||||
qDebug() << Q_FUNC_INFO << " Mode ELSE";
|
||||
qsos.append(dataProxy->getQSOsListToBeExported(stationCallsignComboBox->currentText(), myGridSquareComboBox->currentText(), startDate->date(), endDate->date()));
|
||||
}
|
||||
}
|
||||
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable: -3" << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << " -3" ;
|
||||
tableWidget->clearContents();
|
||||
tableWidget->setRowCount(0);
|
||||
if (tableWidget->columnCount()>0)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable pre FOR" << QT_ENDL;
|
||||
for (int i=0; i<qsos.length(); i++)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable in FOR " << QString::number(i) << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << " pre FOR";
|
||||
for (int i=0; i<qsos.length(); i++)
|
||||
{
|
||||
//qDebug() << Q_FUNC_INFO << " in FOR " << QString::number(i);
|
||||
addQSO(qsos.at(i));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
numberLabel->setText(tr("QSOs: ") + QString::number(qsos.count()));
|
||||
if (qsos.count()>0)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable Enable OKButton" << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << " Enable OKButton";
|
||||
okButton->setEnabled(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable Disable OKButton" << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << " Disable OKButton";
|
||||
okButton->setEnabled(false);
|
||||
}
|
||||
//qDebug() << "AdifLoTWExportWidget::fillTable END" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::addQSO(const int _qsoID)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: " << QString::number(_qsoID) << QT_ENDL;
|
||||
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: " << QString::number(_qsoID);
|
||||
|
||||
//qDebug() << Q_FUNC_INFO << " - Start";
|
||||
QStringList qsoToAdd;
|
||||
qsoToAdd.clear();
|
||||
qsoToAdd << dataProxy->getQSODetailsForLoTWDownload(_qsoID);
|
||||
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: Columns: " << QString::number(tableWidget->columnCount()) << QT_ENDL;
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: qsoToAdd-length: " << QString::number(qsoToAdd.length()) << QT_ENDL;
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: Columns: " << QString::number(tableWidget->columnCount());
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: qsoToAdd-length: " << QString::number(qsoToAdd.length());
|
||||
|
||||
if (qsoToAdd.length() == tableWidget->columnCount())
|
||||
{
|
||||
@ -316,104 +399,151 @@ void AdifLoTWExportWidget::addQSO(const int _qsoID)
|
||||
|
||||
for (int i = 0; i<qsoToAdd.length(); i++)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: qsoToAdd.at(i): " << qsoToAdd.at(i) << QT_ENDL;
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: qsoToAdd.at(i): " << qsoToAdd.at(i);
|
||||
QTableWidgetItem *newItemID = new QTableWidgetItem(qsoToAdd.at(i));
|
||||
newItemID->setTextAlignment(Qt::AlignCenter);
|
||||
newItemID->setFlags(Qt::NoItemFlags);
|
||||
tableWidget->setItem(tableWidget->rowCount()-1, i, newItemID);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//qDebug() << "AdifLoTWExportWidget::addQSO: - END" << QT_ENDL;
|
||||
//qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::slotStationCallsignChanged()
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::slotStationCallsignChanged" << QT_ENDL;
|
||||
if (stationCallsignComboBox->count()<1)
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
if (starting)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::slotStationCallsignChanged count <1 " << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return;
|
||||
}
|
||||
//qDebug() << "AdifLoTWExportWidget::slotStationCallsignChanged-01" << QT_ENDL;
|
||||
startDate->setDate(dataProxy->getFirstQSODateFromCall(stationCallsignComboBox->currentText()));
|
||||
//qDebug() << "AdifLoTWExportWidget::slotStationCallsignChanged-02" << QT_ENDL;
|
||||
endDate->setDate(dataProxy->getLastQSODateFromCall(stationCallsignComboBox->currentText()));
|
||||
//qDebug() << "AdifLoTWExportWidget::slotStationCallsignChanged-03" << QT_ENDL;
|
||||
if (stationCallsignComboBox->count()<1)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return;
|
||||
}
|
||||
//qDebug() << Q_FUNC_INFO << " - 01" ;
|
||||
fillDates();
|
||||
//qDebug() << Q_FUNC_INFO << " - 03" ;
|
||||
fillStationMyGridComboBox();
|
||||
fillTable ();
|
||||
updateIfNeeded();
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
//qDebug() << "AdifLoTWExportWidget::slotStationCallsignChanged - END" << QT_ENDL;
|
||||
void AdifLoTWExportWidget::updateIfNeeded()
|
||||
{
|
||||
if (currentCall != stationCallsignComboBox->currentText())
|
||||
{
|
||||
fillTable();
|
||||
}
|
||||
else if (currentGrid != myGridSquareComboBox->currentText())
|
||||
{
|
||||
fillTable();
|
||||
}
|
||||
else if (currentStart != startDate->date())
|
||||
{
|
||||
fillTable();
|
||||
}
|
||||
else if (currentEnd != endDate->date())
|
||||
{
|
||||
fillTable();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void AdifLoTWExportWidget::slotMyGridChanged()
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start: " << myGridSquareComboBox->currentText();
|
||||
if (starting)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return;
|
||||
}
|
||||
fillTable();
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
|
||||
void AdifLoTWExportWidget::slotDateChanged()
|
||||
{
|
||||
//slotStationCallsignChanged();
|
||||
slotStationCallsignChanged ();
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
if (starting)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - END-1";
|
||||
return;
|
||||
}
|
||||
updateIfNeeded();
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::slotOKPushButtonClicked()
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::slotOKPushButtonClicked" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
this->hide();
|
||||
if (stationCallsignComboBox->currentIndex() == 0)
|
||||
{
|
||||
emit selection("NOT", startDate->date(), endDate->date(), currentExportMode);
|
||||
emit selection("NOT", myGridSquareComboBox->currentText(), startDate->date(), endDate->date(), currentExportMode);
|
||||
}
|
||||
else if (stationCallsignComboBox->currentIndex() == 1)
|
||||
{
|
||||
if ((currentExportMode == ModeLotW) || (currentExportMode == ModeClubLog) || (currentExportMode == ModeQRZ)|| (currentExportMode == ModeEQSL))
|
||||
{
|
||||
emit selection(stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), currentExportMode);
|
||||
emit selection(stationCallsignComboBox->currentText(), myGridSquareComboBox->currentText(), startDate->date(), endDate->date(), currentExportMode);
|
||||
}
|
||||
else
|
||||
{
|
||||
emit selection("ALL", startDate->date(), endDate->date(), currentExportMode);
|
||||
emit selection("ALL", myGridSquareComboBox->currentText(), startDate->date(), endDate->date(), currentExportMode);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
emit selection(stationCallsignComboBox->currentText(), startDate->date(), endDate->date(), currentExportMode);
|
||||
emit selection(stationCallsignComboBox->currentText(), myGridSquareComboBox->currentText(), startDate->date(), endDate->date(), currentExportMode);
|
||||
}
|
||||
//qDebug() << "AdifLoTWExportWidget::slotOKPushButtonClicked - END" << QT_ENDL;
|
||||
//qDebug() << "AdifLoTWExportWidget::slotOKPushButtonClicked - END";
|
||||
close();
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::slotCancelPushButtonClicked()
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::slotCancelPushButtonClicked" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
close();
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::closeEvent(QCloseEvent *event)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::closeEvent" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
event->accept();
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::showEvent(QShowEvent *event)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::showEvent" << QT_ENDL;
|
||||
|
||||
startDate->setDate(dataProxy->getFirstQSODateFromCall(stationCallsignComboBox->currentText()));
|
||||
endDate->setDate(dataProxy->getLastQSODateFromCall(stationCallsignComboBox->currentText()));
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
starting = true;
|
||||
//myGridSquareComboBox->blockSignals(true);
|
||||
//stationCallsignComboBox->blockSignals(true);
|
||||
//startDate->blockSignals(true);
|
||||
//endDate->blockSignals(true);
|
||||
fillStationCallsignComboBox();
|
||||
qDebug() << Q_FUNC_INFO << ": 1 - " << stationCallsignComboBox->currentText();
|
||||
setDefaultStationComboBox();
|
||||
|
||||
qDebug() << Q_FUNC_INFO << ": 2 - " << stationCallsignComboBox->currentText();
|
||||
fillDates();
|
||||
qDebug() << Q_FUNC_INFO << ": 3 - " << stationCallsignComboBox->currentText();
|
||||
fillStationMyGridComboBox();
|
||||
setDefaultMyGridComboBox();
|
||||
qDebug() << Q_FUNC_INFO << ": 4 - " << stationCallsignComboBox->currentText();
|
||||
starting = false;
|
||||
updateIfNeeded();
|
||||
qDebug() << Q_FUNC_INFO << ": 5 - " << stationCallsignComboBox->currentText();
|
||||
event->accept();
|
||||
//qDebug() << "AdifLoTWExportWidget::showEvent - END" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::setExportMode(const ExportMode _EMode)
|
||||
{
|
||||
//qDebug() << "AdifLoTWExportWidget::setExportMode" << QT_ENDL;
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
currentExportMode = _EMode;
|
||||
if (currentExportMode == ModeLotW)
|
||||
{
|
||||
@ -440,12 +570,14 @@ void AdifLoTWExportWidget::setExportMode(const ExportMode _EMode)
|
||||
setWindowTitle("KLog - QSOs to be exported to ADIF.");
|
||||
topLabel->setText(tr("This table shows the QSOs that will be exported to ADIF."));
|
||||
}
|
||||
fillStationCallsignComboBox();
|
||||
//qDebug() << "AdifLoTWExportWidget::setExportMode-END" << QT_ENDL;
|
||||
//fillStationCallsignComboBox();
|
||||
//slotStationCallsignChanged();
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::setLogNumber(const int _logN)
|
||||
{
|
||||
qDebug() << Q_FUNC_INFO << " - Start";
|
||||
if (dataProxy->doesThisLogExist (_logN))
|
||||
{
|
||||
logNumber = _logN;
|
||||
@ -454,4 +586,11 @@ void AdifLoTWExportWidget::setLogNumber(const int _logN)
|
||||
{
|
||||
logNumber = -1;
|
||||
}
|
||||
qDebug() << Q_FUNC_INFO << " - END";
|
||||
}
|
||||
|
||||
void AdifLoTWExportWidget::setCallValidation(const bool _v)
|
||||
{
|
||||
util->setCallValidation(_v);
|
||||
dataProxy->setCallValidation(_v);
|
||||
}
|
||||
|
@ -42,6 +42,8 @@ public:
|
||||
void setExportMode(const ExportMode _EMode);
|
||||
void setLogNumber(const int _logN);
|
||||
void setDefaultStationCallsign(const QString &_st);
|
||||
void setDefaultMyGrid(const QString &_st);
|
||||
void setCallValidation(const bool _v);
|
||||
|
||||
protected:
|
||||
void closeEvent(QCloseEvent *event);
|
||||
@ -55,7 +57,7 @@ private slots:
|
||||
void slotMyGridChanged();
|
||||
|
||||
signals:
|
||||
void selection(QString _st, QDate _startD, QDate _endD, ExportMode _exportMode);
|
||||
void selection(QString _st, QString _grid, QDate _startD, QDate _endD, ExportMode _exportMode);
|
||||
|
||||
private:
|
||||
void createUI();
|
||||
@ -64,7 +66,10 @@ private:
|
||||
void addQSO(const int _qsoID);
|
||||
void fillStationCallsignComboBox();
|
||||
void fillStationMyGridComboBox();
|
||||
void fillDates();
|
||||
void setDefaultStationComboBox();
|
||||
void setDefaultMyGridComboBox();
|
||||
void updateIfNeeded();
|
||||
|
||||
DataProxy_SQLite *dataProxy;
|
||||
Utilities *util;
|
||||
@ -81,7 +86,11 @@ private:
|
||||
ExportMode currentExportMode;
|
||||
int logNumber;
|
||||
|
||||
QString defaultStationCallsign;
|
||||
QString defaultStationCallsign, defaultMyGrid;
|
||||
|
||||
QString currentCall, currentGrid;
|
||||
QDate currentStart, currentEnd;
|
||||
bool starting;
|
||||
|
||||
};
|
||||
|
||||
|
@ -47,7 +47,6 @@ private slots:
|
||||
void test_Constructor();
|
||||
void test_SatMode();
|
||||
|
||||
|
||||
private:
|
||||
DataProxy_SQLite *dataProxy;
|
||||
MainWindowSatTab *mainWindowSattab;
|
||||
@ -106,7 +105,9 @@ void tst_MainQSOEntryWidget::test_SatMode()
|
||||
freq = dataProxy->getLowLimitBandFromBandName("2M");
|
||||
mainWindowSattab->setUpLinkFreq(freq);
|
||||
mainWindowSattab->setDownLinkFreq(freq);
|
||||
//qDebug() << mainWindowSattab->getSatMode() << endl;
|
||||
//qDebug() << mainWindowSattab->getSatMode();
|
||||
//qDebug() << QString::number(mainWindowSattab->getRXFreq());
|
||||
//qDebug() << QString::number(mainWindowSattab->getTXFreq());
|
||||
QVERIFY2(mainWindowSattab->getSatMode() == "V/V", "2m Mode not V");
|
||||
|
||||
//qDebug() << Q_FUNC_INFO << ": 70cm";
|
||||
@ -128,9 +129,9 @@ void tst_MainQSOEntryWidget::test_SatMode()
|
||||
QVERIFY2(mainWindowSattab->getSatMode() == "S/S", "13cm Mode not S");
|
||||
|
||||
//qDebug() << Q_FUNC_INFO << ": 6cm" ;
|
||||
//freq = dataProxy->getLowLimitBandFromBandName("6CM");
|
||||
//mainWindowSattab->setUpLinkFreq(freq);
|
||||
//mainWindowSattab->setDownLinkFreq(freq);
|
||||
freq = dataProxy->getLowLimitBandFromBandName("6CM");
|
||||
mainWindowSattab->setUpLinkFreq(freq);
|
||||
mainWindowSattab->setDownLinkFreq(freq);
|
||||
//QVERIFY2(mainWindowSattab->getSatMode() == "C/C", "6cm Mode not C");
|
||||
|
||||
//qDebug() << Q_FUNC_INFO << ": 3cm" ;
|
||||
|
@ -261,6 +261,8 @@ void tst_Utilities::test_isValidCall()
|
||||
QVERIFY2(util->isValidCall("EA4"), "Should be true: EA4");
|
||||
QVERIFY2(util->isValidCall("-"), "Should be true: EAK4");
|
||||
QVERIFY2(util->isValidCall("QQQ/EA4K"), "Should be true: QQQ/EA4K");
|
||||
QVERIFY2(util->isValidCall("EA4K", true), "EA4K forced");
|
||||
QVERIFY2(!util->isValidCall("EAK", true), "EAK forced");
|
||||
util->setCallValidation (true);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user