Re-enabling the WSJT-X i18n facilities. This allows translation files
to be created for languages that are automatically used to lookup
translatable strings. To enable a new language the language name must
be added to the CMakeLists.txt LANGUAGES list variable in BCP47 format
(i.e. en_US, en_GB, pt_PT, ...). Do one build with the CMake option
UPDATE_TRANSLATIONS enabled (do not leave it enabled as there is a
danger of loosing existing translated texts), that will create a fresh
translations/wsjtx_<lang>.ts file which should be immediately checked
in with the CMakeLists.txt change. The .ts should then be updated by
the translator using the Qt Linguist tool to add translations. Check
in the updated .ts file to complete the initial translation process
for that language.
To aid translators their WIP .ts file may be tested by releasing
(using the lrelease tool or from the Linguist menu) a .qm file and
placing that .qm file in the current directory before starting
WSJT-X. The translations will be used if the system locale matches the
file name. If the system locale does not match the file name; the
language may be overridden by setting the LANG environment variable.
For example if a wsjtx_pt_PT.qm file is in the current directory
WSJT-X will use it for translation lookups, regardless of the current
system locale setting, if the LANG variable is set to pt_PT or pt-PT.
On MS Windows from a command prompt:
set LANG=pt_PT
C:\WSJT\wsjtx\bin\wsjtx
elsewhere:
LANG=pt_PT wsjtx
This change incorporates a reorganization of the GUI code with
widgets, validators, models, and item delegates being moved to
sub-directories.
Relax the requirements of the ForeignKeyDelegate and related
CandidateKeyFilter classes to allow them to work with constant model
pointers for both referenced and referencing models.
Note that reverting to v1.7 will invalidate any saved working
frequencies from v1.8 but proceeding to v1.8 again will present a
reset set of working frequencies i.e. any user defined entries in v1.8
will be lost of a v1.8 -> v1.7 -> v1.8 transition is made.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@8018 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Working frequencies can be for all regions or for individual IARU
regions. This allows each mode band tuple to have one or more working
frequencies which can include local ones only offered when the user
configures their IARU region.
Change working frequency default suggestions to better fit in
FT8. General rule is FT8 is at JT65 -2kHz except where that is not
possible e.g. where that would fall into a segment not allocated for
narrow band data modes. For tight bands like top band sqeeze existing
JT65 and JT allocations to allow space for FT8.
NOTE: this change changes the WSPR frequency on 80m to allow access to
JA stations that currently have no allocation where it was placed.
ALSO NOTE: the JT65 and JT9 frequencies for 80m move down 6 kHz, again
to accommodate region 3 users. Other appliactions not within our
control should be asked to move in step when 1.8.0 is released.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7810 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Until the advanced band hopping scheduler is upgraded to work with T/R
periods other than 2 minutes this scheduler uses a strictly random
scheduler, except that Tx percentages less than 40 defer Tx periods
that would otherwise be consecutive.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7687 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Static storage variables that should have been class members are made
so. This ensures that if they are used as initialization one time
switches then they will operate correctly when their class
instantiated more than once. This now happoens for most classes due to
the configurations switching facility which destroys all windows and
re-instantiates them.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6661 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Also switched to qrand() in place of rand() where possible as it is
thread safe.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5716 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Tuneup is now only possible with Tx Enable checked, if no message
transmission is required with tuneup transmissions then Tx percentage
zero must be selected along with Enable Tx.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5713 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
When band hopping, coordinated slots that are unavailable may be
substituted by non-coordinated bands or non-scheduled coordinated
bands.
Rather than randomly choosing a substitute band, random permutations
of available receive-only and transmit allowed bands are generated and
consumed one at a time when a substitute band is required. This
ensures that all available bands get an airing on a regular basis
while selections remain randomized as much as possible within the user
defined constraints of coordinated bands, transmit ratio and Rx only
bands.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5616 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The Tx schedule used in band hopping is tailored to minimize
consecutive transmit periods while maintaining roughly the requested
Tx/Rx ratio rather than being truly random.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5546 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
lib/hopping.f90 has been superceded by C/C++ code except for the call
to grayline() which is now called directly.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5545 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Any band can be added to the schedule for a day phase, when a
coordinated band slot is not available a random band will be chosen
from all the bands enabled for the current phase (Day, Night, etc.).
Fine tuned the size of the hopping schedule table widget.
Coloured the coordinated band columns in the schedule table widget.
Due to the full range of bands now being supported, the settings key
for the band hopping schedule has been changed forcing current testers
to redefine their schedultes.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5543 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Added a per band Rx only flag.
Added Tx 100% as special case.
Only do tune up if not an Rx only band and if not scheduled to Tx
already.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5520 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Provide a dialog for band hopping scheduling which replaces tab
four. Ensure that split mode is not used for WSPR. Select the correct
tab for WSPR operation. Shift WSPR band hopping code out of the
MainWindow class.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5517 ab8295b8-cf94-4d9e-aec4-7959e3be5d79