688 Commits

Author SHA1 Message Date
Bill Somerville
9a053d4b16 Better handling of compound callsigns
Option  to control  standard message  generation for  type 2  compound
callsign holders.

Process decoded  messages based  on either base  or full  callsign for
both DE and DX callsigns.

Change CW id when callsign changed in settings.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4999 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-03-04 11:42:15 +00:00
Bill Somerville
701478db26 Clean up program identification to pskreporter and other places
Merged from wsjtx branch.



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4988 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-02-23 15:55:12 +00:00
Bill Somerville
f259ee2959 Abandon getting changeset revision number from svn keyword expansion
Subversion keyword expansion of $Rev:$ in  a file is hopeless as it is
impossible to  coordinate with  a release. Revert  to an  empty string
when it can't be discovered with svn info etc..

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4983 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-02-21 22:28:08 +00:00
Bill Somerville
c6882c7dad The +2kHz check box should not adjust the frequency when starting up
Since the  last monitored dial  frequency is stored and  restored from
the settings the +2kHz setting should  only set the state of the check
box when initializing and not attempt to adjust the dial frequency.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4902 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-01-22 00:43:22 +00:00
Bill Somerville
04de2ce95d Rig polling not detecting changes against cached values correctly
The  PollingTransceiver class  was not  dealing with  frequency change
commands correctly when the mode was not specified.

Improved some diagnostic messages.

Only leave transmit mode when PTT is seen to drop.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4885 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2015-01-08 23:45:58 +00:00
Bill Somerville
1ee6d41570 Ensure split Tx frequency agrees with UI before transmitting
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4778 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-12-06 20:19:48 +00:00
Bill Somerville
9fae7720c5 Support for new DX Lab Suite Commander TCP/IP commands
Dave AA6YQ has added two new commands to the Commander server to allow
more reliable control.

Requires DX Lab Suite Commander 11.1.4 or later.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4777 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-12-06 20:19:37 +00:00
Bill Somerville
bc1ff9e2dd Keep UI in line with messages when clicking F4
When tab 2 is current the action of F4 is to set the next message to transmit the standard

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4692 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-11-29 20:34:42 +00:00
Joe Taylor
f5f0bd5e7b Merge fix to 'Add' action from r4647
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4669 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-11-28 15:19:27 +00:00
Bill Somerville
03c9852dee Fix various fake split mode issues
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4572 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-10-30 22:01:39 +00:00
Joe Taylor
d4879ac0e0 Merge changes from revisions 4533, 4534, 4535, 4536, 4537, 4540, and
4544 into wsjtx-1.4.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4550 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-10-20 23:10:00 +00:00
Bill Somerville
da7da2b2b4 Menu action to open the log directory
Since the log files have moved to  a hidden directory a menu action to
open the logs directory in a suitable system applicaiton is needed.

Added "Open log directory" to File manu bar pop up menu.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx-1.4@4470 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-10-04 11:44:54 +00:00
Bill Somerville
fcc0563391 Get local user manual working on Linux systems.
The  location  of  documentation   files  on  Linux  distributions  is
controlled  to a  certain extent.  Using the  QStandardPaths::locate()
method helps us with this.

Work round the  misbehaviour of QCoreApplication::applicationDirPath()
when  the  CWD has  been  changed  by  working out  the  documentation
location before changing  the CWD to a temporary  directory. This path
is now provided by the Configuration settings class which also manages
other run time paths.

Updated  Debian packaging  to move  a little  nearer a  conforming DEB
file.

Added a basic manpage for rigctld-wsjtx.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4364 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-25 14:45:36 +00:00
Bill Somerville
87da310279 Removed temporary debugging print.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4363 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-25 12:53:46 +00:00
Bill Somerville
cb27e2c4b0 Add validation to message entry fields.
All message  entry fields on the  mainscreen and in the  macro editing
facilities are now restricted to valid characters in the JT65/JT9 free
text message alphabet.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4362 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-25 11:36:01 +00:00
Bill Somerville
fbc744e066 Fix several issues with shortcut keys.
Do not drop  through shortcut key handling so  that spurious responses
are avoided.

The keyPressEvent handlers must call the super class implementation if
the event os not handled.

Correct a typo in the shortcut help display.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4361 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-25 11:35:50 +00:00
Bill Somerville
e64037c61e Fix online manual URL.
Fix manpage destination.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4360 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-25 00:06:07 +00:00
Bill Somerville
7fad459036 Add local HTML help file to help menu.
So that a manual can be viewed without an Internet connection a second
manual action has been added to  the WSJT_X help menu. This shells out
to the default web browser with a local file target.

The build has been enhanced to install and package the current version
of the  HTML user manual  as downloaded from  the project web  site at
build time

The package  file locations have  been adjusted to be  compatible with
the QStandardPaths  class so that  its locate()  method can be  used to
portably access resources like this local help file

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4359 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-24 23:46:32 +00:00
Bill Somerville
aaae37f6c3 Disallow mode changes from decode dbl-clicks when transmitting.
The message generation code doen't allow  for a mode change on the fly
so this has been disabled.

Also and  decode double click  that would  change a message  or change
mode or  change a frquency  that gets  disallowed is ignored  i.e. the
outgoing message is not changed either.

Remove a  duplicate Tx  message in  decode window that  crept in  in a
prior change.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4353 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-24 17:26:03 +00:00
Bill Somerville
758921d65e Ensure Plus 2kHz Check Box is disabled in Transmit when required.
The Plus 2 kHz check box should  not be enabled during transmit if the
"Allow Tx Frequency Changes While Transmitting" is not checked.

Also fixed a  defect that caused the disabled during  Tx state of some
widgets to not clear due to transmit or tune period being shorter than
a poll interval.   Fixed by ensuring PTT changes  are always signalled
rather than waiting for the next poll.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4352 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-24 17:25:55 +00:00
Bill Somerville
9295796134 Do not set split Tx frequency when rig changes frequency.
WSJT-X was attempting to set the split Tx frequency when a dial change
from the rig is detected. Because of the way some rigs and rig servers
report the Tx frequency  while the rig is in Tx  mode this was causing
the rig  to "walk" along the  band. Setting of split  Tx frequency has
been limited to WSJT-X initiated instances only.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4350 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-24 17:25:28 +00:00
Bill Somerville
a576aa3c06 Add facility to disallow CAT commands while transmitting.
Some rigs either do not honour some CAT commands while transmitting or
interpret them  incorrectly. To  deal with this  a settings  option to
allow TX  frequency changes while  transmitting has been added  with a
default value of off.

Any UI actions that directly or indirectly change the TX frequency are
guarded according to this new option. As well as this band changes and
use of  the +2kHz check box  are disabled and guarded  respectively in
transmit mode.

Mode changes via the menu are now disabled while transmitting.

When TX frequency changes are allowed; frequency changes are correctly
implemented while in tune mode.

Double clicking  decodes while  transmitting now  correctly regenerate
and change the message sent on the fly.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4349 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-24 17:25:19 +00:00
Joe Taylor
ba47458615 Clean up the Tx Watchdog code.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4322 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-16 16:53:11 +00:00
Joe Taylor
dcafdb6b99 Look for "txboth" as /tmp/txboth.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4271 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-08 14:57:26 +00:00
Bill Somerville
78f398f99c Ensure monitor mode is enabled when tune button clicked.
Monitor mode  was not  being enabled when  clicking the  "Tune" button
which could mean that neither split  mode nor the correct TX frequency
were being set.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4270 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-08 10:56:35 +00:00
Bill Somerville
eccd80758a Define WSJT-X manual URL in a single place.
Since the manual URL is used in both the installer and the WSJT-X code
the definition of  the URL (CMake variable  PROJECT_MANUAL) is defined
in  the  CMakeList.txt file  and  propagated  to  the source  via  the
wsjtx_config.h header.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4252 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-05 17:10:01 +00:00
Joe Taylor
4e3afe3a32 Change the URL for User Guide to that for the new v1.4 guide.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4251 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-05 15:55:49 +00:00
Bill Somerville
d4e69f0b23 Make temp directory unique in test mode.
The Qt  test mode  that uses  special paths  for writeable  files (via
QtStandardPaths)  doesn't make  a special  temporary file  path.  This
change appends " - test_mode" to the WSJT-X unique temporary file path
so that an application run in test mode will not interact with another
running in normal mode.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4240 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-09-01 15:55:59 +00:00
Bill Somerville
245a6902c5 Added CMake option to control experimental features.
Sometimes parts of the application are  not fully ready for release at
release  time.   This  option  allows  such  features  to  be  enabled
conditionally at configure time.

The CMake option WSJT_ENABLE_EXPERIMENTAL_FEATURES  is used to control
this ability.  Normally  you will not need to change  it as it behaves
in a reasonable  way.  The option is ON in  debug build configurations
and OFF in non-debug configuratiuons.

The  option  is   made  available  in  all  source   modules  via  the
WSJT_ENABLE_EXPERIMENTAL_FEATURES macro  which is defined to  1 if the
option is ON and to 0 if it is OFF.

Since this  default behavior is  potentially dangerous because  it can
mean that release builds contain different code from debug builds; the
option may  be set to  OFF in debug  configurations in the  normal way
(cmake-gui,  edit  CMakeCache.txt, etc.)   to  achieve  a debug  build
similar to a default release build.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4182 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-06-19 16:47:49 +00:00
Bill Somerville
154b64b183 Maintain cursor position during free text edits.
The validation processing of the free text line edit field was causing
the cursor position to be lost.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4148 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-05-22 11:09:21 +00:00
Bill Somerville
99444bce7c Fix issue with non-modal window lifetimes.
Some non-modal help windows were not being automatically closed on
application exit.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4143 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-05-15 11:41:18 +00:00
Bill Somerville
ea567db752 Make qmake project file more generic.
It is now possible to override the default locations hard coded in
this file with local preferences.

The variables that can be overridden are HAMLIB_DIR and DESTDIR.

To override, add local variable assignments on the intial qmake
command line. E.g.:

qmake HAMLIB_DIR=c:\my\local\hamlib\installation DESTDIR=c:\my\local\install\destination



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4141 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-05-14 19:14:37 +00:00
Joe Taylor
dbf9faaa21 Fix several problems in wsjtx.pro, for qmake builds.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4140 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-05-14 17:43:30 +00:00
Bill Somerville
c1312cab88 Fix qmake build issue where CMake generated macros were erroneously
being used in non-CMake builds.



git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4139 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-05-14 17:32:31 +00:00
Bill Somerville
b25019ed0a Fix a regression introduced in r3986 - no decode after "Halt TX".
The new suspend/resume approach to  the received audio stream causes a
reset to the input sample buffer  on resume. This is desired behaviour
except when the stream in not actually suspended. The monitor function
was not checking this when resuming monitoring and this caused decodes
for a period to be abandonded simply  by using the "Halt TX" button to
turn off automatic transmission mode.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4059 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-21 14:39:39 +00:00
Bill Somerville
21bf1f1afa Add those pesky MOC generated code includes that break libraries if
they are included by automoc.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4035 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-16 15:15:46 +00:00
Bill Somerville
d2ad4a349f Only calculate revision once.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4024 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-14 10:42:11 +00:00
Bill Somerville
241033d49b Try to form a consistent program title and revision specification from
all types of build.

CMake builds use 'svn info' (the git-svn equivalent is also supported)
to  get the  real latest  revision of  the workspace  that is  used to
source a  build. If the sources  are not in VCS  workspace (build from
source  snapshot  archive for  example)  then  the  $Rev$ svn  keyword
expansion in mainwindow.cpp is used despite its issues with accuracy.

Non-CMake builds use the $Rev$ keyword expansion where possible.

If a CMake  build is from a VCS workspace  with local modifications; a
'-dirty' suffix is added to the revision number to denote that.

If no revision number information can be found the word 'local' is
used as a revision number.

The revision  specification is used in  the WSJT-X "about"  box and is
sent  to PSKReporter.info  as part  of the  local  station information
(this     can     be     viewed     at     the     statistics     page
http://pskreporter.info/cgi-bin/pskstats.pl).

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4017 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-13 17:22:12 +00:00
Bill Somerville
0cd70bb808 Attempt to fix a few TX sequencing issues.
Simplified some of the TX logic and removed some redundant code.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4014 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-11 22:50:44 +00:00
Bill Somerville
4c687cd8a6 Simplify MainWindows to Modulator communications.
No longer any need to have a mute mechanism since the TX shutdown
mechanism is sufficient.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4012 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-11 22:50:22 +00:00
Bill Somerville
9433201694 Pass JT9W tone spacing to Modulator via a signal/slot as it is
crossing a thread boundary.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3995 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-08 11:56:29 +00:00
Bill Somerville
c3d1eb5cee Replaced Detector monitoring switch with audio stream suspend/resume.
In an effort to reduce the processing overhead when transmitting I
have suspended the audio input stream at source instead of the prior
behavior that simply idled skipping received samples.

This is in response to high activity levels, especially with JTAlert
also running, when decode processing rolls over into the next TX
period.

Tests show a reduction in CPU loading from ~5% to ~1.5% in the above
scenario. Hopefully this will reduce the likelyhood of TX audio
glitches when other system activity spikes.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3986 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-07 00:55:05 +00:00
Bill Somerville
f8bdff9aa7 Made the soft keying CW wave shaper a CMake option (off by
default).

Reorganized Modulator interface so that it can control the stream
it writes to.

Make sure only QAudioOutput::stop is called at the end of sending
rather than QAudioOutput::reset which discards pending samples.

Added a quick close option to the Modulator::stop slot to discard
pending buffers if required.

Fix issue in CW synthesizer that was causing CW to be inverted
occasionally.

Made global arrays of symbols volatile because compiler waa
optimizing away reads in sound thread. These global variables
must go eventually as they are a multi-threading hazard.

Simplified TX sequencing to remove some duplicate signals.

Increased range of TX attenuator from 10dB to 30dB. This is mainly for
non-Windows platforms where the attenuator isn't linearized correctly.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3985 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-06 21:58:11 +00:00
Bill Somerville
badcdd563d Save the last used free text message between runs.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3982 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-03 21:55:51 +00:00
Bill Somerville
2c24d9be53 Don't overwrite frequency, station or, macro models whenleaving the
configuration dialog unless they have changed.

Fix a bug I had introduced into the free text message fields so they
don't get overwritten by message generation.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3981 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-03 21:19:04 +00:00
Bill Somerville
da419014e0 Squashed yet more compiler warnings.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3979 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-03 20:06:30 +00:00
Bill Somerville
5eb5735168 Rearranged sequencing of audio streams and devices.
The code  was starting streams linked  to closed devices which  may be
causing issues on  the Mac version.  I have refactored  to ensure that
devices are always opened before related audio streams are started.

Made .h C++ headers emacs friendly.

Removed some code in the MainWindow  contructor that read the log file
but failed to check if the file exists and didn't do anything with the
data anyway.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3977 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-04-03 19:29:13 +00:00
Bill Somerville
42844e3104 Uniform appearance of window titles.
Svn revision  number displayed  in about  window and  sent PSKReporter
only.

About box text centred and uses Copyright symbol.

Window   title   on  "Log   QSO"   dialog   includes  rig-name   where
multi-instance support  is enabled. This  is necessary since  the "Log
QSO" dialog is not modal.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3960 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-03-30 01:31:40 +00:00
Bill Somerville
4537ac471d Reducing the number of files dependent on svnversion.h without
compromising qmake builds. Now it is required to directly include
svnversion.h to get the SVNVERSION macro defined.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3955 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-03-29 02:51:07 +00:00
Bill Somerville
2997df1f9f Aligned CMake built auto fetch svn revision with old qmake $Id: one.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@3950 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2014-03-29 00:28:44 +00:00