KLog 0.9.2.9 released

This commit is contained in:
jaime 2018-01-28 17:49:01 +00:00
parent 4c02cb5161
commit 904dc7f084
33 changed files with 7424 additions and 2868 deletions

View File

@ -3,9 +3,10 @@ Akihiro Koda, JL3OXR - (2016-today)
Andrew Goldie, ZL2ACG - (2009-2010) Andrew Goldie, ZL2ACG - (2009-2010)
Translators: Translators:
Catalan - Luis, EA3NM Catalan - Josep Ma Ferrer, Catalan KDE Translation team
Croatian - Kristijan - M0NKC Croatian - Kristijan - M0NKC
Danish - Joe Hansen (debian-l10n-danish@list.debian.org) Danish - Joe Hansen (debian-l10n-danish@list.debian.org)
Finnish - Kristjan Lorents (debian-i18n@lists.debian.org)
Italian - Simona - IU5HIU Italian - Simona - IU5HIU
Japanese - Aki, JL3OXR Japanese - Aki, JL3OXR
Polish - Piotr, LA7RRA Polish - Piotr, LA7RRA

View File

@ -1,13 +1,9 @@
TBD - 0.9.2.9 January - 0.9.2.9
TODO: - UDP server to receive data from WSJT-X - Bugfix: Adding new QSO that implies a DXCC or WAZ status already worked failed.
TODO: - Several warnings removed from compilation time. - Bugfix: Modes where not properly added from the setup (TNX KB2YSI).
TODO: - The log can be now updated with a LoTW ADIF file import. - UI Change: Freq in the Satellite tab is now not deleted when a new QSO is added.
TODO: - ADD A TIP ON the DXCC tab stating Prefix, CQ, ITU & Bearing - New translation: Catalan by Josep (Thank you!)
TODO: - ADD double clicking o DXCC Widget will show the QSO is providing that status - New translation: Finnish by Kristjan (Thank you!)
TODO: - Add a warning or periodically ADIF export so data is backup
TODO: - Isolate the Awards tab and create a widget with it.
TODO: - Update List of DXCC with Kosovo
TODO: - Updated translations: Spanish (EA4TV)
January - 0.9.2.8 January - 0.9.2.8
- Important Optimization on KLog speed on start and general use. - Important Optimization on KLog speed on start and general use.

View File

@ -73,8 +73,7 @@ HEADERS += setupdialog.h \
logmodel.h \ logmodel.h \
searchwidget.h \ searchwidget.h \
infowidget.h \ infowidget.h \
showerrordialog.h \ showerrordialog.h
udpserver.h
SOURCES += main.cpp \ SOURCES += main.cpp \
aboutdialog.cpp \ aboutdialog.cpp \
setupdialog.cpp \ setupdialog.cpp \
@ -117,8 +116,7 @@ SOURCES += main.cpp \
logmodel.cpp \ logmodel.cpp \
searchwidget.cpp \ searchwidget.cpp \
infowidget.cpp \ infowidget.cpp \
showerrordialog.cpp \ showerrordialog.cpp
udpserver.cpp
OTHER_FILES += \ OTHER_FILES += \
README-DEVEL \ README-DEVEL \

3
README
View File

@ -3,7 +3,8 @@ KLog is an updated version of KLog
The objective of KLog is to provide a free software that runs in Linux, macOS and Windows. The objective of KLog is to provide a free software that runs in Linux, macOS and Windows.
KLog will provide hamradio contest and DX logging support. KLog will provide hamradio contest and DX logging support.
Check http://jaime.robles.es for news & updates. Check http://www.klog.xyz for news & updates.
Check http://jaime.robles.es for the author homepage.
Please join the mailing list at: Please join the mailing list at:

3
TODO
View File

@ -2,8 +2,7 @@ RC-BUGS:
For next release: For next release:
TODO: - Check if the save to adif on exit is working properly TODO: Create a function that runs the log adding a DXCC to any QSO without a DXCC.
TODO: Import LOTW (MainWindow::slotADIFImport) TODO: Import LOTW (MainWindow::slotADIFImport)
TODO: Remove the Querys from void SetupPageLogs:: TODO: Remove the Querys from void SetupPageLogs::

View File

@ -33,7 +33,7 @@ AboutDialog::AboutDialog(const QString tversion, QWidget *parent)
const QString br = QLatin1String("<br/>"); const QString br = QLatin1String("<br/>");
const QString description = "<center><h2>KLog " + tversion + "</h2><h4> " +tr("By") + const QString description = "<center><h2>KLog " + tversion + "</h2><h4> " +tr("By") +
" <a href=\"https://www.qrz.com/db/ea4tv\">EA4TV</a> - 2002-2017</h4></center><br>" + " <a href=\"https://www.qrz.com/db/ea4tv\">EA4TV</a> - 2002-2018</h4></center><br>" +
tr("KLog is a free logbook for hamradio operators.") +"<br><br><b>" + tr("KLog is a free logbook for hamradio operators.") +"<br><br><b>" +
tr("Please know that this is an BETA release and it may contain many bugs.<br>Backup your data before using this software!") + tr("Please know that this is an BETA release and it may contain many bugs.<br>Backup your data before using this software!") +
"</b><br><br>" + "</b><br><br>" +
@ -67,24 +67,25 @@ AboutDialog::AboutDialog(const QString tversion, QWidget *parent)
logoLabel4->setPixmap(pixmap); logoLabel4->setPixmap(pixmap);
QString author1 = QString("<tr><td>Jaime Robles</td>") + QString("<td><a href=\"https://www.qrz.com/db/ea4tv\">EA4TV</a></td>") + "<td>(2002-" + tr("today") +")" +tr("Main developer") + "</td></tr>"; QString author1 = QString("<tr><td>Jaime Robles</td>") + QString("<td><a href=\"https://www.qrz.com/db/ea4tv\">EA4TV</a></td>") + "<td>(2002-" + tr("today") +")" +tr("Main developer") + "</td></tr>";
QString author2 = QString("<tr><td>Akihiro Koda</td>") + QString("<td><a href=\"https://www.qrz.com/db/jl3oxr\">JL3OXR</a></td>") + "<td>(2016)</td></tr>"; QString author2 = QString("<tr><td>Akihiro Koda</td>") + QString("<td><a href=\"https://www.qrz.com/db/jl3oxr\">JL3OXR</a></td>") + "<td>(2016-2017)</td></tr>";
QString author3 = QString("<tr><td>Andrew Goldie</td>") + QString("<td><a href=\"https://www.qrz.com/db/zl2agc\">ZL2ACG</a></td>") + "<td>(2009-2010)</td></tr>"; QString author3 = QString("<tr><td>Andrew Goldie</td>") + QString("<td><a href=\"https://www.qrz.com/db/zl2agc\">ZL2ACG</a></td>") + "<td>(2009-2010)</td></tr>";
QString authorText = tr("KLog is developed by a very small team and you are invited to join!") + "<br><br>" + tr("If you want to provide support you are welcome to join the") + " <a href=\"https://lists.nongnu.org/mailman/listinfo/klog-devel\">" + tr("KLog development mailing list") + "</a>"+ tr("!") + "<br><br>" + tr("You can also help us by sending bug reports or small code contributions, ideas or whatever you think may improve KLog."); QString authorText = tr("KLog is developed by a very small team and you are invited to join!") + "<br><br>" + tr("If you want to provide support you are welcome to join the") + " <a href=\"https://lists.nongnu.org/mailman/listinfo/klog-devel\">" + tr("KLog development mailing list") + "</a>"+ tr("!") + "<br><br>" + tr("You can also help us by sending bug reports or small code contributions, ideas or whatever you think may improve KLog.");
QString authors = "<center><h2>" + tr("Authors") + "</h2></center><br>" + authorText + "<br><table>" + author1 + author2 + author3 + "</table>"; QString authors = "<center><h2>" + tr("Authors") + "</h2></center><br>" + authorText + "<br><table>" + author1 + author2 + author3 + "</table>";
QString translator1 = QString("<tr><td>Catalan</td>") + QString("<td>Luis Ulldemolins</td>") + QString("<td><a href=\"https://www.qrz.com/db/ea3nm\">EA3NM</a></td></tr>"); QString translator1 = QString("<tr><td>Catalan</td>") + QString("<td>Josep Ma. Ferrer</td>") + QString("<td><a href=\"mailto://kde-i18n-ca@kde.org\">KDE Catalan translation team</a></td></tr>");
QString translator2 = QString("<tr><td>Croatian</td>") + QString("<td>Kristijan Conkas</td>") + QString("<td><a href=\"https://www.qrz.com/db/m0nkc\">M0NKC</a></td></tr>"); QString translator2 = QString("<tr><td>Croatian</td>") + QString("<td>Kristijan Conkas</td>") + QString("<td><a href=\"https://www.qrz.com/db/m0nkc\">M0NKC</a></td></tr>");
QString translator3 = QString("<tr><td>Danish</td>") + QString("<td>Joe Hansen</td>") + QString("<td><a href=\"mailto://debian-l10n-danish@list.debian.org\">Danish Debian translation team</a></td></tr>"); QString translator3 = QString("<tr><td>Finnish</td>") + QString("<td>Kristjan Lorents</td>") + QString("<td><a href=\"debian-i18n@lists.debian.org\">Debian translation team</a></td></tr>");
QString translator4 = QString("<tr><td>Italian</td>") + QString("<td>Simona Pisano</td>") + QString("<td><a href=\"https://www.qrz.com/db/iu5hiu\">IU5HIU</a></td></tr>"); QString translator4 = QString("<tr><td>Danish</td>") + QString("<td>Joe Hansen</td>") + QString("<td><a href=\"mailto://debian-l10n-danish@list.debian.org\">Danish Debian translation team</a></td></tr>");
QString translator5 = QString("<tr><td>Japanese</td>") + QString("<td>Akihiro Koda</td>") + QString("<td><a href=\"https://www.qrz.com/db/jl3oxr\">JL3OXR</a></td></tr>"); QString translator5 = QString("<tr><td>Italian</td>") + QString("<td>Simona Pisano</td>") + QString("<td><a href=\"https://www.qrz.com/db/iu5hiu\">IU5HIU</a></td></tr>");
QString translator6 = QString("<tr><td>Polish</td>") + QString("<td>Piotr Ludwig</td>") + QString("<td><a href=\"https://www.qrz.com/db/la7rra\">LA7RRA</a></td></tr>"); QString translator6 = QString("<tr><td>Japanese</td>") + QString("<td>Akihiro Koda</td>") + QString("<td><a href=\"https://www.qrz.com/db/jl3oxr\">JL3OXR</a></td></tr>");
QString translator7 = QString("<tr><td>Spanish</td>") + QString("<td>Jaime Robles</td>") + QString("<td><a href=\"https://www.qrz.com/db/ea4tv\">EA4TV</a></td></tr>"); QString translator7 = QString("<tr><td>Polish</td>") + QString("<td>Piotr Ludwig</td>") + QString("<td><a href=\"https://www.qrz.com/db/la7rra\">LA7RRA</a></td></tr>");
QString translator8 = QString("<tr><td>Spanish</td>") + QString("<td>Jaime Robles</td>") + QString("<td><a href=\"https://www.qrz.com/db/ea4tv\">EA4TV</a></td></tr>");
QString translatorsText = tr("Translators bring KLog into your language. They are really an important part of the KLog development team.") + "<br><br>" + tr("If KLog is still not in your language and you want to help us, you are welcome to contact us through the") + " <a href=\"https://lists.nongnu.org/mailman/listinfo/klog-devel\">" + tr("KLog development mailing list") + "</a>" + tr("!"); QString translatorsText = tr("Translators bring KLog into your language. They are really an important part of the KLog development team.") + "<br><br>" + tr("If KLog is still not in your language and you want to help us, you are welcome to contact us through the") + " <a href=\"https://lists.nongnu.org/mailman/listinfo/klog-devel\">" + tr("KLog development mailing list") + "</a>" + tr("!");
QString translators = "<center><h2>" + tr("Translators") + "</h2></center><br>" + translatorsText + "<br><table>" + translator1 + translator2 + translator3 + translator4 + translator5 + translator6 + translator7 + "</table>"; QString translators = "<center><h2>" + tr("Translators") + "</h2></center><br>" + translatorsText + "<br><table>" + translator1 + translator2 + translator3 + translator4 + translator5 + translator6 + translator7 + translator8 + "</table>";
QLabel *authorsLabel = new QLabel(authors); QLabel *authorsLabel = new QLabel(authors);
authorsLabel->setWordWrap(true); authorsLabel->setWordWrap(true);

View File

@ -78,93 +78,6 @@ void Awards::setAwardWAZ(const int _qsoId)
dataProxy->setWAZAwardStatus(_qsoId); dataProxy->setWAZAwardStatus(_qsoId);
} }
QString Awards::getQSOofAward (const int _enti, const int _bandid)
{// Returns the QRZ that granted that status in the DXCC
//qDebug() << "Awards::getQSOofAward: " << QString::number(_enti) << "/" << QString::number(_bandid) << endl;
QSqlQuery query;
QString stringQuery = QString();;
bool sqlOK = false;
QString answer = QString();
stringQuery = QString("SELECT call, qso_date, time_on from log where id=(SELECT qsoid from awarddxcc where dxcc='%1' and band='%2')").arg(_enti).arg(_bandid);
sqlOK = query.exec(stringQuery);
//qDebug() << "Awards::getQSOofAward: stringQuery: " << stringQuery << endl;
if (sqlOK)
{
query.next();
if (query.isValid())
{
answer = query.value(0).toString() + " / " + query.value(1).toString() + " / " + query.value(2).toString();
query.finish();
//qDebug() << "Awards::getQSOofAward: answer: " << answer << endl;
return answer;
}
else
{
query.finish();
//qDebug() << "Awards::getQSOofAward: 0" << endl;
return QString();
}
}
else
{
query.finish();
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().number(), query.lastQuery());
//qDebug() << "Awards::getQSOofAward: Query error" << endl;
return QString();
}
}
int Awards::getQSOIdofAward (const int _enti, const int _bandid)
{// Returns the QSOid that granted that status in the DXCC
qDebug() << "Awards::getQSOIdofAward: " << QString::number(_enti) << "/" << QString::number(_bandid) << endl;
QSqlQuery query;
QString stringQuery = QString();;
bool sqlOK = false;
int answer = -1;
stringQuery = QString("SELECT qsoid from awarddxcc where dxcc='%1' and band='%2'").arg(_enti).arg(_bandid);
sqlOK = query.exec(stringQuery);
qDebug() << "Awards::getQSOIdofAward: stringQuery: " << stringQuery << endl;
if (sqlOK)
{
query.next();
if (query.isValid())
{
answer = query.value(0).toInt();
qDebug() << "Awards::getQSOIdofAward: answer: " << QString::number(answer) << endl;
query.finish();
if (answer>=1)
{
return answer;
}
else
{
return -1;
}
}
else
{
query.finish();
qDebug() << "Awards::getQSOIdofAward: 0" << endl;
return -2;
}
}
else
{
query.finish();
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().number(), query.lastQuery());
qDebug() << "Awards::getQSOIdofAward: Query error" << endl;
return -3;
}
}
int Awards::getDXCCWorked(const int _logNumber) int Awards::getDXCCWorked(const int _logNumber)
{ {
//qDebug() << "Awards::getDXCCWorked (logNumber): " << QString::number(_logNumber) << endl; //qDebug() << "Awards::getDXCCWorked (logNumber): " << QString::number(_logNumber) << endl;

View File

@ -80,9 +80,6 @@ public:
QString checkIfValidIOTA(const QString _tiota); //TODO: There is an equivalent function in the MainWindowInputOthers class. I should use only one! QString checkIfValidIOTA(const QString _tiota); //TODO: There is an equivalent function in the MainWindowInputOthers class. I should use only one!
int getEntityDXStatus (const int _enti, const int _bandid, int _modeid = -1, int _log = -1); int getEntityDXStatus (const int _enti, const int _bandid, int _modeid = -1, int _log = -1);
QString getQSOofAward (const int _enti, const int _bandid);
int getQSOIdofAward (const int _enti, const int _bandid);
int getDXStatus (const QStringList _qs); int getDXStatus (const QStringList _qs);
QString getDXStatusString (const int _status); // Needs to be called with the output of getDXStatus QString getDXStatusString (const int _status); // Needs to be called with the output of getDXStatus
QString getDXCCStatusBand(const int _dxcc, const int _band, const int _logNumber=0); // Returns -, W or C (Not worked, worked, Confirmed) QString getDXCCStatusBand(const int _dxcc, const int _band, const int _logNumber=0); // Returns -, W or C (Not worked, worked, Confirmed)

View File

@ -55,7 +55,7 @@ Example: 1000 QSO points
ContestCQWWDXSSB::ContestCQWWDXSSB() ContestCQWWDXSSB::ContestCQWWDXSSB()
{ {
qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB2" << endl; //qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB2" << endl;
constrid = 1; constrid = 1;
myEntity = ""; myEntity = "";
myCQz = ""; myCQz = "";
@ -72,7 +72,7 @@ ContestCQWWDXSSB::ContestCQWWDXSSB()
thiscontest = ""; thiscontest = "";
club = ""; club = "";
createdby = ""; createdby = "";
qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB1" << endl; //qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB1" << endl;
} }
ContestCQWWDXSSB::ContestCQWWDXSSB(const QStringList _qs) ContestCQWWDXSSB::ContestCQWWDXSSB(const QStringList _qs)
@ -80,7 +80,7 @@ ContestCQWWDXSSB::ContestCQWWDXSSB(const QStringList _qs)
// Receives: QStringList _qs; // Receives: QStringList _qs;
//_qs << myEntity << myCQz << myContinent << NA-id; //_qs << myEntity << myCQz << myContinent << NA-id;
qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB- 2:" << endl; //qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB- 2:" << endl;
constrid = 2; constrid = 2;
myEntity = _qs.at(0); myEntity = _qs.at(0);
myCQz = _qs.at(1); myCQz = _qs.at(1);
@ -137,8 +137,8 @@ ContestCQWWDXSSB::ContestCQWWDXSSB(const QStringList _qs)
qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB: " << myEntity << "/" << myCQz << "/" << myContinent << "/" << NA << endl; //qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB: " << myEntity << "/" << myCQz << "/" << myContinent << "/" << NA << endl;
qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB- 2: - END" << endl; //qDebug() << "ContestCQWWDXSSB::ContestCQWWDXSSB- 2: - END" << endl;
} }
ContestCQWWDXSSB::~ContestCQWWDXSSB(){ ContestCQWWDXSSB::~ContestCQWWDXSSB(){

View File

@ -3194,9 +3194,14 @@ bool DataProxy_SQLite::setDXCCAwardStatus(const int _qsoId)
} }
else else
{ {
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().number(), query.lastQuery()); if(query.lastError().number()==19)
query.finish(); {}
return false; else
{
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().number(), query.lastQuery());
query.finish();
return false;
}
} }
} }
@ -3325,9 +3330,14 @@ bool DataProxy_SQLite::setWAZAwardStatus(const int _qsoId)
} }
else else
{ {
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().number(), query.lastQuery()); if(query.lastError().number()==19)
query.finish(); {}
return false; else
{
emit queryError(Q_FUNC_INFO, query.lastError().databaseText(), query.lastError().number(), query.lastQuery());
query.finish();
return false;
}
} }
} }

