Browse Source

Uncrustify misc.cpp

adaptive-webui-19844
Chocobo1 8 years ago
parent
commit
8742d7aa45
  1. 79
      src/base/utils/misc.cpp

79
src/base/utils/misc.cpp

@ -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…
Cancel
Save