diff options
author | Juha Alanen <juha.alanen@mapbox.com> | 2019-06-03 15:34:13 +0300 |
---|---|---|
committer | Juha Alanen <19551460+jmalanen@users.noreply.github.com> | 2019-06-27 15:51:22 +0300 |
commit | 0ca8ea6f169149cd414a65f40d0f7bdd40f3cca3 (patch) | |
tree | db6a58892dd6326b8ba22da7fc822d008bdda01a /platform/qt | |
parent | 81ea5d020efd0257083bf323644a575f5ea800c9 (diff) | |
download | qtlocation-mapboxgl-0ca8ea6f169149cd414a65f40d0f7bdd40f3cca3.tar.gz |
[core] Add number-format expression
Diffstat (limited to 'platform/qt')
-rw-r--r-- | platform/qt/qt.cmake | 1 | ||||
-rw-r--r-- | platform/qt/src/format_number.cpp | 26 |
2 files changed, 27 insertions, 0 deletions
diff --git a/platform/qt/qt.cmake b/platform/qt/qt.cmake index 48523057c9..33acb7a030 100644 --- a/platform/qt/qt.cmake +++ b/platform/qt/qt.cmake @@ -35,6 +35,7 @@ set(MBGL_QT_CORE_FILES PRIVATE platform/qt/src/timer_impl.hpp PRIVATE platform/qt/src/utf.cpp PRIVATE platform/qt/src/gl_functions.cpp + PRIVATE platform/qt/src/format_number.cpp PRIVATE platform/default/src/mbgl/text/collator.cpp PRIVATE platform/default/src/mbgl/text/unaccent.cpp diff --git a/platform/qt/src/format_number.cpp b/platform/qt/src/format_number.cpp new file mode 100644 index 0000000000..b6fe3558e6 --- /dev/null +++ b/platform/qt/src/format_number.cpp @@ -0,0 +1,26 @@ +#include <mbgl/util/platform.hpp> + +#include <QLocale> +#include <QString> + +namespace mbgl { +namespace platform { + +std::string formatNumber(double number, const std::string& localeId, const std::string& currency, + uint8_t minFractionDigits, uint8_t maxFractionDigits) { + + QString formatted; + // Qt Locale::toString() API takes only one precision argument + (void)minFractionDigits; + QLocale locale = QLocale(QString::fromStdString(localeId)); + + if (!currency.empty()) { + formatted = locale.toCurrencyString(number); + } else { + formatted = locale.toString(number, 'f', maxFractionDigits); + } + return formatted.toStdString(); +} + +} // namespace platform +} // namespace mbgl |