mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-22 04:11:16 -05:00
Merge branch 'release-2.1.0' of bitbucket.org:k1jt/wsjtx into release-2.1.0
This commit is contained in:
commit
087a07cb9f
@ -855,9 +855,6 @@ if (Boost_NO_SYSTEM_PATHS)
|
||||
set (BOOST_ROOT ${PROJECT_SOURCE_DIR}/boost)
|
||||
endif ()
|
||||
find_package (Boost 1.63 REQUIRED)
|
||||
if (Boost_FOUND)
|
||||
include_directories (${Boost_INCLUDE_DIRS})
|
||||
endif ()
|
||||
|
||||
#
|
||||
# OpenMP
|
||||
@ -888,10 +885,7 @@ message (STATUS "hamlib_LIBRARY_DIRS: ${hamlib_LIBRARY_DIRS}")
|
||||
#
|
||||
|
||||
# Widgets finds its own dependencies.
|
||||
find_package (Qt5Widgets 5 REQUIRED)
|
||||
find_package (Qt5Multimedia 5 REQUIRED)
|
||||
find_package (Qt5PrintSupport 5 REQUIRED)
|
||||
find_package (Qt5Sql 5 REQUIRED)
|
||||
find_package (Qt5 REQUIRED Widgets Multimedia PrintSupport Sql LinguistTools)
|
||||
|
||||
if (WIN32)
|
||||
add_definitions (-DQT_NEEDS_QTMAIN)
|
||||
@ -1097,11 +1091,41 @@ add_custom_target (ctags COMMAND ${CTAGS} -o ${CMAKE_SOURCE_DIR}/tags -R ${sourc
|
||||
add_custom_target (etags COMMAND ${ETAGS} -o ${CMAKE_SOURCE_DIR}/TAGS -R ${sources})
|
||||
|
||||
|
||||
# Qt i18n
|
||||
set (LANGUAGES
|
||||
en_GB
|
||||
pt_PT
|
||||
)
|
||||
foreach (lang_ ${LANGUAGES})
|
||||
file (TO_NATIVE_PATH translations/wsjtx_${lang_}.ts ts_)
|
||||
list (APPEND TS_FILES ${ts_})
|
||||
endforeach ()
|
||||
if (UPDATE_TRANSLATIONS)
|
||||
message (STATUS "UPDATE_TRANSLATIONS option is set.")
|
||||
qt5_create_translation (
|
||||
QM_FILES ${wsjt_qt_UISRCS} ${wsjtx_UISRCS} ${wsjt_qt_CXXSRCS} ${wsjtx_CXXSRCS}
|
||||
${TS_FILES}
|
||||
)
|
||||
else ()
|
||||
qt5_add_translation (QM_FILES ${TS_FILES})
|
||||
endif ()
|
||||
add_custom_target (translations DEPENDS ${QM_FILES})
|
||||
set_property (DIRECTORY PROPERTY CLEAN_NO_CUSTOM TRUE)
|
||||
# do this after i18n to stop lupdate walking the boost tree which it
|
||||
# chokes on
|
||||
if (Boost_FOUND)
|
||||
include_directories (${Boost_INCLUDE_DIRS})
|
||||
endif ()
|
||||
|
||||
# embedded resources
|
||||
function (add_resources resources path)
|
||||
foreach (resource_file_ ${ARGN})
|
||||
get_filename_component (name_ ${resource_file_} NAME)
|
||||
file (TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/${resource_file_} source_)
|
||||
if (IS_ABSOLUTE "${resource_file_}")
|
||||
file (TO_NATIVE_PATH ${resource_file_} source_)
|
||||
else ()
|
||||
file (TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/${resource_file_} source_)
|
||||
endif ()
|
||||
file (TO_NATIVE_PATH ${path}/${name_} dest_)
|
||||
set (resources_ "${resources_}\n <file alias=\"${dest_}\">${source_}</file>")
|
||||
set (${resources} ${${resources}}${resources_} PARENT_SCOPE)
|
||||
@ -1110,6 +1134,7 @@ endfunction (add_resources resources path)
|
||||
|
||||
add_resources (wsjtx_RESOURCES "" ${TOP_LEVEL_RESOURCES})
|
||||
add_resources (wsjtx_RESOURCES /Palettes ${PALETTE_FILES})
|
||||
add_resources (wsjtx_RESOURCES /Translations ${QM_FILES})
|
||||
|
||||
configure_file (wsjtx.qrc.in wsjtx.qrc @ONLY)
|
||||
|
||||
@ -1130,7 +1155,6 @@ if (WIN32)
|
||||
wrap_ax_server (GENAXSRCS ${AXSERVERSRCS})
|
||||
endif (WIN32)
|
||||
|
||||
|
||||
#
|
||||
# targets
|
||||
#
|
||||
|
@ -251,6 +251,8 @@ namespace
|
||||
class FrequencyDialog final
|
||||
: public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
using Item = FrequencyList_v2::Item;
|
||||
|
||||
@ -297,6 +299,8 @@ private:
|
||||
class StationDialog final
|
||||
: public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit StationDialog (StationList const * stations, Bands * bands, QWidget * parent = nullptr)
|
||||
: QDialog {parent}
|
||||
|
@ -1,5 +1,7 @@
|
||||
#include "EmulateSplitTransceiver.hpp"
|
||||
|
||||
#include "moc_EmulateSplitTransceiver.cpp"
|
||||
|
||||
EmulateSplitTransceiver::EmulateSplitTransceiver (std::unique_ptr<Transceiver> wrapped, QObject * parent)
|
||||
: Transceiver {parent}
|
||||
, wrapped_ {std::move (wrapped)}
|
||||
|
@ -27,6 +27,8 @@
|
||||
class EmulateSplitTransceiver final
|
||||
: public Transceiver
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
// takes ownership of wrapped Transceiver
|
||||
explicit EmulateSplitTransceiver (std::unique_ptr<Transceiver> wrapped,
|
||||
|
@ -19,6 +19,8 @@ namespace
|
||||
int constexpr yaesu_delay {250};
|
||||
}
|
||||
|
||||
#include "moc_HRDTransceiver.cpp"
|
||||
|
||||
void HRDTransceiver::register_transceivers (TransceiverFactory::Transceivers * registry, int id)
|
||||
{
|
||||
(*registry)[HRD_transceiver_name] = TransceiverFactory::Capabilities (id, TransceiverFactory::Capabilities::network, true, true /* maybe */);
|
||||
|
@ -27,6 +27,8 @@ class QByteArray;
|
||||
class HRDTransceiver final
|
||||
: public PollingTransceiver
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
static void register_transceivers (TransceiverFactory::Transceivers *, int id);
|
||||
|
||||
|
@ -21,9 +21,9 @@ extern "C"
|
||||
class HamlibTransceiver final
|
||||
: public PollingTransceiver
|
||||
{
|
||||
Q_OBJECT; // for translation context
|
||||
Q_OBJECT // for translation context
|
||||
|
||||
public:
|
||||
public:
|
||||
static void register_transceivers (TransceiverFactory::Transceivers *);
|
||||
static void unregister_transceivers ();
|
||||
|
||||
|
@ -65,6 +65,8 @@ namespace
|
||||
class NameDialog final
|
||||
: public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit NameDialog (QString const& current_name,
|
||||
QStringList const& current_names,
|
||||
@ -112,6 +114,8 @@ namespace
|
||||
class ExistingNameDialog final
|
||||
: public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit ExistingNameDialog (QStringList const& current_names, QWidget * parent = nullptr)
|
||||
: QDialog {parent}
|
||||
|
@ -44,6 +44,8 @@ namespace
|
||||
class Dialog
|
||||
: public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
using BandList = QList<QString>;
|
||||
|
||||
@ -69,6 +71,8 @@ private:
|
||||
static int constexpr band_index_role {Qt::UserRole};
|
||||
};
|
||||
|
||||
#include "WSPRBandHopping.moc"
|
||||
|
||||
Dialog::Dialog (QSettings * settings, Configuration const * configuration, BandList const * WSPR_bands
|
||||
, QBitArray * bands, int * gray_line_duration, QWidget * parent)
|
||||
: QDialog {parent, Qt::Window | Qt::WindowTitleHint | Qt::WindowCloseButtonHint | Qt::WindowMinimizeButtonHint}
|
||||
|
@ -8,7 +8,8 @@
|
||||
#ifdef __cplusplus
|
||||
#include <cstdbool>
|
||||
extern "C" {
|
||||
#else
|
||||
#endif
|
||||
#ifndef __cplusplus
|
||||
#include <stdbool.h>
|
||||
#endif
|
||||
|
||||
|
29
main.cpp
29
main.cpp
@ -10,6 +10,7 @@
|
||||
#include <QTemporaryFile>
|
||||
#include <QDateTime>
|
||||
#include <QApplication>
|
||||
#include <QTranslator>
|
||||
#include <QRegularExpression>
|
||||
#include <QObject>
|
||||
#include <QSettings>
|
||||
@ -106,6 +107,34 @@ int main(int argc, char *argv[])
|
||||
ExceptionCatchingApplication a(argc, argv);
|
||||
try
|
||||
{
|
||||
//
|
||||
// Enable i18n
|
||||
//
|
||||
QTranslator translator_from_resources;
|
||||
// Default translations for releases use translations stored in
|
||||
// the resources file system under the Translations
|
||||
// directory. These are built by the CMake build system from .ts
|
||||
// files in the translations source directory. New languages are
|
||||
// added by enabling the UPDATE_TRANSLATIONS CMake option and
|
||||
// building with the new language added to the LANGUAGES CMake
|
||||
// list variable. UPDATE_TRANSLATIONS will preserve existing
|
||||
// translations but should only be set when adding new
|
||||
// languages. The resulting .ts files should be checked info
|
||||
// source control for translators to access and update.
|
||||
translator_from_resources.load (QLocale::system (), "wsjtx", "_", ":/Translations");
|
||||
a.installTranslator (&translator_from_resources);
|
||||
|
||||
QTranslator translator_from_files;
|
||||
// Load any matching translation from the current directory
|
||||
// using the locale name. This allows translators to easily test
|
||||
// their translations by releasing (lrelease) a .qm file into
|
||||
// the current directory with a suitable name
|
||||
// (e.g. wsjtx_en_GB.qm), then running wsjtx to view the
|
||||
// results. Either the system locale setting or the environment
|
||||
// variable LANG can be used to select the target language.
|
||||
translator_from_files.load (QString {"wsjtx_"} + QLocale::system ().name ());
|
||||
a.installTranslator (&translator_from_files);
|
||||
|
||||
setlocale (LC_NUMERIC, "C"); // ensure number forms are in
|
||||
// consistent format, do this after
|
||||
// instantiating QApplication so
|
||||
|
@ -55,6 +55,8 @@ namespace
|
||||
}
|
||||
}
|
||||
|
||||
#include "moc_Bands.cpp"
|
||||
|
||||
Bands::Bands (QObject * parent)
|
||||
: QAbstractTableModel {parent}
|
||||
{
|
||||
|
@ -29,6 +29,8 @@
|
||||
class Bands final
|
||||
: public QAbstractTableModel
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
using Frequency = Radio::Frequency;
|
||||
|
||||
|
@ -18,6 +18,8 @@
|
||||
class FoxLog::impl final
|
||||
: public QSqlTableModel
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
impl (Configuration const * configuration);
|
||||
|
||||
@ -43,6 +45,8 @@ public:
|
||||
QSqlQuery mutable export_query_;
|
||||
};
|
||||
|
||||
#include "FoxLog.moc"
|
||||
|
||||
FoxLog::impl::impl (Configuration const * configuration)
|
||||
: configuration_ {configuration}
|
||||
{
|
||||
|
@ -7,8 +7,6 @@
|
||||
#include <QModelIndex>
|
||||
#include <QMetaType>
|
||||
|
||||
#include "moc_IARURegions.cpp"
|
||||
|
||||
namespace
|
||||
{
|
||||
// human readable strings for each Region enumeration value
|
||||
@ -22,6 +20,8 @@ namespace
|
||||
std::size_t constexpr region_names_size = sizeof (region_names) / sizeof (region_names[0]);
|
||||
}
|
||||
|
||||
#include "moc_IARURegions.cpp"
|
||||
|
||||
IARURegions::IARURegions (QObject * parent)
|
||||
: QAbstractListModel {parent}
|
||||
{
|
||||
|
@ -29,6 +29,7 @@ class IARURegions final
|
||||
: public QAbstractListModel
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
//
|
||||
// This enumeration contains the supported regions, to complement
|
||||
|
@ -52,6 +52,8 @@ QDataStream& operator >> (QDataStream& is, StationList::Station& station)
|
||||
class StationList::impl final
|
||||
: public QAbstractTableModel
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
impl (Bands const * bands, Stations stations, QObject * parent)
|
||||
: QAbstractTableModel {parent}
|
||||
@ -97,6 +99,9 @@ public:
|
||||
Stations stations_;
|
||||
};
|
||||
|
||||
#include "StationList.moc"
|
||||
#include "moc_StationList.cpp"
|
||||
|
||||
StationList::StationList (Bands const * bands, QObject * parent)
|
||||
: StationList {bands, {}, parent}
|
||||
{
|
||||
|
@ -40,6 +40,8 @@ class Bands;
|
||||
class StationList final
|
||||
: public QSortFilterProxyModel
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
using Frequency = Radio::Frequency;
|
||||
using FrequencyDelta = Radio::FrequencyDelta;
|
||||
|
6007
translations/wsjtx_en_GB.ts
Normal file
6007
translations/wsjtx_en_GB.ts
Normal file
File diff suppressed because it is too large
Load Diff
6007
translations/wsjtx_pt_PT.ts
Normal file
6007
translations/wsjtx_pt_PT.ts
Normal file
File diff suppressed because it is too large
Load Diff
@ -2,6 +2,7 @@
|
||||
|
||||
#include <algorithm>
|
||||
#include <QSettings>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include <QTableView>
|
||||
#include <QHeaderView>
|
||||
@ -16,7 +17,10 @@
|
||||
#include "pimpl_impl.hpp"
|
||||
|
||||
class AbstractLogWindow::impl final
|
||||
: public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
impl (AbstractLogWindow * self, QString const& settings_key, QSettings * settings
|
||||
, Configuration const * configuration)
|
||||
@ -38,6 +42,9 @@ public:
|
||||
FontOverrideModel model_;
|
||||
};
|
||||
|
||||
#include "moc_AbstractLogWindow.cpp"
|
||||
#include "AbstractLogWindow.moc"
|
||||
|
||||
namespace
|
||||
{
|
||||
bool row_is_higher (QModelIndex const& lhs, QModelIndex const& rhs)
|
||||
|
@ -19,6 +19,8 @@ class QFont;
|
||||
class AbstractLogWindow
|
||||
: public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
AbstractLogWindow (QString const& settings_key, QSettings * settings
|
||||
, Configuration const * configuration
|
||||
|
@ -6,6 +6,8 @@
|
||||
#include "models/DecodeHighlightingModel.hpp"
|
||||
#include "MessageBox.hpp"
|
||||
|
||||
#include "moc_DecodeHighlightingListView.cpp"
|
||||
|
||||
DecodeHighlightingListView::DecodeHighlightingListView (QWidget * parent)
|
||||
: QListView {parent}
|
||||
{
|
||||
|
@ -16,6 +16,8 @@ class QWidget;
|
||||
class DecodeHighlightingListView final
|
||||
: public QListView
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit DecodeHighlightingListView (QWidget * parent = nullptr);
|
||||
|
||||
|
@ -11,6 +11,7 @@
|
||||
#include "models/CabrilloLog.hpp"
|
||||
|
||||
#include "ui_ExportCabrillo.h"
|
||||
#include "moc_ExportCabrillo.cpp"
|
||||
|
||||
ExportCabrillo::ExportCabrillo (QSettings * settings, Configuration const * configuration
|
||||
, CabrilloLog const * log, QWidget * parent)
|
||||
|
@ -15,6 +15,8 @@ namespace Ui {
|
||||
class ExportCabrillo final
|
||||
: public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit ExportCabrillo (QSettings *, Configuration const *
|
||||
, CabrilloLog const *, QWidget * parent = nullptr);
|
||||
|
@ -9,6 +9,8 @@
|
||||
#include "qt_helpers.hpp"
|
||||
#include "widgets/MessageBox.hpp"
|
||||
|
||||
#include "moc_HelpTextWindow.cpp"
|
||||
|
||||
HelpTextWindow::HelpTextWindow (QString const& title, QString const& file_name, QFont const& font, QWidget * parent)
|
||||
: QLabel {parent, Qt::WindowCloseButtonHint | Qt::WindowMinimizeButtonHint}
|
||||
{
|
||||
|
@ -9,6 +9,8 @@ class QString;
|
||||
class HelpTextWindow final
|
||||
: public QLabel
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
HelpTextWindow (QString const& title, QString const& file_name, QFont const& = QFont {}, QWidget * parent = nullptr);
|
||||
};
|
||||
|
@ -8,6 +8,8 @@
|
||||
#include "qt_helpers.hpp"
|
||||
#include "ui_messageaveraging.h"
|
||||
|
||||
#include "moc_messageaveraging.cpp"
|
||||
|
||||
MessageAveraging::MessageAveraging(QSettings * settings, QFont const& font, QWidget *parent) :
|
||||
QWidget(parent),
|
||||
settings_ {settings},
|
||||
|
@ -14,6 +14,8 @@ namespace Ui {
|
||||
class MessageAveraging
|
||||
: public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit MessageAveraging(QSettings *, QFont const&, QWidget * parent = 0);
|
||||
~MessageAveraging();
|
||||
|
Loading…
Reference in New Issue
Block a user