View File

@ -17,7 +17,6 @@ DXCCStatusWidget::DXCCStatusWidget(DataProxy *dp, QWidget *parent) : QWidget(par
world = new World(dataProxy); world = new World(dataProxy);
dxccView = new QTableWidget; dxccView = new QTableWidget;
dxccView->setMouseTracking(true);
//hv = new QHeaderView(Qt::Vertical, dxccView); //hv = new QHeaderView(Qt::Vertical, dxccView);
//hh = new QHeaderView(Qt::Horizontal, this); //hh = new QHeaderView(Qt::Horizontal, this);
@ -33,7 +32,6 @@ DXCCStatusWidget::DXCCStatusWidget(DataProxy *dp, QWidget *parent) : QWidget(par
validBands.clear(); validBands.clear();
setDefaultBands(); setDefaultBands();
createUI(); createUI();
//qDebug() << "DXCCStatusWidget::DXCCStatusWidget - END" << endl; //qDebug() << "DXCCStatusWidget::DXCCStatusWidget - END" << endl;
@ -74,11 +72,8 @@ void DXCCStatusWidget::createUI()
dxccView->resizeColumnsToContents(); dxccView->resizeColumnsToContents();
dxccView->resizeRowsToContents(); dxccView->resizeRowsToContents();
connect(refreshButton, SIGNAL(clicked()), this, SLOT(slotRefreshButtonClicked() ) );
connect(dxccView, SIGNAL(itemEntered(QTableWidgetItem *)), this, SLOT(slotItemEntered(QTableWidgetItem *) ) );
//connect(dxccView, SIGNAL(itemDoubleClicked(QTableWidgetItem *)), this, SLOT(slotItemDoubleClicked(QTableWidgetItem *) ) );
connect(dxccView, SIGNAL(itemClicked(QTableWidgetItem *)), this, SLOT(slotItemDoubleClicked(QTableWidgetItem *) ) );
connect(refreshButton, SIGNAL(clicked()), this, SLOT(slotRefreshButtonClicked() ) );
} }
void DXCCStatusWidget::update() void DXCCStatusWidget::update()
@ -115,6 +110,7 @@ void DXCCStatusWidget::addEntity(QStringList const _ent)
return; return;
} }
int status = -1; int status = -1;
int ent = (_ent.at(0)).toInt(); int ent = (_ent.at(0)).toInt();
@ -155,10 +151,6 @@ void DXCCStatusWidget::addEntity(QStringList const _ent)
newItemID->setFlags(Qt::NoItemFlags); newItemID->setFlags(Qt::NoItemFlags);
dxccView->setItem(dxccView->rowCount()-1, 0, newItemID); dxccView->setItem(dxccView->rowCount()-1, 0, newItemID);
//connect(dxccView, SIGNAL(itemEntered(QTableWidgetItem *)), this, SLOT(slotItemEntered(QTableWidgetItem *) ) );
//connect(dxccView, SIGNAL(itemDoubleClicked(QTableWidgetItem *)), this, SLOT(slotItemDoubleClicked(QTableWidgetItem *) ) );
//QTableWidgetItem::QTableWidgetItem(const QIcon & icon, const QString & text, int type = Type) //QTableWidgetItem::QTableWidgetItem(const QIcon & icon, const QString & text, int type = Type)
// QTableWidgetItem *newItemFlag = new QTableWidgetItem(QIcon(flagSt), "T", 0); // QTableWidgetItem *newItemFlag = new QTableWidgetItem(QIcon(flagSt), "T", 0);
@ -355,119 +347,3 @@ void DXCCStatusWidget::refresh()
logNumber = -1; logNumber = -1;
} }
} }
void DXCCStatusWidget::slotItemEntered(QTableWidgetItem * item )
{
//qDebug() << "DXCCStatusWidget::slotItemEntered: " << ((item->data(0)).toString()).simplified() << endl;
//qDebug() << "DXCCStatusWidget::slotItemEntered: " << item->text() << endl;
QString tip;
tip.clear();
int row = -1;
int column = -1;
int bandi = -1;
QString band = QString();
if (item)
{
row = dxccView->row(item);
column = dxccView->column(item);
//qDebug() << "DXCCStatusWidget::slotItemEntered: row: " << QString::number(row) << endl;
//qDebug() << "DXCCStatusWidget::slotItemEntered: hrow: " << dxccView->verticalHeaderItem(row)->text() << endl;
row = (dxccView->item(row,0)->text()).toInt();
//qDebug() << "DXCCStatusWidget::slotItemEntered: column: " << QString::number(column) << endl;
if (column >= 2)
{
if (item->text() == "-")
{
tip = tr("Entity not worked in this band.");
}
else
{
band = dxccView->horizontalHeaderItem(column)->text();
//qDebug() << "DXCCStatusWidget::slotItemEntered: band: " << band << endl;
bandi = dataProxy->getIdFromBandName(band);
//qDebug() << "DXCCStatusWidget::slotItemEntered: band: " << QString::number(bandi) << endl;
tip = awards->getQSOofAward(row, bandi);
//qDebug() << "DXCCStatusWidget::slotItemEntered: tip: " << tip << endl;
if (tip.length()>3)
{
tip = "QSO: " + tip;
}
else
{
tip = tr("Text TBD.");
}
}
}
else
{
tip = ""; // TODO define a text to be shown when no band column is selected (maybe Continent & bearing or a link to wikipedia or whatever!)
}
item->setToolTip(tip);
//qDebug() << "DXCCStatusWidget::slotItemEntered: tip: " << tip << endl;
}
else
{}
//qDebug() << "DXCCStatusWidget::slotItemEntered: END " << endl;
}
void DXCCStatusWidget::slotItemDoubleClicked(QTableWidgetItem * item )
{
//qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: " << ((item->data(0)).toString()).simplified() << endl;
qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: " << item->text() << endl;
int row = -1;
int column = -1;
int qsoId = -1;
int bandi = -1;
QString band = QString();
if (item)
{
row = dxccView->row(item);
column = dxccView->column(item);
//qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: row: " << QString::number(row) << endl;
//qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: hrow: " << dxccView->verticalHeaderItem(row)->text() << endl;
row = (dxccView->item(row,0)->text()).toInt();
//qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: column: " << QString::number(column) << endl;
if (column >= 2)
{
if (item->text() == "-")
{
//tip = tr("Entity not worked in this band.");
}
else
{
band = dxccView->horizontalHeaderItem(column)->text();
//qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: band: " << band << endl;
bandi = dataProxy->getIdFromBandName(band);
//qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: band: " << QString::number(bandi) << endl;
qsoId = awards->getQSOIdofAward(row, bandi);
//qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: tip: " << tip << endl;
if (qsoId>0)
{
emit showQso(qsoId);
}
}
}
else
{
//tip = ""; // TODO define a text to be shown when no band column is selected (maybe Continent & bearing or a link to wikipedia or whatever!)
}
}
else
{}
//qDebug() << "DXCCStatusWidget::slotItemDoubleClicked: END " << endl;
}

View File

@ -49,14 +49,10 @@ public:
void refresh(); void refresh();
signals: signals:
void showQso(const int _qsoid); // identified QSO double clicking on DXCC
public slots: public slots:
//void slotSearchLineEditTextChanged(); //void slotSearchLineEditTextChanged();
void slotRefreshButtonClicked(); void slotRefreshButtonClicked();
void slotItemEntered(QTableWidgetItem * item );
void slotItemDoubleClicked(QTableWidgetItem * item );
private: private:
void createUI(); void createUI();
void setDefaultBands(); void setDefaultBands();

View File

@ -7,20 +7,20 @@ email : jaime@robles.es
***************************************************************************/ ***************************************************************************/
/***************************************************************************** /*****************************************************************************
* This file is part of KLog. * * This file is part of KLog. *
* * * *
* KLog is free software: you can redistribute it and/or modify * * KLog is free software: you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by * * it under the terms of the GNU General Public License as published by *
* the Free Software Foundation, either version 3 of the License, or * * the Free Software Foundation, either version 3 of the License, or *
* (at your option) any later version. * * (at your option) any later version. *
* * * *
* KLog is distributed in the hope that it will be useful, * * KLog is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of * * but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. * * GNU General Public License for more details. *
* * * *
* You should have received a copy of the GNU General Public License * * You should have received a copy of the GNU General Public License *
* along with KLog. If not, see <http://www.gnu.org/licenses/>. * * along with KLog. If not, see <http://www.gnu.org/licenses/>. *
* * * *
*****************************************************************************/ *****************************************************************************/
#include "dxcluster.h" #include "dxcluster.h"

View File

@ -3602,12 +3602,12 @@ bool FileManager::adifReadLog(const QString& tfileName, const int logN)
else else
{ {
errorCode = preparedQuery.lastError().number(); errorCode = preparedQuery.lastError().number();
qDebug() << "FileManager::adifReadLog: QSO DUPE" << endl; //qDebug() << "FileManager::adifReadLog: QSO DUPE" << endl;
qDebug() << "FileManager::adifReadLog: (1) LastQuery: " << preparedQuery.lastQuery() << endl; //qDebug() << "FileManager::adifReadLog: (1) LastQuery: " << preparedQuery.lastQuery() << endl;
qDebug() << "FileManager::adifReadLog: (1) LastError-data: " << preparedQuery.lastError().databaseText() << endl; //qDebug() << "FileManager::adifReadLog: (1) LastError-data: " << preparedQuery.lastError().databaseText() << endl;
qDebug() << "FileManager::adifReadLog: (1) LastError-driver: " << preparedQuery.lastError().driverText() << endl; //qDebug() << "FileManager::adifReadLog: (1) LastError-driver: " << preparedQuery.lastError().driverText() << endl;
qDebug() << "FileManager::adifReadLog: (1) LastError-n: " << QString::number(preparedQuery.lastError().number() ) << endl; //qDebug() << "FileManager::adifReadLog: (1) LastError-n: " << QString::number(preparedQuery.lastError().number() ) << endl;
if ((errorCode == 19) && (!ignoreErrorCode19)) if ((errorCode == 19) && (!ignoreErrorCode19))
{ // There are some repeated QSO { // There are some repeated QSO
QMessageBox msgBox; QMessageBox msgBox;

View File

@ -93,12 +93,12 @@ void InfoWidget::createUI()
QLabel *longLabelN = new QLabel(tr("Long Path")); QLabel *longLabelN = new QLabel(tr("Long Path"));
longLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter); longLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
QLabel *gradShortLabelN = new QLabel(tr("Deg")); QLabel *gradShortLabelN = new QLabel(tr("Degree"));
gradShortLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter); gradShortLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
gradShortLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter); gradShortLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
distShortLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter); distShortLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
QLabel *gradLongLabelN = new QLabel(tr("Deg")); QLabel *gradLongLabelN = new QLabel(tr("Degree"));
gradLongLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter); gradLongLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
gradLongLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter); gradLongLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
distShortLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter); distShortLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);

View File

