WSJT-X/artwork/wsjtx_globe_1024x1024.svg
Bill Somerville 9247e10115 Added support for use of "Standard" locations for writable files.
This allows  writable files  to be  located in  the "correct"
         location for  each platform rather  than in the  directory of
         the  executable  which, in  general,  is  not recommended  or
         allowed in some cases.

         A preprocessor macro  WSJT_STANDARD_FILE_LOCATIONS is used to
         switch be tween old and new functionality, currently it is on
         by default.  It  can be turned off by defining  it to a false
         value (0)  or more simply  with cmake-gui setting  the option
         with  the same  name.  JTAlert  can  only work  with the  old
         non-standard file  locations until  Laurie VK3AMA  chooses to
         support the new file locations.

         Even  if the  above is  not  enabled; the  QSettings file  is
         written to a  user specific location so it will  be shared by
         all instances  of the  program (i.e.  across  upgrades).  See
         below for multiple concurrent instance support changes.

Added a command line parser module for Fortran.

         Added 'lib/options.f90'  to facilitate more  complex argument
         passing to jt9 to cover explicit file locations.

Changed the way multiple concurrent instances are handled.

         This is  to allow the program  to be run multiple  times from
         the same installation directory.

         A new wsjtx command line  optional argument is available "-r"
         or  "--rig"   which  enables  multiple   concurrent  instance
         support.  The  parameter of the  new option is a  unique name
         signifying  a rig  or equivalent.   The name  is used  as the
         shared memory segment key and  in window titles.  The name is
         also used to  access unique settings files  and writable data
         files like ALL.TXT  and log files.  No attempt  has been made
         to share these files between concurrent instances.

         If  "-r" or  "--rig" is  used  without a  parameter it  still
         enables  multiple   concurrent  instance  support   for  that
         instance.  All instances must use  a unique parameter, one of
         which may be empty.

         The        rig       name        is       appended        the
         QCoreApplication::applicationName() for convenient usage like
         window titles.

Set non Qt locale to "C".

         This ensures that C library functions give consistent results
         whatever the  system locale is set  to.  QApplication follows
         the system locale as before.  Thus using QApplication and its
         descendants  like widgets  and QString  for all  user visible
         formating will give correct l10n and using C/C++ library will
         give consistent formatting across locales.

Added top level C++ exception handling to main.cpp.

         Because  the   new  transceiver  framework   uses  exceptions
         internally, the main function now handles any exceptions that
         aren't caught.

Retired devsetup, replaced with Configuration.

         Configuration  is  a  class  that encapsulates  most  of  the
         configuration  behavior.   Because  rig configuration  is  so
         closely coupled with rig operation, Configuration serves as a
         proxy  for   access  to  the  rig   control  functions.   See
         Configuration.hpp  for  more  details  of  the  Configuration
         interface.

Menu changes.

         Various checkable  menu actions moved  from main menu  to the
         Configuration  dialog.   The  whole settings  menu  has  been
         retired with  the single  "Settings..."  action moved  to the
         file  menu  for  consistency  on  Mac  where  it  appears  as
         "Preferences" in line with Mac guidelines.

New data models for data used by the application.

         ADIF amateur band parameters,  free text message macros, spot
         working   frequencies  and,   station  information   (station
         descriptions and transverter offsets per band) each implement
         the  QAbstractItemModel interface  allowing them  to be  used
         directly with  Qt view widgets  (Bands.hpp, FrequencyList.hpp
         and, StationList.hpp).  Configuration  manages maintenance of
         an instance of  all but the former of the  above models.  The
         ADIF band  model is  owned by  Configuration but  requires no
         user maintenance as it is immutable.

Band combo box gets more functionality.

         This  widget is  now an  editable QComboBox  with some  extra
         input capabilities.

         The popup list is still the list of spot working frequencies,
         now  showing the  actual  frequency decorated  with the  band
         name.  This  allows multiple  spot frequencies  on a  band if
         required.

         The  line edit  allows direct  frequency entry  in mega-Hertz
         with  a completer  built  in to  suggest  the available  spot
         working frequencies.   It also  allows band name  entry where
         the  first  available  spot working  frequency  is  selected.
         Recognized band names are those  that are defined by the ADIF
         specification and  can be found  in in the  implementation of
         the ADIF bands model (Bands.cpp).

         If an out of band frequency  is chosen, the line edit shows a
         warning red  background and the  text "OOB".  Out of  band is
         only defined  by the  ADIF band limits  which in  general are
         wider than any entities regulations.

