Exemplo n.º 1
0
QList<QStorageInfo> QStorageInfoPrivate::mountedVolumes()
{
	QList<QStorageInfo> volumes;
	QCFType<CFURLEnumeratorRef> enumerator;
	enumerator = CFURLEnumeratorCreateForMountedVolumes(Q_NULLPTR,
	             kCFURLEnumeratorSkipInvisibles,
	             Q_NULLPTR);
	CFURLEnumeratorResult result = kCFURLEnumeratorSuccess;

	do
	{
		CFURLRef url;
		CFErrorRef error;
		result = CFURLEnumeratorGetNextURL(enumerator, &url, &error);

		if (result == kCFURLEnumeratorSuccess)
		{
			const QCFString urlString = CFURLCopyFileSystemPath(url, kCFURLPOSIXPathStyle);
			volumes.append(QStorageInfo(urlString));
		}
	}
	while (result != kCFURLEnumeratorEnd);

	return volumes;
}
Exemplo n.º 2
0
double MapDownloadsModel::getFreeSpace(QString dir)
{
#ifdef HAS_QSTORAGE
  QStorageInfo storage=QStorageInfo(QDir(dir));
  return storage.bytesAvailable();
#else
  return -1;
#endif
}
Exemplo n.º 3
0
QList<QStorageInfo> QStorageInfoPrivate::mountedVolumes()
{
    QStorageIterator it;
    if (!it.isValid())
        return QList<QStorageInfo>() << root();

    QList<QStorageInfo> volumes;

    while (it.next()) {
        if (isPseudoFs(it))
            continue;

        const QString mountDir = it.rootPath();
        volumes.append(QStorageInfo(mountDir));
    }

    return volumes;
}
Exemplo n.º 4
0
QList<QStorageInfo> QStorageInfoPrivate::mountedVolumes()
{
    QStorageIterator it;
    if (!it.isValid())
        return QList<QStorageInfo>() << root();

    QList<QStorageInfo> volumes;

    while (it.next()) {
        const QString mountDir = it.rootPath();
        const QByteArray fsName = it.fileSystemType();
        if (isPseudoFs(mountDir, fsName))
            continue;

        volumes.append(QStorageInfo(mountDir));
    }

    return volumes;
}
Exemplo n.º 5
0
QStorageInfo QStorageInfoPrivate::root()
{
    return QStorageInfo(QStringLiteral("/"));
}
Exemplo n.º 6
0
qint64 Utils::Fs::freeDiskSpaceOnPath(const QString &path)
{
    if (path.isEmpty()) return -1;

    return QStorageInfo(path).bytesAvailable();
}