mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2025-01-12 18:24:58 +08:00
Uncrustify misc.cpp
This commit is contained in:
parent
d3ece7417d
commit
8742d7aa45
@ -159,7 +159,7 @@ void Utils::Misc::shutdownComputer(const ShutdownDialogAction &action)
|
|||||||
AppleEvent appleEventToSend = {typeNull, NULL};
|
AppleEvent appleEventToSend = {typeNull, NULL};
|
||||||
|
|
||||||
OSStatus error = AECreateDesc(typeProcessSerialNumber, &kPSNOfSystemProcess,
|
OSStatus error = AECreateDesc(typeProcessSerialNumber, &kPSNOfSystemProcess,
|
||||||
sizeof(kPSNOfSystemProcess), &targetDesc);
|
sizeof(kPSNOfSystemProcess), &targetDesc);
|
||||||
|
|
||||||
if (error != noErr)
|
if (error != noErr)
|
||||||
return;
|
return;
|
||||||
@ -233,6 +233,7 @@ QPoint Utils::Misc::screenCenter(QWidget *win)
|
|||||||
QRect desk(QApplication::desktop()->availableGeometry(scrn));
|
QRect desk(QApplication::desktop()->availableGeometry(scrn));
|
||||||
return QPoint((desk.width() - win->frameGeometry().width()) / 2, (desk.height() - win->frameGeometry().height()) / 2);
|
return QPoint((desk.width() - win->frameGeometry().width()) / 2, (desk.height() - win->frameGeometry().height()) / 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -267,12 +268,12 @@ QString Utils::Misc::pythonExecutable()
|
|||||||
* http://legacy.python.org/dev/peps/pep-0394/
|
* http://legacy.python.org/dev/peps/pep-0394/
|
||||||
*/
|
*/
|
||||||
pythonProc.start("python3", QStringList() << "--version", QIODevice::ReadOnly);
|
pythonProc.start("python3", QStringList() << "--version", QIODevice::ReadOnly);
|
||||||
if (pythonProc.waitForFinished() && pythonProc.exitCode() == 0) {
|
if (pythonProc.waitForFinished() && (pythonProc.exitCode() == 0)) {
|
||||||
executable = "python3";
|
executable = "python3";
|
||||||
return executable;
|
return executable;
|
||||||
}
|
}
|
||||||
pythonProc.start("python2", QStringList() << "--version", QIODevice::ReadOnly);
|
pythonProc.start("python2", QStringList() << "--version", QIODevice::ReadOnly);
|
||||||
if (pythonProc.waitForFinished() && pythonProc.exitCode() == 0) {
|
if (pythonProc.waitForFinished() && (pythonProc.exitCode() == 0)) {
|
||||||
executable = "python2";
|
executable = "python2";
|
||||||
return executable;
|
return executable;
|
||||||
}
|
}
|
||||||
@ -280,7 +281,7 @@ QString Utils::Misc::pythonExecutable()
|
|||||||
// Look for "python" in Windows and in UNIX if "python2" and "python3" are
|
// Look for "python" in Windows and in UNIX if "python2" and "python3" are
|
||||||
// not detected.
|
// not detected.
|
||||||
pythonProc.start("python", QStringList() << "--version", QIODevice::ReadOnly);
|
pythonProc.start("python", QStringList() << "--version", QIODevice::ReadOnly);
|
||||||
if (pythonProc.waitForFinished() && pythonProc.exitCode() == 0)
|
if (pythonProc.waitForFinished() && (pythonProc.exitCode() == 0))
|
||||||
executable = "python";
|
executable = "python";
|
||||||
else
|
else
|
||||||
Logger::instance()->addMessage(QCoreApplication::translate("misc", "Python not detected"), Log::INFO);
|
Logger::instance()->addMessage(QCoreApplication::translate("misc", "Python not detected"), Log::INFO);
|
||||||
@ -293,14 +294,15 @@ QString Utils::Misc::pythonExecutable()
|
|||||||
* eg 2.7.9
|
* eg 2.7.9
|
||||||
* Make sure to have setup python first
|
* Make sure to have setup python first
|
||||||
*/
|
*/
|
||||||
QString Utils::Misc::pythonVersionComplete() {
|
QString Utils::Misc::pythonVersionComplete()
|
||||||
|
{
|
||||||
static QString version;
|
static QString version;
|
||||||
if (version.isEmpty()) {
|
if (version.isEmpty()) {
|
||||||
if (pythonExecutable().isEmpty())
|
if (pythonExecutable().isEmpty())
|
||||||
return version;
|
return version;
|
||||||
QProcess pythonProc;
|
QProcess pythonProc;
|
||||||
pythonProc.start(pythonExecutable(), QStringList() << "--version", QIODevice::ReadOnly);
|
pythonProc.start(pythonExecutable(), QStringList() << "--version", QIODevice::ReadOnly);
|
||||||
if (pythonProc.waitForFinished() && pythonProc.exitCode() == 0) {
|
if (pythonProc.waitForFinished() && (pythonProc.exitCode() == 0)) {
|
||||||
QByteArray output = pythonProc.readAllStandardOutput();
|
QByteArray output = pythonProc.readAllStandardOutput();
|
||||||
if (output.isEmpty())
|
if (output.isEmpty())
|
||||||
output = pythonProc.readAllStandardError();
|
output = pythonProc.readAllStandardError();
|
||||||
@ -321,7 +323,7 @@ QString Utils::Misc::pythonVersionComplete() {
|
|||||||
QString Utils::Misc::unitString(Utils::Misc::SizeUnit unit)
|
QString Utils::Misc::unitString(Utils::Misc::SizeUnit unit)
|
||||||
{
|
{
|
||||||
return QCoreApplication::translate("misc",
|
return QCoreApplication::translate("misc",
|
||||||
units[static_cast<int>(unit)].source, units[static_cast<int>(unit)].comment);
|
units[static_cast<int>(unit)].source, units[static_cast<int>(unit)].comment);
|
||||||
}
|
}
|
||||||
|
|
||||||
// return best userfriendly storage unit (B, KiB, MiB, GiB, TiB, ...)
|
// return best userfriendly storage unit (B, KiB, MiB, GiB, TiB, ...)
|
||||||
@ -349,9 +351,8 @@ QString Utils::Misc::friendlyUnit(qint64 bytesValue, bool isSpeed)
|
|||||||
{
|
{
|
||||||
SizeUnit unit;
|
SizeUnit unit;
|
||||||
qreal friendlyVal;
|
qreal friendlyVal;
|
||||||
if (!friendlyUnit(bytesValue, friendlyVal, unit)) {
|
if (!friendlyUnit(bytesValue, friendlyVal, unit))
|
||||||
return QCoreApplication::translate("misc", "Unknown", "Unknown (size)");
|
return QCoreApplication::translate("misc", "Unknown", "Unknown (size)");
|
||||||
}
|
|
||||||
QString ret;
|
QString ret;
|
||||||
if (unit == SizeUnit::Byte)
|
if (unit == SizeUnit::Byte)
|
||||||
ret = QString::number(bytesValue) + " " + unitString(unit);
|
ret = QString::number(bytesValue) + " " + unitString(unit);
|
||||||
@ -364,13 +365,12 @@ QString Utils::Misc::friendlyUnit(qint64 bytesValue, bool isSpeed)
|
|||||||
|
|
||||||
qlonglong Utils::Misc::sizeInBytes(qreal size, Utils::Misc::SizeUnit unit)
|
qlonglong Utils::Misc::sizeInBytes(qreal size, Utils::Misc::SizeUnit unit)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < static_cast<int>(unit); ++i) {
|
for (int i = 0; i < static_cast<int>(unit); ++i)
|
||||||
size *= 1024;
|
size *= 1024;
|
||||||
}
|
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Utils::Misc::isPreviewable(const QString& extension)
|
bool Utils::Misc::isPreviewable(const QString &extension)
|
||||||
{
|
{
|
||||||
static QSet<QString> multimedia_extensions;
|
static QSet<QString> multimedia_extensions;
|
||||||
if (multimedia_extensions.empty()) {
|
if (multimedia_extensions.empty()) {
|
||||||
@ -427,7 +427,7 @@ bool Utils::Misc::isPreviewable(const QString& extension)
|
|||||||
// time duration like "1d 2h 10m".
|
// time duration like "1d 2h 10m".
|
||||||
QString Utils::Misc::userFriendlyDuration(qlonglong seconds)
|
QString Utils::Misc::userFriendlyDuration(qlonglong seconds)
|
||||||
{
|
{
|
||||||
if (seconds < 0 || seconds >= MAX_ETA)
|
if ((seconds < 0) || (seconds >= MAX_ETA))
|
||||||
return QString::fromUtf8(C_INFINITY);
|
return QString::fromUtf8(C_INFINITY);
|
||||||
if (seconds == 0)
|
if (seconds == 0)
|
||||||
return "0";
|
return "0";
|
||||||
@ -435,7 +435,7 @@ QString Utils::Misc::userFriendlyDuration(qlonglong seconds)
|
|||||||
return QCoreApplication::translate("misc", "< 1m", "< 1 minute");
|
return QCoreApplication::translate("misc", "< 1m", "< 1 minute");
|
||||||
int minutes = seconds / 60;
|
int minutes = seconds / 60;
|
||||||
if (minutes < 60)
|
if (minutes < 60)
|
||||||
return QCoreApplication::translate("misc", "%1m","e.g: 10minutes").arg(QString::number(minutes));
|
return QCoreApplication::translate("misc", "%1m", "e.g: 10minutes").arg(QString::number(minutes));
|
||||||
int hours = minutes / 60;
|
int hours = minutes / 60;
|
||||||
minutes = minutes - hours * 60;
|
minutes = minutes - hours * 60;
|
||||||
if (hours < 24)
|
if (hours < 24)
|
||||||
@ -452,7 +452,7 @@ QString Utils::Misc::getUserIDString()
|
|||||||
QString uid = "0";
|
QString uid = "0";
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
WCHAR buffer[UNLEN + 1] = {0};
|
WCHAR buffer[UNLEN + 1] = {0};
|
||||||
DWORD buffer_len = sizeof(buffer)/sizeof(*buffer);
|
DWORD buffer_len = sizeof(buffer) / sizeof(*buffer);
|
||||||
if (GetUserNameW(buffer, &buffer_len))
|
if (GetUserNameW(buffer, &buffer_len))
|
||||||
uid = QString::fromWCharArray(buffer);
|
uid = QString::fromWCharArray(buffer);
|
||||||
#else
|
#else
|
||||||
@ -496,18 +496,18 @@ QString Utils::Misc::parseHtmlLinks(const QString &raw_text)
|
|||||||
{
|
{
|
||||||
QString result = raw_text;
|
QString result = raw_text;
|
||||||
static QRegExp reURL(
|
static QRegExp reURL(
|
||||||
"(\\s|^)" //start with whitespace or beginning of line
|
"(\\s|^)" // start with whitespace or beginning of line
|
||||||
"("
|
"("
|
||||||
"(" //case 1 -- URL with scheme
|
"(" // case 1 -- URL with scheme
|
||||||
"(http(s?))\\://" //start with scheme
|
"(http(s?))\\://" // start with scheme
|
||||||
"([a-zA-Z0-9_-]+\\.)+" // domainpart. at least one of these must exist
|
"([a-zA-Z0-9_-]+\\.)+" // domainpart. at least one of these must exist
|
||||||
"([a-zA-Z0-9\\?%=&/_\\.:#;-]+)" // everything to 1st non-URI char, must be at least one char after the previous dot (cannot use ".*" because it can be too greedy)
|
"([a-zA-Z0-9\\?%=&/_\\.:#;-]+)" // everything to 1st non-URI char, must be at least one char after the previous dot (cannot use ".*" because it can be too greedy)
|
||||||
")"
|
")"
|
||||||
"|"
|
"|"
|
||||||
"(" //case 2a -- no scheme, contains common TLD example.com
|
"(" // case 2a -- no scheme, contains common TLD example.com
|
||||||
"([a-zA-Z0-9_-]+\\.)+" // domainpart. at least one of these must exist
|
"([a-zA-Z0-9_-]+\\.)+" // domainpart. at least one of these must exist
|
||||||
"(?=" // must be followed by TLD
|
"(?=" // must be followed by TLD
|
||||||
"AERO|aero|" //N.B. assertions are non-capturing
|
"AERO|aero|" // N.B. assertions are non-capturing
|
||||||
"ARPA|arpa|"
|
"ARPA|arpa|"
|
||||||
"ASIA|asia|"
|
"ASIA|asia|"
|
||||||
"BIZ|biz|"
|
"BIZ|biz|"
|
||||||
@ -535,8 +535,8 @@ QString Utils::Misc::parseHtmlLinks(const QString &raw_text)
|
|||||||
")"
|
")"
|
||||||
"|"
|
"|"
|
||||||
"(" // case 2b no scheme, no TLD, must have at least 2 alphanum strings plus uncommon TLD string --> del.icio.us
|
"(" // case 2b no scheme, no TLD, must have at least 2 alphanum strings plus uncommon TLD string --> del.icio.us
|
||||||
"([a-zA-Z0-9_-]+\\.) {2,}" //2 or more domainpart. --> del.icio.
|
"([a-zA-Z0-9_-]+\\.) {2,}" // 2 or more domainpart. --> del.icio.
|
||||||
"[a-zA-Z]{2,}" //one ab (2 char or longer) --> us
|
"[a-zA-Z]{2,}" // one ab (2 char or longer) --> us
|
||||||
"([a-zA-Z0-9\\?%=&/_\\.:#;-]*)" // everything to 1st non-URI char, maybe nothing in case of del.icio.us/path
|
"([a-zA-Z0-9\\?%=&/_\\.:#;-]*)" // everything to 1st non-URI char, maybe nothing in case of del.icio.us/path
|
||||||
")"
|
")"
|
||||||
")"
|
")"
|
||||||
@ -557,7 +557,7 @@ QString Utils::Misc::parseHtmlLinks(const QString &raw_text)
|
|||||||
|
|
||||||
#ifndef DISABLE_GUI
|
#ifndef DISABLE_GUI
|
||||||
// Open the given path with an appropriate application
|
// Open the given path with an appropriate application
|
||||||
void Utils::Misc::openPath(const QString& absolutePath)
|
void Utils::Misc::openPath(const QString &absolutePath)
|
||||||
{
|
{
|
||||||
const QString path = Utils::Fs::fromNativePath(absolutePath);
|
const QString path = Utils::Fs::fromNativePath(absolutePath);
|
||||||
// Hack to access samba shares with QDesktopServices::openUrl
|
// Hack to access samba shares with QDesktopServices::openUrl
|
||||||
@ -569,7 +569,7 @@ void Utils::Misc::openPath(const QString& absolutePath)
|
|||||||
|
|
||||||
// Open the parent directory of the given path with a file manager and select
|
// Open the parent directory of the given path with a file manager and select
|
||||||
// (if possible) the item at the given path
|
// (if possible) the item at the given path
|
||||||
void Utils::Misc::openFolderSelect(const QString& absolutePath)
|
void Utils::Misc::openFolderSelect(const QString &absolutePath)
|
||||||
{
|
{
|
||||||
const QString path = Utils::Fs::fromNativePath(absolutePath);
|
const QString path = Utils::Fs::fromNativePath(absolutePath);
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
@ -614,19 +614,18 @@ void Utils::Misc::openFolderSelect(const QString& absolutePath)
|
|||||||
proc.start("xdg-mime", QStringList() << "query" << "default" << "inode/directory");
|
proc.start("xdg-mime", QStringList() << "query" << "default" << "inode/directory");
|
||||||
proc.waitForFinished();
|
proc.waitForFinished();
|
||||||
QString output = proc.readLine().simplified();
|
QString output = proc.readLine().simplified();
|
||||||
if (output == "dolphin.desktop" || output == "org.kde.dolphin.desktop")
|
if ((output == "dolphin.desktop") || (output == "org.kde.dolphin.desktop"))
|
||||||
proc.startDetached("dolphin", QStringList() << "--select" << Utils::Fs::toNativePath(path));
|
proc.startDetached("dolphin", QStringList() << "--select" << Utils::Fs::toNativePath(path));
|
||||||
else if (output == "nautilus.desktop" || output == "org.gnome.Nautilus.desktop"
|
else if ((output == "nautilus.desktop") || (output == "org.gnome.Nautilus.desktop")
|
||||||
|| output == "nautilus-folder-handler.desktop")
|
|| (output == "nautilus-folder-handler.desktop"))
|
||||||
proc.startDetached("nautilus", QStringList() << "--no-desktop" << Utils::Fs::toNativePath(path));
|
proc.startDetached("nautilus", QStringList() << "--no-desktop" << Utils::Fs::toNativePath(path));
|
||||||
else if (output == "nemo.desktop")
|
else if (output == "nemo.desktop")
|
||||||
proc.startDetached("nemo", QStringList() << "--no-desktop" << Utils::Fs::toNativePath(path));
|
proc.startDetached("nemo", QStringList() << "--no-desktop" << Utils::Fs::toNativePath(path));
|
||||||
else if (output == "konqueror.desktop" || output == "kfmclient_dir.desktop")
|
else if ((output == "konqueror.desktop") || (output == "kfmclient_dir.desktop"))
|
||||||
proc.startDetached("konqueror", QStringList() << "--select" << Utils::Fs::toNativePath(path));
|
proc.startDetached("konqueror", QStringList() << "--select" << Utils::Fs::toNativePath(path));
|
||||||
else {
|
else
|
||||||
// "caja" manager can't pinpoint the file, see: https://github.com/qbittorrent/qBittorrent/issues/5003
|
// "caja" manager can't pinpoint the file, see: https://github.com/qbittorrent/qBittorrent/issues/5003
|
||||||
openPath(path.left(path.lastIndexOf("/")));
|
openPath(path.left(path.lastIndexOf("/")));
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// If the item to select doesn't exist, try to open its parent
|
// If the item to select doesn't exist, try to open its parent
|
||||||
@ -636,12 +635,13 @@ void Utils::Misc::openFolderSelect(const QString& absolutePath)
|
|||||||
openPath(path.left(path.lastIndexOf("/")));
|
openPath(path.left(path.lastIndexOf("/")));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // DISABLE_GUI
|
#endif // DISABLE_GUI
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
// Trick to get a portable sleep() function
|
// Trick to get a portable sleep() function
|
||||||
class SleeperThread : public QThread
|
class SleeperThread: public QThread
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
static void msleep(unsigned long msecs)
|
static void msleep(unsigned long msecs)
|
||||||
@ -663,6 +663,7 @@ QSize Utils::Misc::smallIconSize()
|
|||||||
int s = QApplication::style()->pixelMetric(QStyle::PM_SmallIconSize);
|
int s = QApplication::style()->pixelMetric(QStyle::PM_SmallIconSize);
|
||||||
return QSize(s, s);
|
return QSize(s, s);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QString Utils::Misc::osName()
|
QString Utils::Misc::osName()
|
||||||
@ -670,12 +671,12 @@ QString Utils::Misc::osName()
|
|||||||
// static initialization for usage in signal handler
|
// static initialization for usage in signal handler
|
||||||
static const QString name =
|
static const QString name =
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(5, 4, 0))
|
#if (QT_VERSION >= QT_VERSION_CHECK(5, 4, 0))
|
||||||
QString("%1 %2 %3")
|
QString("%1 %2 %3")
|
||||||
.arg(QSysInfo::prettyProductName())
|
.arg(QSysInfo::prettyProductName())
|
||||||
.arg(QSysInfo::kernelVersion())
|
.arg(QSysInfo::kernelVersion())
|
||||||
.arg(QSysInfo::currentCpuArchitecture());
|
.arg(QSysInfo::currentCpuArchitecture());
|
||||||
#else
|
#else
|
||||||
"<Input OS name here>";
|
"<Input OS name here>";
|
||||||
#endif
|
#endif
|
||||||
return name;
|
return name;
|
||||||
}
|
}
|
||||||
@ -684,9 +685,9 @@ QString Utils::Misc::boostVersionString()
|
|||||||
{
|
{
|
||||||
// static initialization for usage in signal handler
|
// static initialization for usage in signal handler
|
||||||
static const QString ver = QString("%1.%2.%3")
|
static const QString ver = QString("%1.%2.%3")
|
||||||
.arg(BOOST_VERSION / 100000)
|
.arg(BOOST_VERSION / 100000)
|
||||||
.arg((BOOST_VERSION / 100) % 1000)
|
.arg((BOOST_VERSION / 100) % 1000)
|
||||||
.arg(BOOST_VERSION % 100);
|
.arg(BOOST_VERSION % 100);
|
||||||
return ver;
|
return ver;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user