@ -50,7 +50,6 @@ MainWindow::MainWindow(const QString _klogDir, const QString tversion)
//qDebug() << "MainWindow::MainWindow: "<< (QTime::currentTime()).toString("hhmmsszzz")<< endl; //qDebug() << "MainWindow::MainWindow: "<< (QTime::currentTime()).toString("hhmmsszzz")<< endl;
showErrorDialog = new ShowErrorDialog(); showErrorDialog = new ShowErrorDialog();
UDPLogServer = new UDPServer();
upAndRunning = false; // To define some actions that can only be run when starting the software upAndRunning = false; // To define some actions that can only be run when starting the software
//connect(&manager, SIGNAL(finished(QNetworkReply*)), SLOT(slotDownloadFinished(QNetworkReply*))); // To download cty.csv //connect(&manager, SIGNAL(finished(QNetworkReply*)), SLOT(slotDownloadFinished(QNetworkReply*))); // To download cty.csv
//flagIcon = new QPushButton; // To paint a flag of the worked entity //flagIcon = new QPushButton; // To paint a flag of the worked entity
@ -104,7 +103,6 @@ MainWindow::MainWindow(const QString _klogDir, const QString tversion)
myLocator = ""; myLocator = "";
dxLocator =""; dxLocator ="";
myPower = 0.0; myPower = 0.0;
UDPServerStart = true; // By default the UDP server is started
//lastPower = myPower; //lastPower = myPower;
//lastOperatorQRZ = operatorQRZ; //lastOperatorQRZ = operatorQRZ;
@ -2585,10 +2583,6 @@ void MainWindow::createActionsCommon(){
connect(searchWidget, SIGNAL(toStatusBar(QString) ), this, SLOT(slotUpdateStatusBar(QString) ) ); connect(searchWidget, SIGNAL(toStatusBar(QString) ), this, SLOT(slotUpdateStatusBar(QString) ) );
connect(searchWidget, SIGNAL(requestBeingShown() ), this, SLOT(slotShowSearchWidget() ) ); connect(searchWidget, SIGNAL(requestBeingShown() ), this, SLOT(slotShowSearchWidget() ) );
connect(searchWidget, SIGNAL(actionQSODelete( int ) ), this, SLOT(slotQSODelete(int) ) ); connect(searchWidget, SIGNAL(actionQSODelete( int ) ), this, SLOT(slotQSODelete(int) ) );
//DXCCWIDGET TAB
connect(dxccStatusWidget, SIGNAL(showQso(int)), this, SLOT(slotShowQSOFromDXCCWidget(int) ) );
} }
void MainWindow::slotSearchBoxTextChanged() void MainWindow::slotSearchBoxTextChanged()
@ -3130,8 +3124,8 @@ void MainWindow::slotClearButtonClicked()
nameLineEdit->clear(); nameLineEdit->clear();
locatorLineEdit->clear(); locatorLineEdit->clear();
txFreqSpinBox->setValue(0); //txFreqSpinBox->setValue(0);
rxFreqSpinBox->setValue(0); //rxFreqSpinBox->setValue(0);
//freqQLCDNumber->display(0); //freqQLCDNumber->display(0);
//notesTextEdit->clear(); //notesTextEdit->clear();
commentTabWidget->clear(); commentTabWidget->clear();
@ -3139,7 +3133,7 @@ void MainWindow::slotClearButtonClicked()
infoLabel1->clear(); infoLabel1->clear();
infoLabel2->clear(); infoLabel2->clear();
rxPowerSpinBox->setValue(0); //rxPowerSpinBox->setValue(0);
eQSLTabWidget->clear(); eQSLTabWidget->clear();
@ -4025,6 +4019,506 @@ void MainWindow::slotDoubleClickLog(const int _qsoID)
//TODO: To be added to the logWindow and create an action that emist the QSO id to be edited //TODO: To be added to the logWindow and create an action that emist the QSO id to be edited
} }
/*
void MainWindow::slotDoubleClickSearch(QTreeWidgetItem * item, int)
{
//qDebug() << "MainWindow::slotDoubleClickSearch" << endl;
int number = -1;
if (item){
if (stationCallSignShownInSearch)
{
number = (item->text(7)).toInt();
}
else
{
number = (item->text(6)).toInt();
}
qsoToEdit(number);
}
else
{}
}
*/
/*
void MainWindow::slotRighButtonSearch(const QPoint& pos)
{
//qDebug() << "MainWindow::slotRighButtonSearch" << endl;
QTreeWidgetItem *item = searchResultsTreeWidget->itemAt(pos);
int _qsoID = 0;
if (item)
{
//qDebug() << "MainWindow::slotRighButtonSearch ITEM=true" << endl;
// 6 is the column in the searchResultsTreeWidget where the id is saved
if (stationCallSignShownInSearch)
{
//qDebug() << "MainWindow::slotRighButtonSearch stationCallSignShownInSearch = true" << endl;
_qsoID = ((item)->text(7)).toInt();
//qDebug() << "MainWindow::slotRighButtonSearch QSO1: " << QString::number(_qsoID) << endl;
}
else
{
//qDebug() << "MainWindow::slotRighButtonSearch stationCallSignShownInSearch = false" << endl;
_qsoID = ((item)->text(6)).toInt();
//qDebug() << "MainWindow::slotRighButtonSearch QSO2: " << QString::number(_qsoID) << endl;
}
//qDebug() << "MainWindow::slotRighButtonSearch QSO: " << QString::number(_qsoID) << endl;
showMenuRightButtonSearchCreateActions();
//qDebug() << "MainWindow::slotRighButtonSearch -05" << endl;
righButtonSearchMenu(_qsoID);
//qDebug() << "MainWindow::slotRighButtonSearch -06" << endl;
}else
{
//qDebug() << "MainWindow::slotRighButtonSearch ITEM=false" << endl;
return;
}
//qDebug() << "MainWindow::slotRighButtonSearch: " << QString::number(_qsoID) << endl;
}
*/
/*
void MainWindow::righButtonSearchMenu(const int trow)
{
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: " << QString::number(trow) << endl;
bool qslReceived = logWindow->isQSLReceived(trow);
bool qslSent = logWindow->isQSLSent(trow);
QMenu menu(this);
menu.addAction(delQSOFromSearchAct);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -03" << endl;
delQSOFromSearchAct->setData(trow);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -04" << endl;
menu.addAction(qsoToEditFromSearchAct);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -05" << endl;
qsoToEditFromSearchAct->setData(trow);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -06" << endl;
menu.addSeparator();
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -07" << endl;
if (qslSent)
{
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSLSent" << endl;
}
else
{
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Sent" << endl;
QMenu *menuSentQsl = menu.addMenu(tr("QSL Send"));
menuSentQsl->addAction(qslSentViaBureauFromSearchAct);
menuSentQsl->addAction(qslSentViaDirectFromSearchAct);
menuSentQsl->addAction(qslSentRequestedAct);
if (!qslReceived)
{
menuSentQsl->addAction(qslSentViaBureauMarkRcvReqFromSearchAct);
menuSentQsl->addAction(qslSentViaDirectMarkRcvReqFromSearchAct);
qslSentViaBureauMarkRcvReqFromSearchAct->setData(trow);
qslSentViaDirectMarkRcvReqFromSearchAct->setData(trow);
}
qslSentViaBureauFromSearchAct->setData(trow);
qslSentViaDirectFromSearchAct->setData(trow);
qslSentRequestedAct->setData(trow);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -end qsl not sent" << endl;
}
if (qslReceived)
{
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSLRec" << endl;
}
else
{
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec" << endl;
QMenu *menuRecQsl = menu.addMenu(tr("QSL Rcvd"));
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 01" << endl;
menuRecQsl->addAction(qslRecViaBureauFromSearchAct);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 02" << endl;
menuRecQsl->addAction(qslRecViaBureauMarkReqFromSearchAct);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 03" << endl;
menuRecQsl->addAction(qslRecViaDirectFromSearchAct);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 04" << endl;
menuRecQsl->addAction(qslRecViaDirectMarkReqFromSearchAct);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 05" << endl;
menuRecQsl->addAction(qslRecRequestedAct);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 06" << endl;
qslRecViaBureauFromSearchAct->setData(trow);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 07" << endl;
qslRecViaBureauMarkReqFromSearchAct->setData(trow);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 08" << endl;
qslRecViaDirectFromSearchAct->setData(trow);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 09" << endl;
qslRecViaDirectMarkReqFromSearchAct->setData(trow);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -QSL Not Rec - 10" << endl;
qslRecRequestedAct->setData(trow);
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -end qsl not rec" << endl;
}
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -end qsl" << endl;
menu.exec(QCursor::pos());
//qDebug() << "MainWindow::slotshowRighButtonSearchMenu: -END" << endl;
}
void MainWindow::showMenuRightButtonSearchCreateActions()
{
//qDebug() << "MainWindow::showMenuRightButtonSearchCreateActions" << endl;
delQSOFromSearchAct = new QAction(tr("&Delete"), this);
delQSOFromSearchAct->setShortcut(Qt::CTRL + Qt::Key_D);
delQSOFromSearchAct->setStatusTip(tr("Delete a QSO"));
connect(delQSOFromSearchAct, SIGNAL(triggered()), this, SLOT(slotQsoDeleteFromSearch()));
qsoToEditFromSearchAct = new QAction(tr("&Edit QSO"), this);
qsoToEditFromSearchAct->setShortcut(Qt::CTRL + Qt::Key_E);
qsoToEditFromSearchAct->setStatusTip(tr("Edit this QSO"));
connect(qsoToEditFromSearchAct, SIGNAL(triggered()), this, SLOT(slotQSOToEditFromSearch()));
qslSentViaBureauFromSearchAct = new QAction(tr("Via &bureau"), this);
qslSentViaBureauFromSearchAct->setShortcut(Qt::CTRL + Qt::Key_B);
qslSentViaBureauFromSearchAct->setStatusTip(tr("Send this QSL via bureau"));
connect(qslSentViaBureauFromSearchAct, SIGNAL(triggered()), this, SLOT( slotQSLSentViaBureauFromSearch() ));
qslSentViaDirectFromSearchAct = new QAction(tr("D&irect"), this);
qslSentViaDirectFromSearchAct->setShortcut(Qt::CTRL + Qt::Key_I);
qslSentViaDirectFromSearchAct->setStatusTip(tr("Send this QSL via direct"));
connect(qslSentViaDirectFromSearchAct, SIGNAL(triggered()), this, SLOT( slotQSLSentViaDirectFromSearch() ));
qslSentRequestedAct = new QAction(tr("&Request my QSL"), this);
qslSentRequestedAct->setShortcut(Qt::CTRL + Qt::Key_R);
qslSentRequestedAct->setStatusTip(tr("Mark my QSL as requested"));
connect(qslSentRequestedAct, SIGNAL(triggered()), this, SLOT( slotQSLSentMarkAsRequested() ));
qslSentViaDirectMarkRcvReqFromSearchAct = new QAction(tr("Via Direct && mark DX QSL as requested"), this);
qslSentViaDirectMarkRcvReqFromSearchAct->setStatusTip(tr("Send this QSL via direct & mark DX QSL as requested"));
connect(qslSentViaDirectMarkRcvReqFromSearchAct, SIGNAL(triggered()), this, SLOT( slotQSLSentViaDirectMarkDXReqFromSearch() ));
qslSentViaBureauMarkRcvReqFromSearchAct = new QAction(tr("Via Bureau && mark DX QSL as requested"), this);
qslSentViaBureauMarkRcvReqFromSearchAct->setStatusTip(tr("Send this QSL via bureau & mark DX QSL as requested"));
connect(qslSentViaBureauMarkRcvReqFromSearchAct, SIGNAL(triggered()), this, SLOT( slotQSLSentViaBureuMarkDXReqFromSearch() ));
qslRecRequestedAct = new QAction(tr("&Request the QSL"), this);
qslRecRequestedAct->setStatusTip(tr("Mark the QSL as requested"));
connect(qslRecRequestedAct, SIGNAL(triggered()), this, SLOT( slotQSLRecMarkAsRequested() ));
qslRecViaBureauMarkReqFromSearchAct = new QAction(tr("Via bureau && mark my QSL as requested"), this);
qslRecViaBureauMarkReqFromSearchAct->setStatusTip(tr("QSL received via bureau & mark my QSL as requested"));
connect(qslRecViaBureauMarkReqFromSearchAct, SIGNAL(triggered()), this, SLOT( slotQSLRecViaBureauMarkReqFromSearch() ));
qslRecViaBureauFromSearchAct = new QAction(tr("Via bureau"), this);
qslRecViaBureauFromSearchAct->setStatusTip(tr("QSL received via bureau"));
//qslRecViaBureauFromSearchAct->setShortcut(Qt::CTRL + Qt::Key_R);
connect(qslRecViaBureauFromSearchAct, SIGNAL(triggered()), this, SLOT( slotQSLRecViaBureauFromSearch() ));
qslRecViaDirectMarkReqFromSearchAct = new QAction(tr("Direc&t && mark as my QSL requested"), this);
qslRecViaDirectMarkReqFromSearchAct->setStatusTip(tr("QSL received via direct & mark my QSL as requested"));
connect(qslRecViaDirectMarkReqFromSearchAct, SIGNAL(triggered()), this, SLOT( slotQSLRecViaDirectMarkReqFromSearch() ));
qslRecViaDirectFromSearchAct = new QAction(tr("Direc&t"), this);
qslRecViaBureauFromSearchAct->setStatusTip(tr("QSL received via direct"));
//qslRecViaDirectFromSearchAct->setShortcut(Qt::CTRL + Qt::Key_T);
connect(qslRecViaDirectFromSearchAct, SIGNAL(triggered()), this, SLOT( slotQSLRecViaDirectFromSearch() ));
}
void MainWindow::slotQSLSentViaBureuMarkDXReqFromSearch()
{
//qDebug() << "slotQSLSentViaBureuMarkDXReqFromSearch: " << (qslSentViaBureauMarkRcvReqFromSearchAct->data()).toString() << " - Id = " << QString::number( ((logModel->index( ( (qslSentViaBureauMarkRcvReqFromSearchAct->data()).toInt() ) , 0)).data(0).toInt()) ) << endl;
int _qsoId = (qslSentViaBureauMarkRcvReqFromSearchAct->data()).toInt();
dataProxy->qslSentViaBureau(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"));
dataProxy->qslRecAsRequested(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"));
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
// Mark Sent, Bureau, date, update log.
}
void MainWindow::slotQSLSentViaDirectMarkDXReqFromSearch()
{
//qDebug() << "slotQSLSentViaDirectMarkDXReqFromSearch: " << (qslSentViaDirectMarkRcvReqFromSearchAct->data()).toString() << " - Id = " << QString::number( ((logModel->index( ( (qslSentViaDirectMarkRcvReqFromSearchAct->data()).toInt() ) , 0)).data(0).toInt()) ) << endl;
int _qsoId = (qslSentViaDirectMarkRcvReqFromSearchAct->data()).toInt();
dataProxy->qslSentViaDirect(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"));
dataProxy->qslRecAsRequested(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"));
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
// Mark Sent, Bureau, date, update log.
}
void MainWindow::slotQSLSentViaBureauFromSearch()
{
// //qDebug() << "MainWindow::slotQSLSentViaBureauFromSearch: " << (qslSentViaBureauFromSearchAct->data()).toString() << " - Id = " << QString::number( ((logModel->index( ( (qslSentViaBureauFromSearchAct->data()).toInt() ) , 0)).data(0).toInt()) ) << endl;
int _qsoId = (qslSentViaBureauFromSearchAct->data()).toInt();
logWindow->qslSentViaBureau(_qsoId);
//qslSentViaBureau(_qsoId);
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
}
void MainWindow::slotQSLSentViaDirectFromSearch()
{
//qDebug() << "MainWindow::slotQSLSentViaDirectFromSearch: " << (qslSentViaDirectFromSearchAct->data()).toString() << " - Id = " << QString::number( ((logModel->index( ( (qslSentViaDirectFromLogAct->data()).toInt() ) , 0)).data(0).toInt()) ) << endl;
int _qsoId = ((qslSentViaDirectFromSearchAct->data()).toInt());
dataProxy->qslSentViaDirect(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"));
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
//qslSentViaDirect(_qsoId);
}
void MainWindow::slotQSLSentMarkAsRequested()
{
// bool qslSentAsRequested(const int _qsoId, const QString _updateDate);
int _qsoId = (qslSentRequestedAct->data()).toInt();
dataProxy->qslSentAsRequested(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"));
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
}
void MainWindow::slotQSLRecMarkAsRequested()
{
int _qsoId = (qslRecRequestedAct->data()).toInt();
dataProxy->qslRecAsRequested(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"));
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
}
void MainWindow::slotQSLRecViaBureauFromSearch()
{
//qDebug() << "MainWindow::slotQSLRecViaBureauFromLog: " << "- Id = " << QString::number( ((logModel->index( ( (qslRecViaBureauFromSearchAct->data()).toInt() ) , 0)).data(0).toInt()) ) << endl;
int _qsoId = (qslRecViaBureauFromSearchAct->data()).toInt();
logWindow->qslRecViaBureau(_qsoId);
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
}
void MainWindow::slotQSLRecViaBureauMarkReqFromSearch()
{
//qDebug() << "MainWindow::slotQSLRecViaBureauMarkReqFromLog: " << "- Id = " << QString::number( ((logModel->index( ( (qslRecViaBureauFromSearchAct->data()).toInt() ) , 0)).data(0).toInt()) ) << endl;
int _qsoId = (qslRecViaBureauMarkReqFromSearchAct->data()).toInt();
qslRecViaBureauMarkReq(_qsoId);
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
}
void MainWindow::slotQSLRecViaDirectFromSearch()
{
//qDebug() << "MainWindow::slotQSLRecViaDirectFromLog: " << (qslRecViaDirectFromSearchAct->data()).toString() << " - Id = " << QString::number( ((logModel->index( ( (qslRecViaDirectFromLogAct->data()).toInt() ) , 0)).data(0).toInt()) ) << endl;
int _qsoId = (qslRecViaDirectFromSearchAct->data()).toInt();
logWindow->qslRecViaDirect(_qsoId);
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
// Mark Sent, Bureau, date, update log.
}
void MainWindow::slotQSLRecViaDirectMarkReqFromSearch()
{
//qDebug() << "MainWindow::slotQSLRecViaDirectFromLog: " << (qslRecViaDirectFromSearchAct->data()).toString() << " - Id = " << QString::number( ((logModel->index( ( (qslRecViaDirectFromLogAct->data()).toInt() ) , 0)).data(0).toInt()) ) << endl;
int _qsoId = (qslRecViaDirectMarkReqFromSearchAct->data()).toInt();
qslRecViaDirectMarkReq(_qsoId);
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
// Mark Sent, Bureau, date, update log.
}
void MainWindow::qslRecViaBureauMarkReq(const int _qsoId)
{
// //qDebug() << "MainWindow::qslRecViaBureau: " << QString::number(_qsoId) << "/" << (dateTime->currentDateTime()).toString("yyyy/MM/dd") << endl;
//setAwards(const int _dxcc, const int _waz, const int _band, const int _mode, const int _workedOrConfirmed);
dataProxy->qslRecViaBureau(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"), true);
awards->setAwards(_qsoId); //Update the DXCC award status
logWindow->refresh();
showAwards();
}
void MainWindow::qslRecViaDirectMarkReq(const int _qsoId)
{
//qDebug() << "MainWindow::qslRecViaDirect: " << QString::number(_qsoId) << endl;
dataProxy->qslRecViaDirect(_qsoId, (dateTime->currentDateTime()).toString("yyyy/MM/dd"), true);
awards->setAwards(_qsoId);
//setAwards(const int _dxcc, const int _waz, const int _band, const int _mode, const int _workedOrConfirmed);
logWindow->refresh();
showAwards();
}
*/
/*
void MainWindow::slotQSOToEditFromSearch()
{
//qDebug() << "slotQSOToEditFromSearch: " << (qsoToEditFromSearchAct->data()).toString() << endl;
qsoToEdit((qsoToEditFromSearchAct->data()).toInt());
}
void MainWindow::slotQsoDeleteFromSearch()
{
//qDebug() << "MainWindow::slotQsoDeleteFromSearch: " << (delQSOFromSearchAct->data()).toString() << endl;
int QSOid = (delQSOFromSearchAct->data()).toInt();
//int x = -1;
QString _qrz = dataProxy->getCallFromId(QSOid);
if (_qrz.length()>=3)
{
QString message = QString(tr("You have requested to delete the QSO with: %1")).arg(_qrz);
QMessageBox msgBox;
msgBox.setIcon(QMessageBox::Question);
msgBox.setText(message);
msgBox.setInformativeText(tr("Are you sure?"));
msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No);
msgBox.setDefaultButton(QMessageBox::No);
int ret = msgBox.exec();
switch (ret)
{
case QMessageBox::Yes:
elogClublog->deleteQSO(dataProxy->getClubLogRealTimeFromId(QSOid));
if(dataProxy->deleteQSO(QSOid))
{
if(qslingNeeded)
{
searchToolNeededQSLToSend();
}
else
{
slotSearchBoxTextChanged();
}
slotShowAwards();
//dxccStatusWidget->refresh();
//awards->recalculateAwards();
//logWindow->refresh();
//showAwards();
}
else
{
//TODO: The QSO could not be removed...
}
break;
case QMessageBox::No:
// No was clicked
break;
default:
// should never be reached
break;
}
}
else
{
// TODO: The QSO to be removed was not found in the log
}
}
*/
void MainWindow::keyPressEvent(QKeyEvent *event){ void MainWindow::keyPressEvent(QKeyEvent *event){
@ -4185,29 +4679,6 @@ void MainWindow::readConfigData()
searchWidget->setColors (newOneColor.name(), neededColor.name(), workedColor.name(), confirmedColor.name(), defaultColor.name()); searchWidget->setColors (newOneColor.name(), neededColor.name(), workedColor.name(), confirmedColor.name(), defaultColor.name());
infoWidget->setColors(newOneColor.name(), neededColor.name(), workedColor.name(), confirmedColor.name(), defaultColor.name()); infoWidget->setColors(newOneColor.name(), neededColor.name(), workedColor.name(), confirmedColor.name(), defaultColor.name());
QString aux = tr("UDP Server error") + "</b><br>" + tr("The UDP server failed to ");
QString errorMSG;
//QString aux1 = "<br><b>" + tr("UDP Server error");
if (UDPServerStart)
{
if (!UDPLogServer->start())
{
errorMSG = tr("start");
showErrorDialog->setText(aux + errorMSG + ".");
showErrorDialog->exec();
}
}
else
{
if (!UDPLogServer->stop())
{
errorMSG = tr("stop");
showErrorDialog->setText(aux + errorMSG + ".");
showErrorDialog->exec();
}
}
//qDebug() << "MainWindow::readConfigData - END" << endl; //qDebug() << "MainWindow::readConfigData - END" << endl;
} }
@ -4251,7 +4722,9 @@ bool MainWindow::processConfigLine(const QString _line){
contestMode = value; contestMode = value;
}else if (field=="MODES"){ }else if (field=="MODES"){
//qDebug() << "MainWindow::processConfigLine: modes1: " << value << endl;
readActiveModes(value.split(", ", QString::SkipEmptyParts)); readActiveModes(value.split(", ", QString::SkipEmptyParts));
//qDebug() << "MainWindow::processConfigLine: modes2: " << value << endl;
}else if (field=="BANDS"){ }else if (field=="BANDS"){
//qDebug() << "MainWindow::processConfigLine: BANDS: " << value << endl; //qDebug() << "MainWindow::processConfigLine: BANDS: " << value << endl;
readActiveBands(value.split(", ", QString::SkipEmptyParts)); readActiveBands(value.split(", ", QString::SkipEmptyParts));
@ -4415,12 +4888,6 @@ bool MainWindow::processConfigLine(const QString _line){
{ {
defaultColor.setNamedColor(value); defaultColor.setNamedColor(value);
} }
else if (field=="UDPSERVER"){
UDPServerStart = true;
}
else if (field=="UDPSERVERPORT"){
UDPLogServer->setPort(value.toInt());
}
else if(field=="SELECTEDLOG") else if(field=="SELECTEDLOG")
{ {
currentLog = value.toInt(); currentLog = value.toInt();
@ -4566,7 +5033,7 @@ bool MainWindow::processConfigLine(const QString _line){
void MainWindow::checkIfNewBandOrMode() void MainWindow::checkIfNewBandOrMode()
{//Checks the log to see if there is a QSO with a band/mode {//Checks the log to see if there is a QSO with a band/mode
//that is not currently selected as active //that is not currently selected as active
//qDebug() << "MainWindow::checkIfNewBandOrMode" << endl; //qDebug() << "MainWindow::checkIfNewBandOrMode" << endl;
setupDialog->checkIfNewBandOrMode(); // Update the Setup dialog with new bands or modes setupDialog->checkIfNewBandOrMode(); // Update the Setup dialog with new bands or modes
//qDebug() << "MainWindow::checkIfNewBandOrMode after setupDialog" << endl; //qDebug() << "MainWindow::checkIfNewBandOrMode after setupDialog" << endl;
@ -4592,22 +5059,16 @@ void MainWindow::checkIfNewBandOrMode()
bands.clear(); bands.clear();
bands << qsTemp; bands << qsTemp;
//QSet<QString> set = bands.toSet();
//QSet<QString> set; modes << modesInLog;
//bands.clear(); modes.removeDuplicates();
//bands << set.toList();
//if (modesInLog.length()>0)
if (modesInLog.length()>0) //{
{ // modes.clear();
modes.clear(); // modes << modesInLog;
modes << modesInLog; //}
}
//set = modes.toSet();
//modes.clear();
//modes << set.toList();
/* /*
@ -4701,6 +5162,21 @@ void MainWindow::readActiveBands (const QStringList actives)
void MainWindow::readActiveModes (const QStringList actives) void MainWindow::readActiveModes (const QStringList actives)
{ {
//qDebug() << "MainWindow::readActiveModes: " << actives << endl; //qDebug() << "MainWindow::readActiveModes: " << actives << endl;
//qDebug() << "MainWindow::readActiveModes: start" << endl;
for (int i = 0;i<modes.length();i++)
{
//qDebug() << "MainWindow::readActiveModes: " << modes.at(i) << endl;
}
//qDebug() << "MainWindow::readActiveModes: start-END" << endl;
//qDebug() << "MainWindow::readActiveModes: actives start" << endl;
for (int i = 0;i<modes.length();i++)
{
//qDebug() << "MainWindow::readActiveModes: actives: " << actives.at(i) << endl;
}
//qDebug() << "MainWindow::readActiveModes: actives start-END" << endl;
bool atLeastOne = false; bool atLeastOne = false;
QString aux; QString aux;
@ -4710,7 +5186,7 @@ void MainWindow::readActiveModes (const QStringList actives)
for (int i = 0; i < actives.size() ; i++) for (int i = 0; i < actives.size() ; i++)
{ {
if (dataProxy->getIdFromModeName(actives.at(i)) < 0) if (dataProxy->getIdFromModeName(actives.at(i)) > 0)
//if (db->isValidMode(actives.at(i), false)) //if (db->isValidMode(actives.at(i), false))
{ {
if (!atLeastOne) if (!atLeastOne)
@ -4729,6 +5205,16 @@ void MainWindow::readActiveModes (const QStringList actives)
} }
modes.removeDuplicates(); modes.removeDuplicates();
modes.sort();
//qDebug() << "MainWindow::readActiveModes: end" << endl;
for (int i = 0;i<modes.length();i++)
{
//qDebug() << "MainWindow::readActiveModes: " << modes.at(i) << endl;
}
//qDebug() << "MainWindow::readActiveModes: end-END" << endl;
//qDebug() << "MainWindow::readActiveModes - END" << endl; //qDebug() << "MainWindow::readActiveModes - END" << endl;
} }
@ -4744,6 +5230,21 @@ void MainWindow::createData()
void MainWindow::createUIDX() void MainWindow::createUIDX()
{ {
//qDebug() << "MainWindow::createUIDX" << endl; //qDebug() << "MainWindow::createUIDX" << endl;
/*
QStringList continents;
QSqlQuery query2("SELECT shortname FROM continent");
while (query2.next()) {
if (query2.isValid())
{
continents << query2.value(0).toString();
}
}
iotaContinentComboBox->addItems(continents);
iotaNumberLineEdit = new QLineEdit;
iotaNumberLineEdit->setInputMask("000");
iotaNumberLineEdit->setText("000");
*/
//bands << "10M" << "15M" << "20M" << "40M" << "80M" << "160M"; //bands << "10M" << "15M" << "20M" << "40M" << "80M" << "160M";
//modes << "SSB" << "CW" << "RTTY"; //modes << "SSB" << "CW" << "RTTY";
@ -4776,6 +5277,29 @@ void MainWindow::createUIDX()
//spotItButton->setToolTip(tr("Spots this QSO to the DX Cluster - This function is still not implemented")); //spotItButton->setToolTip(tr("Spots this QSO to the DX Cluster - This function is still not implemented"));
clearButton->setToolTip(tr("Clears the QSO entry.")); clearButton->setToolTip(tr("Clears the QSO entry."));
//TODO REMOVE eQSL
/*
clublogComboBox->setToolTip(tr("Status on ClubLog"));
eqslSentComboBox->setToolTip(tr("Status of the eQSL sending"));
eqslRecComboBox->setToolTip(tr("Status of the eQSL reception"));
lotwSentComboBox->setToolTip(tr("Status of the LotW sending"));
lotwRecComboBox->setToolTip(tr("Status of the LotW reception"));
clublogQDateEdit->setToolTip(tr("Date of the ClubLog upload"));
eqslSentQDateEdit->setToolTip(tr("Date of the eQSL sending"));
eqslRecQDateEdit->setToolTip(tr("Date of the eQSL reception"));
lotwSentQDateEdit->setToolTip(tr("Date of the LotW sending"));
lotwRecQDateEdit->setToolTip(tr("Date of the LotW reception"));
qslSentComboBox->setToolTip(tr("Status of the QSL sending"));
qslRecComboBox->setToolTip(tr("Status of the QSL reception"));
qslSentViaComboBox->setToolTip(tr("QSL sending information"));
qslRecViaComboBox->setToolTip(tr("QSL reception information"));
qslSentQDateEdit->setToolTip(tr("Date of the QSL sending"));
qslRecQDateEdit->setToolTip(tr("Date of the QSL reception"));
qslmsgTextEdit->setToolTip(tr("Message of the QSL"));
qslViaLineEdit->setToolTip(tr("QSL via information"));
*/
dxccConfirmedQLCDNumber->setToolTip(tr("Number of confirmed DXCC entities.")); dxccConfirmedQLCDNumber->setToolTip(tr("Number of confirmed DXCC entities."));
dxccWorkedQLCDNumber->setToolTip(tr("Number of worked DXCC entities.")); dxccWorkedQLCDNumber->setToolTip(tr("Number of worked DXCC entities."));
wazConfirmedQLCDNumber->setToolTip(tr("Number of confirmed WAZ zones.")); wazConfirmedQLCDNumber->setToolTip(tr("Number of confirmed WAZ zones."));
@ -4793,6 +5317,13 @@ void MainWindow::createUIDX()
infoLabel1->setToolTip(tr("Status of the DX entity.")); infoLabel1->setToolTip(tr("Status of the DX entity."));
infoLabel2->setToolTip(tr("Name of the DX entity.")); infoLabel2->setToolTip(tr("Name of the DX entity."));
//entityPrimDivComboBox->setToolTip(tr("Select the primary division for this QSO"));
//entitySecDivComboBox->setToolTip(tr("Select the secondary division for this QSO"));
//entityNameComboBox->setToolTip(tr("Select the propagation mode for this current QSO"));
//propModeComboBox->setToolTip(tr("Select the propagation mode for this current QSO"));
//QGridLayout *layout = new QGridLayout;
dxUpLeftInputFrame = new QFrame; dxUpLeftInputFrame = new QFrame;
//dxUpRightOutputFrame = new QFrame; //dxUpRightOutputFrame = new QFrame;
@ -4929,8 +5460,121 @@ void MainWindow::createUIDX()
qsoInputTabWidget->setLayout(qsoInputTabWidgetMainLayout); qsoInputTabWidget->setLayout(qsoInputTabWidgetMainLayout);
//QWidget *qslInputTabWidget = new QWidget;
//QWidget *eqslInputTabWidget = new QWidget;
//QWidget *commentInputTabWidget = new QWidget;
//QWidget *othersInputTabWidget = new QWidget;
//QWidget *myDataInputTabWidget = new QWidget;
dxUpLeftTab->addTab(qsoInputTabWidget, tr("QSO")); dxUpLeftTab->addTab(qsoInputTabWidget, tr("QSO"));
// QSL Tab definition starts here
//QLabel *QSLSentLabelN = new QLabel(tr("QSL Sent"));
//QSLSentLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
//QLabel *QSLRecLabelN = new QLabel(tr("QSL Rec"));
//QSLRecLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
//QLabel *QSLViaLabelN = new QLabel(tr("QSL Via"));
//QSLViaLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
/*
entityNameComboBox = new QComboBox;entitiesList
if (entitiesList.size()>1)
{
entitiesList.prepend("00-Not Identified (000)");
entityNameComboBox->addItems(entitiesList);
}
if (propModeList.size()>1)
{
propModeList.prepend("00 - Not - Not Identified");
propModeComboBox->addItems(propModeList);
}
QGridLayout *QSLLayout = new QGridLayout;
QSLLayout->addWidget(QSLSentLabelN, 0, 0);
QSLLayout->addWidget(QSLRecLabelN, 1, 0);
QSLLayout->addWidget(QSLViaLabelN, 2, 0);
QSLLayout->addWidget(qslSentComboBox, 0, 1);
QSLLayout->addWidget(qslRecComboBox, 1, 1);
QSLLayout->addWidget(qslViaLineEdit, 2, 1, 1, -1);
QSLLayout->addWidget(qslSentQDateEdit, 0, 2);
QSLLayout->addWidget(qslRecQDateEdit, 1, 2);
QSLLayout->addWidget(qslSentViaComboBox, 0, 3);
QSLLayout->addWidget(qslRecViaComboBox, 1, 3);
qslInputTabWidget->setLayout(QSLLayout);
*/
/*
// eQSL Tab definition starts here
QLabel *clublogLabelN = new QLabel(tr("ClubLog"));
clublogLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
QLabel *eQSLSentLabelN = new QLabel(tr("eQSL Sent"));
eQSLSentLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
QLabel *eQSLRecLabelN = new QLabel(tr("eQSL Rec"));
eQSLRecLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
QLabel *lotWSentLabelN = new QLabel(tr("LotW Sent"));
lotWSentLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
QLabel *lotWRecLabelN = new QLabel(tr("LotW Rec"));
lotWRecLabelN->setAlignment(Qt::AlignVCenter| Qt::AlignRight);
QHBoxLayout *eqslSentLayout = new QHBoxLayout;
eqslSentLayout->addWidget(eqslSentComboBox);
eqslSentLayout->addWidget(eqslSentQDateEdit);
QHBoxLayout *eqslRecLayout = new QHBoxLayout;
eqslRecLayout->addWidget(eqslRecComboBox);
eqslRecLayout->addWidget(eqslRecQDateEdit);
QHBoxLayout *lotwSentLayout = new QHBoxLayout;
lotwSentLayout->addWidget(lotwSentComboBox);
lotwSentLayout->addWidget(lotwSentQDateEdit);
QHBoxLayout *lotwRecLayout = new QHBoxLayout;
lotwRecLayout->addWidget(lotwRecComboBox);
lotwRecLayout->addWidget(lotwRecQDateEdit);
QFormLayout *eqslInputTabWidgetLayout = new QFormLayout;
eqslInputTabWidgetLayout->addRow(eQSLSentLabelN, eqslSentLayout);
eqslInputTabWidgetLayout->addRow(eQSLRecLabelN, eqslRecLayout);
eqslInputTabWidgetLayout->addRow(lotWSentLabelN, lotwSentLayout);
eqslInputTabWidgetLayout->addRow(lotWRecLabelN, lotwRecLayout);
*/
/*
QGridLayout *eqslInputTabWidgetLayout = new QGridLayout;
eqslInputTabWidgetLayout->addWidget(clublogLabelN, 0, 0);
eqslInputTabWidgetLayout->addWidget(eQSLSentLabelN, 1, 0);
eqslInputTabWidgetLayout->addWidget(eQSLRecLabelN, 2, 0);
eqslInputTabWidgetLayout->addWidget(lotWSentLabelN, 3, 0);
eqslInputTabWidgetLayout->addWidget(lotWRecLabelN, 4, 0);
eqslInputTabWidgetLayout->addWidget(clublogComboBox, 0, 1);
eqslInputTabWidgetLayout->addWidget(eqslSentComboBox, 1, 1);
eqslInputTabWidgetLayout->addWidget(eqslRecComboBox, 2, 1);
eqslInputTabWidgetLayout->addWidget(lotwSentComboBox, 3, 1);
eqslInputTabWidgetLayout->addWidget(lotwRecComboBox, 4, 1);
eqslInputTabWidgetLayout->addWidget(clublogQDateEdit, 0, 2);
eqslInputTabWidgetLayout->addWidget(eqslSentQDateEdit, 1, 2);
eqslInputTabWidgetLayout->addWidget(eqslRecQDateEdit, 2, 2);
eqslInputTabWidgetLayout->addWidget(lotwSentQDateEdit, 3, 2);
eqslInputTabWidgetLayout->addWidget(lotwRecQDateEdit, 4, 2);
eqslInputTabWidget->setLayout(eqslInputTabWidgetLayout);
dxUpLeftTab->addTab(eqslInputTabWidget, tr("eQSL-old"));
*/
/* /*
// NOTES tab starts here // NOTES tab starts here
QGridLayout *notesInputTabWidgetLayout = new QGridLayout; QGridLayout *notesInputTabWidgetLayout = new QGridLayout;
@ -4949,6 +5593,8 @@ void MainWindow::createUIDX()
dxUpLeftTab->addTab(myDataTabWidget, tr("My Data")); dxUpLeftTab->addTab(myDataTabWidget, tr("My Data"));
dxUpLeftTab->addTab(satTabWidget, tr("Satellite")); dxUpLeftTab->addTab(satTabWidget, tr("Satellite"));
QHBoxLayout *TimeLayout = new QHBoxLayout; QHBoxLayout *TimeLayout = new QHBoxLayout;
TimeLayout->addWidget(dateEdit); TimeLayout->addWidget(dateEdit);
TimeLayout->addWidget(timeEdit); TimeLayout->addWidget(timeEdit);
@ -4961,6 +5607,7 @@ void MainWindow::createUIDX()
QrzBandModeLayout->addWidget(qrzLineEdit); QrzBandModeLayout->addWidget(qrzLineEdit);
QrzBandModeLayout->addLayout(BandModeLayout); QrzBandModeLayout->addLayout(BandModeLayout);
qrzgroupBox = new QGroupBox(tr("QRZ")); qrzgroupBox = new QGroupBox(tr("QRZ"));
qrzgroupBox->setFlat(true); qrzgroupBox->setFlat(true);
QVBoxLayout *qrzvbox = new QVBoxLayout; QVBoxLayout *qrzvbox = new QVBoxLayout;
@ -4977,6 +5624,7 @@ void MainWindow::createUIDX()
dateEdit->setDisplayFormat("yyyy/MM/dd"); dateEdit->setDisplayFormat("yyyy/MM/dd");
timeEdit->setDisplayFormat("HH:mm:ss"); timeEdit->setDisplayFormat("HH:mm:ss");
QGridLayout *dxUpLeftInputFrameLayout = new QGridLayout; QGridLayout *dxUpLeftInputFrameLayout = new QGridLayout;
dxUpLeftInputFrameLayout->addWidget(qrzgroupBox, 0, 0, 1, 0); dxUpLeftInputFrameLayout->addWidget(qrzgroupBox, 0, 0, 1, 0);
dxUpLeftInputFrameLayout->addLayout(TimeLayout, 1, 0); dxUpLeftInputFrameLayout->addLayout(TimeLayout, 1, 0);
@ -5009,8 +5657,10 @@ void MainWindow::createUIDX()
dxMarathonTopScoreLabelN->setAlignment(Qt::AlignVCenter | Qt::AlignCenter); dxMarathonTopScoreLabelN->setAlignment(Qt::AlignVCenter | Qt::AlignCenter);
dxMarathonLabelN->setAlignment(Qt::AlignVCenter | Qt::AlignCenter); dxMarathonLabelN->setAlignment(Qt::AlignVCenter | Qt::AlignCenter);
dxUpRightTab->addTab(infoWidget, tr("Info")); dxUpRightTab->addTab(infoWidget, tr("Info"));
QWidget *awardsTabWidget = new QWidget; QWidget *awardsTabWidget = new QWidget;
QLabel *awardLabelN = new QLabel(tr("Award")); QLabel *awardLabelN = new QLabel(tr("Award"));
@ -5076,6 +5726,7 @@ void MainWindow::createUIDX()
dxUpRightTab->addTab(searchWidget, tr("Search")); dxUpRightTab->addTab(searchWidget, tr("Search"));
dxBottonTab->addTab(logWindow, tr("Log")); dxBottonTab->addTab(logWindow, tr("Log"));
dxBottonTab->addTab(dxClusterWidget, tr("DX-Cluster")); dxBottonTab->addTab(dxClusterWidget, tr("DX-Cluster"));
dxBottonTab->addTab(dxccStatusWidget, tr("DXCC")); dxBottonTab->addTab(dxccStatusWidget, tr("DXCC"));
@ -6886,11 +7537,6 @@ void MainWindow::slotFreqRXChanged()
//qDebug() << "MainWindow::slotFreqRXChanged: END" << endl; //qDebug() << "MainWindow::slotFreqRXChanged: END" << endl;
} }
void MainWindow::slotShowQSOFromDXCCWidget(const int _q)
{
qDebug() << "MainWindow::slotShowQSOFromDXCCWidget: " << QString::number(_q)<< endl;
}
void MainWindow::slotQueryErrorManagement(QString functionFailed, QString errorCodeS, int errorCodeN, QString queryFailed) void MainWindow::slotQueryErrorManagement(QString functionFailed, QString errorCodeS, int errorCodeN, QString queryFailed)
{ {
//qDebug() << "MainWindow::slotQueryErrorManagement: Function: " << functionFailed << endl; //qDebug() << "MainWindow::slotQueryErrorManagement: Function: " << functionFailed << endl;
@ -6952,4 +7598,3 @@ void MainWindow::slotUpdateLocator(QString _loc)
{ {
locatorLineEdit->setText(_loc.toUpper()); locatorLineEdit->setText(_loc.toUpper());
} }

View File

@ -63,7 +63,6 @@
#include "searchwidget.h" #include "searchwidget.h"
#include "infowidget.h" #include "infowidget.h"
#include "showerrordialog.h" #include "showerrordialog.h"
#include "udpserver.h"
@ -273,9 +272,6 @@ private slots:
void slotChangeRXFreq(const QString _f); void slotChangeRXFreq(const QString _f);
void slotChangeTXFreq(const QString _f); void slotChangeTXFreq(const QString _f);
//DXCCWIDGET
void slotShowQSOFromDXCCWidget(const int _q);
private: private:
bool maybeSave(); bool maybeSave();
@ -417,7 +413,6 @@ private:
LogModel *logModel; LogModel *logModel;
LogWindow *logWindow; LogWindow *logWindow;
UDPServer *UDPLogServer;
ShowErrorDialog *showErrorDialog; ShowErrorDialog *showErrorDialog;
@ -646,8 +641,6 @@ private:
SoftwareUpdate *softUpdate; SoftwareUpdate *softUpdate;
bool callingUpdate; bool callingUpdate;
bool UDPServerStart;
//LOGVIEW //LOGVIEW
//QString bandOld, modeOld; //QString bandOld, modeOld;

View File

@ -350,10 +350,10 @@ void MainWindowSatTab::clear()
satNameComboBox->setCurrentIndex(0); satNameComboBox->setCurrentIndex(0);
satNameLineEdit->clear(); satNameLineEdit->clear();
txFreqSpinBox->setValue(0); //txFreqSpinBox->setValue(0);
rxFreqSpinBox->setValue(0); //rxFreqSpinBox->setValue(0);
satBandRXComboBox->setCurrentIndex(0); //satBandRXComboBox->setCurrentIndex(0);
satBandTXComboBox->setCurrentIndex(0); //satBandTXComboBox->setCurrentIndex(0);
} }

View File

@ -1168,8 +1168,3 @@ void SearchWidget::slotToolSearchNeededQSLRequested()
{ // Requested DX QSL { // Requested DX QSL
slotToolSearchQSL(3); slotToolSearchQSL(3);
} }
void SearchWidget::showQSO(const int _q)
{
qDebug() << "SearchWidget::showQSO: " << QString::number(_q) << endl;
}

View File

@ -47,8 +47,7 @@ public:
void setVersion (const QString _version); // Defines the KLog version to be written in the exported logs void setVersion (const QString _version); // Defines the KLog version to be written in the exported logs
void setShowCallInSearch(const bool _sh); void setShowCallInSearch(const bool _sh);
void clear(); void clear();
void showQSO(const int _q);
Tengo que reibir elID y mostrar el QSO
void searchToolNeededQSLToSend(); void searchToolNeededQSLToSend();
public slots: public slots:
@ -102,7 +101,6 @@ signals:
private: private:
void createUI(); void createUI();
// void addQSOToTheList(const int _id);
QLineEdit *searchBoxLineEdit; QLineEdit *searchBoxLineEdit;

View File

@ -507,8 +507,6 @@ qDebug() << "SetupDialog::slotOkButtonClicked" << endl;
stream << "ShowCallsignInSearch=" << miscPage->getShowStationCallSignInSearch() << ";" << endl; stream << "ShowCallsignInSearch=" << miscPage->getShowStationCallSignInSearch() << ";" << endl;
stream << "KeepMyData=" << miscPage->getKeepMyData() << ";" << endl; stream << "KeepMyData=" << miscPage->getKeepMyData() << ";" << endl;
stream << "CompleteWithPrevious=" << miscPage->getCompleteWithPrevious() << ";" << endl; stream << "CompleteWithPrevious=" << miscPage->getCompleteWithPrevious() << ";" << endl;
stream << "UDPServer=" << miscPage->getUDPServer() << ";" << endl;
stream << "UDPServerPort=" << miscPage->getUDPServerPort() << ";" << endl;
stream << "CheckNewVersions=" << miscPage->getCheckNewVersions() << ";" << endl; stream << "CheckNewVersions=" << miscPage->getCheckNewVersions() << ";" << endl;
if ((miscPage->getReportInfo()).toUpper() == "TRUE") if ((miscPage->getReportInfo()).toUpper() == "TRUE")
@ -670,9 +668,11 @@ bool SetupDialog::processConfigLine(const QString _line)
}else if (tab=="CONTEST"){ }else if (tab=="CONTEST"){
//userDataPage->setContest(value); //userDataPage->setContest(value);
}else if (tab=="MODES"){ }else if (tab=="MODES"){
//qDebug() << "SetupDialog::processConfigLine: MODES: " << value << endl;
readActiveModes(value); readActiveModes(value);
modes.removeDuplicates(); modes.removeDuplicates();
bandModePage->setActiveModes(modes); bandModePage->setActiveModes(modes);
//qDebug() << "SetupDialog::processConfigLine: MODES-2: " << value << endl;
}else if (tab=="BANDS"){ }else if (tab=="BANDS"){
readActiveBands(value); readActiveBands(value);
bands.removeDuplicates(); bands.removeDuplicates();
@ -710,12 +710,6 @@ bool SetupDialog::processConfigLine(const QString _line)
else if (tab=="PROVIDEINFO"){ else if (tab=="PROVIDEINFO"){
miscPage->setReportInfo(value); miscPage->setReportInfo(value);
} }
else if (tab=="UDPSERVER"){
miscPage->setUDPServer(value);
}
else if (tab=="UDPSERVERPORT"){
miscPage->setUDPServerPort(value);
}
else if (tab =="NAME") else if (tab =="NAME")
{ {
userDataPage->setName(value); userDataPage->setName(value);
@ -926,10 +920,8 @@ void SetupDialog::readActiveModes (const QString actives)
atLeastOne = true; atLeastOne = true;
_amodes.clear(); _amodes.clear();
} }
_amodes << values.at(i); _amodes << values.at(i);
} }
} }
modes.clear(); modes.clear();
@ -937,10 +929,7 @@ void SetupDialog::readActiveModes (const QString actives)
modes << _amodes; modes << _amodes;
modes.removeDuplicates(); modes.removeDuplicates();
//qDebug() << "SetupDialog::readActiveModes-end: " << modes.join(" / ") << endl;
//qDebug() << "SetupDialog::readActiveModes: " << modes.join(" / ") << endl;
} }
bool SetupDialog::isValidBand (const QString b) bool SetupDialog::isValidBand (const QString b)
@ -976,8 +965,6 @@ void SetupDialog::setDefaults()
miscPage->setKeepMyData("TRUE"); miscPage->setKeepMyData("TRUE");
miscPage->setCheckNewVersions("TRUE"); miscPage->setCheckNewVersions("TRUE");
miscPage->setReportInfo("FALSE"); miscPage->setReportInfo("FALSE");
miscPage->setUDPServer("TRUE");
miscPage->setUDPServerPort("2237");
dxClusterPage->setShowHFRadiobutton("TRUE"); dxClusterPage->setShowHFRadiobutton("TRUE");
dxClusterPage->setShowVHFRadiobutton("TRUE"); dxClusterPage->setShowVHFRadiobutton("TRUE");

View File

@ -53,8 +53,6 @@ SetupPageMisc::SetupPageMisc(QWidget *parent) : QWidget(parent){
fileNameButton = new QPushButton (tr("Browse")); fileNameButton = new QPushButton (tr("Browse"));
dbPushButton = new QPushButton (tr("Browse")); dbPushButton = new QPushButton (tr("Browse"));
moveDBPushButton = new QPushButton(tr("Move DB")); moveDBPushButton = new QPushButton(tr("Move DB"));
UDPServerCheckBox = new QCheckBox(tr("Start UDP Server"), this);
UDPServerPortSpinBox = new QSpinBox;
dbPathApplied = true; dbPathApplied = true;
@ -102,9 +100,6 @@ void SetupPageMisc::createUI()
dbPathLineEdit->setReadOnly(false); dbPathLineEdit->setReadOnly(false);
dbPathLineEdit->setText(dbDirCurrent); dbPathLineEdit->setText(dbDirCurrent);
dbPathLineEdit->setEnabled(true); dbPathLineEdit->setEnabled(true);
UDPServerCheckBox->setChecked(true);
UDPServerPortSpinBox->setEnabled(true);
useDefaultName->setChecked(true); useDefaultName->setChecked(true);
alwaysADIFCheckBox->setChecked(true); alwaysADIFCheckBox->setChecked(true);
@ -128,19 +123,6 @@ void SetupPageMisc::createUI()
fileNameButton->setToolTip(tr("Click to change the default ADIF file.")); fileNameButton->setToolTip(tr("Click to change the default ADIF file."));
dbPushButton->setToolTip(tr("Click to change the path of the database.")); dbPushButton->setToolTip(tr("Click to change the path of the database."));
moveDBPushButton->setToolTip(tr("Click to move the DB to the new directory.")); moveDBPushButton->setToolTip(tr("Click to move the DB to the new directory."));
UDPServerCheckBox->setToolTip(tr("UDP Server will receive QSOs sent from other programs like WSJT-X allowing you to log in in KLog automatically from those programs."));
UDPServerPortSpinBox->setToolTip(tr("UDP port number where the UDP Server will listen for connections. Make sure it is the same port where the other programs are sending the data to."));
UDPServerPortSpinBox->setMinimum(0);
UDPServerPortSpinBox->setMaximum(65535);
QLabel *udpPortLabel = new QLabel(tr("UDP Port"));
udpPortLabel->setBuddy(UDPServerPortSpinBox);
udpPortLabel->setAlignment(Qt::AlignVCenter| Qt::AlignCenter);
QHBoxLayout *UDPLayout = new QHBoxLayout;
UDPLayout->addWidget(UDPServerCheckBox);
UDPLayout->addWidget(udpPortLabel);
UDPLayout->addWidget(UDPServerPortSpinBox);
QHBoxLayout *fileLayout = new QHBoxLayout; QHBoxLayout *fileLayout = new QHBoxLayout;
fileLayout->addWidget(useDefaultName); fileLayout->addWidget(useDefaultName);
@ -163,7 +145,6 @@ void SetupPageMisc::createUI()
mainLayou1->addLayout(fileLayout, 0, 0, 1, -1); mainLayou1->addLayout(fileLayout, 0, 0, 1, -1);
mainLayou1->addLayout(dbLayout, 1, 0, 1, -1); mainLayou1->addLayout(dbLayout, 1, 0, 1, -1);
mainLayou1->addWidget(alwaysADIFCheckBox, 2, 0, 1, 1); mainLayou1->addWidget(alwaysADIFCheckBox, 2, 0, 1, 1);
mainLayou1->addLayout(UDPLayout, 2, 1, 1, 1);
mainLayou1->addWidget(UTCCheckbox, 3, 0, 1, 1); mainLayou1->addWidget(UTCCheckbox, 3, 0, 1, 1);
mainLayou1->addWidget(realTimeCheckbox, 3, 1, 1, 1); mainLayou1->addWidget(realTimeCheckbox, 3, 1, 1, 1);
mainLayou1->addWidget(imperialCheckBox, 4, 0, 1, 1); mainLayou1->addWidget(imperialCheckBox, 4, 0, 1, 1);
@ -189,7 +170,6 @@ void SetupPageMisc::createActions(){
connect(dbPushButton, SIGNAL(clicked () ), this, SLOT(slotDBButtonClicked() ) ); connect(dbPushButton, SIGNAL(clicked () ), this, SLOT(slotDBButtonClicked() ) );
connect(dbPathLineEdit, SIGNAL(textChanged(QString)), this, SLOT(slotDBLineEditChanged() ) ); connect(dbPathLineEdit, SIGNAL(textChanged(QString)), this, SLOT(slotDBLineEditChanged() ) );
connect(moveDBPushButton, SIGNAL(clicked () ), this, SLOT(slotMoveDBButtonClicked() ) ); connect(moveDBPushButton, SIGNAL(clicked () ), this, SLOT(slotMoveDBButtonClicked() ) );
connect(UDPServerCheckBox, SIGNAL(clicked () ), this, SLOT(slotUDPServerCheckBoxClicked() ) );
} }
@ -496,64 +476,6 @@ void SetupPageMisc::setCompleteWithPrevious(const QString t)
} }
} }
void SetupPageMisc::slotUDPServerCheckBoxClicked()
{
if ( UDPServerCheckBox->isChecked())
{
UDPServerPortSpinBox->setEnabled(true);
}
else
{
UDPServerPortSpinBox->setEnabled(false);
}
}
QString SetupPageMisc::getUDPServer()
{
if (UDPServerCheckBox->isChecked())
{
return "True";
}
else
{
return "False";
}
}
void SetupPageMisc::setUDPServer(const QString t)
{
if ( (t.toUpper()) == "FALSE")
{
UDPServerCheckBox->setChecked(false);
}
else
{
UDPServerCheckBox->setChecked(true);
}
}
void SetupPageMisc::setUDPServerPort(const QString t)
{
if ( (t.toInt()>=0) && (t.toInt()<=65535))
{
UDPServerPortSpinBox->setValue(t.toInt());
}
}
QString SetupPageMisc::getUDPServerPort()
{
int t = UDPServerPortSpinBox->value();
if ( (t>=0) && (t<=65535) )
{
return QString::number(t);
}
else
{
return "-1";
}
}
void SetupPageMisc::slotcheckNewVersionCheckBoxClicked() void SetupPageMisc::slotcheckNewVersionCheckBoxClicked()
{ {
if (checkNewVersionCheckBox->isChecked()) if (checkNewVersionCheckBox->isChecked())

View File

@ -66,10 +66,6 @@ public:
void setCheckNewVersions(const QString t); void setCheckNewVersions(const QString t);
QString getReportInfo(); QString getReportInfo();
void setReportInfo(const QString t); void setReportInfo(const QString t);
void setUDPServer(const QString t);
QString getUDPServer();
void setUDPServerPort(const QString t);
QString getUDPServerPort();
bool areDBPathChangesApplied(); bool areDBPathChangesApplied();
@ -82,7 +78,6 @@ private slots:
void slotDBButtonClicked(); void slotDBButtonClicked();
void slotDBLineEditChanged(); void slotDBLineEditChanged();
void slotMoveDBButtonClicked(); void slotMoveDBButtonClicked();
void slotUDPServerCheckBoxClicked();
private: private:
void createActions(); void createActions();
@ -90,7 +85,7 @@ private:
Utilities *util; Utilities *util;
QCheckBox *realTimeCheckbox, *UTCCheckbox, *alwaysADIFCheckBox, *useDefaultName, *completeWithPreviousCheckBox, *UDPServerCheckBox;; QCheckBox *realTimeCheckbox, *UTCCheckbox, *alwaysADIFCheckBox, *useDefaultName, *completeWithPreviousCheckBox;
QCheckBox *imperialCheckBox, *sendQSLWhenRecCheckBox, *showStationCallWhenSearchCheckBox, *keepMyDataCheckBox; QCheckBox *imperialCheckBox, *sendQSLWhenRecCheckBox, *showStationCallWhenSearchCheckBox, *keepMyDataCheckBox;
QCheckBox *checkNewVersionCheckBox, *provideCallCheckBox; QCheckBox *checkNewVersionCheckBox, *provideCallCheckBox;
QString defaultFileName; QString defaultFileName;
@ -100,7 +95,6 @@ private:
QString klogDir, dbDirNew, dbDirCurrent; //TODO: To be removed when the defaultDir is saved in the config file QString klogDir, dbDirNew, dbDirCurrent; //TODO: To be removed when the defaultDir is saved in the config file
QPalette palRight, palWrong; // To paint Text in red or black(normal) QPalette palRight, palWrong; // To paint Text in red or black(normal)
QSpinBox *UDPServerPortSpinBox;
bool dbPathApplied; bool dbPathApplied;
//QWidget *bandsWidget; //QWidget *bandsWidget;

View File

@ -346,12 +346,12 @@ msgctxt "DataProxy_SQLite|"
msgid "No query failed" msgid "No query failed"
msgstr "" msgstr ""
#: ../dataproxy_sqlite.cpp:3947 #: ../dataproxy_sqlite.cpp:3957
msgctxt "DataProxy_SQLite|" msgctxt "DataProxy_SQLite|"
msgid "KLog DXCC" msgid "KLog DXCC"
msgstr "" msgstr ""
#: ../dataproxy_sqlite.cpp:3948 #: ../dataproxy_sqlite.cpp:3958
msgctxt "DataProxy_SQLite|" msgctxt "DataProxy_SQLite|"
msgid "All QSOs have been updated with a DXCC." msgid "All QSOs have been updated with a DXCC."
msgstr "" msgstr ""
@ -439,7 +439,7 @@ msgctxt "FileManager|"
msgid "Exporting LoTW ADIF file..." msgid "Exporting LoTW ADIF file..."
msgstr "" msgstr ""
#: ../filemanager.cpp:442 #: ../filemanager.cpp:442 ../filemanager.cpp:3587
msgctxt "FileManager|" msgctxt "FileManager|"
msgid " QSO: " msgid " QSO: "
msgstr "" msgstr ""
@ -458,7 +458,7 @@ msgid ""
"be exported." "be exported."
msgstr "" msgstr ""
#: ../filemanager.cpp:2629 #: ../filemanager.cpp:2629 ../filemanager.cpp:3753
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "Do you still want to cancel?" msgid "Do you still want to cancel?"
msgstr "" msgstr ""
@ -485,120 +485,131 @@ msgctxt "FileManager|"
msgid "Reading LoTW file..." msgid "Reading LoTW file..."
msgstr "" msgstr ""
#: ../filemanager.cpp:3095 ../filemanager.cpp:3382 #: ../filemanager.cpp:3095 ../filemanager.cpp:3381
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "Abort reading" msgid "Abort reading"
msgstr "" msgstr ""
#: ../filemanager.cpp:3334 #: ../filemanager.cpp:3334
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "" msgid "There is more than one log in this logfile."
"There are more than one log in this logfile.\n"
"All logs will be imported in the current log.\n"
"Do you want to continue?"
msgstr "" msgstr ""
#: ../filemanager.cpp:3382 #: ../filemanager.cpp:3334
msgctxt "FileManager|"
msgid "All logs will be imported into the current log."
msgstr ""
#: ../filemanager.cpp:3334
msgctxt "FileManager|"
msgid "Do you want to continue?"
msgstr ""
#: ../filemanager.cpp:3587
msgctxt "FileManager|"
msgid "Importing ADIF file..."
msgstr ""
#: ../filemanager.cpp:3753
msgctxt "FileManager|"
msgid ""
"You have cancelled the file import. The file will be removed and no data "
"will be imported."
msgstr ""
#: ../filemanager.cpp:3614
msgctxt "FileManager|"
msgid ""
"It seems that there are some duplicated QSOs in the ADIF file you are "
"importing. Do you want to continue? (Duped QSOs will not be imported)"
msgstr ""
#: ../filemanager.cpp:3381
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "Reading ADIF file..." msgid "Reading ADIF file..."
msgstr "" msgstr ""
#: ../filemanager.cpp:3621 #: ../filemanager.cpp:4759
msgctxt "FileManager|"
msgid ""
"Importing ADIF file...\n"
" QSO: "
msgstr ""
#: ../filemanager.cpp:3637
msgctxt "FileManager|"
msgid ""
"You have cancelled the file export. The file will be removed and no data "
"will be exported.\n"
"Do you still want to cancel?"
msgstr ""
#: ../filemanager.cpp:4711
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "This QSO is not including the minimum data to consider a QSO as valid!." msgid "This QSO is not including the minimum data to consider a QSO as valid!."
msgstr "" msgstr ""
#: ../filemanager.cpp:4711 #: ../filemanager.cpp:4759
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "Please edit the ADIF file and make sure that it include at least:" msgid "Please edit the ADIF file and make sure that it include at least:"
msgstr "" msgstr ""
#: ../filemanager.cpp:4711 #: ../filemanager.cpp:4759
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "and" msgid "and"
msgstr "" msgstr ""
#: ../filemanager.cpp:4711 #: ../filemanager.cpp:4759
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "This QSO had:" msgid "This QSO had:"
msgstr "" msgstr ""
#: ../filemanager.cpp:4715 #: ../filemanager.cpp:4763
msgctxt "FileManager|" msgctxt "FileManager|"
msgid " - The band missing and the following call: " msgid " - The band missing and the following call: "
msgstr "" msgstr ""
#: ../filemanager.cpp:4720 #: ../filemanager.cpp:4768
msgctxt "FileManager|" msgctxt "FileManager|"
msgid " - The call missing but was done at this time: " msgid " - The call missing but was done at this time: "
msgstr "" msgstr ""
#: ../filemanager.cpp:4725 #: ../filemanager.cpp:4773
msgctxt "FileManager|" msgctxt "FileManager|"
msgid " - The mode missing and the following call: " msgid " - The mode missing and the following call: "
msgstr "" msgstr ""
#: ../filemanager.cpp:4730 #: ../filemanager.cpp:4778
msgctxt "FileManager|" msgctxt "FileManager|"
msgid " - The date missing and the following call: " msgid " - The date missing and the following call: "
msgstr "" msgstr ""
#: ../filemanager.cpp:4735 #: ../filemanager.cpp:4783
msgctxt "FileManager|" msgctxt "FileManager|"
msgid " - The time missing and the following call: " msgid " - The time missing and the following call: "
msgstr "" msgstr ""
#: ../filemanager.cpp:4740 #: ../filemanager.cpp:4788
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "Do you want to continue with the current file?" msgid "Do you want to continue with the current file?"
msgstr "" msgstr ""
#: ../filemanager.cpp:4744 #: ../filemanager.cpp:4792
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "KLog: Not all required data found!" msgid "KLog: Not all required data found!"
msgstr "" msgstr ""
#: ../filemanager.cpp:4768 #: ../filemanager.cpp:4816
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "This log seems to lack of RST-TX information." msgid "This log seems to lack of RST-TX information."
msgstr "" msgstr ""
#: ../filemanager.cpp:4768 ../filemanager.cpp:4790 #: ../filemanager.cpp:4816 ../filemanager.cpp:4838
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "Click on Yes to add a default 59 to all QSO with a similar problem." msgid "Click on Yes to add a default 59 to all QSO with a similar problem."
msgstr "" msgstr ""
#: ../filemanager.cpp:4768 ../filemanager.cpp:4790 #: ../filemanager.cpp:4816 ../filemanager.cpp:4838
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "If you select NO, the QSO may not be imported." msgid "If you select NO, the QSO may not be imported."
msgstr "" msgstr ""
#: ../filemanager.cpp:4769 #: ../filemanager.cpp:4817
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "KLog: No RST TX found!" msgid "KLog: No RST TX found!"
msgstr "" msgstr ""
#: ../filemanager.cpp:4790 #: ../filemanager.cpp:4838
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "This log seems to lack of RST-RX information." msgid "This log seems to lack of RST-RX information."
msgstr "" msgstr ""
#: ../filemanager.cpp:4792 #: ../filemanager.cpp:4840
msgctxt "FileManager|" msgctxt "FileManager|"
msgid "KLog: No RST RX found!" msgid "KLog: No RST RX found!"
msgstr "" msgstr ""
@ -2519,13 +2530,13 @@ msgstr ""
#: ../database.cpp:3352 ../database.cpp:3537 ../database.cpp:3734 #: ../database.cpp:3352 ../database.cpp:3537 ../database.cpp:3734
#: ../database.cpp:3935 ../database.cpp:6614 ../database.cpp:6837 #: ../database.cpp:3935 ../database.cpp:6614 ../database.cpp:6837
#: ../dataproxy_sqlite.cpp:3891 #: ../dataproxy_sqlite.cpp:3901
msgctxt "QObject|" msgctxt "QObject|"
msgid "Abort updating" msgid "Abort updating"
msgstr "" msgstr ""
#: ../database.cpp:3373 ../database.cpp:3556 ../database.cpp:6706 #: ../database.cpp:3373 ../database.cpp:3556 ../database.cpp:6706
#: ../database.cpp:6929 ../dataproxy_sqlite.cpp:3932 #: ../database.cpp:6929 ../dataproxy_sqlite.cpp:3942
msgctxt "QObject|" msgctxt "QObject|"
msgid "QSO: " msgid "QSO: "
msgstr "" msgstr ""
@ -2566,7 +2577,7 @@ msgctxt "QObject|"
msgid "Updating DXCC award information..." msgid "Updating DXCC award information..."
msgstr "" msgstr ""
#: ../database.cpp:6706 ../database.cpp:6929 ../dataproxy_sqlite.cpp:3932 #: ../database.cpp:6706 ../database.cpp:6929 ../dataproxy_sqlite.cpp:3942
msgctxt "QObject|" msgctxt "QObject|"
msgid "Updating DXCC Award information..." msgid "Updating DXCC Award information..."
msgstr "" msgstr ""
@ -2576,7 +2587,7 @@ msgctxt "QObject|"
msgid "Updating WAZ award information..." msgid "Updating WAZ award information..."
msgstr "" msgstr ""
#: ../dataproxy_sqlite.cpp:3891 #: ../dataproxy_sqlite.cpp:3901
msgctxt "QObject|" msgctxt "QObject|"
msgid "Updating DXCC information..." msgid "Updating DXCC information..."
msgstr "" msgstr ""

View File

@ -15,7 +15,7 @@
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="74"/> <location filename="../aboutdialog.cpp" line="74"/>
<location filename="../aboutdialog.cpp" line="144"/> <location filename="../aboutdialog.cpp" line="145"/>
<source>Authors</source> <source>Authors</source>
<translation>Autors</translation> <translation>Autors</translation>
</message> </message>
@ -65,22 +65,22 @@
<translation>El KLog està desenvolupat per un equip molt petit i esteu convidat a unir-vos-hi!</translation> <translation>El KLog està desenvolupat per un equip molt petit i esteu convidat a unir-vos-hi!</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="100"/> <location filename="../aboutdialog.cpp" line="101"/>
<source>KLog developers have included a feature that reports some user data to the KLog server with the sole purpose of identifying the number of installed versions, to focus development in one direction or another taking into account user&apos;s needs</source> <source>KLog developers have included a feature that reports some user data to the KLog server with the sole purpose of identifying the number of installed versions, to focus development in one direction or another taking into account user&apos;s needs</source>
<translation>Els desenvolupadors del KLog han inclòs una funcionalitat que informa de vàries dades d&apos;usuari al servidor del KLog amb l&apos;únic propòsit d&apos;identificat el nombre de versions instal·lades, per enfocar el desenvolupament cap a una direcció o una altre tenint en compte les necessitats dels usuaris</translation> <translation>Els desenvolupadors del KLog han inclòs una funcionalitat que informa de vàries dades d&apos;usuari al servidor del KLog amb l&apos;únic propòsit d&apos;identificat el nombre de versions instal·lades, per enfocar el desenvolupament cap a una direcció o una altre tenint en compte les necessitats dels usuaris</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="101"/> <location filename="../aboutdialog.cpp" line="102"/>
<source>At present, the data that is provided is the following:</source> <source>At present, the data that is provided is the following:</source>
<translation>Actualment, les dades proporcionades són les següents:</translation> <translation>Actualment, les dades proporcionades són les següents:</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="103"/> <location filename="../aboutdialog.cpp" line="104"/>
<source>Be aware that you can enable/disable this feature from the Misc tab in the Setup page</source> <source>Be aware that you can enable/disable this feature from the Misc tab in the Setup page</source>
<translation>Tingueu present que podeu activar/desactivar aquesta funcionalitat des de la pestanya Varis a la pestanya de configuració</translation> <translation>Tingueu present que podeu activar/desactivar aquesta funcionalitat des de la pestanya Varis a la pestanya de configuració</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="86"/> <location filename="../aboutdialog.cpp" line="87"/>
<source>Translators bring KLog into your language. They are really an important part of the KLog development team.</source> <source>Translators bring KLog into your language. They are really an important part of the KLog development team.</source>
<translation>Els traductors adapten el KLog al vostre idioma. Són una part important de l&apos;equip de desenvolupament del KLog.</translation> <translation>Els traductors adapten el KLog al vostre idioma. Són una part important de l&apos;equip de desenvolupament del KLog.</translation>
</message> </message>
@ -96,54 +96,54 @@
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="73"/> <location filename="../aboutdialog.cpp" line="73"/>
<location filename="../aboutdialog.cpp" line="86"/> <location filename="../aboutdialog.cpp" line="87"/>
<source>KLog development mailing list</source> <source>KLog development mailing list</source>
<translation>la llista de correu del desenvolupament del KLog</translation> <translation>la llista de correu del desenvolupament del KLog</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="73"/> <location filename="../aboutdialog.cpp" line="73"/>
<location filename="../aboutdialog.cpp" line="86"/> <location filename="../aboutdialog.cpp" line="87"/>
<source>!</source> <source>!</source>
<translation>!</translation> <translation>!</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="86"/> <location filename="../aboutdialog.cpp" line="87"/>
<source>If KLog is still not in your language and you want to help us, you are welcome to contact us through the</source> <source>If KLog is still not in your language and you want to help us, you are welcome to contact us through the</source>
<translation>Si el KLog encara no és en el vostre idioma i voleu ajudar-nos, sou benvingut a contactar-nos a través dewelcome to contact us through the</translation> <translation>Si el KLog encara no és en el vostre idioma i voleu ajudar-nos, sou benvingut a contactar-nos a través dewelcome to contact us through the</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="87"/> <location filename="../aboutdialog.cpp" line="88"/>
<location filename="../aboutdialog.cpp" line="145"/> <location filename="../aboutdialog.cpp" line="146"/>
<source>Translators</source> <source>Translators</source>
<translation>Traductors</translation> <translation>Traductors</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="99"/> <location filename="../aboutdialog.cpp" line="100"/>
<source>Privacy advisory</source> <source>Privacy advisory</source>
<translation>Avís de privadesa</translation> <translation>Avís de privadesa</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="102"/> <location filename="../aboutdialog.cpp" line="103"/>
<source>Callsign</source> <source>Callsign</source>
<translation>Indicatiu</translation> <translation>Indicatiu</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="102"/> <location filename="../aboutdialog.cpp" line="103"/>
<source>KLog version</source> <source>KLog version</source>
<translation>Versió del KLog</translation> <translation>Versió del KLog</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="102"/> <location filename="../aboutdialog.cpp" line="103"/>
<source>Operating system</source> <source>Operating system</source>
<translation>Sistema operatiu</translation> <translation>Sistema operatiu</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="143"/> <location filename="../aboutdialog.cpp" line="144"/>
<source>KLog</source> <source>KLog</source>
<translation>KLog</translation> <translation>KLog</translation>
</message> </message>
<message> <message>
<location filename="../aboutdialog.cpp" line="146"/> <location filename="../aboutdialog.cpp" line="147"/>
<source>Privacy</source> <source>Privacy</source>
<translation>Privadesa</translation> <translation>Privadesa</translation>
</message> </message>
@ -1271,237 +1271,237 @@ Encara voleu cancel·lar?</translation>
<translation>Qualsevol fitxer</translation> <translation>Qualsevol fitxer</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="4907"/> <location filename="../mainwindow.cpp" line="4909"/>
<source>The selected log is not existing or it is still empty.</source> <source>The selected log is not existing or it is still empty.</source>
<translation>El registre seleccionat no existeix o encara és buit.</translation> <translation>El registre seleccionat no existeix o encara és buit.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="4907"/> <location filename="../mainwindow.cpp" line="4909"/>
<source>Click Yes and KLog will open an empty log.</source> <source>Click Yes and KLog will open an empty log.</source>
<translation>Cliqueu i el KLog obrirà un registre buit.</translation> <translation>Cliqueu i el KLog obrirà un registre buit.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="4908"/> <location filename="../mainwindow.cpp" line="4910"/>
<source>Click No and KLog will select another log with data.</source> <source>Click No and KLog will select another log with data.</source>
<translation>Cliqueu No i el KLog seleccionarà un altre registre amb dades.</translation> <translation>Cliqueu No i el KLog seleccionarà un altre registre amb dades.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="4909"/> <location filename="../mainwindow.cpp" line="4911"/>
<source>You can modify the config file accordingly, if needed.</source> <source>You can modify the config file accordingly, if needed.</source>
<translation>D&apos;acord amb això, podeu modificar el fitxer «config», si cal.</translation> <translation>D&apos;acord amb això, podeu modificar el fitxer «config», si cal.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5233"/> <location filename="../mainwindow.cpp" line="5254"/>
<source>TX Frequency in MHz.</source> <source>TX Frequency in MHz.</source>
<translation>Freqüència de TX en MHz.</translation> <translation>Freqüència de TX en MHz.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5234"/> <location filename="../mainwindow.cpp" line="5255"/>
<source>RX Frequency in MHz.</source> <source>RX Frequency in MHz.</source>
<translation>Freqüència de RX en MHz.</translation> <translation>Freqüència de RX en MHz.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5236"/> <location filename="../mainwindow.cpp" line="5257"/>
<source>Power used by the DX.</source> <source>Power used by the DX.</source>
<translation>Potència usada pel DX.</translation> <translation>Potència usada pel DX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5237"/> <location filename="../mainwindow.cpp" line="5258"/>
<source>Logging operator&apos;s callsign.</source> <source>Logging operator&apos;s callsign.</source>
<translation>Indicatiu de l&apos;operador del registre.</translation> <translation>Indicatiu de l&apos;operador del registre.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5238"/> <location filename="../mainwindow.cpp" line="5259"/>
<source>Callsign used over the air.</source> <source>Callsign used over the air.</source>
<translation>Indicatiu usat a l&apos;aire.</translation> <translation>Indicatiu usat a l&apos;aire.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5239"/> <location filename="../mainwindow.cpp" line="5260"/>
<source>My QTH locator.</source> <source>My QTH locator.</source>
<translation>El meu localitzador QTH.</translation> <translation>El meu localitzador QTH.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5240"/> <location filename="../mainwindow.cpp" line="5261"/>
<source>Name of the DX.</source> <source>Name of the DX.</source>
<translation>Nom del DX.</translation> <translation>Nom del DX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5241"/> <location filename="../mainwindow.cpp" line="5262"/>
<source>QTH of the DX.</source> <source>QTH of the DX.</source>
<translation>QTH del DX.</translation> <translation>QTH del DX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5242"/> <location filename="../mainwindow.cpp" line="5263"/>
<source>Locator of the DX.</source> <source>Locator of the DX.</source>
<translation>Localitzador del DX.</translation> <translation>Localitzador del DX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5244"/> <location filename="../mainwindow.cpp" line="5265"/>
<source>QRZ of the QSO.</source> <source>QRZ of the QSO.</source>
<translation>QRZ del QSO.</translation> <translation>QRZ del QSO.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5245"/> <location filename="../mainwindow.cpp" line="5266"/>
<source>TX RST.</source> <source>TX RST.</source>
<translation>RST TX.</translation> <translation>RST TX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5246"/> <location filename="../mainwindow.cpp" line="5267"/>
<source>RX RST.</source> <source>RX RST.</source>
<translation>RST RX.</translation> <translation>RST RX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5247"/> <location filename="../mainwindow.cpp" line="5268"/>
<source>TX Exchange.</source> <source>TX Exchange.</source>
<translation>Intercanvi TX.</translation> <translation>Intercanvi TX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5248"/> <location filename="../mainwindow.cpp" line="5269"/>
<source>RX Exchange.</source> <source>RX Exchange.</source>
<translation>Intercanvi RX.</translation> <translation>Intercanvi RX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5249"/> <location filename="../mainwindow.cpp" line="5270"/>
<source>Band of the QSO.</source> <source>Band of the QSO.</source>
<translation>Banda del QSO.</translation> <translation>Banda del QSO.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5250"/> <location filename="../mainwindow.cpp" line="5271"/>
<source>Mode of the QSO.</source> <source>Mode of the QSO.</source>
<translation>Mode del QSO.</translation> <translation>Mode del QSO.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5251"/> <location filename="../mainwindow.cpp" line="5272"/>
<source>Date of the QSO.</source> <source>Date of the QSO.</source>
<translation>Data del QSO.</translation> <translation>Data del QSO.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5252"/> <location filename="../mainwindow.cpp" line="5273"/>
<source>Time of the QSO.</source> <source>Time of the QSO.</source>
<translation>Hora del QSO.</translation> <translation>Hora del QSO.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5255"/> <location filename="../mainwindow.cpp" line="5276"/>
<source>Add the QSO to the log.</source> <source>Add the QSO to the log.</source>
<translation>Afegeix el QSO al registre.</translation> <translation>Afegeix el QSO al registre.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5257"/> <location filename="../mainwindow.cpp" line="5278"/>
<source>Clears the QSO entry.</source> <source>Clears the QSO entry.</source>
<translation>Neteja l&apos;entrada QSO.</translation> <translation>Neteja l&apos;entrada QSO.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5282"/> <location filename="../mainwindow.cpp" line="5303"/>
<source>Number of confirmed DXCC entities.</source> <source>Number of confirmed DXCC entities.</source>
<translation>Nombre d&apos;entitats DXCC confirmades.</translation> <translation>Nombre d&apos;entitats DXCC confirmades.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5283"/> <location filename="../mainwindow.cpp" line="5304"/>
<source>Number of worked DXCC entities.</source> <source>Number of worked DXCC entities.</source>
<translation>Nombre d&apos;entitats DXCC treballades.</translation> <translation>Nombre d&apos;entitats DXCC treballades.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5284"/> <location filename="../mainwindow.cpp" line="5305"/>
<source>Number of confirmed WAZ zones.</source> <source>Number of confirmed WAZ zones.</source>
<translation>Nombre de zones WAZ confirmades.</translation> <translation>Nombre de zones WAZ confirmades.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5285"/> <location filename="../mainwindow.cpp" line="5306"/>
<source>Number of worked WAZ zones.</source> <source>Number of worked WAZ zones.</source>
<translation>Nombre de zones WAZ treballades.</translation> <translation>Nombre de zones WAZ treballades.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5286"/> <location filename="../mainwindow.cpp" line="5307"/>
<source>Number of confirmed local references.</source> <source>Number of confirmed local references.</source>
<translation>Nombre de referències locals confirmades.</translation> <translation>Nombre de referències locals confirmades.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5287"/> <location filename="../mainwindow.cpp" line="5308"/>
<source>Number of worked local references.</source> <source>Number of worked local references.</source>
<translation>Nombre de referències locals treballades.</translation> <translation>Nombre de referències locals treballades.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5288"/> <location filename="../mainwindow.cpp" line="5309"/>
<source>Number of confirmed QSOs.</source> <source>Number of confirmed QSOs.</source>
<translation>Nombre de QSO confirmats.</translation> <translation>Nombre de QSO confirmats.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5289"/> <location filename="../mainwindow.cpp" line="5310"/>
<source>Number of worked QSOs.</source> <source>Number of worked QSOs.</source>
<translation>Nombre de QSO treballats.</translation> <translation>Nombre de QSO treballats.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5291"/> <location filename="../mainwindow.cpp" line="5312"/>
<source>Number of DXCC worked on the selected year.</source> <source>Number of DXCC worked on the selected year.</source>
<translation>Nombre de DXCC treballats durant l&apos;any seleccionat.</translation> <translation>Nombre de DXCC treballats durant l&apos;any seleccionat.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5292"/> <location filename="../mainwindow.cpp" line="5313"/>
<source>Number of CQ Zones worked on the selected year.</source> <source>Number of CQ Zones worked on the selected year.</source>
<translation>Nombre de zones CQ treballades durant l&apos;any seleccionat.</translation> <translation>Nombre de zones CQ treballades durant l&apos;any seleccionat.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5293"/> <location filename="../mainwindow.cpp" line="5314"/>
<source>Score for the DXMarathon on the selected year.</source> <source>Score for the DXMarathon on the selected year.</source>
<translation>Puntuació per al DXMarathon durant l&apos;any seleccionat.</translation> <translation>Puntuació per al DXMarathon durant l&apos;any seleccionat.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5294"/> <location filename="../mainwindow.cpp" line="5315"/>
<source>Select the year you want to check.</source> <source>Select the year you want to check.</source>
<translation>Seleccioneu l&apos;any que voleu comprovar.</translation> <translation>Seleccioneu l&apos;any que voleu comprovar.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5296"/> <location filename="../mainwindow.cpp" line="5317"/>
<source>Status of the DX entity.</source> <source>Status of the DX entity.</source>
<translation>Estat de l&apos;entitat DX.</translation> <translation>Estat de l&apos;entitat DX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5297"/> <location filename="../mainwindow.cpp" line="5318"/>
<source>Name of the DX entity.</source> <source>Name of the DX entity.</source>
<translation>Nom de l&apos;entitat DX.</translation> <translation>Nom de l&apos;entitat DX.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5707"/> <location filename="../mainwindow.cpp" line="5728"/>
<source>Log</source> <source>Log</source>
<translation>Registre</translation> <translation>Registre</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="7531"/> <location filename="../mainwindow.cpp" line="7552"/>
<source>An unexpected error ocurred!!</source> <source>An unexpected error ocurred!!</source>
<translation>Hi ha hagut un error inesperat!!</translation> <translation>Hi ha hagut un error inesperat!!</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="7531"/> <location filename="../mainwindow.cpp" line="7552"/>
<source>If the problem persists, please contact the developers</source> <source>If the problem persists, please contact the developers</source>
<translation>Si el problema persisteix, contacteu amb els desenvolupadors</translation> <translation>Si el problema persisteix, contacteu amb els desenvolupadors</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="7531"/> <location filename="../mainwindow.cpp" line="7552"/>
<source>for analysis:</source> <source>for analysis:</source>
<translation>per a l&apos;anàlisi:</translation> <translation>per a l&apos;anàlisi:</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="7533"/> <location filename="../mainwindow.cpp" line="7554"/>
<source>Error in function</source> <source>Error in function</source>
<translation>Error a la funció</translation> <translation>Error a la funció</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="7534"/> <location filename="../mainwindow.cpp" line="7555"/>
<source>Error code</source> <source>Error code</source>
<translation>Codi d&apos;error</translation> <translation>Codi d&apos;error</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="7535"/> <location filename="../mainwindow.cpp" line="7556"/>
<source>Error text</source> <source>Error text</source>
<translation>Text de l&apos;error</translation> <translation>Text de l&apos;error</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="7536"/> <location filename="../mainwindow.cpp" line="7557"/>
<source>Failed query</source> <source>Failed query</source>
<translation>Ha fallat la consulta</translation> <translation>Ha fallat la consulta</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="7547"/> <location filename="../mainwindow.cpp" line="7568"/>
<source>Do you want to keep showing errors?</source> <source>Do you want to keep showing errors?</source>
<translation>Voleu mantenir la visualització dels errors?</translation> <translation>Voleu mantenir la visualització dels errors?</translation>
</message> </message>
@ -1510,28 +1510,28 @@ Encara voleu cancel·lar?</translation>
<location filename="../mainwindow.cpp" line="3154"/> <location filename="../mainwindow.cpp" line="3154"/>
<location filename="../mainwindow.cpp" line="3160"/> <location filename="../mainwindow.cpp" line="3160"/>
<location filename="../mainwindow.cpp" line="4567"/> <location filename="../mainwindow.cpp" line="4567"/>
<location filename="../mainwindow.cpp" line="5590"/> <location filename="../mainwindow.cpp" line="5611"/>
<location filename="../mainwindow.cpp" line="6896"/> <location filename="../mainwindow.cpp" line="6917"/>
<source>QRZ</source> <source>QRZ</source>
<translation>QRZ</translation> <translation>QRZ</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6902"/> <location filename="../mainwindow.cpp" line="6923"/>
<source>Band</source> <source>Band</source>
<translation>Banda</translation> <translation>Banda</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6904"/> <location filename="../mainwindow.cpp" line="6925"/>
<source>Mode</source> <source>Mode</source>
<translation>Mode</translation> <translation>Mode</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6892"/> <location filename="../mainwindow.cpp" line="6913"/>
<source>Date</source> <source>Date</source>
<translation>Data</translation> <translation>Data</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6894"/> <location filename="../mainwindow.cpp" line="6915"/>
<source>Time</source> <source>Time</source>
<translation>Hora</translation> <translation>Hora</translation>
</message> </message>
@ -1542,7 +1542,7 @@ Encara voleu cancel·lar?</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="2418"/> <location filename="../mainwindow.cpp" line="2418"/>
<location filename="../mainwindow.cpp" line="6898"/> <location filename="../mainwindow.cpp" line="6919"/>
<source>RSTtx</source> <source>RSTtx</source>
<translation>RSTtx</translation> <translation>RSTtx</translation>
</message> </message>
@ -1553,7 +1553,7 @@ Encara voleu cancel·lar?</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="2411"/> <location filename="../mainwindow.cpp" line="2411"/>
<location filename="../mainwindow.cpp" line="6900"/> <location filename="../mainwindow.cpp" line="6921"/>
<source>RSTrx</source> <source>RSTrx</source>
<translation>RSTrx</translation> <translation>RSTrx</translation>
</message> </message>
@ -1749,107 +1749,107 @@ Voleu desar els canvis?</translation>
<translation>DUPLICAT</translation> <translation>DUPLICAT</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="4945"/> <location filename="../mainwindow.cpp" line="4947"/>
<source>It seems that there are no QSO in the database.</source> <source>It seems that there are no QSO in the database.</source>
<translation>Sembla que no hi ha cap QSO a la base de dades.</translation> <translation>Sembla que no hi ha cap QSO a la base de dades.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="4945"/> <location filename="../mainwindow.cpp" line="4947"/>
<source>If you are sure that the database contains QSOs and KLog is not able to find them, please contact the developers (see About KLog) for help.</source> <source>If you are sure that the database contains QSOs and KLog is not able to find them, please contact the developers (see About KLog) for help.</source>
<translation>Si esteu segur que la base de dades conté QSO i el KLog no és capaç de trobar-los, contacteu amb els desenvolupadors (vegeu Quant al KLog) per sol·licitar ajuda.</translation> <translation>Si esteu segur que la base de dades conté QSO i el KLog no és capaç de trobar-los, contacteu amb els desenvolupadors (vegeu Quant al KLog) per sol·licitar ajuda.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5290"/> <location filename="../mainwindow.cpp" line="5311"/>
<source>Number of QSOs worked on the selected year.</source> <source>Number of QSOs worked on the selected year.</source>
<translation>Nombre de QSO treballats durant l&apos;any seleccionat.</translation> <translation>Nombre de QSO treballats durant l&apos;any seleccionat.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5332"/> <location filename="../mainwindow.cpp" line="5353"/>
<source>Power(rx)</source> <source>Power(rx)</source>
<translation>Potència (rx)</translation> <translation>Potència (rx)</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5336"/> <location filename="../mainwindow.cpp" line="5357"/>
<source>RST(tx)</source> <source>RST(tx)</source>
<translation>RST (tx)</translation> <translation>RST (tx)</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5339"/> <location filename="../mainwindow.cpp" line="5360"/>
<source>RST(rx)</source> <source>RST(rx)</source>
<translation>RST(rx)</translation> <translation>RST(rx)</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5448"/> <location filename="../mainwindow.cpp" line="5469"/>
<source>QSO</source> <source>QSO</source>
<translation>QSO</translation> <translation>QSO</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5565"/> <location filename="../mainwindow.cpp" line="5586"/>
<source>QSL</source> <source>QSL</source>
<translation>QSL</translation> <translation>QSL</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5566"/> <location filename="../mainwindow.cpp" line="5587"/>
<source>eQSL</source> <source>eQSL</source>
<translation>eQSL</translation> <translation>eQSL</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5573"/> <location filename="../mainwindow.cpp" line="5594"/>
<source>Satellite</source> <source>Satellite</source>
<translation>Satèl·lit</translation> <translation>Satèl·lit</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5826"/> <location filename="../mainwindow.cpp" line="5847"/>
<source>LoTW logfile has been properly exported!</source> <source>LoTW logfile has been properly exported!</source>
<translation>El fitxer de registre LoTW s&apos;ha exportat adequadament!</translation> <translation>El fitxer de registre LoTW s&apos;ha exportat adequadament!</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5826"/> <location filename="../mainwindow.cpp" line="5847"/>
<source>Remember to:</source> <source>Remember to:</source>
<translation>Recordeu:</translation> <translation>Recordeu:</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5826"/> <location filename="../mainwindow.cpp" line="5847"/>
<source>Before uploading: sign the LoTW log; and</source> <source>Before uploading: sign the LoTW log; and</source>
<translation>Abans de la pujada: signeu el registre LoTW; i</translation> <translation>Abans de la pujada: signeu el registre LoTW; i</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5826"/> <location filename="../mainwindow.cpp" line="5847"/>
<source>After uploading: mark as sent all the queued QSO (LoTW Tools).</source> <source>After uploading: mark as sent all the queued QSO (LoTW Tools).</source>
<translation>Després de la pujada: marca com a enviats tots els QSO en la cau (eines LoTW).</translation> <translation>Després de la pujada: marca com a enviats tots els QSO en la cau (eines LoTW).</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5847"/> <location filename="../mainwindow.cpp" line="5868"/>
<source>There was no QSO to be exported.</source> <source>There was no QSO to be exported.</source>
<translation>No hi ha cap QSO a exportar.</translation> <translation>No hi ha cap QSO a exportar.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5847"/> <location filename="../mainwindow.cpp" line="5868"/>
<source>If you think that some QSO should have been exported, please look for them and ensure that the eQSL LoTW QSL sent box is marked as:</source> <source>If you think that some QSO should have been exported, please look for them and ensure that the eQSL LoTW QSL sent box is marked as:</source>
<translation>Si penseu que s&apos;haurien d&apos;haver exportat alguns QSO, cerqueu-los i assegureu-vos que la casella d&apos;enviament eQSL LoTW QSL està marcada amb:</translation> <translation>Si penseu que s&apos;haurien d&apos;haver exportat alguns QSO, cerqueu-los i assegureu-vos que la casella d&apos;enviament eQSL LoTW QSL està marcada amb:</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5847"/> <location filename="../mainwindow.cpp" line="5868"/>
<source>Q - Queued</source> <source>Q - Queued</source>
<translation>Q - A la cua</translation> <translation>Q - A la cua</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5868"/> <location filename="../mainwindow.cpp" line="5889"/>
<source>There was an error while exporting the LoTW. The log has not been exported!</source> <source>There was an error while exporting the LoTW. The log has not been exported!</source>
<translation>S&apos;ha produït un error en exportar el LoTW. No s&apos;ha exportat el registre!</translation> <translation>S&apos;ha produït un error en exportar el LoTW. No s&apos;ha exportat el registre!</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6580"/> <location filename="../mainwindow.cpp" line="6601"/>
<source>--</source> <source>--</source>
<translation>--</translation> <translation>--</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6605"/> <location filename="../mainwindow.cpp" line="6626"/>
<source> - Needed for DXMarathon</source> <source> - Needed for DXMarathon</source>
<translation>- Necessari per DXMarathon</translation> <translation>- Necessari per DXMarathon</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5570"/> <location filename="../mainwindow.cpp" line="5591"/>
<source>Others</source> <source>Others</source>
<translation>Altres</translation> <translation>Altres</translation>
</message> </message>
@ -1874,37 +1874,37 @@ Voleu desar els canvis?</translation>
<translation>Podeu trobar la carpeta de dades del KLog aquí:</translation> <translation>Podeu trobar la carpeta de dades del KLog aquí:</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5322"/> <location filename="../mainwindow.cpp" line="5343"/>
<source>Name</source> <source>Name</source>
<translation>Nom</translation> <translation>Nom</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5326"/> <location filename="../mainwindow.cpp" line="5347"/>
<source>QTH</source> <source>QTH</source>
<translation>QTH</translation> <translation>QTH</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5329"/> <location filename="../mainwindow.cpp" line="5350"/>
<source>Locator</source> <source>Locator</source>
<translation>Localitzador</translation> <translation>Localitzador</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5572"/> <location filename="../mainwindow.cpp" line="5593"/>
<source>My Data</source> <source>My Data</source>
<translation>Les meves dades</translation> <translation>Les meves dades</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5629"/> <location filename="../mainwindow.cpp" line="5650"/>
<source>CQ</source> <source>CQ</source>
<translation>CQ</translation> <translation>CQ</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5640"/> <location filename="../mainwindow.cpp" line="5661"/>
<source>Info</source> <source>Info</source>
<translation>Info</translation> <translation>Info</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5645"/> <location filename="../mainwindow.cpp" line="5666"/>
<source>Award</source> <source>Award</source>
<translation>Diploma</translation> <translation>Diploma</translation>
</message> </message>
@ -1946,29 +1946,29 @@ Voleu desar els canvis?</translation>
<translation>No s&apos;ha guardat res. Cal seleccionar un tipus de fitxer vàlid.</translation> <translation>No s&apos;ha guardat res. Cal seleccionar un tipus de fitxer vàlid.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5372"/> <location filename="../mainwindow.cpp" line="5393"/>
<source>Freq TX</source> <source>Freq TX</source>
<translation>Freq TX</translation> <translation>Freq TX</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5374"/> <location filename="../mainwindow.cpp" line="5395"/>
<source>Freq RX</source> <source>Freq RX</source>
<translation>Freq RX</translation> <translation>Freq RX</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5648"/> <location filename="../mainwindow.cpp" line="5669"/>
<source>Confirmed</source> <source>Confirmed</source>
<translation>Confirmats</translation> <translation>Confirmats</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5651"/> <location filename="../mainwindow.cpp" line="5672"/>
<source>Worked</source> <source>Worked</source>
<translation>Treballats</translation> <translation>Treballats</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5628"/> <location filename="../mainwindow.cpp" line="5649"/>
<location filename="../mainwindow.cpp" line="5654"/> <location filename="../mainwindow.cpp" line="5675"/>
<location filename="../mainwindow.cpp" line="5710"/> <location filename="../mainwindow.cpp" line="5731"/>
<source>DXCC</source> <source>DXCC</source>
<translation>DXCC</translation> <translation>DXCC</translation>
</message> </message>
@ -1977,100 +1977,100 @@ Voleu desar els canvis?</translation>
<translation type="vanished">&amp;Exporta tots els registres a ADIF...</translation> <translation type="vanished">&amp;Exporta tots els registres a ADIF...</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5630"/> <location filename="../mainwindow.cpp" line="5651"/>
<source>Score</source> <source>Score</source>
<translation>Puntuació</translation> <translation>Puntuació</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5631"/> <location filename="../mainwindow.cpp" line="5652"/>
<source>DX-Marathon</source> <source>DX-Marathon</source>
<translation>DX-Marathon</translation> <translation>DX-Marathon</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5657"/> <location filename="../mainwindow.cpp" line="5678"/>
<source>WAZ</source> <source>WAZ</source>
<translation>WAZ</translation> <translation>WAZ</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5660"/> <location filename="../mainwindow.cpp" line="5681"/>
<source>Local</source> <source>Local</source>
<translation>Local</translation> <translation>Local</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5627"/> <location filename="../mainwindow.cpp" line="5648"/>
<location filename="../mainwindow.cpp" line="5663"/> <location filename="../mainwindow.cpp" line="5684"/>
<source>QSOs</source> <source>QSOs</source>
<translation>QSO</translation> <translation>QSO</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5704"/> <location filename="../mainwindow.cpp" line="5725"/>
<source>Awards</source> <source>Awards</source>
<translation>Diplomes</translation> <translation>Diplomes</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5705"/> <location filename="../mainwindow.cpp" line="5726"/>
<source>Search</source> <source>Search</source>
<translation>Cerca</translation> <translation>Cerca</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5709"/> <location filename="../mainwindow.cpp" line="5730"/>
<source>DX-Cluster</source> <source>DX-Cluster</source>
<translation>DX-Cluster</translation> <translation>DX-Cluster</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5805"/> <location filename="../mainwindow.cpp" line="5826"/>
<location filename="../mainwindow.cpp" line="5816"/> <location filename="../mainwindow.cpp" line="5837"/>
<location filename="../mainwindow.cpp" line="5890"/> <location filename="../mainwindow.cpp" line="5911"/>
<location filename="../mainwindow.cpp" line="5900"/> <location filename="../mainwindow.cpp" line="5921"/>
<source>Save ADIF File</source> <source>Save ADIF File</source>
<translation>Desa el fitxer ADIF</translation> <translation>Desa el fitxer ADIF</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5914"/> <location filename="../mainwindow.cpp" line="5935"/>
<source>Save Cabrillo File</source> <source>Save Cabrillo File</source>
<translation>Desa el fitxer Cabrillo</translation> <translation>Desa el fitxer Cabrillo</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5916"/> <location filename="../mainwindow.cpp" line="5937"/>
<source>Cabrillo (*.log)</source> <source>Cabrillo (*.log)</source>
<translation>Cabrillo (*.log)</translation> <translation>Cabrillo (*.log)</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5925"/> <location filename="../mainwindow.cpp" line="5946"/>
<location filename="../mainwindow.cpp" line="5949"/> <location filename="../mainwindow.cpp" line="5970"/>
<source>Open File</source> <source>Open File</source>
<translation>Obre fitxer</translation> <translation>Obre fitxer</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6045"/> <location filename="../mainwindow.cpp" line="6066"/>
<source>&amp;Modify</source> <source>&amp;Modify</source>
<translation>&amp;Modifica</translation> <translation>&amp;Modifica</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6712"/> <location filename="../mainwindow.cpp" line="6733"/>
<source>Filling QSOs...</source> <source>Filling QSOs...</source>
<translation>Omplint els QSO...</translation> <translation>Omplint els QSO...</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6712"/> <location filename="../mainwindow.cpp" line="6733"/>
<source>Abort filling</source> <source>Abort filling</source>
<translation>Interromp l&apos;ompliment</translation> <translation>Interromp l&apos;ompliment</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6830"/> <location filename="../mainwindow.cpp" line="6851"/>
<source>Filling QSOs... <source>Filling QSOs...
QSO: </source> QSO: </source>
<translation>Ompliment dels QSO... <translation>Ompliment dels QSO...
QSO:</translation> QSO:</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6890"/> <location filename="../mainwindow.cpp" line="6911"/>
<source>Number</source> <source>Number</source>
<translation>Nombre</translation> <translation>Nombre</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="5567"/> <location filename="../mainwindow.cpp" line="5588"/>
<location filename="../mainwindow.cpp" line="6906"/> <location filename="../mainwindow.cpp" line="6927"/>
<source>Comment</source> <source>Comment</source>
<translation>Comentari</translation> <translation>Comentari</translation>
</message> </message>
@ -2115,23 +2115,23 @@ Voleu desar els canvis?</translation>
<translation>Ja teniu la versió més recent.</translation> <translation>Ja teniu la versió més recent.</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6919"/> <location filename="../mainwindow.cpp" line="6940"/>
<source>Print Log</source> <source>Print Log</source>
<translation>Imprimeix el registre</translation> <translation>Imprimeix el registre</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6924"/> <location filename="../mainwindow.cpp" line="6945"/>
<source>Printing the log...</source> <source>Printing the log...</source>
<translation>S&apos;està imprimint el registre...</translation> <translation>S&apos;està imprimint el registre...</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6924"/> <location filename="../mainwindow.cpp" line="6945"/>
<source>Abort printing</source> <source>Abort printing</source>
<translation>Interromp la impressió</translation> <translation>Interromp la impressió</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.cpp" line="6939"/> <location filename="../mainwindow.cpp" line="6960"/>
<location filename="../mainwindow.cpp" line="6954"/> <location filename="../mainwindow.cpp" line="6975"/>
<source>Printing the log... <source>Printing the log...
QSO: </source> QSO: </source>
<translation>S&apos;està imprimint el registre... <translation>S&apos;està imprimint el registre...

4366
translations/klog_da.ts Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -65,24 +65,24 @@
</message> </message>
<message> <message>
<location line="+0"/> <location line="+0"/>
<location line="+13"/> <location line="+14"/>
<source>KLog development mailing list</source> <source>KLog development mailing list</source>
<translation>KLog kehitystiimin postituslistaan</translation> <translation>KLog kehitystiimin postituslistaan</translation>
</message> </message>
<message> <message>
<location line="-13"/> <location line="-14"/>
<location line="+13"/> <location line="+14"/>
<source>!</source> <source>!</source>
<translation>!</translation> <translation>!</translation>
</message> </message>
<message> <message>
<location line="-13"/> <location line="-14"/>
<source>You can also help us by sending bug reports or small code contributions, ideas or whatever you think may improve KLog.</source> <source>You can also help us by sending bug reports or small code contributions, ideas or whatever you think may improve KLog.</source>
<translation>Voit auttaa meitä myös lähettämällä virheilmoituksia tai ohjelmointiapua, ideoita tai mitä vain, mikä mielestäsi voisi parantaa KLogia.</translation> <translation>Voit auttaa meitä myös lähettämällä virheilmoituksia tai ohjelmointiapua, ideoita tai mitä vain, mikä mielestäsi voisi parantaa KLogia.</translation>
</message> </message>
<message> <message>
<location line="+1"/> <location line="+1"/>
<location line="+70"/> <location line="+71"/>
<source>Authors</source> <source>Authors</source>
<translation>Tekijät</translation> <translation>Tekijät</translation>
</message> </message>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff