Release builds were incrorrectly selecting a high level of Hamlib
trace verbosity.
Added a new CMake option to turn on maximum Hamlib trace verbosity
when required (WSJT_HAMLIB_VERBOSE_TRACE default=OFF). The current
WSJT_HAMLIB_TRACE (default=OFF) now only turns on tracing at warning
level and above, this option must be set ON before the
WSJT_HAMLIB_VERBOSE_TRACE option becomes available. Release
configuration builds use a Hamlib trace level of error or above by
default.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5261 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Trying to resolve the best default size for the Settings window for
all platforms whilst allowing the user to shrink the window on
platforms that allow a more compact widget layout like Windows.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5251 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The CMake option WSJT_CREATE_WINMAIN is now available for both release
and debug configuration builds so it may be disabled in any Windows
build configuration if required.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5250 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Don't make proper Windows applications in debug builds. This means
that the debug output now goes to the console and the program
(wsjtx.exe) no longer detaches from the console.
If you require a proper Windows executable, for instance if you are
getting the debug output via the normal method of attaching a
debugger, you can still do so by setting the CMake configuration
option WSJT_CREATE_WINMAIN to ON for your debug build configuration on
Windows.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5249 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This allows any new UDP client to know the WSJT-X status automatically
after they have requested an initial replay of all decodes upon
discovering a WSJT-X instance.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5245 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
We now have a dependency on libQt5SerialPort and require Qt v5.2 or
newer.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5232 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The Qt_5_0 QDataStream serialization format is buggy, moved to the
Qt_5_2 format.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5231 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Apple Clang++ doesn't seem cope with the necessary hash template class
specializations. So have degraded to Qt QHash.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5227 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
To facilitate interaction with other applications WSJT-X now sends
status updates to a predefined UDP server or multicast group
address. The status updates include the information currently posted
to the decodes.txt and wsjtx_status.txt files. An optional back
communications channel is also implemented allowing the UDP server
application to control some basic actions in WSJT-X.
A reference implementaion of a typical UDP server written in C++ using
Qt is provided to demonstrate these facilities. This application is
not intended as a user tool but only as an example of how a third
party application may interact with WSJT-X.
The UDP messages Use QDataStream based serialization. Messages are
documented in NetworkMessage.hpp along with some helper classes that
simplify the building and decoding of messages.
Two message handling classes are introduced, MessageClient and
MessageServer. WSJT-X uses the MessageClient class to manage outgoing
and incoming UDP messages that allow communication with other
applications. The MessageServer class implements the kind of code
that a potential cooperating application might use. Although these
classes use Qt serialization facilities, the message formats are
easily read and written by applications that do not use the Qt
framework.
MessageAggregator is a demonstration application that uses
MessageServer and presents a GUI that displays messages from one or
more WSJT-X instances and allows sending back a CQ or QRZ reply
invocation by double clicking a decode. This application is not
intended as a user facing tool but rather as a demonstration of the
WSJT-X UDP messaging facility. It also demonstrates being a multicast
UDP server by allowing multiple instances to run concurrently. This is
enabled by using an appropriate multicast group address as the server
address. Cooperating applications need not implement multicast
techniques but it is recomended otherwise only a single appliaction
can act as a broadcast message (from WSJT-X) recipient.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5225 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Made the force control lines group box in the Configuration UI
checkable which allows the DTR and RTS checkboxes to mean either force
low or force high.
Also improved UI control logic to only allow valid setting
combintions. Disabled network port text edit for OmniRig. Cleared
network port combo box list for network interfaces like HRD and DXLab
Commander, was erroneously showing COM ports.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5222 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Subtracting unsigned types is tricky, made sure result does not wrap
to avoid potentially implementation defined behaviour.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5211 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Ensure that these windows have their viewport scrolled fully to the
left after deocdes and font changes.
Add the band to the separator line but only if we are certain that the
decodes below it are on that band.
Thanks to Ton PA0TBR for the implementation and testing of the core
features of this change.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5207 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Several issues mainly related to the rather complex interaction of
style sheets and widget properties with respect to fonts.
Font setting on the astro window should now be consistent and not
overridden by application style sheet driven font settings.
Decoded text font setting should now be consistent and not revert back
to Courier 10 on the next decode after a font change.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5179 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Due to what appears to be a Qt bug, any in progress user edit to a
table fields is not updated in the underlying data models until
QDialog::accept() is called, this means that model validation before
calling QDialog::accept() is tricky.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5164 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This fixes a defect where station detail changes are not saved.
The Qt sort and filter proxy models utilize an item cache that must be
flushed by callig submit() before accessing the underlying model if
the proxy model has been used for updates.
Also separated the item model candidate key filter from the
implementation internals of the foreign key item delegate so that
candidate key filtered models can be used directly as view models.
Make the insert new station details band combo box use a candidate key
filtered item model to avoid constraint violations. Constraint is zero
or one station records per band.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5161 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Hamlib conflates mode and bandwidth which sometimes make it impossible
to change mode without forcing a bandwidth change. Unfortunately
Hamlib has no bandwidth value that is documented to leave the
bandwidth as is, despite this being easy to implement. Many Hamlib rig
back ends do interpret RIG_PASSBAND_NORMAL as "don't explicitly change
the bandwidth".
Some rigs like the Tentec Jupiter have a widest bandwidth of 8kHz
which is larger than desired for this application so the old behaviour
of setting the default wide bandwidth is not very friendly. Also many
rig back ends in Hamlib do not do the required bandwidth setting
correctly due to the CAT protocol having no way of discovering user
defined bandwidth allocations.
Merged from wsjtx-1.4 branch.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5151 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Also cleaned up some debugging messages.
Merged from wsjtx-1.4 branch.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5141 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This file is created at run time and is not needed in the deployment
package. Also removed from source control to avoid further
misunderstandings.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5139 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This change generates all the resources using a CMake function
add_resources() and substitution into a template .qrc file. The
location of resource files in the source tree is no longer related to
the path of the resources in the embedded executable resources file
system. Instead the roesources are embedded with predetermined paths
e.g. :/, :/Palettes/ and, :/samples/ .
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5131 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The compilation of the WSJT-X resources file requires a lot of virtual
memory because of the large .WAV files included. For developers
building on very limited resource machines like single board embedded
platforms there is now an option WSJT_EMBED_SAMPLES which can be set
to OFF to skip the inclusion of the sample files in the WSJT_X binary.
The sample files may still be added manually to the target machine if
required.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5130 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Thanks to Sebastian W4AS for reporting these.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5129 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The feature to set the next message to be sent to auto generated
message number 6 (CQ) is now only trggered when a transmission of a 73
message is made for the first time in a QSO. If a second 73 message is
required, for example when a QSO partner repeats an RRR message after
your 73 message, simply double clicking the RRR message will initiate
another 73 message without triggering a log QSO dialog or setting the
next message to CQ.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5065 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
More consistent and accurate processing of compund callsigns including
recognizing the user's call in both base and fully qualified form,
extracting reports from special type one and type two compound call
messages. Ensure that "CQ DX" message prefixes are recognized and
processd correctly.
The cycle of double clicking through a QSO has been enhanced to
recognoize the standard messages correctly and use the correct next
message. The automatic transmission button "Enable Tx" now does what
it says and does not double as a stop transmit button. This allows the
current transmission to complete even if the automatic transmission
feature is disabled. In line with this the "stop sending after a 73
message is sent" feature turns off the automatic transmission enable
at the start of the sending of a 73 message and also the next message
is now set up as the CQ message automatically in this scenario. A 73
message is now either a standard message containing the word "73" or
any free text message containing "73" (not necessarily as a distinct
word").
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5055 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Wrapping the Ui:: UI class in a QScopedPointer, a perfectly proper
thing to do, causes QtDesigner to fail to grok the code.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5019 ab8295b8-cf94-4d9e-aec4-7959e3be5d79