Qt 5.2 now supports default audio i/p and o/p devices.

         These devices are placeholders  for whatever the user defines
         as the  default device.   Because of  this they  need special
         treatment as  the actual device  used is chosen at  open time
         behind the scenes.

Close-down behavior is simplified.

         The close-down  semantics were broken such  that some objects
         were not being shut down cleanly, this required amendments to
         facilitate correct close down of threads.

User font selection added to Configuration UI.

         Buttons to set the application font and the font for the band
         and  Rx frequency  activity widgets  have been  added to  the
         Configuration UI to replace the file based font size control.

Free text macros now selected directly.

         The free text line edit  widgets are now editable combo boxes
         that have  the current free  text macro definitions  as their
         popup  list.   The old  context  menu  to  do this  has  been
         retired.

Astronomical data window dynamically formatted and has font a chooser.

         This window is now autonomous,  has its own font chooser and,
         dynamically resizes to cover the contents.

Double click to Tx enabled now has its own widget in the status bar.

QDir used for portable path and file name handling throughout.

The  "Monitor", "Decode",  "Enable  Tx" and,  "Tune"  buttons are  now
checkable.

         Being checkable allows these  buttons control their own state
         and rendering.

Calls to PSK Reporter interface simplified.

         In   mainwindow.cpp  the   calls   to   this  interface   are
         rationalized to just 3 locations.

Manipulation of ALL.TXT simplified.

         Moved, where possible, to common functions.

Elevated frequency types to be Qt types.

         Frequency  and FrequencyDelta  defined as  Qt types  in their
         meta-type system  (Radio.hpp).  They  are integral  types for
         maximum accuracy.

Re-factored rig control calls in mainwindow.cpp.

         The new  Configuration proxy  access to rig  control required
         many changes  (mostly simplifications) to the  MainWindow rig
         control code.  Some  common code has been  gathered in member
         functions   like   qsy(),   monitor(),   band_changed()   and
         auto_tx_mode().

Rig control enhancements.

         The  rig control  for  clients interface  is  declared as  an
         abstract    interface   (See    Transceiver.hpp).    Concrete
         implementations of this interface are provided for the Hamlib
         rig  control library,  DX Lab  Suite Commander  via a  TCP/IP
         command channel, Ham  Radio Deluxe also via  a TCP/IP command
         channel and, OmniRig via its Windows COM server interface.

         Concrete Transceiver implementations are expected to be moved
         to a separate thread after construction since many operations
         are blocking  and not suitable  for running in a  GUI thread.
         To facilitate this all  instantiation of concrete Transceiver
         instances are handled by  Configuration using a factory class
         (TransceiverFactory)   for   configuration  parameter   based
         instantiation.

         Various   common  functionality   shared  by   different  rig
         interface implementations  are factored out into  helper base
         classes that  implement or delegate parts  of the Transceiver
         interface.  They  are TransceiverBase  which caches  state to
         minimize expensive rig commands, it also maps the Transceiver
         interface  into a  more  convenient  form for  implementation
         (template methods).  PollingTransceiver that provides a state
         polling   mechanism  that   only   reports  actual   changes.
         EmulateSplitTransceiver  that  provides  split  operation  by
         QSYing on PTT state changes.

         EmulateSplitTransceiver can  be used with  any implementation
         as  it follows  the GoF  Decorator pattern  and can  wrap any
         Transceiver implementation.

         OmniRigTransceiver is  derived directly  from TransceiverBase
         since  it doesn't  require  polling due  to its  asynchronous
         nature.  OmniRigTransceiver is only built on Windows as it is
         a COM server client.  To build  it you must first install the
         OmniRig     client     on     the     development     machine
         (http://www.dxatlas.com/omnirig/).

         DXLabSuiteCommanderTransceiver          derives          from
         PollingTransceiver since  it is a  synchronous communications
         channel.   No  third  party  library  is  required  for  this
         interface.

         HRDTransceiver also derives from PollingTransceiver.  The HRD
         interface  library has  been  reverse  engineered to  provide
         functionality with  all available versions of  HRD.  No third
         party libraries are required.

         HamlibTransceiver  likewise  derives from  PollingTransceiver
         since  the Hamlib  asynchronous interface  is non-functional.
         Although this  class will interface with  the release version
         of Hamlib (1.2.15.3);  for correct operation on  most rigs it
         needs to  run with the  latest master branch code  of Hamlib.
         During development many changes to Hamlib have been submitted
         and accepted,  hence this requirement.  Hamlib  source can be
         obtained from git://git.code.sf.net/p/hamlib/code  and at the
         time of writing he master branch was at SHA 6e4432.

         The Hamlib interface directly calls the "C" interface and the
         modified rigclass.{h,cpp} files have been retired.

         There is a rig type selection of "None" which may be used for
         non-CAT  rigs, this  is actually  a connection  to the  dummy
         Hamlib device.

         PollingTransvceiver   derives    from   TransceiverBase   and
         TransceiverBase derives from the Transceiver interface.

         Each interface implementation offers  some possibility of PTT
         control via  a different serial  port than the CAT  port.  We
         also support PTT  control directly via a  second serial port.
         This is done  by delegating to a dummy  Hamlib instance which
         is   only   used   for   PTT  control.    This   means   that
         DXLabSuiteCommanderTransceiver,       HRDTransceiver      and
         OmniRigTransceiver  always  wrap  a  dummy  HamlibTransceiver
         instance.  The  factory class TransceiverFactory  manages all
         these constructional complexities.

         Serial port  selection combo  boxes are  now editable  with a
         manually  entered value  being  saved to  the settings  file.
         This allows  a non-standard  port device  to be  used without
         having to edit the settings file manually.

         For TCP/IP  network CAT  interfaces; the network  address and
         port  may  be specified  allowing  the  target device  to  be
         located on a different machine  from the one running wsjtx if
         required.  The  default used when  the address field  is left
         blank is the correct one for normal usage on the local host.

         Selecting a polling  interval of zero is  no longer possible,
         this  is because  the rig  control capability  can no  longer
         support one way connection.  This  is in line with most other
         CAT control software.

         In the Configuration dialog there are options to select split
         mode  control  by  the  software  and  mode  control  by  the
         software.  For  the former  "None", "Rig"  and "Fake  it" are
         available,  for  the latter  "None",  "USB"  and, "Data"  are
         available.  Because  tone generation is implicitly  linked to
         split mode  operation; it is  no longer possible to  have the
         software in split  mode and the rig not or  vice versa.  This
         may mean some rigs cannot be used in split mode and therefore
         not in dual JT65+JT9 until  issues with CAT control with that
         rig are  resolved.  Single  mode with VOX  keying and  no CAT
         control are still possible so even the most basic transceiver
         setup is supported as before.

         Configuration now  supports a  frequency offset  suitable for
         transverter   operation.     The   station    details   model
         (StationList.hpp) includes  a column  to store an  offset for
         each band if required.

CMake build script improvements.

         The CMakeLists.txt from the  'lib' directory has been retired
         with its  contents merged into the  top level CMakeLists.txt.
         Install  target support  has been  greatly improved  with the
         Release build  configuration now building a  fully standalone
         installation  on Mac  and Windows.   The Debug  configuration
         still   builds   an   installation   that   has   environment
         dependencies for  external libraries, which is  desirable for
         testing and debugging.

         Package target  support is largely complete  for Mac, Windows
         and, Linux, it should be possible to build release installers
         directly from CMake/CPack.

         Cmake FindXXXX.cmake  modules have been added  to improve the
         location of fftw-3 and Hamlib packages.

         Version numbers are now stored in Versions.cmake and work in
         concert with automatic svn revision lookup during build.  The
         version string becomes 'rlocal'± if there are any uncommitted
         changes in the build source tree.

Moved resource like files to Qt resources.

      	 Because location of resource files  (when they cannot go into
      	 the  installation directory  because of  packaging rules)  is
      	 hard to standardize.  I have used the Qt  resource system for
      	 all ancillary data files. Some  like kvasd.dat are dumped out
      	 to the temp (working directory)  because they are accessed by
      	 an external program, others like the audio samples are copied
      	 out so  they appear in  the data directory under  the default
      	 save directory.



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3929 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-03-26 13:21:00 +00:00

603 lines
33 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:export-ydpi="90"
inkscape:export-xdpi="90"
inkscape:export-filename="/home/bill/Dropbox/src/wsjtx-dev/icons/windows-icons/icon_1024x1024.png"
version="1.1"
width="1024"
sodipodi:version="0.32"
sodipodi:docname="wsjtx_globe_1024x1024.svg"
inkscape:version="0.48.4 r9939"
id="svg1432"
height="1024">
<sodipodi:namedview
bordercolor="#666666"
borderopacity="1.0"
id="base"
inkscape:current-layer="svg1432"
inkscape:cx="512"
inkscape:cy="512"
inkscape:guide-bbox="true"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-height="858"
inkscape:window-width="1114"
inkscape:window-x="72"
inkscape:window-y="31"
inkscape:zoom="0.69433594"
pagecolor="#ffffff"
showborder="true"
showguides="true"
showgrid="false"
inkscape:window-maximized="0"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
inkscape:showpageshadow="false" />
<metadata
id="metadata3060">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:title />
<dc:description>Simple globe centered on North America</dc:description>
<dc:subject>
<rdf:Bag>
<rdf:li>earth globe northamerica</rdf:li>
</rdf:Bag>
</dc:subject>
<dc:publisher>
<cc:Agent
rdf:about="http://www.openclipart.org/">
<dc:title>Open Clip Art Library</dc:title>
</cc:Agent>
</dc:publisher>
<dc:creator>
<cc:Agent>
<dc:title>Dan Gerhrads</dc:title>
</cc:Agent>
</dc:creator>
<dc:rights>
<cc:Agent>
<dc:title>Dan Gerhrads</dc:title>
</cc:Agent>
</dc:rights>
<dc:date>May 1, 2005</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<cc:license
rdf:resource="http://web.resource.org/cc/PublicDomain" />
<dc:language>en</dc:language>
</cc:Work>
<cc:License
rdf:about="http://web.resource.org/cc/PublicDomain">
<cc:permits
rdf:resource="http://web.resource.org/cc/Reproduction" />
<cc:permits
rdf:resource="http://web.resource.org/cc/Distribution" />
<cc:permits
rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
</cc:License>
</rdf:RDF>
</metadata>
<defs
id="defs1759">
<linearGradient
id="linearGradient37658">
<stop
style="stop-color:#2f7aff;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop37660" />
<stop
style="stop-color:#0000b3;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop37662" />
</linearGradient>
<linearGradient
id="linearGradient20137">
<stop
style="stop-color:#00bf00;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop20139" />
<stop
style="stop-color:#007500;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop20141" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient20143"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient37658"
r="112.3373"
inkscape:collect="always"
id="radialGradient37664"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.806632,1.239722)"
fy="270.08731"
fx="221.61394"
cy="270.08731"
cx="221.61394" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1902"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1904"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1906"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1908"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1910"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1912"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1914"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1916"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1918"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient20137"
r="188.61865"
inkscape:collect="always"
id="radialGradient1920"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<radialGradient
xlink:href="#linearGradient37658-427"
r="112.3373"
inkscape:collect="always"
id="radialGradient37664-403"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.806632,1.239722)"
fy="270.08731"
fx="221.61394"
cy="270.08731"
cx="221.61394" />
<linearGradient
id="linearGradient37658-427">
<stop
style="stop-color:#488afe;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7178" />
<stop
style="stop-color:#0000cc;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7180" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-396"
r="188.61865"
inkscape:collect="always"
id="radialGradient1902-893"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-396">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7184" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7186" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-527"
r="188.61865"
inkscape:collect="always"
id="radialGradient1904-666"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-527">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7190" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7192" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-774"
r="188.61865"
inkscape:collect="always"
id="radialGradient1906-717"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-774">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7196" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7198" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-253"
r="188.61865"
inkscape:collect="always"
id="radialGradient1908-922"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-253">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7202" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7204" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-972"
r="188.61865"
inkscape:collect="always"
id="radialGradient1910-261"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-972">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7208" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7210" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-945"
r="188.61865"
inkscape:collect="always"
id="radialGradient1912-713"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-945">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7214" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7216" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-600"
r="188.61865"
inkscape:collect="always"
id="radialGradient1914-146"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-600">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7220" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7222" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-196"
r="188.61865"
inkscape:collect="always"
id="radialGradient1916-817"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-196">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7226" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7228" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-388"
r="188.61865"
inkscape:collect="always"
id="radialGradient1918-23"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-388">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7232" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7234" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-202"
r="188.61865"
inkscape:collect="always"
id="radialGradient1920-260"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-202">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7238" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7240" />
</linearGradient>
<radialGradient
xlink:href="#linearGradient20137-151"
r="188.61865"
inkscape:collect="always"
id="radialGradient20143-884"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(0.893959,1.11862)"
fy="298.37747"
fx="205.17723"
cy="297.1124"
cx="202.06305" />
<linearGradient
id="linearGradient20137-151">
<stop
style="stop-color:#00d800;stop-opacity:1.0000000;"
offset="0.0000000"
id="stop7244" />
<stop
style="stop-color:#008e00;stop-opacity:1.0000000;"
offset="1.0000000"
id="stop7246" />
</linearGradient>
</defs>
<desc
id="desc1434">wmf2svg</desc>
<polyline
transform="matrix(2.2285926,-3.5745108,2.3232002,1.4484387,-677.00545,692.67468)"
style="fill:url(#radialGradient37664-403);fill-opacity:1;stroke:#0c0c0c;stroke-width:0.6875;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4"
points="103.191467,409.292114 100.730545,403.134064 98.525299,396.927094 96.543777,390.573547 94.785973,384.171082 93.219925,377.622009 91.909569,371.072968 90.790962,364.426147 89.928040,357.779327 89.256882,351.083649 88.777481,344.387970 88.521805,337.692261 88.489838,330.947693 88.681602,324.300873 89.033165,317.605194 89.640404,311.007263 90.407448,304.458221 91.398209,298.006897 92.580727,291.604431 93.986977,285.299744 95.553017,279.092804 97.342781,272.983582 99.324303,267.069916 101.465622,261.253937 103.830666,255.584595 106.387474,250.110733 109.104080,244.783508 112.012444,239.700668 115.112572,234.764420 118.404449,230.072571 121.856140,225.625061 125.499588,221.373062 129.302826,217.414291 133.265884,213.748779 137.260895,210.425354 141.351776,207.444077 145.506577,204.804901 149.725311,202.556717 153.975983,200.601776 158.258652,198.988937 162.573242,197.718231 166.919815,196.789627 171.266373,196.154266 175.644897,195.909912 179.991470,195.909912 184.338043,196.300888 188.652649,196.985123 192.967270,197.962585 197.217941,199.233307 201.468628,200.846130 205.623444,202.801071 209.746277,205.000397 213.805222,207.541809 217.768265,210.376495 221.667389,213.504395 225.470627,216.876678 229.177994,220.591064 232.789490,224.598709 236.273132,228.850708 239.628937,233.444839 242.856903,238.283325 245.957031,243.366180 248.929321,248.791153 251.709839,254.411621 254.362534,260.374207 256.791504,266.483398 258.996704,272.739227 261.010223,279.043915 262.768005,285.495270 264.302094,291.995453 265.644409,298.593384 266.731079,305.191315 267.625946,311.838104 268.297119,318.533813 268.744537,325.278351 269.000244,331.974030 269.032166,338.669739 268.872375,345.365448 268.488861,352.012238 267.913574,358.610168 267.114594,365.159241 266.123840,371.659424 264.941284,378.061890 263.567017,384.366577 261.969025,390.573547 260.211212,396.633850 258.229706,402.596436 256.056396,408.412384 253.723328,414.032837 251.166504,419.555603 248.449905,424.833923 245.509598,429.965668 242.409470,434.853027 239.149536,439.593750 235.697845,444.041260 232.054413,448.244385 228.219193,452.252045 224.288116,455.917542 220.261139,459.240967 216.170258,462.173401 212.015442,464.812561 207.828674,467.109589 203.577988,469.064545 199.263397,470.628510 194.948776,471.899200 190.634186,472.876678 186.255646,473.463196 181.909073,473.756439 177.562500,473.707550 173.215942,473.365448 168.869370,472.681213 164.586731,471.703735 160.304077,470.384155 156.085358,468.771332 151.898590,466.865265 147.807709,464.617065 143.748779,462.124512 139.753769,459.289856 135.854645,456.161926 132.051392,452.740753 128.344025,449.026367 124.764503,445.067596 121.280853,440.766724 117.893089,436.221466 114.665123,431.382996 111.565002,426.251282 108.624680,420.875153 105.812187,415.205811 103.191467,409.292114 "
id="polyline1560" />
<g
transform="matrix(4.1610916,0,0,4.1610916,-268.34786,-716.6628)"
style="fill:url(#radialGradient1902-893);fill-opacity:1;fill-rule:evenodd"
inkscape:label="Continents"
id="Continents">
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1904-666);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="132.818436,384.610931 131.827682,384.953064 128.184235,388.227600 126.074867,388.667450 123.422180,385.441803 120.417938,385.832794 117.126053,389.107300 116.838409,393.896912 116.902328,400.641479 115.655891,409.292114 114.409447,415.352448 115.432167,418.235992 113.578484,420.386444 111.053642,420.924042 109.903076,422.732361 109.871117,423.172241 116.295090,433.728943 123.262383,443.161530 130.836914,451.421204 140.904327,460.071808 151.195465,466.425385 153.528549,464.470428 157.683365,463.248596 162.509323,463.688446 165.321808,463.835083 165.577484,459.387573 165.066132,457.628113 162.381485,454.793457 158.162750,448.244385 155.094604,442.526184 156.884354,433.680054 153.496597,425.664764 151.738800,419.017975 150.811951,410.220703 147.743790,405.479980 144.579727,397.953430 142.438416,395.851868 141.447662,389.058441 138.858887,386.419281 135.886597,384.855316 133.968994,384.219940 133.201950,380.994293 131.667877,376.351288 131.923553,370.926331 132.850403,369.069122 135.407196,368.140533 137.292847,366.625458 137.452652,362.911041 136.557755,358.316925 134.736038,353.967194 135.886597,352.158844 138.123810,351.914490 141.255890,349.812927 141.223938,346.245178 139.050644,343.557098 136.973236,343.654846 135.471115,341.602142 134.863876,337.643402 135.407196,330.947693 138.219681,327.575439 141.191971,325.571625 145.890106,326.158081 148.510818,330.361237 149.469635,333.635773 149.565506,336.421570 150.588226,338.327637 152.314072,339.891571 153.656403,344.045837 154.135788,348.737701 152.665634,353.771698 151.578995,357.730469 152.985229,359.587646 155.094604,356.557495 156.468872,353.234070 159.153519,351.572388 161.870132,351.474609 165.865143,353.967194 168.517807,355.237885 171.458130,352.696472 175.389221,351.425751 178.457397,351.621246 179.416199,352.940857 181.301834,352.403229 184.497833,352.452087 185.968002,353.918335 186.095840,356.704102 187.949539,357.143951 190.602203,359.392151 192.551788,361.004974 193.670380,358.610168 191.912582,355.482269 191.561020,353.576202 193.095093,351.767883 192.583740,349.030945 190.442413,347.906860 188.620697,346.147400 189.259888,345.169952 191.976501,346.049652 195.044662,348.835449 196.259140,351.230255 198.624191,353.771698 200.733551,353.282928 202.363510,350.057312 203.609955,343.996979 204.153275,334.710999 202.906830,330.752228 202.331558,328.406281 203.258408,324.594147 202.459396,316.676605 201.053146,314.819397 198.496353,317.311981 195.300339,320.781982 194.788971,323.567780 192.871368,323.518921 189.739288,325.669373 186.894852,327.477692 187.342285,323.470032 188.524796,319.755646 190.666138,317.311981 190.314575,313.450958 189.132050,308.123718 190.090851,304.898071 193.734299,301.965637 197.601471,302.063385 202.107834,303.773987 205.559525,305.875519 207.796722,306.217651 208.435928,302.698761 206.678116,300.548309 206.038925,296.980560 207.796722,294.585724 209.490601,292.581909 208.627686,290.529205 205.783249,292.386414 203.961517,291.555573 204.057388,289.258514 207.189484,286.130615 208.787491,282.953796 208.627686,279.532684 209.874130,275.427277 208.276123,272.152740 206.198730,271.273010 205.783249,275.231781 204.185242,277.479980 203.929565,281.927460 201.788239,283.393677 202.715073,269.513580 203.546036,261.938171 204.888351,257.050812 206.997711,254.998108 209.426682,251.283707 209.171005,248.595657 207.541046,244.734634 206.262650,243.708313 205.687363,241.362366 204.600723,239.211929 202.715073,239.798416 201.276871,239.896149 200.030426,234.959930 197.697342,233.395966 194.916824,233.884705 192.743546,234.715546 191.976501,231.929764 192.264130,228.068741 190.698090,230.903412 191.145538,235.986282 191.912582,241.362366 192.104340,246.347473 190.154770,250.208496 187.406204,253.238663 182.548279,255.780090 177.338791,257.979401 173.695343,260.911804 171.745789,262.866760 169.956009,265.603668 166.696106,264.919464 162.924805,265.066071 158.290604,266.092438 153.464630,269.220306 146.944778,274.352051 145.091095,277.479980 141.671371,283.442566 138.954773,288.036682 135.918564,293.950378 135.119568,298.593384 135.503082,301.476929 136.334045,297.420410 138.091858,294.048126 140.361008,290.871338 142.310577,287.987793 143.365265,289.502869 141.959015,292.190948 138.283615,298.055786 135.087601,306.071045 132.946274,309.492188 130.900833,310.176422 129.686356,314.330688 130.069870,319.755646 128.919312,329.628113 129.494598,334.515503 130.677109,341.797638 131.603958,350.546021 131.540024,355.482269 130.964752,360.565125 128.280106,366.772064 129.047150,373.125641 129.654404,377.084412 131.476105,380.456665 132.818436,384.610931 "
id="polyline1460" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1906-717);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="144.579727,355.237885 146.497345,357.241699 147.583984,362.324585 148.638672,368.384918 149.980988,372.539154 150.364502,377.035553 148.798477,377.279877 146.753021,373.467743 146.976746,368.433777 146.593216,362.959930 144.579727,355.237885 "
id="polyline1464" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1908-922);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="150.108826,378.892731 148.830429,379.870209 149.309830,383.584595 150.172745,386.614777 152.633667,390.964508 152.505829,386.565887 153.336792,386.077148 153.017197,383.780090 150.108826,378.892731 "
id="polyline1468" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1910-261);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="201.181000,353.820557 200.797470,356.459747 200.413956,361.053864 199.966507,365.990082 199.007706,368.238281 196.866379,363.204285 197.921066,357.681580 199.103592,354.895782 201.181000,353.820557 "
id="polyline1472" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1912-713);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="204.632675,320.342133 203.993469,316.774353 202.906830,312.668976 206.230682,314.575043 208.883362,312.277985 209.842163,309.052338 208.915314,303.822876 208.563766,299.961853 209.874130,294.487976 212.430923,295.514343 213.261887,299.570862 213.581497,305.386810 213.837173,310.958405 212.111328,314.917175 211.951538,317.018738 212.335052,321.466217 210.800964,325.913727 208.691605,325.376099 206.454407,326.646820 205.016205,324.203125 204.632675,320.342133 "
id="polyline1476" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1914-146);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="213.773254,334.955322 213.709335,340.820160 213.869125,343.263885 216.362015,346.636139 219.526062,350.594910 218.695099,344.632324 219.685867,341.406677 222.722061,339.060730 227.835663,334.662109 230.648163,335.786194 233.332809,333.147003 234.355515,326.011475 234.675125,319.218048 233.556534,312.522369 233.588486,306.071045 231.511078,300.646057 228.890350,297.420410 226.365509,296.980560 225.246902,294.830109 226.365509,293.461639 225.023193,290.235992 222.338547,287.401337 220.964264,289.698364 217.352783,290.675842 216.330063,294.292480 216.362015,299.375336 220.644653,297.469269 222.754028,297.958038 220.708588,301.623535 219.941544,306.852997 220.293106,310.714020 219.845657,317.654083 219.078629,323.909912 214.955765,329.237122 215.083618,333.000397 213.773254,334.955322 "
id="polyline1480" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1916-817);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="232.533813,338.767487 230.200729,341.748779 229.401718,344.436798 229.721313,347.662476 233.460648,348.542206 237.040161,346.929382 237.231934,342.872864 235.378250,340.478088 233.620453,340.282562 232.533813,338.767487 "
id="polyline1484" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1918-23);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="264.877380,375.813690 262.991730,379.919098 260.371002,382.167236 258.645172,385.148529 258.645172,389.693817 256.887360,391.062256 255.161514,388.911804 254.522308,386.956848 252.732559,385.197418 253.339798,391.697632 251.709839,392.332977 249.792236,387.738861 248.322067,389.840393 246.724060,393.017212 244.327072,395.412018 242.952774,399.664001 241.514587,403.329529 241.067139,407.337158 239.565018,407.190552 238.318573,407.777039 235.665894,409.096649 233.173004,407.679291 233.141052,401.570068 234.707092,399.712891 235.122574,395.705231 237.231934,393.652588 239.692856,394.434540 241.834183,392.039734 240.843414,387.152374 239.980499,385.099670 240.907349,382.265015 244.550781,379.332581 247.043671,372.685760 247.139542,368.384918 249.121078,365.110352 252.125320,361.151611 254.202728,353.967194 256.503845,350.399414 255.992477,346.684998 255.864655,342.335266 255.832672,339.744965 254.586243,339.353973 254.074875,342.139771 251.581985,340.722412 252.189240,343.654846 251.997467,347.760223 251.294357,352.647583 251.486115,357.632721 248.897354,354.993530 246.915833,355.335632 246.020950,351.670135 245.733307,346.489502 247.778748,340.233704 248.002472,336.763672 247.586990,329.774750 247.299347,324.545258 248.705597,319.315765 251.230438,321.319580 254.234680,326.451324 255.608963,324.154266 255.097595,321.417358 253.915070,321.612854 252.253159,317.702942 254.202728,316.774353 253.883118,313.548676 254.714081,310.469666 254.746033,303.969452 255.001724,293.999268 253.947052,293.070679 252.349030,292.777405 250.495346,290.382599 250.303589,287.938934 249.312836,284.077911 247.235428,279.679291 245.381744,278.261963 242.920822,273.912201 241.546539,269.122559 241.035172,265.408173 242.345535,263.502106 240.555771,258.761383 238.734055,257.979401 236.560776,253.336411 234.131805,249.573120 232.501846,251.185959 230.648163,249.768631 228.315079,245.272247 226.653152,244.343658 225.438675,246.494095 223.808701,245.174515 220.964264,239.896149 219.430176,240.775894 217.672379,242.193222 216.170258,241.069122 212.718582,239.945023 210.257645,239.114182 207.509079,237.647964 205.527557,234.422318 206.805954,234.471191 209.362778,234.520065 210.225693,233.004974 208.979248,230.072571 209.810211,226.993515 210.737045,224.109970 213.325806,224.794220 215.722824,225.967178 216.745544,227.873245 219.781738,227.531128 222.114822,224.549835 224.032425,226.553665 226.844925,229.241714 229.785248,226.700287 230.136795,223.425751 229.721313,220.933197 236.592728,229.290573 241.898102,236.768250 246.564270,244.490280 251.837677,254.704865 255.960541,264.332947 260.115326,276.258118 264.302094,291.995453 267.210449,308.514740 268.393005,320.537628 269.000244,333.538025 268.840424,345.169952 268.201202,356.557495 266.794983,367.358551 265.516571,374.933960 264.877380,375.813690 "
id="polyline1488" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient1920-260);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="244.774506,357.779327 243.304337,356.313110 242.345535,358.512421 241.131058,362.666687 239.916580,364.817108 238.062897,367.945038 237.615448,372.930145 238.414459,375.324951 239.373245,373.125641 239.852661,368.727020 240.683624,367.602905 241.067139,371.121826 241.290848,375.129456 241.834183,378.452850 243.336304,376.986664 243.528061,376.937775 243.719818,376.888916 243.911591,376.791168 244.071396,376.644531 244.390976,376.351288 244.678635,376.009186 244.934311,375.618195 245.126068,375.324951 245.221939,375.129456 245.285858,375.031708 245.253906,372.490265 244.486862,365.159241 244.199219,361.884705 244.774506,357.779327 "
id="polyline1492" />
<polyline
transform="matrix(0.535579,-0.859032,0.558315,0.348091,-98.20917,338.6942)"
style="fill:url(#radialGradient20143-884);stroke:#0c0c0c;stroke-width:0.444585;stroke-linecap:round;stroke-linejoin:round"
points="262.192749,389.449432 260.115326,391.160004 258.261658,394.287933 256.663635,394.532288 255.992477,392.968323 255.065643,395.802979 253.851151,400.885864 250.783005,404.209290 250.175766,401.276855 249.344803,399.810638 245.573502,402.889679 242.537292,406.213104 240.747543,406.995056 238.126801,409.878601 236.049423,409.976349 233.748291,411.002716 231.606964,415.010315 228.986237,420.826294 226.333542,423.123352 220.996231,428.059601 216.617691,433.680054 213.485611,439.349396 210.385483,446.582703 209.171005,453.278381 210.353516,458.605591 214.220703,458.654480 216.777496,458.752228 218.535294,460.560547 223.648911,456.504028 228.187241,452.252045 232.693619,447.511292 237.775253,441.402100 243.400223,433.386810 247.906586,425.811401 251.677872,418.529236 255.161514,410.611694 258.069885,403.134064 260.690613,394.923279 262.192749,389.449432 "
id="polyline1496" />
</g>
<text
transform="matrix(0.98267844,-0.18531886,0.18531886,0.98267844,0,0)"
sodipodi:linespacing="125%"
id="text3096"
y="456.47293"
x="394.15689"
style="font-size:187.56237793000002512px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ff8119;fill-opacity:0.77168947;stroke:none;font-family:Purisa;-inkscape-font-specification:Purisa Bold"
xml:space="preserve"><tspan
dy="-109.78781"
dx="0 -9.8032694 -11.763925 -17.645885"
id="tspan3102"
y="456.47293"
x="394.15692"
sodipodi:role="line">WSJT-X</tspan><tspan
dx="0 -17.645885 -23.527849 -13.724579 29.30662 29.30662 -17.645885 -23.527849"
id="tspan3874"
y="690.92584"
x="394.15689"
sodipodi:role="line">JT65&amp;JT9</tspan><tspan
dy="91.489815"
dx="0 0 0 0 -17.645885 -5.8819623 -17.645885"
id="tspan3100"
y="925.37885"
x="394.15689"
sodipodi:role="line">by K1JT</tspan></text>
</svg>