mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-09-08 06:16:38 -04:00
Frequency display in the band combo box line edit was suffering floating point precision issues. Input of frequencies was not honoring current locale rules. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5881 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
52 lines
1.2 KiB
C++
52 lines
1.2 KiB
C++
#ifndef RADIO_HPP_
|
|
#define RADIO_HPP_
|
|
|
|
#include <QObject>
|
|
#include <QLocale>
|
|
|
|
class QVariant;
|
|
class QString;
|
|
|
|
//
|
|
// Declarations common to radio software.
|
|
//
|
|
|
|
namespace Radio
|
|
{
|
|
//
|
|
// Frequency types
|
|
//
|
|
using Frequency = quint64;
|
|
using FrequencyDelta = qint64;
|
|
|
|
//
|
|
// Frequency type conversion.
|
|
//
|
|
// QVariant argument is convertible to double and is assumed to
|
|
// be scaled by (10 ** -scale).
|
|
//
|
|
Frequency frequency (QVariant const&, int scale, QLocale const& = QLocale ());
|
|
FrequencyDelta frequency_delta (QVariant const&, int scale, QLocale const& = QLocale ());
|
|
|
|
//
|
|
// Frequency type formatting
|
|
//
|
|
QString frequency_MHz_string (Frequency, QLocale const& = QLocale ());
|
|
QString frequency_MHz_string (FrequencyDelta, QLocale const& = QLocale ());
|
|
QString pretty_frequency_MHz_string (Frequency, QLocale const& = QLocale ());
|
|
QString pretty_frequency_MHz_string (double, int scale, QLocale const& = QLocale ());
|
|
QString pretty_frequency_MHz_string (FrequencyDelta, QLocale const& = QLocale ());
|
|
|
|
//
|
|
// Callsigns
|
|
//
|
|
bool is_callsign (QString const&);
|
|
bool is_compound_callsign (QString const&);
|
|
QString base_callsign (QString);
|
|
}
|
|
|
|
Q_DECLARE_METATYPE (Radio::Frequency);
|
|
Q_DECLARE_METATYPE (Radio::FrequencyDelta);
|
|
|
|
#endif
|