Marble
7#include "MarbleLocale.h"
8#include "MarbleLocale_p.h"
9#include "MarbleGlobal.h"
10#include "MarbleDebug.h"
19MarbleLocalePrivate::MarbleLocalePrivate()
20 : m_measurementSystem( MarbleLocale::MetricSystem )
24MarbleLocalePrivate::~MarbleLocalePrivate()
28MarbleLocale::MarbleLocale()
29 : d ( new MarbleLocalePrivate )
33MarbleLocale::~MarbleLocale()
38void MarbleLocale::setMeasurementSystem( MarbleLocale::MeasurementSystem measurementSystem )
40 d->m_measurementSystem = measurementSystem;
43MarbleLocale::MeasurementSystem MarbleLocale::measurementSystem()
const
45 return d->m_measurementSystem;
48void MarbleLocale::meterToTargetUnit(qreal meters, MeasurementSystem targetSystem,
49 qreal &targetValue, MeasureUnit &targetUnit)
53 switch (targetSystem) {
55 if (targetValue > 1000.0) {
56 targetValue *= METER2KM;
57 targetUnit = Kilometer;
61 if (targetValue < 1.0 && targetValue >= 0.01) {
63 targetUnit = Centimeter;
67 if (targetValue < 0.01) {
69 targetUnit = Milimeter;
77 case ImperialSystem: {
79 qreal ftValue = targetValue * M2FT;
87 if (ftValue >= 3 && ftValue < 5280.0) {
93 if (ftValue >= 5280.0) {
94 targetValue *= METER2KM * KM2MI;
104 case NauticalSystem: {
105 targetValue *= METER2KM * KM2NM;
106 targetUnit = NauticalMile;
111 qWarning() <<
"Unknown measurement system!";
115QString MarbleLocale::unitAbbreviation(MeasureUnit unit)
141QString MarbleLocale::languageCode()
150 else if ( index != -1 ) {
151 code = lang.
left ( index );
156 code = lang.
left ( index );
Binds a QML item to a specific geodetic location in screen coordinates.
QString name() const const
QString tr(const char *sourceText, const char *disambiguation, int n)
qsizetype indexOf(QChar ch, qsizetype from, Qt::CaseSensitivity cs) const const
QString left(qsizetype n) const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:18:17 by
doxygen 1.10.0 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.