mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-09-28 08:06:35 -04:00
Merge branch 'develop' into feat-fst280
This commit is contained in:
commit
d5c5a58c7f
@ -230,7 +230,7 @@ namespace
|
|||||||
|IL|IN|KS|KY|LA|LAX|MAR|MB|MDC
|
|IL|IN|KS|KY|LA|LAX|MAR|MB|MDC
|
||||||
|ME|MI|MN|MO|MS|MT|NC|ND|NE|NFL
|
|ME|MI|MN|MO|MS|MT|NC|ND|NE|NFL
|
||||||
|NH|NL|NLI|NM|NNJ|NNY|NT|NTX|NV
|
|NH|NL|NLI|NM|NNJ|NNY|NT|NTX|NV
|
||||||
|OH|OK|ONE|ONN|ONS|OR|ORG|PAC
|
|OH|OK|ONE|ONN|ONS|OR|ORG|PAC|PE
|
||||||
|PR|QC|RI|SB|SC|SCV|SD|SDG|SF
|
|PR|QC|RI|SB|SC|SCV|SD|SDG|SF
|
||||||
|SFL|SJV|SK|SNJ|STX|SV|TN|UT|VA
|
|SFL|SJV|SK|SNJ|STX|SV|TN|UT|VA
|
||||||
|VI|VT|WCF|WI|WMA|WNY|WPA|WTX
|
|VI|VT|WCF|WI|WMA|WNY|WPA|WTX
|
||||||
|
26
NEWS
26
NEWS
@ -13,6 +13,32 @@
|
|||||||
Copyright 2001 - 2020 by Joe Taylor, K1JT.
|
Copyright 2001 - 2020 by Joe Taylor, K1JT.
|
||||||
|
|
||||||
|
|
||||||
|
Release: WSJT-X 2.2.2
|
||||||
|
June 22, 2020
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
WSJT-X v2.2.2 is a bug fix release, mainly to incorporate the new RAC
|
||||||
|
section PE into the FT8/FT4/MSK144 Contest Mode for Field Day.
|
||||||
|
|
||||||
|
- Stations intending to operate in Field Day (FD) are urged to
|
||||||
|
upgrade to this release, without it you cannot set your section to
|
||||||
|
PE, and of equal importance you cannot decode contest messages from
|
||||||
|
stations who are operating from PE without this upgrade.
|
||||||
|
|
||||||
|
- FT8 decoder speeded up in Normal and Fast modes. This change gives
|
||||||
|
a speed of decoding closer to that of v2.1.2 without compromising
|
||||||
|
the number of decodes. It is particularly targeted for slower
|
||||||
|
single board computer users such as the Raspberry Pi Model 3 or
|
||||||
|
similar.
|
||||||
|
|
||||||
|
- Thanks to our user interface language translation contributors for
|
||||||
|
many improvements to the translated strings.
|
||||||
|
|
||||||
|
- The DX Grid field is now cleared automatically when the DX Call
|
||||||
|
field is changed. Care should be taken to complete entry of a
|
||||||
|
callsign before entering a grid square.
|
||||||
|
|
||||||
|
|
||||||
Release: WSJT-X 2.2.1
|
Release: WSJT-X 2.2.1
|
||||||
June 6, 2020
|
June 6, 2020
|
||||||
---------------------
|
---------------------
|
||||||
|
@ -425,28 +425,23 @@ MessageClient::MessageClient (QString const& id, QString const& version, QString
|
|||||||
{
|
{
|
||||||
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0)
|
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0)
|
||||||
connect (&*m_, static_cast<void (impl::*) (impl::SocketError)> (&impl::error)
|
connect (&*m_, static_cast<void (impl::*) (impl::SocketError)> (&impl::error)
|
||||||
, [this] (impl::SocketError e)
|
, [this] (impl::SocketError e) {
|
||||||
{
|
|
||||||
#if defined (Q_OS_WIN)
|
|
||||||
if (e != impl::NetworkError // take this out when Qt 5.5
|
|
||||||
// stops doing this
|
|
||||||
// spuriously
|
|
||||||
&& e != impl::ConnectionRefusedError) // not
|
|
||||||
// interested
|
|
||||||
// in this with
|
|
||||||
// UDP socket
|
|
||||||
#else
|
#else
|
||||||
Q_UNUSED (e);
|
connect (&*m_, &impl::errorOccurred, [this] (impl::SocketError e) {
|
||||||
|
#endif
|
||||||
|
#if defined (Q_OS_WIN)
|
||||||
|
// take this out when Qt 5.5 stops doing this spuriously
|
||||||
|
if (e != impl::NetworkError
|
||||||
|
// not interested in this with UDP socket
|
||||||
|
&& e != impl::ConnectionRefusedError)
|
||||||
|
#else
|
||||||
|
Q_UNUSED (e);
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
Q_EMIT error (m_->errorString ());
|
Q_EMIT error (m_->errorString ());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
#else
|
|
||||||
connect (&*m_, &impl::errorOccurred, [this] (impl::SocketError) {
|
|
||||||
Q_EMIT error (m_->errorString ());
|
|
||||||
});
|
|
||||||
#endif
|
|
||||||
set_server (server);
|
set_server (server);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -573,7 +568,7 @@ void MessageClient::qso_logged (QDateTime time_off, QString const& dx_call, QStr
|
|||||||
, QString const& comments, QString const& name, QDateTime time_on
|
, QString const& comments, QString const& name, QDateTime time_on
|
||||||
, QString const& operator_call, QString const& my_call
|
, QString const& operator_call, QString const& my_call
|
||||||
, QString const& my_grid, QString const& exchange_sent
|
, QString const& my_grid, QString const& exchange_sent
|
||||||
, QString const& exchange_rcvd)
|
, QString const& exchange_rcvd, QString const& propmode)
|
||||||
{
|
{
|
||||||
if (m_->server_port_ && !m_->server_string_.isEmpty ())
|
if (m_->server_port_ && !m_->server_string_.isEmpty ())
|
||||||
{
|
{
|
||||||
@ -582,8 +577,8 @@ void MessageClient::qso_logged (QDateTime time_off, QString const& dx_call, QStr
|
|||||||
out << time_off << dx_call.toUtf8 () << dx_grid.toUtf8 () << dial_frequency << mode.toUtf8 ()
|
out << time_off << dx_call.toUtf8 () << dx_grid.toUtf8 () << dial_frequency << mode.toUtf8 ()
|
||||||
<< report_sent.toUtf8 () << report_received.toUtf8 () << tx_power.toUtf8 () << comments.toUtf8 ()
|
<< report_sent.toUtf8 () << report_received.toUtf8 () << tx_power.toUtf8 () << comments.toUtf8 ()
|
||||||
<< name.toUtf8 () << time_on << operator_call.toUtf8 () << my_call.toUtf8 () << my_grid.toUtf8 ()
|
<< name.toUtf8 () << time_on << operator_call.toUtf8 () << my_call.toUtf8 () << my_grid.toUtf8 ()
|
||||||
<< exchange_sent.toUtf8 () << exchange_rcvd.toUtf8 ();
|
<< exchange_sent.toUtf8 () << exchange_rcvd.toUtf8 () << propmode.toUtf8 ();
|
||||||
TRACE_UDP ("time off:" << time_off << "DX:" << dx_call << "DX grid:" << dx_grid << "dial:" << dial_frequency << "mode:" << mode << "sent:" << report_sent << "rcvd:" << report_received << "pwr:" << tx_power << "comments:" << comments << "name:" << name << "time on:" << time_on << "op:" << operator_call << "DE:" << my_call << "DE grid:" << my_grid << "exch sent:" << exchange_sent << "exch rcvd:" << exchange_rcvd);
|
TRACE_UDP ("time off:" << time_off << "DX:" << dx_call << "DX grid:" << dx_grid << "dial:" << dial_frequency << "mode:" << mode << "sent:" << report_sent << "rcvd:" << report_received << "pwr:" << tx_power << "comments:" << comments << "name:" << name << "time on:" << time_on << "op:" << operator_call << "DE:" << my_call << "DE grid:" << my_grid << "exch sent:" << exchange_sent << "exch rcvd:" << exchange_rcvd << "prop_mode:" << propmode);
|
||||||
m_->send_message (out, message);
|
m_->send_message (out, message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -69,7 +69,8 @@ public:
|
|||||||
, QString const& report_received, QString const& tx_power, QString const& comments
|
, QString const& report_received, QString const& tx_power, QString const& comments
|
||||||
, QString const& name, QDateTime time_on, QString const& operator_call
|
, QString const& name, QDateTime time_on, QString const& operator_call
|
||||||
, QString const& my_call, QString const& my_grid
|
, QString const& my_call, QString const& my_grid
|
||||||
, QString const& exchange_sent, QString const& exchange_rcvd);
|
, QString const& exchange_sent, QString const& exchange_rcvd
|
||||||
|
, QString const& propmode);
|
||||||
|
|
||||||
// ADIF_record argument should be valid ADIF excluding any <EOR> end
|
// ADIF_record argument should be valid ADIF excluding any <EOR> end
|
||||||
// of record marker
|
// of record marker
|
||||||
|
@ -308,6 +308,7 @@
|
|||||||
* My grid utf8
|
* My grid utf8
|
||||||
* Exchange sent utf8
|
* Exchange sent utf8
|
||||||
* Exchange received utf8
|
* Exchange received utf8
|
||||||
|
* ADIF Propagation mode utf8
|
||||||
*
|
*
|
||||||
* The QSO logged message is sent to the server(s) when the
|
* The QSO logged message is sent to the server(s) when the
|
||||||
* WSJT-X user accepts the "Log QSO" dialog by clicking the "OK"
|
* WSJT-X user accepts the "Log QSO" dialog by clicking the "OK"
|
||||||
|
@ -13,6 +13,32 @@
|
|||||||
Copyright 2001 - 2020 by Joe Taylor, K1JT.
|
Copyright 2001 - 2020 by Joe Taylor, K1JT.
|
||||||
|
|
||||||
|
|
||||||
|
Release: WSJT-X 2.2.2
|
||||||
|
June 22, 2020
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
WSJT-X v2.2.2 is a bug fix release, mainly to incorporate the new RAC
|
||||||
|
section PE into the FT8/FT4/MSK144 Contest Mode for Field Day.
|
||||||
|
|
||||||
|
- Stations intending to operate in Field Day (FD) are urged to
|
||||||
|
upgrade to this release, without it you cannot set your section to
|
||||||
|
PE, and of equal importance you cannot decode contest messages from
|
||||||
|
stations who are operating from PE without this upgrade.
|
||||||
|
|
||||||
|
- FT8 decoder speeded up in Normal and Fast modes. This change gives
|
||||||
|
a speed of decoding closer to that of v2.1.2 without compromising
|
||||||
|
the number of decodes. It is particularly targeted for slower
|
||||||
|
single board computer users such as the Raspberry Pi Model 3 or
|
||||||
|
similar.
|
||||||
|
|
||||||
|
- Thanks to our user interface language translation contributors for
|
||||||
|
many improvements to the translated strings.
|
||||||
|
|
||||||
|
- The DX Grid field is now cleared automatically when the DX Call
|
||||||
|
field is changed. Care should be taken to complete entry of a
|
||||||
|
callsign before entering a grid square.
|
||||||
|
|
||||||
|
|
||||||
Release: WSJT-X 2.2.1
|
Release: WSJT-X 2.2.1
|
||||||
June 6, 2020
|
June 6, 2020
|
||||||
---------------------
|
---------------------
|
||||||
|
@ -25,8 +25,9 @@ namespace
|
|||||||
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Operator"),
|
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Operator"),
|
||||||
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "My Call"),
|
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "My Call"),
|
||||||
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "My Grid"),
|
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "My Grid"),
|
||||||
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Exchange Sent"),
|
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Exch Sent"),
|
||||||
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Exchange Rcvd"),
|
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Exch Rcvd"),
|
||||||
|
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Prop"),
|
||||||
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Comments"),
|
QT_TRANSLATE_NOOP ("MessageAggregatorMainWindow", "Comments"),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -212,7 +213,8 @@ void MessageAggregatorMainWindow::log_qso (QString const& /*id*/, QDateTime time
|
|||||||
, QString const& tx_power, QString const& comments
|
, QString const& tx_power, QString const& comments
|
||||||
, QString const& name, QDateTime time_on, QString const& operator_call
|
, QString const& name, QDateTime time_on, QString const& operator_call
|
||||||
, QString const& my_call, QString const& my_grid
|
, QString const& my_call, QString const& my_grid
|
||||||
, QString const& exchange_sent, QString const& exchange_rcvd)
|
, QString const& exchange_sent, QString const& exchange_rcvd
|
||||||
|
, QString const& prop_mode)
|
||||||
{
|
{
|
||||||
QList<QStandardItem *> row;
|
QList<QStandardItem *> row;
|
||||||
row << new QStandardItem {time_on.toString ("dd-MMM-yyyy hh:mm:ss")}
|
row << new QStandardItem {time_on.toString ("dd-MMM-yyyy hh:mm:ss")}
|
||||||
@ -230,6 +232,7 @@ void MessageAggregatorMainWindow::log_qso (QString const& /*id*/, QDateTime time
|
|||||||
<< new QStandardItem {my_grid}
|
<< new QStandardItem {my_grid}
|
||||||
<< new QStandardItem {exchange_sent}
|
<< new QStandardItem {exchange_sent}
|
||||||
<< new QStandardItem {exchange_rcvd}
|
<< new QStandardItem {exchange_rcvd}
|
||||||
|
<< new QStandardItem {prop_mode}
|
||||||
<< new QStandardItem {comments};
|
<< new QStandardItem {comments};
|
||||||
log_->appendRow (row);
|
log_->appendRow (row);
|
||||||
log_table_view_->resizeColumnsToContents ();
|
log_table_view_->resizeColumnsToContents ();
|
||||||
|
@ -33,7 +33,7 @@ public:
|
|||||||
, QString const& report_received, QString const& tx_power, QString const& comments
|
, QString const& report_received, QString const& tx_power, QString const& comments
|
||||||
, QString const& name, QDateTime time_on, QString const& operator_call
|
, QString const& name, QDateTime time_on, QString const& operator_call
|
||||||
, QString const& my_call, QString const& my_grid
|
, QString const& my_call, QString const& my_grid
|
||||||
, QString const& exchange_sent, QString const& exchange_rcvd);
|
, QString const& exchange_sent, QString const& exchange_rcvd, QString const& prop_mode);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void add_client (QString const& id, QString const& version, QString const& revision);
|
void add_client (QString const& id, QString const& version, QString const& revision);
|
||||||
|
@ -345,9 +345,10 @@ void MessageServer::impl::parse_message (QHostAddress const& sender, port_type s
|
|||||||
QByteArray my_grid;
|
QByteArray my_grid;
|
||||||
QByteArray exchange_sent;
|
QByteArray exchange_sent;
|
||||||
QByteArray exchange_rcvd;
|
QByteArray exchange_rcvd;
|
||||||
|
QByteArray prop_mode;
|
||||||
in >> time_off >> dx_call >> dx_grid >> dial_frequency >> mode >> report_sent >> report_received
|
in >> time_off >> dx_call >> dx_grid >> dial_frequency >> mode >> report_sent >> report_received
|
||||||
>> tx_power >> comments >> name >> time_on >> operator_call >> my_call >> my_grid
|
>> tx_power >> comments >> name >> time_on >> operator_call >> my_call >> my_grid
|
||||||
>> exchange_sent >> exchange_rcvd;
|
>> exchange_sent >> exchange_rcvd >> prop_mode;
|
||||||
if (check_status (in) != Fail)
|
if (check_status (in) != Fail)
|
||||||
{
|
{
|
||||||
Q_EMIT self_->qso_logged (id, time_off, QString::fromUtf8 (dx_call), QString::fromUtf8 (dx_grid)
|
Q_EMIT self_->qso_logged (id, time_off, QString::fromUtf8 (dx_call), QString::fromUtf8 (dx_grid)
|
||||||
@ -356,7 +357,7 @@ void MessageServer::impl::parse_message (QHostAddress const& sender, port_type s
|
|||||||
, QString::fromUtf8 (comments), QString::fromUtf8 (name), time_on
|
, QString::fromUtf8 (comments), QString::fromUtf8 (name), time_on
|
||||||
, QString::fromUtf8 (operator_call), QString::fromUtf8 (my_call)
|
, QString::fromUtf8 (operator_call), QString::fromUtf8 (my_call)
|
||||||
, QString::fromUtf8 (my_grid), QString::fromUtf8 (exchange_sent)
|
, QString::fromUtf8 (my_grid), QString::fromUtf8 (exchange_sent)
|
||||||
, QString::fromUtf8 (exchange_rcvd));
|
, QString::fromUtf8 (exchange_rcvd), QString::fromUtf8 (prop_mode));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -106,7 +106,7 @@ public:
|
|||||||
, QString const& report_received, QString const& tx_power, QString const& comments
|
, QString const& report_received, QString const& tx_power, QString const& comments
|
||||||
, QString const& name, QDateTime time_on, QString const& operator_call
|
, QString const& name, QDateTime time_on, QString const& operator_call
|
||||||
, QString const& my_call, QString const& my_grid
|
, QString const& my_call, QString const& my_grid
|
||||||
, QString const& exchange_sent, QString const& exchange_rcvd);
|
, QString const& exchange_sent, QString const& exchange_rcvd, QString const& prop_mode);
|
||||||
Q_SIGNAL void decodes_cleared (QString const& id);
|
Q_SIGNAL void decodes_cleared (QString const& id);
|
||||||
Q_SIGNAL void logged_ADIF (QString const& id, QByteArray const& ADIF);
|
Q_SIGNAL void logged_ADIF (QString const& id, QByteArray const& ADIF);
|
||||||
|
|
||||||
|
@ -102,7 +102,7 @@ public:
|
|||||||
, QString const& report_received, QString const& tx_power
|
, QString const& report_received, QString const& tx_power
|
||||||
, QString const& comments, QString const& name, QDateTime time_on
|
, QString const& comments, QString const& name, QDateTime time_on
|
||||||
, QString const& operator_call, QString const& my_call, QString const& my_grid
|
, QString const& operator_call, QString const& my_call, QString const& my_grid
|
||||||
, QString const& exchange_sent, QString const& exchange_rcvd)
|
, QString const& exchange_sent, QString const& exchange_rcvd, QString const& prop_mode)
|
||||||
{
|
{
|
||||||
if (client_id == id_)
|
if (client_id == id_)
|
||||||
{
|
{
|
||||||
@ -111,12 +111,13 @@ public:
|
|||||||
<< "rpt_rcvd:" << report_received << "Tx_pwr:" << tx_power << "comments:" << comments
|
<< "rpt_rcvd:" << report_received << "Tx_pwr:" << tx_power << "comments:" << comments
|
||||||
<< "name:" << name << "operator_call:" << operator_call << "my_call:" << my_call
|
<< "name:" << name << "operator_call:" << operator_call << "my_call:" << my_call
|
||||||
<< "my_grid:" << my_grid << "exchange_sent:" << exchange_sent
|
<< "my_grid:" << my_grid << "exchange_sent:" << exchange_sent
|
||||||
<< "exchange_rcvd:" << exchange_rcvd;
|
<< "exchange_rcvd:" << exchange_rcvd << "prop_mode:" << prop_mode;
|
||||||
std::cout << QByteArray {80, '-'}.data () << '\n';
|
std::cout << QByteArray {80, '-'}.data () << '\n';
|
||||||
std::cout << tr ("%1: Logged %2 grid: %3 power: %4 sent: %5 recd: %6 freq: %7 time_off: %8 op: %9 my_call: %10 my_grid: %11")
|
std::cout << tr ("%1: Logged %2 grid: %3 power: %4 sent: %5 recd: %6 freq: %7 time_off: %8 op: %9 my_call: %10 my_grid: %11 exchange_sent: %12 exchange_rcvd: %13 comments: %14 prop_mode: %15")
|
||||||
.arg (id_).arg (dx_call).arg (dx_grid).arg (tx_power).arg (report_sent).arg (report_received)
|
.arg (id_).arg (dx_call).arg (dx_grid).arg (tx_power).arg (report_sent).arg (report_received)
|
||||||
.arg (dial_frequency).arg (time_off.toString("yyyy-MM-dd hh:mm:ss.z")).arg (operator_call)
|
.arg (dial_frequency).arg (time_off.toString("yyyy-MM-dd hh:mm:ss.z")).arg (operator_call)
|
||||||
.arg (my_call).arg (my_grid).toStdString ()
|
.arg (my_call).arg (my_grid).arg (exchange_sent).arg (exchange_rcvd)
|
||||||
|
.arg (comments).arg (prop_mode).toStdString ()
|
||||||
<< std::endl;
|
<< std::endl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
// Status=edited
|
// Status=edited
|
||||||
|
|
||||||
Download and execute the package file {win32} (WinXP, Vista, Win 7,
|
Download and execute the package file {win32} (Win 7,
|
||||||
Win 8, Win10, 32-bit) or {win64} (Vista, Win 7, Win 8, Win10, 64-bit)
|
Win 8, Win10, 32-bit) or {win64} (Win 7, Win 8, Win10, 64-bit)
|
||||||
following these instructions:
|
following these instructions:
|
||||||
|
|
||||||
* Install _WSJT-X_ into its own directory, for example `C:\WSJTX` or `C:\WSJT\WSJTX`, rather than the conventional location `C:\Program
|
* Install _WSJT-X_ into its own directory, for example `C:\WSJTX` or `C:\WSJT\WSJTX`, rather than the conventional location `C:\Program
|
||||||
|
@ -196,7 +196,7 @@ subroutine unpack77(c77,nrx,msg,unpk77_success)
|
|||||||
! the value of nrx is used to decide when mycall13 or dxcall13 should
|
! the value of nrx is used to decide when mycall13 or dxcall13 should
|
||||||
! be used in place of a callsign from the hashtable
|
! be used in place of a callsign from the hashtable
|
||||||
!
|
!
|
||||||
parameter (NSEC=84) !Number of ARRL Sections
|
parameter (NSEC=85) !Number of ARRL Sections
|
||||||
parameter (NUSCAN=65) !Number of US states and Canadian provinces
|
parameter (NUSCAN=65) !Number of US states and Canadian provinces
|
||||||
parameter (MAXGRID4=32400)
|
parameter (MAXGRID4=32400)
|
||||||
integer*8 n58
|
integer*8 n58
|
||||||
@ -228,7 +228,7 @@ subroutine unpack77(c77,nrx,msg,unpk77_success)
|
|||||||
"ONS","OR ","ORG","PAC","PR ","QC ","RI ","SB ","SC ","SCV", &
|
"ONS","OR ","ORG","PAC","PR ","QC ","RI ","SB ","SC ","SCV", &
|
||||||
"SD ","SDG","SF ","SFL","SJV","SK ","SNJ","STX","SV ","TN ", &
|
"SD ","SDG","SF ","SFL","SJV","SK ","SNJ","STX","SV ","TN ", &
|
||||||
"UT ","VA ","VI ","VT ","WCF","WI ","WMA","WNY","WPA","WTX", &
|
"UT ","VA ","VI ","VT ","WCF","WI ","WMA","WNY","WPA","WTX", &
|
||||||
"WV ","WWA","WY ","DX "/
|
"WV ","WWA","WY ","DX ","PE "/
|
||||||
data cmult/ &
|
data cmult/ &
|
||||||
"AL ","AK ","AZ ","AR ","CA ","CO ","CT ","DE ","FL ","GA ", &
|
"AL ","AK ","AZ ","AR ","CA ","CO ","CT ","DE ","FL ","GA ", &
|
||||||
"HI ","ID ","IL ","IN ","IA ","KS ","KY ","LA ","ME ","MD ", &
|
"HI ","ID ","IL ","IN ","IA ","KS ","KY ","LA ","ME ","MD ", &
|
||||||
@ -868,7 +868,7 @@ subroutine pack77_03(nwords,w,i3,n3,c77)
|
|||||||
! Check 0.3 and 0.4 (ARRL Field Day exchange)
|
! Check 0.3 and 0.4 (ARRL Field Day exchange)
|
||||||
! Example message: WA9XYZ KA1ABC R 16A EMA 28 28 1 4 3 7 71
|
! Example message: WA9XYZ KA1ABC R 16A EMA 28 28 1 4 3 7 71
|
||||||
|
|
||||||
parameter (NSEC=84) !Number of ARRL Sections
|
parameter (NSEC=85) !Number of ARRL Sections
|
||||||
character*13 w(19)
|
character*13 w(19)
|
||||||
character*77 c77
|
character*77 c77
|
||||||
character*6 bcall_1,bcall_2
|
character*6 bcall_1,bcall_2
|
||||||
@ -883,7 +883,7 @@ subroutine pack77_03(nwords,w,i3,n3,c77)
|
|||||||
"ONS","OR ","ORG","PAC","PR ","QC ","RI ","SB ","SC ","SCV", &
|
"ONS","OR ","ORG","PAC","PR ","QC ","RI ","SB ","SC ","SCV", &
|
||||||
"SD ","SDG","SF ","SFL","SJV","SK ","SNJ","STX","SV ","TN ", &
|
"SD ","SDG","SF ","SFL","SJV","SK ","SNJ","STX","SV ","TN ", &
|
||||||
"UT ","VA ","VI ","VT ","WCF","WI ","WMA","WNY","WPA","WTX", &
|
"UT ","VA ","VI ","VT ","WCF","WI ","WMA","WNY","WPA","WTX", &
|
||||||
"WV ","WWA","WY ","DX "/
|
"WV ","WWA","WY ","DX ","PE "/
|
||||||
|
|
||||||
if(nwords.lt.4 .or. nwords.gt.5) return
|
if(nwords.lt.4 .or. nwords.gt.5) return
|
||||||
call chkcall(w(1),bcall_1,ok1)
|
call chkcall(w(1),bcall_1,ok1)
|
||||||
|
@ -442,7 +442,7 @@ bool WorkedBefore::add (QString const& call
|
|||||||
QTextStream out {&file};
|
QTextStream out {&file};
|
||||||
if (!file.size ())
|
if (!file.size ())
|
||||||
{
|
{
|
||||||
out << "WSJT-X ADIF Export<eh>" << // new file
|
out << "WSJT-X ADIF Export<eoh>" << // new file
|
||||||
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0)
|
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0)
|
||||||
endl
|
endl
|
||||||
#else
|
#else
|
||||||
|
@ -74,7 +74,7 @@ QByteArray LogBook::QSOToADIF (QString const& hisCall, QString const& hisGrid, Q
|
|||||||
QDateTime const& dateTimeOff, QString const& band, QString const& comments,
|
QDateTime const& dateTimeOff, QString const& band, QString const& comments,
|
||||||
QString const& name, QString const& strDialFreq, QString const& myCall,
|
QString const& name, QString const& strDialFreq, QString const& myCall,
|
||||||
QString const& myGrid, QString const& txPower, QString const& operator_call,
|
QString const& myGrid, QString const& txPower, QString const& operator_call,
|
||||||
QString const& xSent, QString const& xRcvd)
|
QString const& xSent, QString const& xRcvd, QString const& propmode)
|
||||||
{
|
{
|
||||||
QString t;
|
QString t;
|
||||||
t = "<call:" + QString::number(hisCall.size()) + ">" + hisCall;
|
t = "<call:" + QString::number(hisCall.size()) + ">" + hisCall;
|
||||||
@ -101,6 +101,7 @@ QByteArray LogBook::QSOToADIF (QString const& hisCall, QString const& hisGrid, Q
|
|||||||
if(comments!="") t += " <comment:" + QString::number(comments.size()) + ">" + comments;
|
if(comments!="") t += " <comment:" + QString::number(comments.size()) + ">" + comments;
|
||||||
if(name!="") t += " <name:" + QString::number(name.size()) + ">" + name;
|
if(name!="") t += " <name:" + QString::number(name.size()) + ">" + name;
|
||||||
if(operator_call!="") t+=" <operator:" + QString::number(operator_call.size()) + ">" + operator_call;
|
if(operator_call!="") t+=" <operator:" + QString::number(operator_call.size()) + ">" + operator_call;
|
||||||
|
if(propmode!="") t += " <prop_mode:" + QString::number(propmode.size()) + ">" + propmode;
|
||||||
if (xSent.size ())
|
if (xSent.size ())
|
||||||
{
|
{
|
||||||
auto words = xSent.split (' '
|
auto words = xSent.split (' '
|
||||||
|
@ -44,7 +44,7 @@ public:
|
|||||||
QDateTime const& dateTimeOff, QString const& band, QString const& comments,
|
QDateTime const& dateTimeOff, QString const& band, QString const& comments,
|
||||||
QString const& name, QString const& strDialFreq, QString const& myCall,
|
QString const& name, QString const& strDialFreq, QString const& myCall,
|
||||||
QString const& m_myGrid, QString const& m_txPower, QString const& operator_call,
|
QString const& m_myGrid, QString const& m_txPower, QString const& operator_call,
|
||||||
QString const& xSent, QString const& xRcvd);
|
QString const& xSent, QString const& xRcvd, QString const& propmode);
|
||||||
|
|
||||||
Q_SIGNAL void finished_loading (int worked_before_record_count, QString const& error) const;
|
Q_SIGNAL void finished_loading (int worked_before_record_count, QString const& error) const;
|
||||||
|
|
||||||
|
4
main.cpp
4
main.cpp
@ -323,6 +323,7 @@ int main(int argc, char *argv[])
|
|||||||
db.exec ("PRAGMA locking_mode=EXCLUSIVE");
|
db.exec ("PRAGMA locking_mode=EXCLUSIVE");
|
||||||
|
|
||||||
int result;
|
int result;
|
||||||
|
auto const& original_style_sheet = a.styleSheet ();
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
#if WSJT_QDEBUG_TO_FILE
|
#if WSJT_QDEBUG_TO_FILE
|
||||||
@ -387,6 +388,9 @@ int main(int argc, char *argv[])
|
|||||||
splash.raise ();
|
splash.raise ();
|
||||||
QObject::connect (&a, SIGNAL (lastWindowClosed()), &a, SLOT (quit()));
|
QObject::connect (&a, SIGNAL (lastWindowClosed()), &a, SLOT (quit()));
|
||||||
result = a.exec();
|
result = a.exec();
|
||||||
|
|
||||||
|
// ensure config switches start with the right style sheet
|
||||||
|
a.setStyleSheet (original_style_sheet);
|
||||||
}
|
}
|
||||||
while (!result && !multi_settings.exit ());
|
while (!result && !multi_settings.exit ());
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -888,6 +888,16 @@ Format:
|
|||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Directory</name>
|
<name>Directory</name>
|
||||||
|
<message>
|
||||||
|
<location filename="../SampleDownloader/Directory.cpp" line="51"/>
|
||||||
|
<source>File</source>
|
||||||
|
<translation type="unfinished">ファイル</translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../SampleDownloader/Directory.cpp" line="51"/>
|
||||||
|
<source>Progress</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../SampleDownloader/Directory.cpp" line="113"/>
|
<location filename="../SampleDownloader/Directory.cpp" line="113"/>
|
||||||
<location filename="../SampleDownloader/Directory.cpp" line="189"/>
|
<location filename="../SampleDownloader/Directory.cpp" line="189"/>
|
||||||
|
@ -4173,9 +4173,8 @@ UDP 服务器 %2:%3</translation>
|
|||||||
<context>
|
<context>
|
||||||
<name>QObject</name>
|
<name>QObject</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../main.cpp" line="340"/>
|
|
||||||
<source>Invalid rig name - \ & / not allowed</source>
|
<source>Invalid rig name - \ & / not allowed</source>
|
||||||
<translation>无效的无线电设备名称 - \ & / 不允许</translation>
|
<translation type="vanished">无效的无线电设备名称 - \ & / 不允许</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../widgets/widegraph.cpp" line="18"/>
|
<location filename="../widgets/widegraph.cpp" line="18"/>
|
||||||
|
@ -4173,7 +4173,6 @@ UDP 服務器 %2:%3</translation>
|
|||||||
<context>
|
<context>
|
||||||
<name>QObject</name>
|
<name>QObject</name>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../main.cpp" line="340"/>
|
|
||||||
<source>Invalid rig name - \ & / not allowed</source>
|
<source>Invalid rig name - \ & / not allowed</source>
|
||||||
<translation>無效的無線電裝置名稱 - \ & / 不允許</translation>
|
<translation>無效的無線電裝置名稱 - \ & / 不允許</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -20,10 +20,10 @@ CAboutDlg::CAboutDlg(QWidget *parent) :
|
|||||||
"weak-signal Amateur Radio communication. <br /><br />"
|
"weak-signal Amateur Radio communication. <br /><br />"
|
||||||
"© 2001-2020 by Joe Taylor, K1JT, Bill Somerville, G4WJS, <br />"
|
"© 2001-2020 by Joe Taylor, K1JT, Bill Somerville, G4WJS, <br />"
|
||||||
"and Steve Franke, K9AN. <br /><br />"
|
"and Steve Franke, K9AN. <br /><br />"
|
||||||
"We gratefully acknowledge contributions from AC6SL, AE4JY, DJ0OT, <br />"
|
"We gratefully acknowledge contributions from AC6SL, AE4JY,<br />"
|
||||||
"G3WDG, G4KLA, IV3NWV, IW3RAB, K3WYC, KA6MAL, KA9Q, KB1ZMX,<br />"
|
"DF2ET, DJ0OT, G3WDG, G4KLA, IV3NWV, IW3RAB, K3WYC, KA6MAL,<br />"
|
||||||
"KD6EKQ, KI7MT, KK1D, ND0B, PY2SDR, VE1SKY, VK3ACF, VK4BDJ,<br />"
|
"KA9Q, KB1ZMX, KD6EKQ, KI7MT, KK1D, ND0B, PY2SDR, VE1SKY,<br />"
|
||||||
"VK7MO, W4TI, W4TV, and W9MDB.<br /><br />"
|
"VK3ACF, VK4BDJ, VK7MO, W4TI, W4TV, and W9MDB.<br /><br />"
|
||||||
"WSJT-X is licensed under the terms of Version 3 <br />"
|
"WSJT-X is licensed under the terms of Version 3 <br />"
|
||||||
"of the GNU General Public License (GPL) <br /><br />"
|
"of the GNU General Public License (GPL) <br /><br />"
|
||||||
"<a href=" WSJTX_STRINGIZE (PROJECT_HOMEPAGE) ">"
|
"<a href=" WSJTX_STRINGIZE (PROJECT_HOMEPAGE) ">"
|
||||||
|
@ -46,7 +46,8 @@ Astro::Astro(QSettings * settings, Configuration const * configuration, QWidget
|
|||||||
{
|
{
|
||||||
ui_->setupUi (this);
|
ui_->setupUi (this);
|
||||||
setWindowTitle (QApplication::applicationName () + " - " + tr ("Astronomical Data"));
|
setWindowTitle (QApplication::applicationName () + " - " + tr ("Astronomical Data"));
|
||||||
setStyleSheet ("QWidget {background: white;}");
|
setBackgroundRole (QPalette::Base);
|
||||||
|
setAutoFillBackground (true);
|
||||||
connect (ui_->cbDopplerTracking, &QAbstractButton::toggled, ui_->doppler_widget, &QWidget::setVisible);
|
connect (ui_->cbDopplerTracking, &QAbstractButton::toggled, ui_->doppler_widget, &QWidget::setVisible);
|
||||||
read_settings ();
|
read_settings ();
|
||||||
ui_->text_label->clear ();
|
ui_->text_label->clear ();
|
||||||
|
@ -15,6 +15,37 @@
|
|||||||
#include "ui_logqso.h"
|
#include "ui_logqso.h"
|
||||||
#include "moc_logqso.cpp"
|
#include "moc_logqso.cpp"
|
||||||
|
|
||||||
|
namespace
|
||||||
|
{
|
||||||
|
struct PropMode
|
||||||
|
{
|
||||||
|
char const * id_;
|
||||||
|
char const * name_;
|
||||||
|
};
|
||||||
|
constexpr PropMode prop_modes[] =
|
||||||
|
{
|
||||||
|
{"", ""}
|
||||||
|
, {"AS", QT_TRANSLATE_NOOP ("LogQSO", "Aircraft scatter")}
|
||||||
|
, {"AUE", QT_TRANSLATE_NOOP ("LogQSO", "Aurora-E")}
|
||||||
|
, {"AUR", QT_TRANSLATE_NOOP ("LogQSO", "Aurora")}
|
||||||
|
, {"BS", QT_TRANSLATE_NOOP ("LogQSO", "Back scatter")}
|
||||||
|
, {"ECH", QT_TRANSLATE_NOOP ("LogQSO", "Echolink")}
|
||||||
|
, {"EME", QT_TRANSLATE_NOOP ("LogQSO", "Earth-moon-earth")}
|
||||||
|
, {"ES", QT_TRANSLATE_NOOP ("LogQSO", "Sporadic E")}
|
||||||
|
, {"F2", QT_TRANSLATE_NOOP ("LogQSO", "F2 Reflection")}
|
||||||
|
, {"FAI", QT_TRANSLATE_NOOP ("LogQSO", "Field aligned irregularities")}
|
||||||
|
, {"INTERNET", QT_TRANSLATE_NOOP ("LogQSO", "Internet-assisted")}
|
||||||
|
, {"ION", QT_TRANSLATE_NOOP ("LogQSO", "Ionoscatter")}
|
||||||
|
, {"IRL", QT_TRANSLATE_NOOP ("LogQSO", "IRLP")}
|
||||||
|
, {"MS", QT_TRANSLATE_NOOP ("LogQSO", "Meteor scatter")}
|
||||||
|
, {"RPT", QT_TRANSLATE_NOOP ("LogQSO", "Non-satellite repeater or transponder")}
|
||||||
|
, {"RS", QT_TRANSLATE_NOOP ("LogQSO", "Rain scatter")}
|
||||||
|
, {"SAT", QT_TRANSLATE_NOOP ("LogQSO", "Satellite")}
|
||||||
|
, {"TEP", QT_TRANSLATE_NOOP ("LogQSO", "Trans-equatorial")}
|
||||||
|
, {"TR", QT_TRANSLATE_NOOP ("LogQSO", "Troposheric ducting")}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
LogQSO::LogQSO(QString const& programTitle, QSettings * settings
|
LogQSO::LogQSO(QString const& programTitle, QSettings * settings
|
||||||
, Configuration const * config, LogBook * log, QWidget *parent)
|
, Configuration const * config, LogBook * log, QWidget *parent)
|
||||||
: QDialog {parent, Qt::WindowStaysOnTopHint | Qt::WindowTitleHint | Qt::WindowSystemMenuHint}
|
: QDialog {parent, Qt::WindowStaysOnTopHint | Qt::WindowTitleHint | Qt::WindowSystemMenuHint}
|
||||||
@ -25,6 +56,10 @@ LogQSO::LogQSO(QString const& programTitle, QSettings * settings
|
|||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
setWindowTitle(programTitle + " - Log QSO");
|
setWindowTitle(programTitle + " - Log QSO");
|
||||||
|
for (auto const& prop_mode : prop_modes)
|
||||||
|
{
|
||||||
|
ui->comboBoxPropMode->addItem (prop_mode.name_, prop_mode.id_);
|
||||||
|
}
|
||||||
loadSettings ();
|
loadSettings ();
|
||||||
ui->grid->setValidator (new MaidenheadLocatorValidator {this});
|
ui->grid->setValidator (new MaidenheadLocatorValidator {this});
|
||||||
}
|
}
|
||||||
@ -39,8 +74,15 @@ void LogQSO::loadSettings ()
|
|||||||
restoreGeometry (m_settings->value ("geometry", saveGeometry ()).toByteArray ());
|
restoreGeometry (m_settings->value ("geometry", saveGeometry ()).toByteArray ());
|
||||||
ui->cbTxPower->setChecked (m_settings->value ("SaveTxPower", false).toBool ());
|
ui->cbTxPower->setChecked (m_settings->value ("SaveTxPower", false).toBool ());
|
||||||
ui->cbComments->setChecked (m_settings->value ("SaveComments", false).toBool ());
|
ui->cbComments->setChecked (m_settings->value ("SaveComments", false).toBool ());
|
||||||
|
ui->cbPropMode->setChecked (m_settings->value ("SavePropMode", false).toBool ());
|
||||||
m_txPower = m_settings->value ("TxPower", "").toString ();
|
m_txPower = m_settings->value ("TxPower", "").toString ();
|
||||||
m_comments = m_settings->value ("LogComments", "").toString();
|
m_comments = m_settings->value ("LogComments", "").toString();
|
||||||
|
int prop_index {0};
|
||||||
|
if (ui->cbPropMode->isChecked ())
|
||||||
|
{
|
||||||
|
prop_index = ui->comboBoxPropMode->findData (m_settings->value ("PropMode", "").toString());
|
||||||
|
}
|
||||||
|
ui->comboBoxPropMode->setCurrentIndex (prop_index);
|
||||||
m_settings->endGroup ();
|
m_settings->endGroup ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -50,8 +92,10 @@ void LogQSO::storeSettings () const
|
|||||||
m_settings->setValue ("geometry", saveGeometry ());
|
m_settings->setValue ("geometry", saveGeometry ());
|
||||||
m_settings->setValue ("SaveTxPower", ui->cbTxPower->isChecked ());
|
m_settings->setValue ("SaveTxPower", ui->cbTxPower->isChecked ());
|
||||||
m_settings->setValue ("SaveComments", ui->cbComments->isChecked ());
|
m_settings->setValue ("SaveComments", ui->cbComments->isChecked ());
|
||||||
|
m_settings->setValue ("SavePropMode", ui->cbPropMode->isChecked ());
|
||||||
m_settings->setValue ("TxPower", m_txPower);
|
m_settings->setValue ("TxPower", m_txPower);
|
||||||
m_settings->setValue ("LogComments", m_comments);
|
m_settings->setValue ("LogComments", m_comments);
|
||||||
|
m_settings->setValue ("PropMode", ui->comboBoxPropMode->currentData ());
|
||||||
m_settings->endGroup ();
|
m_settings->endGroup ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -100,6 +144,10 @@ void LogQSO::initLogQSO(QString const& hisCall, QString const& hisGrid, QString
|
|||||||
ui->loggedOperator->setText(m_config->opCall());
|
ui->loggedOperator->setText(m_config->opCall());
|
||||||
ui->exchSent->setText (xSent);
|
ui->exchSent->setText (xSent);
|
||||||
ui->exchRcvd->setText (xRcvd);
|
ui->exchRcvd->setText (xRcvd);
|
||||||
|
if (!ui->cbPropMode->isChecked ())
|
||||||
|
{
|
||||||
|
ui->comboBoxPropMode->setCurrentIndex (-1);
|
||||||
|
}
|
||||||
|
|
||||||
using SpOp = Configuration::SpecialOperatingActivity;
|
using SpOp = Configuration::SpecialOperatingActivity;
|
||||||
auto special_op = m_config->special_op_id ();
|
auto special_op = m_config->special_op_id ();
|
||||||
@ -178,6 +226,7 @@ void LogQSO::accept()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
auto const& prop_mode = ui->comboBoxPropMode->currentData ().toString ();
|
||||||
//Log this QSO to file "wsjtx.log"
|
//Log this QSO to file "wsjtx.log"
|
||||||
static QFile f {QDir {QStandardPaths::writableLocation (QStandardPaths::DataLocation)}.absoluteFilePath ("wsjtx.log")};
|
static QFile f {QDir {QStandardPaths::writableLocation (QStandardPaths::DataLocation)}.absoluteFilePath ("wsjtx.log")};
|
||||||
if(!f.open(QIODevice::Text | QIODevice::Append)) {
|
if(!f.open(QIODevice::Text | QIODevice::Append)) {
|
||||||
@ -191,7 +240,7 @@ void LogQSO::accept()
|
|||||||
dateTimeOff.time().toString("hh:mm:ss,") + hisCall + "," +
|
dateTimeOff.time().toString("hh:mm:ss,") + hisCall + "," +
|
||||||
hisGrid + "," + strDialFreq + "," + mode +
|
hisGrid + "," + strDialFreq + "," + mode +
|
||||||
"," + rptSent + "," + rptRcvd + "," + m_txPower +
|
"," + rptSent + "," + rptRcvd + "," + m_txPower +
|
||||||
"," + m_comments + "," + name;
|
"," + m_comments + "," + name + "," + prop_mode;
|
||||||
QTextStream out(&f);
|
QTextStream out(&f);
|
||||||
out << logEntry <<
|
out << logEntry <<
|
||||||
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0)
|
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0)
|
||||||
@ -220,6 +269,7 @@ void LogQSO::accept()
|
|||||||
, m_myGrid
|
, m_myGrid
|
||||||
, xsent
|
, xsent
|
||||||
, xrcvd
|
, xrcvd
|
||||||
|
, prop_mode
|
||||||
, m_log->QSOToADIF (hisCall
|
, m_log->QSOToADIF (hisCall
|
||||||
, hisGrid
|
, hisGrid
|
||||||
, mode
|
, mode
|
||||||
@ -236,7 +286,8 @@ void LogQSO::accept()
|
|||||||
, m_txPower
|
, m_txPower
|
||||||
, operator_call
|
, operator_call
|
||||||
, xsent
|
, xsent
|
||||||
, xrcvd));
|
, xrcvd
|
||||||
|
, prop_mode));
|
||||||
QDialog::accept();
|
QDialog::accept();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ signals:
|
|||||||
, QString const& name, QDateTime const& QSO_date_on, QString const& operator_call
|
, QString const& name, QDateTime const& QSO_date_on, QString const& operator_call
|
||||||
, QString const& my_call, QString const& my_grid
|
, QString const& my_call, QString const& my_grid
|
||||||
, QString const& exchange_sent, QString const& exchange_rcvd
|
, QString const& exchange_sent, QString const& exchange_rcvd
|
||||||
, QByteArray const& ADIF);
|
, QString const& propmode, QByteArray const& ADIF);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void hideEvent (QHideEvent *);
|
void hideEvent (QHideEvent *);
|
||||||
|
@ -6,8 +6,8 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>377</width>
|
<width>440</width>
|
||||||
<height>287</height>
|
<height>322</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
@ -46,6 +46,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>call</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -68,6 +71,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>start_date_time</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -103,6 +109,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>end_date_time</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -142,6 +151,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>mode</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -171,6 +183,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>band</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -200,6 +215,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>sent</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -229,6 +247,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>rcvd</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -258,6 +279,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>grid</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -290,6 +314,9 @@
|
|||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignCenter</set>
|
<set>Qt::AlignCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>name</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -310,6 +337,9 @@
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Tx power</string>
|
<string>Tx power</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>txPower</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -339,6 +369,9 @@
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Comments</string>
|
<string>Comments</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>comments</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -369,6 +402,9 @@
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Operator</string>
|
<string>Operator</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>loggedOperator</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -403,6 +439,9 @@
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Exch sent</string>
|
<string>Exch sent</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>exchSent</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -433,6 +472,9 @@
|
|||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Rcvd</string>
|
<string>Rcvd</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>exchRcvd</cstring>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -447,6 +489,30 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_8" stretch="0,0,0">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_5">
|
||||||
|
<property name="text">
|
||||||
|
<string>Prop Mode</string>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>comboBoxPropMode</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QComboBox" name="comboBoxPropMode"/>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="cbPropMode">
|
||||||
|
<property name="text">
|
||||||
|
<string>Retain</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
@ -486,6 +552,11 @@
|
|||||||
<tabstop>cbTxPower</tabstop>
|
<tabstop>cbTxPower</tabstop>
|
||||||
<tabstop>comments</tabstop>
|
<tabstop>comments</tabstop>
|
||||||
<tabstop>cbComments</tabstop>
|
<tabstop>cbComments</tabstop>
|
||||||
|
<tabstop>loggedOperator</tabstop>
|
||||||
|
<tabstop>exchSent</tabstop>
|
||||||
|
<tabstop>exchRcvd</tabstop>
|
||||||
|
<tabstop>comboBoxPropMode</tabstop>
|
||||||
|
<tabstop>cbPropMode</tabstop>
|
||||||
</tabstops>
|
</tabstops>
|
||||||
<resources/>
|
<resources/>
|
||||||
<connections>
|
<connections>
|
||||||
|
@ -5700,7 +5700,7 @@ void MainWindow::acceptQSO (QDateTime const& QSO_date_off, QString const& call,
|
|||||||
, QString const& name, QDateTime const& QSO_date_on, QString const& operator_call
|
, QString const& name, QDateTime const& QSO_date_on, QString const& operator_call
|
||||||
, QString const& my_call, QString const& my_grid
|
, QString const& my_call, QString const& my_grid
|
||||||
, QString const& exchange_sent, QString const& exchange_rcvd
|
, QString const& exchange_sent, QString const& exchange_rcvd
|
||||||
, QByteArray const& ADIF)
|
, QString const& propmode, QByteArray const& ADIF)
|
||||||
{
|
{
|
||||||
QString date = QSO_date_on.toString("yyyyMMdd");
|
QString date = QSO_date_on.toString("yyyyMMdd");
|
||||||
if (!m_logBook.add (call, grid, m_config.bands()->find(dial_freq), mode, ADIF))
|
if (!m_logBook.add (call, grid, m_config.bands()->find(dial_freq), mode, ADIF))
|
||||||
@ -5711,7 +5711,7 @@ void MainWindow::acceptQSO (QDateTime const& QSO_date_off, QString const& call,
|
|||||||
|
|
||||||
m_messageClient->qso_logged (QSO_date_off, call, grid, dial_freq, mode, rpt_sent, rpt_received
|
m_messageClient->qso_logged (QSO_date_off, call, grid, dial_freq, mode, rpt_sent, rpt_received
|
||||||
, tx_power, comments, name, QSO_date_on, operator_call, my_call, my_grid
|
, tx_power, comments, name, QSO_date_on, operator_call, my_call, my_grid
|
||||||
, exchange_sent, exchange_rcvd);
|
, exchange_sent, exchange_rcvd, propmode);
|
||||||
m_messageClient->logged_ADIF (ADIF);
|
m_messageClient->logged_ADIF (ADIF);
|
||||||
|
|
||||||
// Log to N1MM Logger
|
// Log to N1MM Logger
|
||||||
|
@ -243,7 +243,7 @@ private slots:
|
|||||||
, QString const& name, QDateTime const& QSO_date_on, QString const& operator_call
|
, QString const& name, QDateTime const& QSO_date_on, QString const& operator_call
|
||||||
, QString const& my_call, QString const& my_grid
|
, QString const& my_call, QString const& my_grid
|
||||||
, QString const& exchange_sent, QString const& exchange_rcvd
|
, QString const& exchange_sent, QString const& exchange_rcvd
|
||||||
, QByteArray const& ADIF);
|
, QString const& propmode, QByteArray const& ADIF);
|
||||||
void on_bandComboBox_currentIndexChanged (int index);
|
void on_bandComboBox_currentIndexChanged (int index);
|
||||||
void on_bandComboBox_activated (int index);
|
void on_bandComboBox_activated (int index);
|
||||||
void on_readFreq_clicked();
|
void on_readFreq_clicked();
|
||||||
|
@ -10,7 +10,7 @@ SOURCES += \
|
|||||||
widgets/AbstractLogWindow.cpp \
|
widgets/AbstractLogWindow.cpp \
|
||||||
widgets/FrequencyLineEdit.cpp widgets/FrequencyDeltaLineEdit.cpp \
|
widgets/FrequencyLineEdit.cpp widgets/FrequencyDeltaLineEdit.cpp \
|
||||||
widgets/FoxLogWindow.cpp widgets/CabrilloLogWindow.cpp \
|
widgets/FoxLogWindow.cpp widgets/CabrilloLogWindow.cpp \
|
||||||
widgets/HelpTextWindow.cpp
|
widgets/HelpTextWindow.cpp widgets/RestrictedSpinBox.cpp
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
widgets/mainwindow.h widgets/plotter.h \
|
widgets/mainwindow.h widgets/plotter.h \
|
||||||
widgets/about.h widgets/widegraph.h \
|
widgets/about.h widgets/widegraph.h \
|
||||||
@ -21,7 +21,8 @@ HEADERS += \
|
|||||||
widgets/fastplot.h widgets/MessageBox.hpp widgets/colorhighlighting.h \
|
widgets/fastplot.h widgets/MessageBox.hpp widgets/colorhighlighting.h \
|
||||||
widgets/ExportCabrillo.h widgets/AbstractLogWindow.hpp \
|
widgets/ExportCabrillo.h widgets/AbstractLogWindow.hpp \
|
||||||
widgets/FoxLogWindow.hpp widgets/CabrilloLogWindow.hpp \
|
widgets/FoxLogWindow.hpp widgets/CabrilloLogWindow.hpp \
|
||||||
widgets/DateTimeEdit.hpp widgets/HelpTextWindow.hpp
|
widgets/DateTimeEdit.hpp widgets/HelpTextWindow.hpp \
|
||||||
|
widgets/RestrictedSpinBox.hpp
|
||||||
|
|
||||||
FORMS += \
|
FORMS += \
|
||||||
widgets/mainwindow.ui widgets/about.ui \
|
widgets/mainwindow.ui widgets/about.ui \
|
||||||
|
Loading…
Reference in New Issue
Block a user