diff --git a/src/Camera/QGCCameraControl.cc b/src/Camera/QGCCameraControl.cc index a457204db21938dc9b2d02217024616a95627de4..f622be91694b4a07b7100485525a1ba4dae89123 100644 --- a/src/Camera/QGCCameraControl.cc +++ b/src/Camera/QGCCameraControl.cc @@ -263,7 +263,7 @@ QGCCameraControl::photoStatus() QString QGCCameraControl::storageFreeStr() { - return QGCMapEngine::bigSizeToString(static_cast(_storageFree) * 1024 * 1024); + return QGCMapEngine::storageFreeSizeToString(static_cast(_storageFree)); } //----------------------------------------------------------------------------- diff --git a/src/QtLocationPlugin/QGCMapEngine.cpp b/src/QtLocationPlugin/QGCMapEngine.cpp index d6657feb7ccbd987498d4688be38903615d8a068..1f3315336c87b9ae5d926185e06743bce3d07f8d 100644 --- a/src/QtLocationPlugin/QGCMapEngine.cpp +++ b/src/QtLocationPlugin/QGCMapEngine.cpp @@ -471,6 +471,18 @@ QGCMapEngine::bigSizeToString(quint64 size) return kLocale.toString(static_cast(size) / (1024.0 * 1024.0 * 1024.0 * 1024), 'f', 1) + "TB"; } +//----------------------------------------------------------------------------- +QString +QGCMapEngine::storageFreeSizeToString(quint64 size_MB) +{ + if(size_MB < 1024) + return kLocale.toString(static_cast(size_MB) , 'f', 0) + " MB"; + else if(size_MB < 1024.0 * 1024.0) + return kLocale.toString(static_cast(size_MB) / (1024.0), 'f', 2) + " GB"; + else + return kLocale.toString(static_cast(size_MB) / (1024.0 * 1024), 'f', 2) + " TB"; +} + //----------------------------------------------------------------------------- QString QGCMapEngine::numberToString(quint64 number) diff --git a/src/QtLocationPlugin/QGCMapEngine.h b/src/QtLocationPlugin/QGCMapEngine.h index 352fcbd198f5ac67bc9fc3fa57834b34e7d5275d..0e8b591cede5333355a928f3c9a085063a056507 100644 --- a/src/QtLocationPlugin/QGCMapEngine.h +++ b/src/QtLocationPlugin/QGCMapEngine.h @@ -99,6 +99,7 @@ public: static QString getTileHash (UrlFactory::MapType type, int x, int y, int z); static UrlFactory::MapType getTypeFromName (const QString &name); static QString bigSizeToString (quint64 size); + static QString storageFreeSizeToString(quint64 size_MB); static QString numberToString (quint64 number); static int concurrentDownloads (UrlFactory::MapType type);