Hi Alex,
I have added a few enhancements to your proposed patch:
https://www.dropbox.com/s/7slm4oypbc5g8ks/highlight.diff?dl=0
this extends the UDP message to include the foreground colour as well as
the background colour. The colours are passed as QColor format fields
which are a little more complicated but are already supported by the Qt
QDataStream formats. The main reason for the field format is that QColor
can specify many more colours and also anĀ invalid colour value (spec =
0). The invalid value is used to reset the background and or foreground
colour to defaults. The internal implementation in WSJT-X keeps a
dictionary of highlight commands send and applies the colours to all
existing decodes and future decodes, this should explain the need for a
resetting mechanism.
As an example I have enhanced the WSJT-X MessageServer class and the
reference message_aggregator application (the C++ Qt one) provided with
WSJT-X to exercise the new UDP message, it does so by displaying a list
of "calls of interest" which it relays to all connected WSJT-X clients.
Callsigns may be added to, edited, and deleted (right-click the list for
a context menu).
Give it a try and see what you think.
73
Bill
G4WJS.
On 23/03/2018 21:34, Alex, VE3NEA wrote:
Hi Bill,
Thank you for a link to your message aggregator. I will take a closer
look at it tonight, it looks like it includes a useful piece of code
for working with the wsjt-x messages.
I included the Delphi project only as a testing tool for the new
feature in wsjt-x, so please ignore it if it is incomplete.
My C++ code does not change the caret position, the callsign is
highlighted using a temporary cursor object.
73 Alex VE3NEA
On 2018-03-23 17:14, Bill Somerville wrote:
On 23/03/2018 20:41, Alex, VE3NEA wrote:
I have written some code that allows a UDP server, e.g., a logger,
to tell WSJT-X what background color to use for each callsign in the
Band Activity panel. This might be useful to those who chase various
awards, if the logger assigns different colors to new IOTA groups,
US counties, etc. The end result looks like on the attached
screenshot. The .diff file is here:
http://www.dxatlas.com/Misc/callsign_highlight.zip
The zip also includes a Delphi class for listening and replying to
the WSJT-X messages, and a demo program that shows how to use the
class, which is also useful for testing the new feature once it is
included in WSJT-X.
Please review and merge if OK.
Hi Alex,
looks good but I have some issues. Please check out this:
https://www.dropbox.com/s/xlvc5kxy85ymtn9/message_aggregator.zip?dl=0
, it is a very basic UDP message server application written in Object
Pascal and also uses Indy for services. The message cracking routines
may be useful to you, free free to copy them - all I require is credit.
I will look in more detail at your patch, I have a concern about
cursor positioning in the decode windows that I need to check.
There is a requirement to negotiate the message schema number if you
intend to send messages back to WSJT-X instances, this is necessary
in case a new schema is introduced as the WSJT-X UDP messages are a
grid topology and all nodes must agree on the "on the wire" message
schema. The schema number is allowed to decrease if an old lower
schema node joins the party. The MessageServer.cpp class in the
WSJT-X sources does this correctly. See code at line 155 handling
Heartbeat messages here:
https://sourceforge.net/p/wsjt/wsjt/HEAD/tree/branches/wsjtx/MessageServer.cpp
.
I also have a partial implementation of joining a multicast group for
the AutoIt scripting language, this is relevant because it has no
built in library support for multicast and it is used to implement
the current version of JTAlert, so JTAlert must bind a unicast
address for now. If JTAlert is in the grid then it must degrade to a
single server (JTAlert) many client (WSJT-X) topology, which excludes
other servers :( I need to find time to complete this and offer it to
Laurie as a plug in replacement for the AutoIt UDP server module.
73
Bill
G4WJS.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel