forked from len0rd/rockbox
Show volume labels on Windows.
In mountpoint selection and system info dialog show the volume name to make it easier to identify a specific device. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30141 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
241f28eefc
commit
c9f70fe304
4 changed files with 25 additions and 5 deletions
|
@ -110,6 +110,23 @@ QString Utils::resolvePathCase(QString path)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString Utils::filesystemName(QString path)
|
||||||
|
{
|
||||||
|
QString name;
|
||||||
|
#if defined(Q_OS_WIN32)
|
||||||
|
wchar_t volname[MAX_PATH+1];
|
||||||
|
bool res = GetVolumeInformationW((LPTSTR)path.utf16(), volname, MAX_PATH+1,
|
||||||
|
NULL, NULL, NULL, NULL, NULL);
|
||||||
|
if(res) {
|
||||||
|
name = QString::fromWCharArray(volname);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
qDebug() << "[Utils] Volume name of" << path << "is" << name;
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//! @brief figure the free disk space on a filesystem
|
//! @brief figure the free disk space on a filesystem
|
||||||
//! @param path path on the filesystem to check
|
//! @param path path on the filesystem to check
|
||||||
//! @return size in bytes
|
//! @return size in bytes
|
||||||
|
@ -160,7 +177,7 @@ qulonglong Utils::filesystemSize(QString path, enum Utils::Size type)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
qDebug() << "[Utils] Filesystem free:" << path << size;
|
qDebug() << "[Utils] Filesystem:" << path << size;
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -44,6 +44,7 @@ public:
|
||||||
static QString findExecutable(QString name);
|
static QString findExecutable(QString name);
|
||||||
static QString checkEnvironment(bool permission);
|
static QString checkEnvironment(bool permission);
|
||||||
static int compareVersionStrings(QString s1, QString s2);
|
static int compareVersionStrings(QString s1, QString s2);
|
||||||
|
static QString filesystemName(QString path);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -586,10 +586,11 @@ void Config::refreshMountpoint()
|
||||||
// later (to include volume label or similar)
|
// later (to include volume label or similar)
|
||||||
// Skip unwritable mountpoints, they are not useable for us.
|
// Skip unwritable mountpoints, they are not useable for us.
|
||||||
if(QFileInfo(mps.at(i)).isWritable()) {
|
if(QFileInfo(mps.at(i)).isWritable()) {
|
||||||
QString title = QString("%1 (%2 GiB of %3 GiB free)")
|
QString title = QString("%1 %4 (%2 GiB of %3 GiB free)")
|
||||||
.arg(QDir::toNativeSeparators(mps.at(i)))
|
.arg(QDir::toNativeSeparators(mps.at(i)))
|
||||||
.arg((double)Utils::filesystemFree(mps.at(i))/(1<<30), 0, 'f', 2)
|
.arg((double)Utils::filesystemFree(mps.at(i))/(1<<30), 0, 'f', 2)
|
||||||
.arg((double)Utils::filesystemTotal(mps.at(i))/(1<<30), 0, 'f', 2);
|
.arg((double)Utils::filesystemTotal(mps.at(i))/(1<<30), 0, 'f', 2)
|
||||||
|
.arg(Utils::filesystemName(mps.at(i)));
|
||||||
ui.mountPoint->addItem(title, mps.at(i));
|
ui.mountPoint->addItem(title, mps.at(i));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,10 +63,11 @@ QString Sysinfo::getInfo()
|
||||||
info += "<b>" + tr("Filesystem") + "</b><br/>";
|
info += "<b>" + tr("Filesystem") + "</b><br/>";
|
||||||
QStringList drives = Autodetection::mountpoints();
|
QStringList drives = Autodetection::mountpoints();
|
||||||
for(int i = 0; i < drives.size(); i++) {
|
for(int i = 0; i < drives.size(); i++) {
|
||||||
info += tr("%1, %2 GiB of %3 GiB available")
|
info += tr("%1, %4 %2 GiB of %3 GiB available")
|
||||||
.arg(QDir::toNativeSeparators(drives.at(i)))
|
.arg(QDir::toNativeSeparators(drives.at(i)))
|
||||||
.arg((double)Utils::filesystemFree(drives.at(i)) / (1<<30), 0, 'f', 2)
|
.arg((double)Utils::filesystemFree(drives.at(i)) / (1<<30), 0, 'f', 2)
|
||||||
.arg((double)Utils::filesystemTotal(drives.at(i)) / (1<<30), 0, 'f', 2);
|
.arg((double)Utils::filesystemTotal(drives.at(i)) / (1<<30), 0, 'f', 2)
|
||||||
|
.arg(Utils::filesystemName(drives.at(i)));
|
||||||
if(i + 1 < drives.size())
|
if(i + 1 < drives.size())
|
||||||
info += "<br/>";
|
info += "<br/>";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue