From aae6d6a5aa8d6b101fcc38388222a8a6e7ee2ec6 Mon Sep 17 00:00:00 2001
From: isanae <14251494+isanae@users.noreply.github.com>
Date: Fri, 19 Jul 2019 01:09:19 -0400
Subject: replaced qWarning()
---
src/categories.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'src/categories.cpp')
diff --git a/src/categories.cpp b/src/categories.cpp
index 9e5fa9f7..8f9d3ad8 100644
--- a/src/categories.cpp
+++ b/src/categories.cpp
@@ -21,6 +21,7 @@ along with Mod Organizer. If not, see .
#include
#include
+#include
#include
#include
@@ -294,7 +295,7 @@ bool CategoryFactory::isDecendantOf(int id, int parentID) const
return isDecendantOf(m_Categories[index].m_ParentID, parentID);
}
} else {
- qWarning("%d is no valid category id", id);
+ log::warn("{} is no valid category id", id);
return false;
}
}
--
cgit v1.3.1
From e071dfdfaa369a475a2d93df623c1696feee56ba Mon Sep 17 00:00:00 2001
From: isanae <14251494+isanae@users.noreply.github.com>
Date: Fri, 19 Jul 2019 02:47:13 -0400
Subject: changed qCritical() to log::error() removed now unused vlog()
---
src/browserdialog.cpp | 12 ++++----
src/categories.cpp | 10 +++----
src/downloadlist.cpp | 5 ++--
src/downloadmanager.cpp | 10 +++++--
src/envmodule.cpp | 66 +++++++++++++++++-------------------------
src/envsecurity.cpp | 58 +++++++++++++------------------------
src/envshortcut.cpp | 56 +++++++++++++++++------------------
src/envshortcut.h | 9 ------
src/envwindows.cpp | 19 ++++++------
src/executableslist.cpp | 10 +++----
src/filerenamer.cpp | 2 +-
src/filterwidget.cpp | 5 +++-
src/forcedloaddialogwidget.cpp | 9 +++---
src/installationmanager.cpp | 7 ++---
src/loglist.cpp | 18 ------------
src/mainwindow.cpp | 34 +++++++++++-----------
src/moapplication.cpp | 10 ++++---
src/modinfo.cpp | 5 +---
src/modinfodialog.cpp | 12 ++++----
src/modinfodialogconflicts.cpp | 6 ++--
src/modinfodialogfiletree.cpp | 9 +++---
src/modinfodialogimages.cpp | 9 +++---
src/modinforegular.cpp | 20 ++++++-------
src/modlist.cpp | 12 ++++----
src/modlistsortproxy.cpp | 2 +-
src/nexusinterface.cpp | 28 +++++++++---------
src/organizercore.cpp | 22 +++++++-------
src/overwriteinfodialog.cpp | 6 ++--
src/persistentcookiejar.cpp | 8 +++--
src/plugincontainer.cpp | 5 ++--
src/pluginlist.cpp | 10 +++----
src/profile.cpp | 4 +--
src/settings.cpp | 14 ++-------
src/settingsdialog.cpp | 1 -
src/shared/directoryentry.cpp | 23 ++++++++-------
src/shared/error_report.h | 2 --
src/syncoverwritedialog.cpp | 3 +-
src/texteditor.cpp | 7 +++--
src/transfersavesdialog.cpp | 13 ++++-----
39 files changed, 251 insertions(+), 310 deletions(-)
(limited to 'src/categories.cpp')
diff --git a/src/browserdialog.cpp b/src/browserdialog.cpp
index e186ad63..1fde7f15 100644
--- a/src/browserdialog.cpp
+++ b/src/browserdialog.cpp
@@ -24,9 +24,10 @@ along with Mod Organizer. If not, see .
#include "messagedialog.h"
#include "report.h"
#include "persistentcookiejar.h"
+#include "settings.h"
#include
-#include "settings.h"
+#include
#include
#include
@@ -38,6 +39,7 @@ along with Mod Organizer. If not, see .
#include
#include
+using namespace MOBase;
BrowserDialog::BrowserDialog(QWidget *parent)
@@ -192,12 +194,12 @@ void BrowserDialog::unsupportedContent(QNetworkReply *reply)
try {
QWebEnginePage *page = qobject_cast(sender());
if (page == nullptr) {
- qCritical("sender not a page");
+ log::error("sender not a page");
return;
}
BrowserView *view = qobject_cast(page->view());
if (view == nullptr) {
- qCritical("no view?");
+ log::error("no view?");
return;
}
@@ -206,14 +208,14 @@ void BrowserDialog::unsupportedContent(QNetworkReply *reply)
if (isVisible()) {
MessageDialog::showMessage(tr("failed to start download"), this);
}
- qCritical("exception downloading unsupported content: %s", e.what());
+ log::error("exception downloading unsupported content: {}", e.what());
}
}
void BrowserDialog::downloadRequested(const QNetworkRequest &request)
{
- qCritical("download request %s ignored", request.url().toString().toUtf8().constData());
+ log::error("download request {} ignored", request.url().toString());
}
diff --git a/src/categories.cpp b/src/categories.cpp
index 8f9d3ad8..7acf6ff5 100644
--- a/src/categories.cpp
+++ b/src/categories.cpp
@@ -62,8 +62,9 @@ void CategoryFactory::loadCategories()
++lineNum;
QList cells = line.split('|');
if (cells.count() != 4) {
- qCritical("invalid category line %d: %s (%d cells)",
- lineNum, line.constData(), cells.count());
+ log::error(
+ "invalid category line {}: {} ({} cells)",
+ lineNum, line.constData(), cells.count());
} else {
std::vector nexusIDs;
if (cells[2].length() > 0) {
@@ -73,7 +74,7 @@ void CategoryFactory::loadCategories()
bool ok = false;
int temp = iter->toInt(&ok);
if (!ok) {
- qCritical("invalid category id %s", iter->constData());
+ log::error("invalid category id {}", iter->constData());
}
nexusIDs.push_back(temp);
}
@@ -83,8 +84,7 @@ void CategoryFactory::loadCategories()
int id = cells[0].toInt(&cell0Ok);
int parentID = cells[3].trimmed().toInt(&cell3Ok);
if (!cell0Ok || !cell3Ok) {
- qCritical("invalid category line %d: %s",
- lineNum, line.constData());
+ log::error("invalid category line {}: {}", lineNum, line.constData());
}
addCategory(id, QString::fromUtf8(cells[1].constData()), nexusIDs, parentID);
}
diff --git a/src/downloadlist.cpp b/src/downloadlist.cpp
index 5e698e0e..36bc2b7f 100644
--- a/src/downloadlist.cpp
+++ b/src/downloadlist.cpp
@@ -19,12 +19,13 @@ along with Mod Organizer. If not, see .
#include "downloadlist.h"
#include "downloadmanager.h"
+#include
#include
#include
#include
-
#include
+using namespace MOBase;
DownloadList::DownloadList(DownloadManager *manager, QObject *parent)
: QAbstractTableModel(parent), m_Manager(manager)
@@ -192,7 +193,7 @@ void DownloadList::update(int row)
else if (row < this->rowCount())
emit dataChanged(this->index(row, 0, QModelIndex()), this->index(row, this->columnCount(QModelIndex())-1, QModelIndex()));
else
- qCritical("invalid row %d in download list, update failed", row);
+ log::error("invalid row {} in download list, update failed", row);
}
QString DownloadList::sizeFormat(quint64 size) const
diff --git a/src/downloadmanager.cpp b/src/downloadmanager.cpp
index e3ceb261..348b2108 100644
--- a/src/downloadmanager.cpp
+++ b/src/downloadmanager.cpp
@@ -660,7 +660,7 @@ void DownloadManager::removeFile(int index, bool deleteFile)
if ((download->m_State == STATE_STARTED) ||
(download->m_State == STATE_DOWNLOADING)) {
// shouldn't have been possible
- qCritical("tried to remove active download");
+ log::error("tried to remove active download");
endDisableDirWatcher();
return;
}
@@ -798,7 +798,7 @@ void DownloadManager::removeDownload(int index, bool deleteFile)
emit update(-1);
endDisableDirWatcher();
} catch (const std::exception &e) {
- qCritical("failed to remove download: %s", e.what());
+ log::error("failed to remove download: {}", e.what());
}
refreshList();
}
@@ -2069,7 +2069,11 @@ void DownloadManager::writeData(DownloadInfo *info)
if (ret < info->m_Reply->size()) {
QString fileName = info->m_FileName; // m_FileName may be destroyed after setState
setState(info, DownloadState::STATE_CANCELED);
- qCritical(QString("Unable to write download \"%2\" to drive (return %1)").arg(ret).arg(info->m_FileName).toLocal8Bit());
+
+ log::error(
+ "Unable to write download \"{}\" to drive (return {})",
+ info->m_FileName, ret);
+
reportError(tr("Unable to write download to drive (return %1).\n"
"Check the drive's available storage.\n\n"
"Canceling download \"%2\"...").arg(ret).arg(fileName));
diff --git a/src/envmodule.cpp b/src/envmodule.cpp
index 1717da15..aae4e0b1 100644
--- a/src/envmodule.cpp
+++ b/src/envmodule.cpp
@@ -1,6 +1,7 @@
#include "envmodule.h"
#include "env.h"
#include
+#include
namespace env
{
@@ -114,9 +115,9 @@ Module::FileInfo Module::getFileInfo() const
return {};
}
- qCritical().nospace().noquote()
- << "GetFileVersionInfoSizeW() failed on '" << m_path << "', "
- << formatSystemMessageQ(e);
+ log::error(
+ "GetFileVersionInfoSizeW() failed on '{}', {}",
+ m_path, formatSystemMessageQ(e));
return {};
}
@@ -127,9 +128,9 @@ Module::FileInfo Module::getFileInfo() const
if (!GetFileVersionInfoW(wspath.c_str(), 0, size, buffer.get())) {
const auto e = GetLastError();
- qCritical().nospace().noquote()
- << "GetFileVersionInfoW() failed on '" << m_path << "', "
- << formatSystemMessageQ(e);
+ log::error(
+ "GetFileVersionInfoW() failed on '{}', {}",
+ m_path, formatSystemMessageQ(e));
return {};
}
@@ -161,9 +162,9 @@ VS_FIXEDFILEINFO Module::getFixedFileInfo(std::byte* buffer) const
// signature is always 0xfeef04bd
if (fi->dwSignature != 0xfeef04bd) {
- qCritical().nospace().noquote()
- << "bad file info signature 0x" << hex << fi->dwSignature << " for "
- << "'" << m_path << "'";
+ log::error(
+ "bad file info signature {:#x} for '{}'",
+ fi->dwSignature, m_path);
return {};
}
@@ -187,9 +188,7 @@ QString Module::getFileDescription(std::byte* buffer) const
buffer, L"\\VarFileInfo\\Translation", &valuePointer, &valueSize);
if (!ret || !valuePointer || valueSize == 0) {
- qCritical().nospace().noquote()
- << "VerQueryValueW() for translations failed on '" << m_path << "'";
-
+ log::error("VerQueryValueW() for translations failed on '{}'", m_path);
return {};
}
@@ -254,9 +253,9 @@ QDateTime Module::getTimestamp(const VS_FIXEDFILEINFO& fi) const
if (h.get() == INVALID_HANDLE_VALUE) {
const auto e = GetLastError();
- qCritical().nospace().noquote()
- << "can't open file '" << m_path << "' for timestamp, "
- << formatSystemMessageQ(e);
+ log::error(
+ "can't open file '{}' for timestamp, {}",
+ m_path, formatSystemMessageQ(e));
return {};
}
@@ -264,9 +263,10 @@ QDateTime Module::getTimestamp(const VS_FIXEDFILEINFO& fi) const
// getting the file time
if (!GetFileTime(h.get(), &ft, nullptr, nullptr)) {
const auto e = GetLastError();
- qCritical().nospace().noquote()
- << "can't get file time for '" << m_path << "', "
- << formatSystemMessageQ(e);
+
+ log::error(
+ "can't get file time for '{}', {}",
+ m_path, formatSystemMessageQ(e));
return {};
}
@@ -281,11 +281,9 @@ QDateTime Module::getTimestamp(const VS_FIXEDFILEINFO& fi) const
SYSTEMTIME utc = {};
if (!FileTimeToSystemTime(&ft, &utc)) {
- qCritical().nospace().noquote()
- << "FileTimeToSystemTime() failed on timestamp "
- << "high=0x" << hex << ft.dwHighDateTime << " "
- << "low=0x" << hex << ft.dwLowDateTime << " for "
- << "'" << m_path << "'";
+ log::error(
+ "FileTimeToSystemTime() failed on timestamp high={:#x} low={:#x} for '{}'",
+ ft.dwHighDateTime, ft.dwLowDateTime, m_path);
return {};
}
@@ -307,18 +305,14 @@ QString Module::getMD5() const
QFile f(m_path);
if (!f.open(QFile::ReadOnly)) {
- qCritical().nospace().noquote()
- << "failed to open file '" << m_path << "' for md5";
-
+ log::error("failed to open file '{}' for md5", m_path);
return {};
}
// hashing
QCryptographicHash hash(QCryptographicHash::Md5);
if (!hash.addData(&f)) {
- qCritical().nospace().noquote()
- << "failed to calculate md5 for '" << m_path << "'";
-
+ log::error("failed to calculate md5 for '{}'", m_path);
return {};
}
@@ -334,11 +328,7 @@ std::vector getLoadedModules()
if (snapshot.get() == INVALID_HANDLE_VALUE)
{
const auto e = GetLastError();
-
- qCritical().nospace().noquote()
- << "CreateToolhelp32Snapshot() failed, "
- << formatSystemMessageQ(e);
-
+ log::error("CreateToolhelp32Snapshot() failed, {}", formatSystemMessageQ(e));
return {};
}
@@ -349,10 +339,7 @@ std::vector getLoadedModules()
if (!Module32First(snapshot.get(), &me))
{
const auto e = GetLastError();
-
- qCritical().nospace().noquote()
- << "Module32First() failed, " << formatSystemMessageQ(e);
-
+ log::error("Module32First() failed, {}", formatSystemMessageQ(e));
return {};
}
@@ -371,8 +358,7 @@ std::vector getLoadedModules()
// no more modules is not an error
if (e != ERROR_NO_MORE_FILES) {
- qCritical().nospace().noquote()
- << "Module32Next() failed, " << formatSystemMessageQ(e);
+ log::error("Module32Next() failed, {}", formatSystemMessageQ(e));
}
break;
diff --git a/src/envsecurity.cpp b/src/envsecurity.cpp
index 559ce4ad..015e4000 100644
--- a/src/envsecurity.cpp
+++ b/src/envsecurity.cpp
@@ -1,6 +1,7 @@
#include "envsecurity.h"
#include "env.h"
#include
+#include
#include
#include
@@ -57,8 +58,7 @@ public:
}
if (FAILED(ret)) {
- qCritical()
- << "enumerator->next() failed, " << formatSystemMessageQ(ret);
+ log::error("enum->next() failed, {}", formatSystemMessageQ(ret));
break;
}
@@ -82,9 +82,9 @@ private:
IID_IWbemLocator, &rawLocator);
if (FAILED(ret) || !rawLocator) {
- qCritical()
- << "CoCreateInstance for WbemLocator failed, "
- << formatSystemMessageQ(ret);
+ log::error(
+ "CoCreateInstance for WbemLocator failed, {}",
+ formatSystemMessageQ(ret));
throw failed();
}
@@ -102,10 +102,9 @@ private:
&rawService);
if (FAILED(res) || !rawService) {
- qCritical()
- << "locator->ConnectServer() failed for namespace "
- << "'" << QString::fromStdString(ns) << "', "
- << formatSystemMessageQ(res);
+ log::error(
+ "locator->ConnectServer() failed for namespace '{}', {}",
+ ns, formatSystemMessageQ(res));
throw failed();
}
@@ -121,9 +120,7 @@ private:
if (FAILED(ret))
{
- qCritical()
- << "CoSetProxyBlanket() failed, " << formatSystemMessageQ(ret);
-
+ log::error("CoSetProxyBlanket() failed, {}", formatSystemMessageQ(ret));
throw failed();
}
}
@@ -142,10 +139,7 @@ private:
if (FAILED(ret) || !rawEnumerator)
{
- qCritical()
- << "query '" << QString::fromStdString(query) << "' failed, "
- << formatSystemMessageQ(ret);
-
+ log::error("query '{}' failed, {}", query, formatSystemMessageQ(ret));
return {};
}
@@ -256,15 +250,12 @@ std::vector getSecurityProductsFromWMI()
// display name
auto ret = o->Get(L"displayName", 0, &prop, 0, 0);
if (FAILED(ret)) {
- qCritical()
- << "failed to get displayName, "
- << formatSystemMessageQ(ret);
-
+ log::error("failed to get displayName, {}", formatSystemMessageQ(ret));
return;
}
if (prop.vt != VT_BSTR) {
- qCritical() << "displayName is a " << prop.vt << ", not a bstr";
+ log::error("displayName is a {}, not a bstr", prop.vt);
return;
}
@@ -274,15 +265,12 @@ std::vector getSecurityProductsFromWMI()
// product state
ret = o->Get(L"productState", 0, &prop, 0, 0);
if (FAILED(ret)) {
- qCritical()
- << "failed to get productState, "
- << formatSystemMessageQ(ret);
-
+ log::error("failed to get productState, {}", formatSystemMessageQ(ret));
return;
}
if (prop.vt != VT_UI4 && prop.vt != VT_I4) {
- qCritical() << "productState is a " << prop.vt << ", is not a VT_UI4";
+ log::error("productState is a {}, is not a VT_UI4", prop.vt);
return;
}
@@ -298,15 +286,12 @@ std::vector getSecurityProductsFromWMI()
// guid
ret = o->Get(L"instanceGuid", 0, &prop, 0, 0);
if (FAILED(ret)) {
- qCritical()
- << "failed to get instanceGuid, "
- << formatSystemMessageQ(ret);
-
+ log::error("failed to get instanceGuid, {}", formatSystemMessageQ(ret));
return;
}
if (prop.vt != VT_BSTR) {
- qCritical() << "instanceGuid is a " << prop.vt << ", is not a bstr";
+ log::error("instanceGuid is a {}, is not a bstr", prop.vt);
return;
}
@@ -362,9 +347,9 @@ std::optional getWindowsFirewall()
__uuidof(INetFwPolicy2), &rawPolicy);
if (FAILED(hr) || !rawPolicy) {
- qCritical()
- << "CoCreateInstance for NetFwPolicy2 failed, "
- << formatSystemMessageQ(hr);
+ log::error(
+ "CoCreateInstance for NetFwPolicy2 failed, {}",
+ formatSystemMessageQ(hr));
return {};
}
@@ -378,10 +363,7 @@ std::optional getWindowsFirewall()
hr = policy->get_FirewallEnabled(NET_FW_PROFILE2_PUBLIC, &enabledVariant);
if (FAILED(hr))
{
- qCritical()
- << "get_FirewallEnabled failed, "
- << formatSystemMessageQ(hr);
-
+ log::error("get_FirewallEnabled failed, {}", formatSystemMessageQ(hr));
return {};
}
}
diff --git a/src/envshortcut.cpp b/src/envshortcut.cpp
index 30ef4633..1deb9dad 100644
--- a/src/envshortcut.cpp
+++ b/src/envshortcut.cpp
@@ -3,6 +3,7 @@
#include "executableslist.h"
#include "instancemanager.h"
#include
+#include
namespace env
{
@@ -218,17 +219,24 @@ bool Shortcut::toggle(Locations loc)
bool Shortcut::add(Locations loc)
{
- debug()
- << "adding shortcut to " << toString(loc) << ":\n"
- << " . name: '" << m_name << "'\n"
- << " . target: '" << m_target << "'\n"
- << " . arguments: '" << m_arguments << "'\n"
- << " . description: '" << m_description << "'\n"
- << " . icon: '" << m_icon << "' @ " << m_iconIndex << "\n"
- << " . working directory: '" << m_workingDirectory << "'";
+ log::debug(
+ "adding shortcut to {}:\n"
+ " . name: '{}'\n"
+ " . target: '{}'\n"
+ " . arguments: '{}'\n"
+ " . description: '{}'\n"
+ " . icon: '{}' @ {}\n"
+ " . working directory: '{}'",
+ toString(loc),
+ m_name,
+ m_target,
+ m_arguments,
+ m_description,
+ m_icon, m_iconIndex,
+ m_workingDirectory);
if (m_target.isEmpty()) {
- critical() << "target is empty";
+ log::error("shortcut: target is empty");
return false;
}
@@ -237,7 +245,7 @@ bool Shortcut::add(Locations loc)
return false;
}
- debug() << "shorcut file will be saved at '" << path << "'";
+ log::debug("shorcut file will be saved at '{}'", path);
try
{
@@ -255,7 +263,7 @@ bool Shortcut::add(Locations loc)
}
catch(ShellLinkException& e)
{
- critical() << e.what() << "\nshortcut file was not saved";
+ log::error("{}\nshortcut file was not saved", e.what());
}
return false;
@@ -263,26 +271,26 @@ bool Shortcut::add(Locations loc)
bool Shortcut::remove(Locations loc)
{
- debug() << "removing shortcut for '" << m_name << "' from " << toString(loc);
+ log::debug("removing shortcut for '{}' from {}", m_name, toString(loc));
const auto path = shortcutPath(loc);
if (path.isEmpty()) {
return false;
}
- debug() << "path to shortcut file is '" << path << "'";
+ log::debug("path to shortcut file is '{}'", path);
if (!QFile::exists(path)) {
- critical() << "can't remove '" << path << "', file not found";
+ log::error("can't remove shortcut '{}', file not found", path);
return false;
}
if (!MOBase::shellDelete({path})) {
const auto e = ::GetLastError();
- critical()
- << "failed to remove '" << path << "', "
- << formatSystemMessageQ(e);
+ log::error(
+ "failed to remove shortcut '{}', {}",
+ path, formatSystemMessageQ(e));
return false;
}
@@ -323,7 +331,7 @@ QString Shortcut::shortcutDirectory(Locations loc) const
case None:
default:
- critical() << "bad location " << loc;
+ log::error("shortcut: bad location {}", loc);
break;
}
}
@@ -337,23 +345,13 @@ QString Shortcut::shortcutDirectory(Locations loc) const
QString Shortcut::shortcutFilename() const
{
if (m_name.isEmpty()) {
- critical() << "name is empty";
+ log::error("shortcut name is empty");
return {};
}
return m_name + ".lnk";
}
-QDebug Shortcut::debug() const
-{
- return qDebug().noquote().nospace() << "system shortcut: ";
-}
-
-QDebug Shortcut::critical() const
-{
- return qCritical().noquote().nospace() << "system shortcut: ";
-}
-
QString toString(Shortcut::Locations loc)
{
diff --git a/src/envshortcut.h b/src/envshortcut.h
index 904b3ab7..82eea191 100644
--- a/src/envshortcut.h
+++ b/src/envshortcut.h
@@ -84,15 +84,6 @@ private:
int m_iconIndex;
QString m_workingDirectory;
- // returns a qCritical() logger with a prefix already logged
- //
- QDebug critical() const;
-
- // returns a qDebug() logger with a prefix already logged
- //
- QDebug debug() const;
-
-
// returns the path where the shortcut file should be saved
//
QString shortcutPath(Locations loc) const;
diff --git a/src/envwindows.cpp b/src/envwindows.cpp
index 4fbd788a..8a98036a 100644
--- a/src/envwindows.cpp
+++ b/src/envwindows.cpp
@@ -1,6 +1,7 @@
#include "envwindows.h"
#include "env.h"
#include
+#include
namespace env
{
@@ -13,7 +14,7 @@ WindowsInfo::WindowsInfo()
LibraryPtr ntdll(LoadLibraryW(L"ntdll.dll"));
if (!ntdll) {
- qCritical() << "failed to load ntdll.dll while getting version";
+ log::error("failed to load ntdll.dll while getting version");
return;
} else {
m_reported = getReportedVersion(ntdll.get());
@@ -122,7 +123,7 @@ WindowsInfo::Version WindowsInfo::getReportedVersion(HINSTANCE ntdll) const
GetProcAddress(ntdll, "RtlGetVersion"));
if (!RtlGetVersion) {
- qCritical() << "RtlGetVersion() not found in ntdll.dll";
+ log::error("RtlGetVersion() not found in ntdll.dll");
return {};
}
@@ -149,7 +150,7 @@ WindowsInfo::Version WindowsInfo::getRealVersion(HINSTANCE ntdll) const
GetProcAddress(ntdll, "RtlGetNtVersionNumbers"));
if (!RtlGetNtVersionNumbers) {
- qCritical() << "RtlGetNtVersionNumbers not found in ntdll.dll";
+ log::error("RtlGetNtVersionNumbers not found in ntdll.dll");
return {};
}
@@ -207,9 +208,9 @@ std::optional WindowsInfo::getElevated() const
if (!OpenProcessToken(GetCurrentProcess( ), TOKEN_QUERY, &rawToken)) {
const auto e = GetLastError();
- qCritical()
- << "while trying to check if process is elevated, "
- << "OpenProcessToken() failed: " << formatSystemMessageQ(e);
+ log::error(
+ "while trying to check if process is elevated, "
+ "OpenProcessToken() failed: {}", formatSystemMessageQ(e));
return {};
}
@@ -223,9 +224,9 @@ std::optional WindowsInfo::getElevated() const
if (!GetTokenInformation(token.get(), TokenElevation, &e, sizeof(e), &size)) {
const auto e = GetLastError();
- qCritical()
- << "while trying to check if process is elevated, "
- << "GetTokenInformation() failed: " << formatSystemMessageQ(e);
+ log::error(
+ "while trying to check if process is elevated, "
+ "GetTokenInformation() failed: {}", formatSystemMessageQ(e));
return {};
}
diff --git a/src/executableslist.cpp b/src/executableslist.cpp
index fbb96bd4..2408e8f3 100644
--- a/src/executableslist.cpp
+++ b/src/executableslist.cpp
@@ -243,9 +243,9 @@ void ExecutablesList::setExecutable(const Executable &exe, SetFlags flags)
if (flags == MoveExisting) {
const auto newTitle = makeNonConflictingTitle(exe.title());
if (!newTitle) {
- qCritical().nospace()
- << "executable '" << exe.title() << "' was in the way but could "
- << "not be renamed";
+ log::error(
+ "executable '{}' was in the way but could not be renamed",
+ exe.title());
return;
}
@@ -289,9 +289,7 @@ std::optional ExecutablesList::makeNonConflictingTitle(
title = prefix + QString(" (%1)").arg(i);
}
- qCritical().nospace()
- << "ran out of executable titles for prefix '" << prefix << "'";
-
+ log::error("ran out of executable titles for prefix '{}'", prefix);
return {};
}
diff --git a/src/filerenamer.cpp b/src/filerenamer.cpp
index b516c902..8835f52f 100644
--- a/src/filerenamer.cpp
+++ b/src/filerenamer.cpp
@@ -10,7 +10,7 @@ FileRenamer::FileRenamer(QWidget* parent, QFlags flags)
{
// sanity check for flags
if ((m_flags & (HIDE|UNHIDE)) == 0) {
- qCritical("renameFile() missing hide flag");
+ log::error("renameFile() missing hide flag");
// doesn't really matter, it's just for text
m_flags = HIDE;
}
diff --git a/src/filterwidget.cpp b/src/filterwidget.cpp
index 44cbb274..0638add3 100644
--- a/src/filterwidget.cpp
+++ b/src/filterwidget.cpp
@@ -1,5 +1,8 @@
#include "filterwidget.h"
#include "eventfilter.h"
+#include
+
+using namespace MOBase;
FilterWidgetProxyModel::FilterWidgetProxyModel(FilterWidget& fw, QWidget* parent)
: QSortFilterProxyModel(parent), m_filter(fw)
@@ -80,7 +83,7 @@ QModelIndex FilterWidget::map(const QModelIndex& index)
if (m_proxy) {
return m_proxy->mapToSource(index);
} else {
- qCritical() << "FilterWidget::map() called, but proxy isn't set up";
+ log::error("FilterWidget::map() called, but proxy isn't set up");
return index;
}
}
diff --git a/src/forcedloaddialogwidget.cpp b/src/forcedloaddialogwidget.cpp
index b92838c3..b84f785f 100644
--- a/src/forcedloaddialogwidget.cpp
+++ b/src/forcedloaddialogwidget.cpp
@@ -1,9 +1,8 @@
#include "forcedloaddialogwidget.h"
#include "ui_forcedloaddialogwidget.h"
-
-#include
-
#include "executableinfo.h"
+#include
+#include
using namespace MOBase;
@@ -85,7 +84,7 @@ void ForcedLoadDialogWidget::on_libraryPathBrowseButton_clicked()
if (fileInfo.exists()) {
ui->libraryPathEdit->setText(filePath);
} else {
- qCritical("%ls does not exist", filePath.toStdWString().c_str());
+ log::error("{} does not exist", filePath);
}
}
}
@@ -102,7 +101,7 @@ void ForcedLoadDialogWidget::on_processBrowseButton_clicked()
if (fileInfo.exists()) {
ui->processEdit->setText(fileName);
} else {
- qCritical("%ls does not exist", fileInfo.filePath().toStdWString().c_str());
+ log::error("{} does not exist", fileInfo.filePath());
}
}
}
diff --git a/src/installationmanager.cpp b/src/installationmanager.cpp
index 0e50de52..fd971f47 100644
--- a/src/installationmanager.cpp
+++ b/src/installationmanager.cpp
@@ -263,7 +263,7 @@ QStringList InstallationManager::extractFiles(const QStringList &filesOrig, bool
targetFile = wcsrchr(origFile/*data[i]->getFileName()*/, '/');
}
if (targetFile == nullptr) {
- qCritical() << "Failed to find backslash in " << data[i]->getFileName();
+ log::error("Failed to find backslash in {}", data[i]->getFileName());
continue;
} else {
// skip the slash
@@ -527,7 +527,7 @@ bool InstallationManager::testOverwrite(GuessedValue &modName, bool *me
settingsFile.write(originalSettings);
settingsFile.close();
} else {
- qCritical("failed to restore original settings: %s", qUtf8Printable(metaFilename));
+ log::error("failed to restore original settings: {}", metaFilename);
}
return true;
} else if (overwriteDialog.action() == QueryOverwriteDialog::ACT_MERGE) {
@@ -856,8 +856,7 @@ bool InstallationManager::install(const QString &fileName,
}
}
} catch (const IncompatibilityException &e) {
- qCritical("plugin \"%s\" incompatible: %s",
- qUtf8Printable(installer->name()), e.what());
+ log::error("plugin \"{}\" incompatible: {}", installer->name(), e.what());
}
// act upon the installation result. at this point the files have already been
diff --git a/src/loglist.cpp b/src/loglist.cpp
index 207f412b..c34ac76e 100644
--- a/src/loglist.cpp
+++ b/src/loglist.cpp
@@ -196,21 +196,3 @@ void LogList::copyToClipboard()
QApplication::clipboard()->setText(QString::fromStdString(s));
}
-
-
-void vlog(const char *format, ...)
-{
- va_list argList;
- va_start(argList, format);
-
- static const int BUFFERSIZE = 1000;
-
- char buffer[BUFFERSIZE + 1];
- buffer[BUFFERSIZE] = '\0';
-
- vsnprintf(buffer, BUFFERSIZE, format, argList);
-
- qCritical("%s", buffer);
-
- va_end(argList);
-}
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 70ace8f1..ad87ba03 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -1212,14 +1212,14 @@ void MainWindow::createHelpMenu()
QFile file(dirIter.filePath());
if (!file.open(QIODevice::ReadOnly)) {
- qCritical() << "Failed to open " << fileName;
+ log::error("Failed to open {}", fileName);
continue;
}
QString firstLine = QString::fromUtf8(file.readLine());
if (firstLine.startsWith("//TL")) {
QStringList params = firstLine.mid(4).trimmed().split('#');
if (params.size() != 2) {
- qCritical() << "invalid header line for tutorial " << fileName << " expected 2 parameters";
+ log::error("invalid header line for tutorial {}, expected 2 parameters", fileName);
continue;
}
QAction *tutAction = new QAction(params.at(0), tutorialMenu);
@@ -1323,7 +1323,7 @@ void MainWindow::hookUpWindowTutorials()
QString fileName = dirIter.fileName();
QFile file(dirIter.filePath());
if (!file.open(QIODevice::ReadOnly)) {
- qCritical() << "Failed to open " << fileName;
+ log::error("Failed to open {}", fileName);
continue;
}
QString firstLine = QString::fromUtf8(file.readLine());
@@ -1369,7 +1369,7 @@ void MainWindow::showEvent(QShowEvent *event)
TutorialManager::instance().activateTutorial("MainWindow", firstStepsTutorial);
}
} else {
- qCritical() << firstStepsTutorial << " missing";
+ log::error("{} missing", firstStepsTutorial);
QPoint pos = ui->toolBar->mapToGlobal(QPoint());
pos.rx() += ui->toolBar->width() / 2;
pos.ry() += ui->toolBar->height();
@@ -1636,7 +1636,7 @@ void MainWindow::startExeAction()
QAction *action = qobject_cast(sender());
if (action == nullptr) {
- qCritical("not an action?");
+ log::error("not an action?");
return;
}
@@ -3415,7 +3415,7 @@ void MainWindow::displayModInformation(const QString &modName, ModInfoTabIDs tab
{
unsigned int index = ModInfo::getIndex(modName);
if (index == UINT_MAX) {
- qCritical("failed to resolve mod name %s", qUtf8Printable(modName));
+ log::error("failed to resolve mod name {}", modName);
return;
}
@@ -3500,7 +3500,7 @@ void MainWindow::visitOnNexus_clicked()
if (modID > 0) {
linkClicked(NexusInterface::instance(&m_PluginContainer)->getModURL(modID, gameName));
} else {
- qCritical() << "mod '" << info->name() << "' has no nexus id";
+ log::error("mod '{}' has no nexus id", info->name());
}
}
}
@@ -4038,7 +4038,7 @@ void MainWindow::doMoveOverwriteContentToMod(const QString &modAbsolutePath)
MessageDialog::showMessage(tr("Move successful."), this);
}
else {
- qCritical("Move operation failed: %s", qUtf8Printable(windowsErrorString(::GetLastError())));
+ log::error("Move operation failed: {}", windowsErrorString(::GetLastError()));
}
m_OrganizerCore.refreshModList();
@@ -4067,7 +4067,7 @@ void MainWindow::clearOverwrite()
updateProblemsButton();
m_OrganizerCore.refreshModList();
} else {
- qCritical("Delete operation failed: %s", qUtf8Printable(windowsErrorString(::GetLastError())));
+ log::error("Delete operation failed: {}", windowsErrorString(::GetLastError()));
}
}
}
@@ -4311,7 +4311,7 @@ void MainWindow::addRemoveCategoriesFromMenu(QMenu *menu, int modRow, int refere
void MainWindow::addRemoveCategories_MenuHandler() {
QMenu *menu = qobject_cast(sender());
if (menu == nullptr) {
- qCritical("not a menu?");
+ log::error("not a menu?");
return;
}
@@ -4352,7 +4352,7 @@ void MainWindow::addRemoveCategories_MenuHandler() {
void MainWindow::replaceCategories_MenuHandler() {
QMenu *menu = qobject_cast(sender());
if (menu == nullptr) {
- qCritical("not a menu?");
+ log::error("not a menu?");
return;
}
@@ -4547,7 +4547,7 @@ void MainWindow::addPrimaryCategoryCandidates(QMenu *primaryCategoryMenu,
categoryBox->setChecked(categoryID == info->getPrimaryCategory());
action->setDefaultWidget(categoryBox);
} catch (const std::exception &e) {
- qCritical("failed to create category checkbox: %s", e.what());
+ log::error("failed to create category checkbox: {}", e.what());
}
action->setData(categoryID);
@@ -4559,7 +4559,7 @@ void MainWindow::addPrimaryCategoryCandidates()
{
QMenu *menu = qobject_cast(sender());
if (menu == nullptr) {
- qCritical("not a menu?");
+ log::error("not a menu?");
return;
}
menu->clear();
@@ -6067,7 +6067,7 @@ void MainWindow::nxmEndorsementToggled(QString, int, QVariant, QVariant resultDa
toggleMO2EndorseState();
if (!disconnect(sender(), SIGNAL(nxmEndorsementToggled(QString, int, QVariant, QVariant, int)),
this, SLOT(nxmEndorsementToggled(QString, int, QVariant, QVariant, int)))) {
- qCritical("failed to disconnect endorsement slot");
+ log::error("failed to disconnect endorsement slot");
}
}
@@ -6527,11 +6527,11 @@ void MainWindow::createStdoutPipe(HANDLE *stdOutRead, HANDLE *stdOutWrite)
secAttributes.lpSecurityDescriptor = nullptr;
if (!::CreatePipe(stdOutRead, stdOutWrite, &secAttributes, 0)) {
- qCritical("failed to create stdout reroute");
+ log::error("failed to create stdout reroute");
}
if (!::SetHandleInformation(*stdOutRead, HANDLE_FLAG_INHERIT, 0)) {
- qCritical("failed to correctly set up the stdout reroute");
+ log::error("failed to correctly set up the stdout reroute");
*stdOutWrite = *stdOutRead = INVALID_HANDLE_VALUE;
}
}
@@ -6965,7 +6965,7 @@ void MainWindow::dropLocalFile(const QUrl &url, const QString &outputDir, bool m
success = shellCopy(file.absoluteFilePath(), target, true, this);
}
if (!success) {
- qCritical("file operation failed: %s", qUtf8Printable(windowsErrorString(::GetLastError())));
+ log::error("file operation failed: {}", windowsErrorString(::GetLastError()));
}
}
diff --git a/src/moapplication.cpp b/src/moapplication.cpp
index 3d55b28d..370a23b5 100644
--- a/src/moapplication.cpp
+++ b/src/moapplication.cpp
@@ -115,13 +115,15 @@ bool MOApplication::notify(QObject *receiver, QEvent *event)
try {
return QApplication::notify(receiver, event);
} catch (const std::exception &e) {
- qCritical("uncaught exception in handler (object %s, eventtype %d): %s",
- receiver->objectName().toUtf8().constData(), event->type(), e.what());
+ log::error(
+ "uncaught exception in handler (object {}, eventtype {}): {}",
+ receiver->objectName(), event->type(), e.what());
reportError(tr("an error occurred: %1").arg(e.what()));
return false;
} catch (...) {
- qCritical("uncaught non-std exception in handler (object %s, eventtype %d)",
- receiver->objectName().toUtf8().constData(), event->type());
+ log::error(
+ "uncaught non-std exception in handler (object {}, eventtype {})",
+ receiver->objectName(), event->type());
reportError(tr("an error occurred"));
return false;
}
diff --git a/src/modinfo.cpp b/src/modinfo.cpp
index ca6e8046..5a05e7ca 100644
--- a/src/modinfo.cpp
+++ b/src/modinfo.cpp
@@ -530,10 +530,7 @@ QUrl ModInfo::parseCustomURL() const
const auto url = QUrl::fromUserInput(getCustomURL());
if (!url.isValid()) {
- qCritical()
- << "mod '" << name() << "' has an invalid custom url "
- << "'" << getCustomURL() << "'";
-
+ log::error("mod '{}' has an invalid custom url '{}'", name(), getCustomURL());
return {};
}
diff --git a/src/modinfodialog.cpp b/src/modinfodialog.cpp
index 47ac84be..a7a6b0d7 100644
--- a/src/modinfodialog.cpp
+++ b/src/modinfodialog.cpp
@@ -176,7 +176,7 @@ void ModInfoDialog::createTabs()
// check for tabs in the ui not having a corresponding tab in the list
int count = ui->tabWidget->count();
if (count < 0 || count > static_cast(m_tabs.size())) {
- qCritical() << "mod info dialog has more tabs than expected";
+ log::error("mod info dialog has more tabs than expected");
count = static_cast(m_tabs.size());
}
@@ -239,13 +239,13 @@ void ModInfoDialog::setMod(const QString& name)
{
unsigned int index = ModInfo::getIndex(name);
if (index == UINT_MAX) {
- qCritical() << "failed to resolve mod name " << name;
+ log::error("failed to resolve mod name {}", name);
return;
}
auto mod = ModInfo::getByIndex(index);
if (!mod) {
- qCritical() << "mod by index " << index << " is null";
+ log::error("mod by index {} is null", index);
return;
}
@@ -307,7 +307,7 @@ void ModInfoDialog::update(bool firstTime)
// changed
tabInfo->tab->activated();
} else {
- qCritical() << "tab index " << oldTab << " not found";
+ log::error("tab index {} not found", oldTab);
}
}
}
@@ -400,7 +400,7 @@ void ModInfoDialog::reAddTabs(
if (itor == orderedNames.end()) {
// this shouldn't happen, it means there's a tab in the UI that's no
// in the list
- qCritical() << "can't sort tabs, '" << objectName << "' not found";
+ log::error("can't sort tabs, '{}' not found", objectName);
canSort = false;
}
}
@@ -753,7 +753,7 @@ void ModInfoDialog::onTabMoved()
}
if (!found) {
- qCritical() << "unknown tab at index " << i;
+ log::error("unknown tab at index {}", i);
}
}
}
diff --git a/src/modinfodialogconflicts.cpp b/src/modinfodialogconflicts.cpp
index 511d48ad..d16d548c 100644
--- a/src/modinfodialogconflicts.cpp
+++ b/src/modinfodialogconflicts.cpp
@@ -365,7 +365,7 @@ void for_each_in_selection(QTreeView* tree, F&& f)
const auto* model = dynamic_cast(tree->model());
if (!model) {
- qCritical() << "tree doesn't have a ConflictListModel";
+ log::error("tree doesn't have a ConflictListModel");
return;
}
@@ -454,7 +454,7 @@ void ConflictsTab::changeItemsVisibility(QTreeView* tree, bool visible)
auto* model = dynamic_cast(tree->model());
if (!model) {
- qCritical() << "list doesn't have a ConflictListModel";
+ log::error("list doesn't have a ConflictListModel");
return;
}
@@ -633,7 +633,7 @@ ConflictsTab::Actions ConflictsTab::createMenuActions(QTreeView* tree)
const auto* model = dynamic_cast(tree->model());
if (!model) {
- qCritical() << "tree doesn't have a ConflictListModel";
+ log::error("tree doesn't have a ConflictListModel");
return {};
}
diff --git a/src/modinfodialogfiletree.cpp b/src/modinfodialogfiletree.cpp
index 0b519932..219ddf35 100644
--- a/src/modinfodialogfiletree.cpp
+++ b/src/modinfodialogfiletree.cpp
@@ -5,8 +5,9 @@
#include "filerenamer.h"
#include
#include
+#include
-using MOBase::reportError;
+using namespace MOBase;
namespace shell = MOBase::shell;
// if there are more than 50 selected items in the filetree, don't bother
@@ -230,19 +231,19 @@ bool FileTreeTab::deleteFileRecursive(const QModelIndex& parent)
if (m_fs->isDir(index)) {
if (!deleteFileRecursive(index)) {
- qCritical() << "failed to delete" << m_fs->fileName(index);
+ log::error("failed to delete {}", m_fs->fileName(index));
return false;
}
} else {
if (!m_fs->remove(index)) {
- qCritical() << "failed to delete", m_fs->fileName(index);
+ log::error("failed to delete {}", m_fs->fileName(index));
return false;
}
}
}
if (!m_fs->remove(parent)) {
- qCritical() << "failed to delete" << m_fs->fileName(parent);
+ log::error("failed to delete {}", m_fs->fileName(parent));
return false;
}
diff --git a/src/modinfodialogimages.cpp b/src/modinfodialogimages.cpp
index 69866902..10362058 100644
--- a/src/modinfodialogimages.cpp
+++ b/src/modinfodialogimages.cpp
@@ -2,7 +2,9 @@
#include "ui_modinfodialog.h"
#include "settings.h"
#include "utility.h"
+#include
+using namespace MOBase;
using namespace ImagesTabHelpers;
QSize resizeWithAspectRatio(const QSize& original, const QSize& available)
@@ -896,10 +898,9 @@ void File::ensureOriginalLoaded()
QImageReader reader(m_path);
if (!reader.read(&m_original)) {
- qCritical().noquote().nospace()
- << "failed to load '" << m_path << "'\n"
- << reader.errorString() << " "
- << "(error " << static_cast(reader.error()) << ")";
+ log::error(
+ "failed to load '{}'\n{} (error {})",
+ m_path, reader.errorString(), static_cast(reader.error()));
m_failed = true;
}
diff --git a/src/modinforegular.cpp b/src/modinforegular.cpp
index 448447e1..074fa9e2 100644
--- a/src/modinforegular.cpp
+++ b/src/modinforegular.cpp
@@ -68,8 +68,7 @@ ModInfoRegular::~ModInfoRegular()
try {
saveMeta();
} catch (const std::exception &e) {
- qCritical("failed to save meta information for \"%s\": %s",
- qUtf8Printable(m_Name), e.what());
+ log::error("failed to save meta information for \"{}\": {}", m_Name, e.what());
}
}
@@ -258,14 +257,14 @@ void ModInfoRegular::saveMeta()
if (metaFile.status() == QSettings::NoError) {
m_MetaInfoChanged = false;
} else {
- qCritical()
- << QString("failed to write %1/meta.ini: error %2")
- .arg(absolutePath()).arg(metaFile.status());
+ log::error(
+ "failed to write {}/meta.ini: error {}",
+ absolutePath(), metaFile.status());
}
} else {
- qCritical()
- << QString("failed to write %1/meta.ini: error %2")
- .arg(absolutePath()).arg(metaFile.status());
+ log::error(
+ "failed to write {}/meta.ini: error {}",
+ absolutePath(), metaFile.status());
}
}
}
@@ -425,14 +424,13 @@ bool ModInfoRegular::setName(const QString &name)
return false;
}
if (!modDir.rename(tempName, name)) {
- qCritical("rename to final name failed after successful rename to intermediate name");
+ log::error("rename to final name failed after successful rename to intermediate name");
modDir.rename(tempName, m_Name);
return false;
}
} else {
if (!shellRename(modDir.absoluteFilePath(m_Name), modDir.absoluteFilePath(name))) {
- qCritical("failed to rename mod %s (errorcode %d)",
- qUtf8Printable(name), ::GetLastError());
+ log::error("failed to rename mod {} (errorcode {})", name, ::GetLastError());
return false;
}
}
diff --git a/src/modlist.cpp b/src/modlist.cpp
index df25df0d..6ebd0e8b 100644
--- a/src/modlist.cpp
+++ b/src/modlist.cpp
@@ -271,7 +271,7 @@ QVariant ModList::data(const QModelIndex &modelIndex, int role) const
int categoryIdx = categoryFactory.getCategoryIndex(category);
return categoryFactory.getCategoryName(categoryIdx);
} catch (const std::exception &e) {
- qCritical("failed to retrieve category name: %s", e.what());
+ log::error("failed to retrieve category name: {}", e.what());
return QString();
}
} else {
@@ -449,7 +449,7 @@ QVariant ModList::data(const QModelIndex &modelIndex, int role) const
try {
return modInfo->getDescription();
} catch (const std::exception &e) {
- qCritical("invalid mod description: %s", e.what());
+ log::error("invalid mod description: {}", e.what());
return QString();
}
} else if (column == COL_VERSION) {
@@ -488,7 +488,7 @@ QVariant ModList::data(const QModelIndex &modelIndex, int role) const
try {
categoryString << "" << ToWString(categoryFactory.getCategoryName(categoryFactory.getCategoryIndex(*catIter))) << "";
} catch (const std::exception &e) {
- qCritical("failed to generate tooltip: %s", e.what());
+ log::error("failed to generate tooltip: {}", e.what());
return QString();
}
}
@@ -636,9 +636,9 @@ bool ModList::setData(const QModelIndex &index, const QVariant &value, int role)
try {
m_ModStateChanged(info->name(), newState);
} catch (const std::exception &e) {
- qCritical("failed to invoke state changed notification: %s", e.what());
+ log::error("failed to invoke state changed notification: {}", e.what());
} catch (...) {
- qCritical("failed to invoke state changed notification: unknown exception");
+ log::error("failed to invoke state changed notification: unknown exception");
}
}
@@ -834,7 +834,7 @@ void ModList::modInfoChanged(ModInfo::Ptr info)
emit dataChanged(index(row, 0), index(row, columnCount()));
emit postDataChanged();
} else {
- qCritical("modInfoChanged not called after modInfoAboutToChange");
+ log::error("modInfoChanged not called after modInfoAboutToChange");
}
m_ChangeInfo.name = QString();
}
diff --git a/src/modlistsortproxy.cpp b/src/modlistsortproxy.cpp
index 1127c7d4..d330e0c2 100644
--- a/src/modlistsortproxy.cpp
+++ b/src/modlistsortproxy.cpp
@@ -196,7 +196,7 @@ bool ModListSortProxy::lessThan(const QModelIndex &left,
QString rightCatName = categories.getCategoryName(categories.getCategoryIndex(rightMod->getPrimaryCategory()));
lt = leftCatName < rightCatName;
} catch (const std::exception &e) {
- qCritical("failed to compare categories: %s", e.what());
+ log::error("failed to compare categories: {}", e.what());
}
}
}
diff --git a/src/nexusinterface.cpp b/src/nexusinterface.cpp
index 008f3c0d..c797aed6 100644
--- a/src/nexusinterface.cpp
+++ b/src/nexusinterface.cpp
@@ -41,12 +41,11 @@ using namespace MOShared;
void throttledWarning(const APIUserAccount& user)
{
- qCritical() <<
- QString(
- "You have fewer than %1 requests remaining (%2). Only downloads and "
- "login validation are being allowed.")
- .arg(APIUserAccount::ThrottleThreshold)
- .arg(user.remainingRequests());
+ log::error(
+ "You have fewer than {} requests remaining ({}). Only downloads and "
+ "login validation are being allowed.",
+ APIUserAccount::ThrottleThreshold,
+ user.remainingRequests());
}
@@ -344,7 +343,7 @@ QString NexusInterface::getGameURL(QString gameName) const
if (game != nullptr) {
return "https://www.nexusmods.com/" + game->gameNexusName().toLower();
} else {
- qCritical("getGameURL can't find plugin for %s", qUtf8Printable(gameName));
+ log::error("getGameURL can't find plugin for {}", gameName);
return "";
}
}
@@ -355,7 +354,7 @@ QString NexusInterface::getOldModsURL(QString gameName) const
if (game != nullptr) {
return "https://" + game->gameNexusName().toLower() + ".nexusmods.com/mods";
} else {
- qCritical("getOldModsURL can't find plugin for %s", qUtf8Printable(gameName));
+ log::error("getOldModsURL can't find plugin for {}", gameName);
return "";
}
}
@@ -464,7 +463,7 @@ int NexusInterface::requestUpdates(const int &modID, QObject *receiver, QVariant
IPluginGame *game = getGame(gameName);
if (game == nullptr) {
- qCritical("requestUpdates can't find plugin for %s", qUtf8Printable(gameName));
+ log::error("requestUpdates can't find plugin for {}", gameName);
return -1;
}
@@ -521,7 +520,7 @@ int NexusInterface::requestFileInfo(QString gameName, int modID, int fileID, QOb
{
IPluginGame *gamePlugin = getGame(gameName);
if (gamePlugin == nullptr) {
- qCritical("requestFileInfo can't find plugin for %s", qUtf8Printable(gameName));
+ log::error("requestFileInfo can't find plugin for {}", gameName);
return -1;
}
@@ -687,7 +686,7 @@ void NexusInterface::nextRequest()
} else if (getAccessManager()->validateWaiting()) {
return;
} else {
- qCritical() << tr("You must authorize MO2 in Settings -> Nexus to use the Nexus API.");
+ log::error("{}", tr("You must authorize MO2 in Settings -> Nexus to use the Nexus API."));
}
}
@@ -949,10 +948,9 @@ void NexusInterface::requestError(QNetworkReply::NetworkError)
return;
}
- qCritical("request (%s) error: %s (%d)",
- qUtf8Printable(reply->url().toString()),
- qUtf8Printable(reply->errorString()),
- reply->error());
+ log::error(
+ "request ({}) error: {} ({})",
+ reply->url().toString(), reply->errorString(), reply->error());
}
diff --git a/src/organizercore.cpp b/src/organizercore.cpp
index dbff1a2a..725371e9 100644
--- a/src/organizercore.cpp
+++ b/src/organizercore.cpp
@@ -224,7 +224,7 @@ bool checkService()
}
if (serviceConfig->dwStartType == SERVICE_DISABLED) {
- qCritical("Windows Event Log service is disabled!");
+ log::error("Windows Event Log service is disabled!");
serviceRunning = false;
}
@@ -242,7 +242,7 @@ bool checkService()
}
if (serviceStatus->dwCurrentState != SERVICE_RUNNING) {
- qCritical("Windows Event Log service is not running");
+ log::error("Windows Event Log service is not running");
serviceRunning = false;
}
}
@@ -437,7 +437,7 @@ bool OrganizerCore::testForSteam(bool *found, bool *access)
hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (hProcessSnap == INVALID_HANDLE_VALUE) {
lastError = GetLastError();
- qCritical("unable to get snapshot of processes (error %d)", lastError);
+ log::error("unable to get snapshot of processes (error {})", lastError);
return false;
}
@@ -446,7 +446,7 @@ bool OrganizerCore::testForSteam(bool *found, bool *access)
pe32.dwSize = sizeof(PROCESSENTRY32);
if (!Process32First(hProcessSnap, &pe32)) {
lastError = GetLastError();
- qCritical("unable to get first process (error %d)", lastError);
+ log::error("unable to get first process (error {})", lastError);
CloseHandle(hProcessSnap);
return false;
}
@@ -486,7 +486,7 @@ return true;
void OrganizerCore::updateExecutablesList(QSettings &settings)
{
if (m_PluginContainer == nullptr) {
- qCritical("can't update executables list now");
+ log::error("can't update executables list now");
return;
}
@@ -657,7 +657,7 @@ void OrganizerCore::downloadRequested(QNetworkReply *reply, QString gameName, in
}
} catch (const std::exception &e) {
MessageDialog::showMessage(tr("Download failed"), qApp->activeWindow());
- qCritical("exception starting download: %s", e.what());
+ log::error("exception starting download: {}", e.what());
}
}
@@ -1552,7 +1552,7 @@ HANDLE OrganizerCore::spawnBinaryProcess(const QFileInfo &binary,
bool steamFound = true;
bool steamAccess = true;
if (!testForSteam(&steamFound, &steamAccess)) {
- qCritical("unable to determine state of Steam");
+ log::error("unable to determine state of Steam");
}
if (!steamFound) {
@@ -1569,9 +1569,9 @@ HANDLE OrganizerCore::spawnBinaryProcess(const QFileInfo &binary,
steamFound = true;
steamAccess = true;
if (!testForSteam(&steamFound, &steamAccess)) {
- qCritical("unable to determine state of Steam");
+ log::error("unable to determine state of Steam");
} else if (!steamFound) {
- qCritical("could not find Steam");
+ log::error("could not find Steam");
}
} else if (result == QDialogButtonBox::Cancel) {
@@ -1592,14 +1592,14 @@ HANDLE OrganizerCore::spawnBinaryProcess(const QFileInfo &binary,
if (result == QDialogButtonBox::Yes) {
WCHAR cwd[MAX_PATH];
if (!GetCurrentDirectory(MAX_PATH, cwd)) {
- qCritical("unable to get current directory (error %d)", GetLastError());
+ log::error("unable to get current directory (error {})", GetLastError());
cwd[0] = L'\0';
}
if (!Helper::adminLaunch(
qApp->applicationDirPath().toStdWString(),
qApp->applicationFilePath().toStdWString(),
std::wstring(cwd))) {
- qCritical("unable to relaunch MO as admin");
+ log::error("unable to relaunch MO as admin");
return INVALID_HANDLE_VALUE;
}
qApp->exit(0);
diff --git a/src/overwriteinfodialog.cpp b/src/overwriteinfodialog.cpp
index 5ee8d76c..cc4ae849 100644
--- a/src/overwriteinfodialog.cpp
+++ b/src/overwriteinfodialog.cpp
@@ -121,18 +121,18 @@ bool OverwriteInfoDialog::recursiveDelete(const QModelIndex &index)
QModelIndex childIndex = m_FileSystemModel->index(childRow, 0, index);
if (m_FileSystemModel->isDir(childIndex)) {
if (!recursiveDelete(childIndex)) {
- qCritical("failed to delete %s", m_FileSystemModel->fileName(childIndex).toUtf8().constData());
+ log::error("failed to delete {}", m_FileSystemModel->fileName(childIndex));
return false;
}
} else {
if (!m_FileSystemModel->remove(childIndex)) {
- qCritical("failed to delete %s", m_FileSystemModel->fileName(childIndex).toUtf8().constData());
+ log::error("failed to delete {}", m_FileSystemModel->fileName(childIndex));
return false;
}
}
}
if (!m_FileSystemModel->remove(index)) {
- qCritical("failed to delete %s", m_FileSystemModel->fileName(index).toUtf8().constData());
+ log::error("failed to delete {}", m_FileSystemModel->fileName(index));
return false;
}
return true;
diff --git a/src/persistentcookiejar.cpp b/src/persistentcookiejar.cpp
index 1ed463c6..670bf382 100644
--- a/src/persistentcookiejar.cpp
+++ b/src/persistentcookiejar.cpp
@@ -1,8 +1,10 @@
#include "persistentcookiejar.h"
+#include
#include
#include
#include
+using namespace MOBase;
PersistentCookieJar::PersistentCookieJar(const QString &fileName, QObject *parent)
: QNetworkCookieJar(parent), m_FileName(fileName)
@@ -24,7 +26,7 @@ void PersistentCookieJar::clear() {
void PersistentCookieJar::save() {
QTemporaryFile file;
if (!file.open()) {
- qCritical("failed to save cookies: couldn't create temporary file");
+ log::error("failed to save cookies: couldn't create temporary file");
return;
}
QDataStream data(&file);
@@ -40,14 +42,14 @@ void PersistentCookieJar::save() {
QFile oldCookies(m_FileName);
if (oldCookies.exists()) {
if (!oldCookies.remove()) {
- qCritical("failed to save cookies: failed to remove %s", qUtf8Printable(m_FileName));
+ log::error("failed to save cookies: failed to remove {}", m_FileName);
return;
}
} // if it doesn't exists that's fine
}
if (!file.copy(m_FileName)) {
- qCritical("failed to save cookies: failed to write %s", qUtf8Printable(m_FileName));
+ log::error("failed to save cookies: failed to write {}", m_FileName);
}
}
diff --git a/src/plugincontainer.cpp b/src/plugincontainer.cpp
index d47fa2c6..36daec52 100644
--- a/src/plugincontainer.cpp
+++ b/src/plugincontainer.cpp
@@ -291,8 +291,9 @@ void PluginContainer::loadPlugins()
std::unique_ptr pluginLoader(new QPluginLoader(pluginName, this));
if (pluginLoader->instance() == nullptr) {
m_FailedPlugins.push_back(pluginName);
- qCritical("failed to load plugin %s: %s",
- qUtf8Printable(pluginName), qUtf8Printable(pluginLoader->errorString()));
+ log::error(
+ "failed to load plugin {}: {}",
+ pluginName, pluginLoader->errorString());
} else {
if (registerPlugin(pluginLoader->instance(), pluginName)) {
qDebug("loaded plugin \"%s\"", qUtf8Printable(QFileInfo(pluginName).fileName()));
diff --git a/src/pluginlist.cpp b/src/pluginlist.cpp
index 2fb743d0..e436d7f6 100644
--- a/src/pluginlist.cpp
+++ b/src/pluginlist.cpp
@@ -309,7 +309,7 @@ int PluginList::findPluginByPriority(int priority)
return i;
}
}
- qCritical(QString("No plugin with priority %1").arg(priority).toLocal8Bit());
+ log::error("No plugin with priority {}", priority);
return -1;
}
@@ -824,7 +824,7 @@ void PluginList::updateIndices()
continue;
}
if (m_ESPs[i].m_Priority >= static_cast(m_ESPs.size())) {
- qCritical("invalid plugin priority: %d", m_ESPs[i].m_Priority);
+ log::error("invalid plugin priority: {}", m_ESPs[i].m_Priority);
continue;
}
m_ESPsByName[m_ESPs[i].m_Name.toLower()] = i;
@@ -1067,9 +1067,9 @@ bool PluginList::setData(const QModelIndex &modIndex, const QVariant &value, int
this->index(0, 0),
this->index(static_cast(m_ESPs.size()), columnCount()));
} catch (const std::exception &e) {
- qCritical("failed to invoke state changed notification: %s", e.what());
+ log::error("failed to invoke state changed notification: {}", e.what());
} catch (...) {
- qCritical("failed to invoke state changed notification: unknown exception");
+ log::error("failed to invoke state changed notification: unknown exception");
}
}
@@ -1368,7 +1368,7 @@ PluginList::ESPInfo::ESPInfo(const QString &name, bool enabled,
m_Masters.insert(QString(iter->c_str()));
}
} catch (const std::exception &e) {
- qCritical("failed to parse plugin file %s: %s", qUtf8Printable(fullPath), e.what());
+ log::error("failed to parse plugin file {}: {}", fullPath, e.what());
m_IsMaster = false;
m_IsLight = false;
m_IsLightFlagged = false;
diff --git a/src/profile.cpp b/src/profile.cpp
index d4778305..555de89a 100644
--- a/src/profile.cpp
+++ b/src/profile.cpp
@@ -572,7 +572,7 @@ void Profile::setModsEnabled(const QList &modsToEnable, const QLis
QList dirtyMods;
for (auto idx : modsToEnable) {
if (idx >= m_ModStatus.size()) {
- qCritical() << tr("invalid mod index: %1").arg(idx);
+ log::error("invalid mod index: {}", idx);
continue;
}
if (!m_ModStatus[idx].m_Enabled) {
@@ -582,7 +582,7 @@ void Profile::setModsEnabled(const QList &modsToEnable, const QLis
}
for (auto idx : modsToDisable) {
if (idx >= m_ModStatus.size()) {
- qCritical() << tr("invalid mod index: %1").arg(idx);
+ log::error("invalid mod index: {}", idx);
continue;
}
if (ModInfo::getByIndex(idx)->alwaysEnabled()) {
diff --git a/src/settings.cpp b/src/settings.cpp
index 92ae2251..9c303442 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -221,9 +221,7 @@ QString Settings::deObfuscate(const QString key)
} else {
const auto e = GetLastError();
if (e != ERROR_NOT_FOUND) {
- qCritical().nospace()
- << "Retrieving encrypted data failed: "
- << formatSystemMessageQ(e);
+ log::error("Retrieving encrypted data failed: {}", formatSystemMessageQ(e));
}
}
delete[] keyData;
@@ -368,11 +366,7 @@ bool Settings::setNexusApiKey(const QString& apiKey)
{
if (!obfuscate("APIKEY", apiKey)) {
const auto e = GetLastError();
-
- qCritical().nospace()
- << "Storing API key failed: "
- << formatSystemMessageQ(e);
-
+ log::error("Storing API key failed: {}", formatSystemMessageQ(e));
return false;
}
@@ -493,9 +487,7 @@ void Settings::setSteamLogin(QString username, QString password)
}
if (!obfuscate("steam_password", password)) {
const auto e = GetLastError();
- qCritical().nospace()
- << "Storing or deleting password failed: "
- << formatSystemMessageQ(e);
+ log::error("Storing or deleting password failed: {}", formatSystemMessageQ(e));
}
}
diff --git a/src/settingsdialog.cpp b/src/settingsdialog.cpp
index 0dae31ac..99943d04 100644
--- a/src/settingsdialog.cpp
+++ b/src/settingsdialog.cpp
@@ -485,7 +485,6 @@ void SettingsDialog::onValidatorStateChanged(
for (auto&& line : log.split("\n")) {
addNexusLog(line);
}
- }
updateNexusState();
}
diff --git a/src/shared/directoryentry.cpp b/src/shared/directoryentry.cpp
index 9d9edd85..2cdbac74 100644
--- a/src/shared/directoryentry.cpp
+++ b/src/shared/directoryentry.cpp
@@ -21,6 +21,7 @@ along with Mod Organizer. If not, see .
#include "windows_error.h"
#include "leaktrace.h"
#include "error_report.h"
+#include
#include
#include
#include
@@ -35,6 +36,8 @@ along with Mod Organizer. If not, see .
namespace MOShared {
+namespace log = MOBase::log;
+
static const int MAXPATH_UNICODE = 32767;
class OriginConnection {
@@ -103,7 +106,7 @@ public:
m_OriginsNameMap.erase(iter);
m_OriginsNameMap[newName] = idx;
} else {
- vlog("failed to change name lookup from %ls to %ls", oldName.c_str(), newName.c_str());
+ log::error("failed to change name lookup from {} to {}", oldName, newName);
}
}
@@ -714,14 +717,14 @@ void DirectoryEntry::removeFile(FileEntry::Index index)
if (iter != m_Files.end()) {
m_Files.erase(iter);
} else {
- vlog("file \"%ls\" not in directory \"%ls\"",
- m_FileRegister->getFile(index)->getName().c_str(),
- this->getName().c_str());
+ log::error(
+ "file \"{}\" not in directory \"{}\"",
+ m_FileRegister->getFile(index)->getName(), this->getName());
}
} else {
- vlog("file \"%ls\" not in directory \"%ls\", directory empty",
- m_FileRegister->getFile(index)->getName().c_str(),
- this->getName().c_str());
+ log::error(
+ "file \"{}\" not in directory \"{}\", directory empty",
+ m_FileRegister->getFile(index)->getName(), this->getName());
}
}
@@ -844,7 +847,7 @@ const FileEntry::Ptr DirectoryEntry::searchFile(const std::wstring &path, const
DirectoryEntry *temp = findSubDirectory(pathComponent);
if (temp != nullptr) {
if (len >= path.size()) {
- vlog("unexpected end of path");
+ log::error("unexpected end of path");
return FileEntry::Ptr();
}
return temp->searchFile(path.substr(len + 1), directory);
@@ -988,7 +991,7 @@ bool FileRegister::removeFile(FileEntry::Index index)
m_Files.erase(index);
return true;
} else {
- vlog("invalid file index for remove: %lu", index);
+ log::error("invalid file index for remove: {}", index);
return false;
}
}
@@ -1002,7 +1005,7 @@ void FileRegister::removeOrigin(FileEntry::Index index, int originID)
m_Files.erase(iter);
}
} else {
- vlog("invalid file index for remove (for origin): %lu", index);
+ log::error("invalid file index for remove (for origin): {}", index);
}
}
diff --git a/src/shared/error_report.h b/src/shared/error_report.h
index a003ee09..17b25645 100644
--- a/src/shared/error_report.h
+++ b/src/shared/error_report.h
@@ -30,5 +30,3 @@ void reportError(LPCSTR format, ...);
void reportError(LPCWSTR format, ...);
} // namespace MOShared
-
-void vlog(const char* format, ...);
diff --git a/src/syncoverwritedialog.cpp b/src/syncoverwritedialog.cpp
index 4ee4716e..b1643b2d 100644
--- a/src/syncoverwritedialog.cpp
+++ b/src/syncoverwritedialog.cpp
@@ -22,6 +22,7 @@ along with Mod Organizer. If not, see .
#include "ui_syncoverwritedialog.h"
#include
#include
+#include
#include
#include
@@ -86,7 +87,7 @@ void SyncOverwriteDialog::readTree(const QString &path, DirectoryEntry *director
if (subDir != nullptr) {
readTree(fileInfo.absoluteFilePath(), subDir, newItem);
} else {
- qCritical("no directory structure for %s?", qUtf8Printable(file));
+ log::error("no directory structure for {}?", file);
delete newItem;
newItem = nullptr;
}
diff --git a/src/texteditor.cpp b/src/texteditor.cpp
index 130cd76f..0c0eb1cc 100644
--- a/src/texteditor.cpp
+++ b/src/texteditor.cpp
@@ -1,7 +1,10 @@
#include "texteditor.h"
#include "utility.h"
+#include
#include
+using namespace MOBase;
+
TextEditor::TextEditor(QWidget* parent) :
QPlainTextEdit(parent),
m_toolbar(nullptr), m_lineNumbers(nullptr), m_highlighter(nullptr),
@@ -249,7 +252,7 @@ QWidget* TextEditor::wrapEditWidget()
auto index = splitter->indexOf(this);
if (index == -1) {
- qCritical(
+ log::error(
"TextEditor: cannot wrap edit widget to display a toolbar, "
"parent is a splitter, but widget isn't in it");
@@ -260,7 +263,7 @@ QWidget* TextEditor::wrapEditWidget()
} else {
// unknown parent
- qCritical(
+ log::error(
"TextEditor: cannot wrap edit widget to display a toolbar, "
"no parent or parent has no layout");
diff --git a/src/transfersavesdialog.cpp b/src/transfersavesdialog.cpp
index 130df14f..1b211fd3 100644
--- a/src/transfersavesdialog.cpp
+++ b/src/transfersavesdialog.cpp
@@ -24,6 +24,7 @@ along with Mod Organizer. If not, see .
#include "isavegame.h"
#include "savegameinfo.h"
#include
+#include
#include
#include
@@ -186,7 +187,7 @@ void TransferSavesDialog::on_moveToLocalBtn_clicked()
[this](const QString &source, const QString &destination) -> bool {
return shellMove(source, destination, this);
},
- "Failed to move %s to %s")) {
+ "Failed to move {} to {}")) {
refreshGlobalSaves();
refreshGlobalCharacters();
refreshLocalSaves();
@@ -203,7 +204,7 @@ void TransferSavesDialog::on_copyToLocalBtn_clicked()
[this](const QString &source, const QString &destination) -> bool {
return shellCopy(source, destination, this);
},
- "Failed to copy %s to %s")) {
+ "Failed to copy {} to {}")) {
refreshLocalSaves();
refreshLocalCharacters();
}
@@ -218,7 +219,7 @@ void TransferSavesDialog::on_moveToGlobalBtn_clicked()
[this](const QString &source, const QString &destination) -> bool {
return shellMove(source, destination, this);
},
- "Failed to move %s to %s")) {
+ "Failed to move {} to {}")) {
refreshGlobalSaves();
refreshGlobalCharacters();
refreshLocalSaves();
@@ -235,7 +236,7 @@ void TransferSavesDialog::on_copyToGlobalBtn_clicked()
[this](const QString &source, const QString &destination) -> bool {
return shellCopy(source, destination, this);
},
- "Failed to copy %s to %s")) {
+ "Failed to copy {} to {}")) {
refreshGlobalSaves();
refreshGlobalCharacters();
}
@@ -340,9 +341,7 @@ bool TransferSavesDialog::transferCharacters(
}
if (!method(sourceFile.absoluteFilePath(), destinationFile)) {
- qCritical(errmsg,
- sourceFile.absoluteFilePath().toUtf8().constData(),
- qUtf8Printable(destinationFile));
+ log::error(errmsg, sourceFile.absoluteFilePath(), destinationFile);
}
}
}
--
cgit v1.3.1
From b3d0ddb0b75da4abd59cae1508d983945c8e235d Mon Sep 17 00:00:00 2001
From: isanae <14251494+isanae@users.noreply.github.com>
Date: Fri, 19 Jul 2019 04:21:45 -0400
Subject: changed qDebug() to log::debug() removed some commented out logging
---
src/categories.cpp | 4 +-
src/downloadlistwidget.cpp | 5 ++-
src/downloadmanager.cpp | 35 ++++++++---------
src/executableslist.cpp | 4 +-
src/filerenamer.cpp | 43 +++++++++++----------
src/installationmanager.cpp | 16 ++++----
src/instancemanager.cpp | 2 +-
src/loadmechanism.cpp | 13 ++++---
src/mainwindow.cpp | 37 +++++++-----------
src/messagedialog.cpp | 6 ++-
src/modinfodialog.cpp | 4 +-
src/modinfodialogconflicts.cpp | 24 ++++++++----
src/modinfodialogfiletree.cpp | 12 +++---
src/modinforegular.cpp | 5 ++-
src/modlist.cpp | 7 ++--
src/modlistsortproxy.cpp | 2 +-
src/nexusinterface.cpp | 8 ++--
src/nxmaccessmanager.cpp | 4 +-
src/organizercore.cpp | 41 +++++++++++---------
src/persistentcookiejar.cpp | 2 +-
src/plugincontainer.cpp | 14 +++----
src/pluginlist.cpp | 6 +--
src/profile.cpp | 16 ++++----
src/qtgroupingproxy.cpp | 87 +++++++++++++++++-------------------------
src/selfupdater.cpp | 18 ++++-----
src/settings.cpp | 7 ++--
src/usvfsconnector.cpp | 19 ++++-----
27 files changed, 213 insertions(+), 228 deletions(-)
(limited to 'src/categories.cpp')
diff --git a/src/categories.cpp b/src/categories.cpp
index 7acf6ff5..12b18998 100644
--- a/src/categories.cpp
+++ b/src/categories.cpp
@@ -360,10 +360,10 @@ unsigned int CategoryFactory::resolveNexusID(int nexusID) const
{
std::map::const_iterator iter = m_NexusMap.find(nexusID);
if (iter != m_NexusMap.end()) {
- qDebug("nexus category id %d maps to internal %d", nexusID, iter->second);
+ log::debug("nexus category id {} maps to internal {}", nexusID, iter->second);
return iter->second;
} else {
- qDebug("nexus category id %d not mapped", nexusID);
+ log::debug("nexus category id {} not mapped", nexusID);
return 0U;
}
}
diff --git a/src/downloadlistwidget.cpp b/src/downloadlistwidget.cpp
index e2a6f321..85d27831 100644
--- a/src/downloadlistwidget.cpp
+++ b/src/downloadlistwidget.cpp
@@ -19,6 +19,7 @@ along with Mod Organizer. If not, see .
#include "downloadlist.h"
#include "downloadlistwidget.h"
+#include
#include
#include
#include
@@ -29,6 +30,8 @@ along with Mod Organizer. If not, see .
#include
#include
+using namespace MOBase;
+
void DownloadProgressDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
QModelIndex sourceIndex = m_SortProxy->mapToSource(index);
@@ -286,7 +289,7 @@ void DownloadListWidget::issueDelete()
void DownloadListWidget::issueRemoveFromView()
{
- qDebug() << "removing from view: " << m_ContextRow;
+ log::debug("removing from view: {}", m_ContextRow);
emit removeDownload(m_ContextRow, false);
}
diff --git a/src/downloadmanager.cpp b/src/downloadmanager.cpp
index 348b2108..d2556faa 100644
--- a/src/downloadmanager.cpp
+++ b/src/downloadmanager.cpp
@@ -352,7 +352,7 @@ void DownloadManager::refreshList()
}
}
if (orphans.size() > 0) {
- qDebug("%d orphaned meta files will be deleted", orphans.size());
+ log::debug("{} orphaned meta files will be deleted", orphans.size());
shellDelete(orphans, true);
}
@@ -379,7 +379,7 @@ void DownloadManager::refreshList()
}
//if (m_ActiveDownloads.size() != downloadsBefore) {
- qDebug("Downloads after refresh: %d", m_ActiveDownloads.size());
+ log::debug("Downloads after refresh: {}", m_ActiveDownloads.size());
//}
emit update(-1);
@@ -401,7 +401,7 @@ bool DownloadManager::addDownload(const QStringList &URLs, QString gameName,
}
QUrl preferredUrl = QUrl::fromEncoded(URLs.first().toLocal8Bit());
- qDebug("selected download url: %s", qUtf8Printable(preferredUrl.toString()));
+ log::debug("selected download url: {}", preferredUrl.toString());
QNetworkRequest request(preferredUrl);
request.setHeader(QNetworkRequest::UserAgentHeader, m_NexusInterface->getAccessManager()->userAgent());
return addDownload(m_NexusInterface->getAccessManager()->get(request), URLs, fileName, gameName, modID, fileID, fileInfo);
@@ -562,9 +562,9 @@ void DownloadManager::addNXMDownload(const QString &url)
break;
}
}
- qDebug("add nxm download: %s", qUtf8Printable(url));
+ log::debug("add nxm download: {}", url);
if (foundGame == nullptr) {
- qDebug("download requested for wrong game (game: %s, url: %s)", qUtf8Printable(m_ManagedGame->gameShortName()), qUtf8Printable(nxmInfo.game()));
+ log::debug("download requested for wrong game (game: {}, url: {})", m_ManagedGame->gameShortName(), nxmInfo.game());
QMessageBox::information(nullptr, tr("Wrong Game"), tr("The download link is for a mod for \"%1\" but this instance of MO "
"has been set up for \"%2\".").arg(nxmInfo.game()).arg(m_ManagedGame->gameShortName()), QMessageBox::Ok);
return;
@@ -572,13 +572,14 @@ void DownloadManager::addNXMDownload(const QString &url)
for (auto tuple : m_PendingDownloads) {
if (std::get<0>(tuple).compare(foundGame->gameShortName(), Qt::CaseInsensitive) == 0, std::get<1>(tuple) == nxmInfo.modId() && std::get<2>(tuple) == nxmInfo.fileId()) {
- QString debugStr("download requested is already queued (mod: %1, file: %2)");
- QString infoStr(tr("There is already a download queued for this file.\n\nMod %1\nFile %2"));
+ const auto infoStr =
+ tr("There is already a download queued for this file.\n\nMod %1\nFile %2")
+ .arg(nxmInfo.modId()).arg(nxmInfo.fileId());
- debugStr = debugStr.arg(nxmInfo.modId()).arg(nxmInfo.fileId());
- infoStr = infoStr.arg(nxmInfo.modId()).arg(nxmInfo.fileId());
+ log::debug(
+ "download requested is already queued (mod: {}, file: {})",
+ nxmInfo.modId(), nxmInfo.fileId());
- qDebug(qUtf8Printable(debugStr));
QMessageBox::information(nullptr, tr("Already Queued"), infoStr, QMessageBox::Ok);
return;
}
@@ -622,7 +623,7 @@ void DownloadManager::addNXMDownload(const QString &url)
infoStr = infoStr.arg(QStringLiteral(""));
}
- qDebug(qUtf8Printable(debugStr));
+ log::debug("{}", debugStr);
QMessageBox::information(nullptr, tr("Already Started"), infoStr, QMessageBox::Ok);
return;
}
@@ -883,7 +884,7 @@ void DownloadManager::resumeDownloadInt(int index)
if (info->m_State == STATE_ERROR) {
info->m_CurrentUrl = (info->m_CurrentUrl + 1) % info->m_Urls.count();
}
- qDebug("request resume from url %s", qUtf8Printable(info->currentURL()));
+ log::debug("request resume from url {}", info->currentURL());
QNetworkRequest request(QUrl::fromEncoded(info->currentURL().toLocal8Bit()));
request.setHeader(QNetworkRequest::UserAgentHeader, m_NexusInterface->getAccessManager()->userAgent());
if (info->m_State != STATE_ERROR) {
@@ -896,7 +897,7 @@ void DownloadManager::resumeDownloadInt(int index)
std::get<2>(info->m_SpeedDiff) = 0;
std::get<3>(info->m_SpeedDiff) = 0;
std::get<4>(info->m_SpeedDiff) = 0;
- qDebug("resume at %lld bytes", info->m_ResumePos);
+ log::debug("resume at {} bytes", info->m_ResumePos);
startDownload(m_NexusInterface->getAccessManager()->get(request), info, true);
}
emit update(index);
@@ -993,11 +994,11 @@ void DownloadManager::queryInfoMd5(int index)
downloadFile.setFileName(m_OrganizerCore->downloadsPath() + "\\" + info->m_FileName);
}
if (!downloadFile.exists()) {
- qDebug("Can't find download file %s", info->m_FileName);
+ log::debug("Can't find download file {}", info->m_FileName);
return;
}
if (!downloadFile.open(QIODevice::ReadOnly)) {
- qDebug("Can't open download file %s", info->m_FileName);
+ log::debug("Can't open download file {}", info->m_FileName);
return;
}
info->m_Hash = QCryptographicHash::hash(downloadFile.readAll(), QCryptographicHash::Md5);
@@ -1384,7 +1385,7 @@ void DownloadManager::setState(DownloadManager::DownloadInfo *info, DownloadMana
m_RequestIDs.insert(m_NexusInterface->requestFiles(info->m_FileInfo->gameName, info->m_FileInfo->modID, this, info->m_DownloadID, QString()));
} break;
case STATE_FETCHINGMODINFO_MD5: {
- qDebug(qUtf8Printable(QString("Searching %1 for MD5 of %2").arg(info->m_GamesToQuery[0]).arg(QString(info->m_Hash.toHex()))));
+ log::debug("Searching {} for MD5 of {}", info->m_GamesToQuery[0], QString(info->m_Hash.toHex()));
m_RequestIDs.insert(m_NexusInterface->requestInfoFromMd5(info->m_GamesToQuery[0], info->m_Hash, this, info->m_DownloadID, QString()));
} break;
case STATE_READY: {
@@ -1780,7 +1781,7 @@ void DownloadManager::nxmFileInfoFromMd5Available(QString gameName, QVariant use
if (chosenIdx < 0) {
chosenIdx = i; //intentional to not break in order to check other results
} else {
- qDebug("Multiple active files found during MD5 search. Defaulting to time stamps...");
+ log::debug("Multiple active files found during MD5 search. Defaulting to time stamps...");
chosenIdx = -1;
break;
}
diff --git a/src/executableslist.cpp b/src/executableslist.cpp
index 2408e8f3..3f76bb6f 100644
--- a/src/executableslist.cpp
+++ b/src/executableslist.cpp
@@ -166,7 +166,7 @@ std::vector ExecutablesList::getPluginExecutables(
void ExecutablesList::resetFromPlugin(MOBase::IPluginGame const *game)
{
- qDebug("resetting plugin executables");
+ log::debug("resetting plugin executables");
Q_ASSERT(game != nullptr);
@@ -295,7 +295,7 @@ std::optional ExecutablesList::makeNonConflictingTitle(
void ExecutablesList::upgradeFromCustom(MOBase::IPluginGame const *game)
{
- qDebug() << "upgrading executables list";
+ log::debug("upgrading executables list");
Q_ASSERT(game != nullptr);
diff --git a/src/filerenamer.cpp b/src/filerenamer.cpp
index 8835f52f..a97d7742 100644
--- a/src/filerenamer.cpp
+++ b/src/filerenamer.cpp
@@ -18,10 +18,10 @@ FileRenamer::FileRenamer(QWidget* parent, QFlags flags)
FileRenamer::RenameResults FileRenamer::rename(const QString& oldName, const QString& newName)
{
- qDebug().nospace() << "renaming " << oldName << " to " << newName;
+ log::debug("renaming {} to {}", oldName, newName);
if (QFileInfo(newName).exists()) {
- qDebug().nospace() << newName << " already exists";
+ log::debug("{} already exists", newName);
// target file already exists, confirm replacement
auto answer = confirmReplace(newName);
@@ -29,24 +29,25 @@ FileRenamer::RenameResults FileRenamer::rename(const QString& oldName, const QSt
switch (answer) {
case DECISION_SKIP: {
// user wants to skip this file
- qDebug().nospace() << "skipping " << oldName;
+ log::debug("skipping {}", oldName);
return RESULT_SKIP;
}
case DECISION_REPLACE: {
- qDebug().nospace() << "removing " << newName;
+ log::debug("removing {}", newName);
+
// user wants to replace the file, so remove it
if (!QFile(newName).remove()) {
log::warn("failed to remove '{}'", newName);
// removal failed, warn the user and allow canceling
if (!removeFailed(newName)) {
- qDebug().nospace() << "canceling " << oldName;
+ log::debug("canceling {}", oldName);
// user wants to cancel
return RESULT_CANCEL;
}
// ignore this file and continue on
- qDebug().nospace() << "skipping " << oldName;
+ log::debug("skipping {}", oldName);
return RESULT_SKIP;
}
@@ -56,7 +57,7 @@ FileRenamer::RenameResults FileRenamer::rename(const QString& oldName, const QSt
case DECISION_CANCEL: // fall-through
default: {
// user wants to stop
- qDebug().nospace() << "canceling";
+ log::debug("canceling");
return RESULT_CANCEL;
}
}
@@ -70,17 +71,17 @@ FileRenamer::RenameResults FileRenamer::rename(const QString& oldName, const QSt
// renaming failed, warn the user and allow canceling
if (!renameFailed(oldName, newName)) {
// user wants to cancel
- qDebug().nospace() << "canceling";
+ log::debug("canceling");
return RESULT_CANCEL;
}
// ignore this file and continue on
- qDebug().nospace() << "skipping " << oldName;
+ log::debug("skipping {}", oldName);
return RESULT_SKIP;
}
// everything worked
- qDebug().nospace() << "successfully renamed " << oldName << " to " << newName;
+ log::debug("successfully renamed {} to {}", oldName, newName);
return RESULT_OK;
}
@@ -88,12 +89,12 @@ FileRenamer::RenameDecision FileRenamer::confirmReplace(const QString& newName)
{
if (m_flags & REPLACE_ALL) {
// user wants to silently replace all
- qDebug().nospace() << "user has selected replace all";
+ log::debug("user has selected replace all");
return DECISION_REPLACE;
}
else if (m_flags & REPLACE_NONE) {
// user wants to silently skip all
- qDebug().nospace() << "user has selected replace none";
+ log::debug("user has selected replace none");
return DECISION_SKIP;
}
@@ -117,28 +118,28 @@ FileRenamer::RenameDecision FileRenamer::confirmReplace(const QString& newName)
switch (answer) {
case QMessageBox::Yes:
- qDebug().nospace() << "user wants to replace";
+ log::debug("user wants to replace");
return DECISION_REPLACE;
case QMessageBox::No:
- qDebug().nospace() << "user wants to skip";
+ log::debug("user wants to skip");
return DECISION_SKIP;
case QMessageBox::YesToAll:
- qDebug().nospace() << "user wants to replace all";
+ log::debug("user wants to replace all");
// remember the answer
m_flags |= REPLACE_ALL;
return DECISION_REPLACE;
case QMessageBox::NoToAll:
- qDebug().nospace() << "user wants to replace none";
+ log::debug("user wants to replace none");
// remember the answer
m_flags |= REPLACE_NONE;
return DECISION_SKIP;
case QMessageBox::Cancel: // fall-through
default:
- qDebug().nospace() << "user wants to cancel";
+ log::debug("user wants to cancel");
return DECISION_CANCEL;
}
}
@@ -158,12 +159,12 @@ bool FileRenamer::removeFailed(const QString& name)
if (answer == QMessageBox::Cancel) {
// user wants to stop
- qDebug().nospace() << "user wants to cancel";
+ log::debug("user wants to cancel");
return false;
}
// skip this one and continue
- qDebug().nospace() << "user wants to skip";
+ log::debug("user wants to skip");
return true;
}
@@ -182,11 +183,11 @@ bool FileRenamer::renameFailed(const QString& oldName, const QString& newName)
if (answer == QMessageBox::Cancel) {
// user wants to stop
- qDebug().nospace() << "user wants to cancel";
+ log::debug("user wants to cancel");
return false;
}
// skip this one and continue
- qDebug().nospace() << "user wants to skip";
+ log::debug("user wants to skip");
return true;
}
diff --git a/src/installationmanager.cpp b/src/installationmanager.cpp
index fd971f47..89d0079f 100644
--- a/src/installationmanager.cpp
+++ b/src/installationmanager.cpp
@@ -398,7 +398,7 @@ bool InstallationManager::isSimpleArchiveTopLayer(const DirectoryTree::Node *nod
for (DirectoryTree::const_node_iterator iter = node->nodesBegin(); iter != node->nodesEnd(); ++iter) {
if ((bainStyle && InstallationTester::isTopLevelDirectoryBain((*iter)->getData().name)) ||
(!bainStyle && InstallationTester::isTopLevelDirectory((*iter)->getData().name))) {
- qDebug("%s on the top level", (*iter)->getData().name.toUtf8().constData());
+ log::debug("{} on the top level", (*iter)->getData().name.toQString());
return true;
}
}
@@ -424,7 +424,7 @@ DirectoryTree::Node *InstallationManager::getSimpleArchiveBase(DirectoryTree *da
(currentNode->numNodes() == 1)) {
currentNode = *currentNode->nodesBegin();
} else {
- qDebug("not a simple archive");
+ log::debug("not a simple archive");
return nullptr;
}
}
@@ -576,7 +576,7 @@ bool InstallationManager::doInstall(GuessedValue &modName, QString game
QString targetDirectory = QDir(m_ModsDirectory + "/" + modName).canonicalPath();
QString targetDirectoryNative = QDir::toNativeSeparators(targetDirectory);
- qDebug("installing to \"%s\"", qUtf8Printable(targetDirectoryNative));
+ log::debug("installing to \"{}\"", targetDirectoryNative);
m_InstallationProgress = new QProgressDialog(m_ParentWidget);
ON_BLOCK_EXIT([this] () {
@@ -764,7 +764,7 @@ bool InstallationManager::install(const QString &fileName,
if ((modID == 0) && (guessedModID != -1)) {
modID = guessedModID;
} else if (modID != guessedModID) {
- qDebug("passed mod id: %d, guessed id: %d", modID, guessedModID);
+ log::debug("passed mod id: {}, guessed id: {}", modID, guessedModID);
}
modName.update(guessedModName, GUESS_GOOD);
@@ -774,7 +774,7 @@ bool InstallationManager::install(const QString &fileName,
if (fileInfo.dir() == QDir(m_DownloadsDirectory)) {
m_CurrentFile = fileInfo.fileName();
}
- qDebug("using mod name \"%s\" (id %d) -> %s", qUtf8Printable(modName), modID, qUtf8Printable(m_CurrentFile));
+ log::debug("using mod name \"{}\" (id {}) -> {}", QString(modName), modID, m_CurrentFile);
//If there's an archive already open, close it. This happens with the bundle
//installer when it uncompresses a split archive, then finds it has a real archive
@@ -785,9 +785,9 @@ bool InstallationManager::install(const QString &fileName,
bool archiveOpen = m_ArchiveHandler->open(fileName,
new MethodCallback(this, &InstallationManager::queryPassword));
if (!archiveOpen) {
- qDebug("integrated archiver can't open %s: %s (%d)",
- qUtf8Printable(fileName),
- qUtf8Printable(getErrorString(m_ArchiveHandler->getLastError())),
+ log::debug("integrated archiver can't open {}: {} ({})",
+ fileName,
+ getErrorString(m_ArchiveHandler->getLastError()),
m_ArchiveHandler->getLastError());
}
ON_BLOCK_EXIT(std::bind(&InstallationManager::postInstallCleanup, this));
diff --git a/src/instancemanager.cpp b/src/instancemanager.cpp
index 55ef3fc8..fdc30e22 100644
--- a/src/instancemanager.cpp
+++ b/src/instancemanager.cpp
@@ -224,7 +224,7 @@ QString InstanceManager::chooseInstance(const QStringList &instanceList) const
selection.setWindowFlags(selection.windowFlags() | Qt::WindowStaysOnTopHint);
if (selection.exec() == QDialog::Rejected) {
- qDebug("rejected");
+ log::debug("rejected");
throw MOBase::MyException(QObject::tr("Canceled"));
}
diff --git a/src/loadmechanism.cpp b/src/loadmechanism.cpp
index 8f0529ce..4d6cebd4 100644
--- a/src/loadmechanism.cpp
+++ b/src/loadmechanism.cpp
@@ -23,6 +23,7 @@ along with Mod Organizer. If not, see .
#include
#include
#include
+#include
#include
#include
#include
@@ -141,7 +142,7 @@ void LoadMechanism::deactivateScriptExtender()
{
vfsDLLName = ToQString(AppConfig::vfs64DLLName());
}
- qDebug("USVFS DLL Name: " + vfsDLLName.toLatin1());
+ log::debug("USVFS DLL Name: {}", vfsDLLName);
if (vfsDLLName != "") {
if (QFile(pluginsDir.absoluteFilePath(vfsDLLName)).exists()) {
// remove dll from SE plugins directory
@@ -215,8 +216,8 @@ void LoadMechanism::activateScriptExtender()
QString targetPath = pluginsDir.absoluteFilePath(ToQString(vfsDLL));
QString vfsDLLPath = qApp->applicationDirPath() + "/" + QString::fromStdWString(vfsDLL);
- qDebug("DLL USVFS Target Path: " + targetPath.toLatin1());
- qDebug("DLL USVFS VFS DLL Path: " + vfsDLLPath.toLatin1());
+ log::debug("DLL USVFS Target Path: {}", targetPath);
+ log::debug("DLL USVFS VFS DLL Path: {}", vfsDLLPath);
QFile dllFile(targetPath);
@@ -297,17 +298,17 @@ void LoadMechanism::activate(EMechanism mechanism)
{
switch (mechanism) {
case LOAD_MODORGANIZER: {
- qDebug("Load Mechanism: Mod Organizer");
+ log::debug("Load Mechanism: Mod Organizer");
deactivateProxyDLL();
deactivateScriptExtender();
} break;
case LOAD_SCRIPTEXTENDER: {
- qDebug("Load Mechanism: ScriptExtender");
+ log::debug("Load Mechanism: ScriptExtender");
deactivateProxyDLL();
activateScriptExtender();
} break;
case LOAD_PROXYDLL: {
- qDebug("Load Mechanism: Proxy DLL");
+ log::debug("Load Mechanism: Proxy DLL");
deactivateScriptExtender();
activateProxyDLL();
} break;
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index ad87ba03..e502bdb1 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -867,7 +867,7 @@ void MainWindow::updatePinnedExecutables()
exeAction->setStatusTip(exe.binaryInfo().filePath());
if (!connect(exeAction, SIGNAL(triggered()), this, SLOT(startExeAction()))) {
- qDebug("failed to connect trigger?");
+ log::debug("failed to connect trigger?");
}
if (m_linksSeparator) {
@@ -1711,7 +1711,7 @@ void MainWindow::on_profileBox_currentIndexChanged(int index)
// ensure the new index is valid
if (index < 0 || index >= ui->profileBox->count()) {
- qDebug("invalid profile index, using last profile");
+ log::debug("invalid profile index, using last profile");
ui->profileBox->setCurrentIndex(ui->profileBox->count() - 1);
}
@@ -2060,7 +2060,7 @@ void MainWindow::refreshSaveList()
QDir savesDir = currentSavesDir();
savesDir.setNameFilters(filters);
- qDebug("reading save games from %s", qUtf8Printable(savesDir.absolutePath()));
+ log::debug("reading save games from {}", savesDir.absolutePath());
QFileInfoList files = savesDir.entryInfoList(QDir::Files, QDir::Time);
for (const QFileInfo &file : files) {
@@ -2261,15 +2261,6 @@ void MainWindow::fixCategories()
void MainWindow::setupNetworkProxy(bool activate)
{
QNetworkProxyFactory::setUseSystemConfiguration(activate);
-/* QNetworkProxyQuery query(QUrl("http://www.google.com"), QNetworkProxyQuery::UrlRequest);
- query.setProtocolTag("http");
- QList proxies = QNetworkProxyFactory::systemProxyForQuery(query);
- if ((proxies.size() > 0) && (proxies.at(0).type() != QNetworkProxy::NoProxy)) {
- qDebug("Using proxy: %s", qUtf8Printable(proxies.at(0).hostName()));
- QNetworkProxy::setApplicationProxy(proxies[0]);
- } else {
- qDebug("Not using proxy");
- }*/
}
@@ -2456,7 +2447,7 @@ void MainWindow::unlock()
{
//If you come through here with a null lock pointer, it's a bug!
if (m_LockDialog == nullptr) {
- qDebug("Unlocking main window when already unlocked");
+ log::debug("Unlocking main window when already unlocked");
return;
}
--m_LockCount;
@@ -3259,7 +3250,7 @@ void MainWindow::displayModInformation(
ModInfo::Ptr modInfo, unsigned int modIndex, ModInfoTabIDs tabID)
{
if (!m_OrganizerCore.modList()->modInfoAboutToChange(modInfo)) {
- qDebug("A different mod information dialog is open. If this is incorrect, please restart MO");
+ log::debug("A different mod information dialog is open. If this is incorrect, please restart MO");
return;
}
std::vector flags = modInfo->getFlags();
@@ -4325,7 +4316,7 @@ void MainWindow::addRemoveCategories_MenuHandler() {
int maxRow = -1;
for (const QPersistentModelIndex &idx : selected) {
- qDebug("change categories on: %s", qUtf8Printable(idx.data().toString()));
+ log::debug("change categories on: {}", idx.data().toString());
QModelIndex modIdx = mapToModel(m_OrganizerCore.modList(), idx);
if (modIdx.row() != m_ContextIdx.row()) {
addRemoveCategoriesFromMenu(menu, modIdx.row(), m_ContextIdx.row());
@@ -4407,7 +4398,7 @@ void MainWindow::saveArchiveList()
}
}
if (archiveFile.commitIfDifferent(m_ArchiveListHash)) {
- qDebug("%s saved", qUtf8Printable(QDir::toNativeSeparators(m_OrganizerCore.currentProfile()->getArchivesFileName())));
+ log::debug("{} saved", QDir::toNativeSeparators(m_OrganizerCore.currentProfile()->getArchivesFileName()));
}
} else {
log::warn("archive list not initialised");
@@ -5364,7 +5355,7 @@ void MainWindow::installTranslator(const QString &name)
QString fileName = name + "_" + m_CurrentLanguage;
if (!translator->load(fileName, qApp->applicationDirPath() + "/translations")) {
if (m_CurrentLanguage.contains(QRegularExpression("^.*_(EN|en)(-.*)?$"))) {
- qDebug("localization file %s not found", qUtf8Printable(fileName));
+ log::debug("localization file %s not found", fileName);
} // we don't actually expect localization files for English (en, en-us, en-uk, and any variation thereof)
}
@@ -5389,7 +5380,7 @@ void MainWindow::languageChange(const QString &newLanguage)
installTranslator(QFileInfo(fileName).baseName());
}
ui->retranslateUi(this);
- qDebug("loaded language %s", qUtf8Printable(newLanguage));
+ log::debug("loaded language {}", newLanguage);
ui->profileBox->setItemText(0, QObject::tr(""));
@@ -5634,7 +5625,7 @@ void MainWindow::openDataOriginExplorer_clicked()
const auto fullPath = m_ContextItem->data(0, Qt::UserRole).toString();
- qDebug().nospace() << "opening in explorer: " << fullPath;
+ log::debug("opening in explorer: {}", fullPath);
shell::ExploreFile(fullPath);
}
@@ -6120,7 +6111,7 @@ void MainWindow::nxmDownloadURLs(QString, int, int, QVariant, QVariant resultDat
void MainWindow::nxmRequestFailed(QString gameName, int modID, int, QVariant, int, QNetworkReply::NetworkError error, const QString &errorString)
{
if (error == QNetworkReply::ContentAccessDenied || error == QNetworkReply::ContentNotFoundError) {
- qDebug(qUtf8Printable(tr("Mod ID %1 no longer seems to be available on Nexus.").arg(modID)));
+ log::debug("{}", tr("Mod ID %1 no longer seems to be available on Nexus.").arg(modID));
} else {
MessageDialog::showMessage(tr("Request to Nexus failed: %1").arg(errorString), this);
}
@@ -6587,7 +6578,7 @@ void MainWindow::processLOOTOut(const std::string &lootOut, std::string &errorMe
std::string dependency(match[2].first, match[2].second);
m_OrganizerCore.pluginList()->addInformation(modName.c_str(), tr("incompatible with \"%1\"").arg(dependency.c_str()));
} else {
- qDebug("[loot] %s", line.c_str());
+ log::debug("[loot] {}", line);
}
}
}
@@ -6632,7 +6623,7 @@ void MainWindow::on_bossButton_clicked()
try {
m_OrganizerCore.prepareVFS();
} catch (const UsvfsConnectorException &e) {
- qDebug(e.what());
+ log::debug("{}", e.what());
return;
} catch (const std::exception &e) {
QMessageBox::warning(qApp->activeWindow(), tr("Error"), e.what());
@@ -6662,7 +6653,7 @@ void MainWindow::on_bossButton_clicked()
if (isJobHandle) {
if (::QueryInformationJobObject(loot, JobObjectBasicProcessIdList, &info, sizeof(info), &retLen) > 0) {
if (info.NumberOfProcessIdsInList == 0) {
- qDebug("no more processes in job");
+ log::debug("no more processes in job");
break;
} else {
if (lastProcessID != info.ProcessIdList[0]) {
diff --git a/src/messagedialog.cpp b/src/messagedialog.cpp
index 6c6de3e7..78a5dd4d 100644
--- a/src/messagedialog.cpp
+++ b/src/messagedialog.cpp
@@ -19,10 +19,13 @@ along with Mod Organizer. If not, see .
#include "messagedialog.h"
#include "ui_messagedialog.h"
+#include
#include
#include
#include
+using namespace MOBase;
+
MessageDialog::MessageDialog(const QString &text, QWidget *reference) :
QDialog(reference),
ui(new Ui::MessageDialog)
@@ -81,7 +84,8 @@ void MessageDialog::resizeEvent(QResizeEvent *event)
void MessageDialog::showMessage(const QString &text, QWidget *reference, bool bringToFront)
{
- qDebug("%s", qUtf8Printable(text));
+ log::debug("{}", text);
+
if (reference != nullptr) {
if (bringToFront || (qApp->activeWindow() != nullptr)) {
MessageDialog *dialog = new MessageDialog(text, reference);
diff --git a/src/modinfodialog.cpp b/src/modinfodialog.cpp
index a7a6b0d7..4b1e2f76 100644
--- a/src/modinfodialog.cpp
+++ b/src/modinfodialog.cpp
@@ -556,9 +556,7 @@ void ModInfoDialog::switchToTab(ModInfoTabIDs id)
}
// this could happen if the tab is not visible right now
- qDebug()
- << "can't switch to tab ID " << static_cast(id)
- << ", not available";
+ log::debug("can't switch to tab ID {}, not available", static_cast(id));
}
MOShared::FilesOrigin* ModInfoDialog::getOrigin()
diff --git a/src/modinfodialogconflicts.cpp b/src/modinfodialogconflicts.cpp
index d16d548c..9a5d9d8d 100644
--- a/src/modinfodialogconflicts.cpp
+++ b/src/modinfodialogconflicts.cpp
@@ -438,10 +438,18 @@ void ConflictsTab::changeItemsVisibility(QTreeView* tree, bool visible)
const auto n = smallSelectionSize(tree);
- qDebug().nospace().noquote()
- << (visible ? "unhiding" : "hiding") << " "
- << (n > max_small_selection ? "a lot of" : QString("%1").arg(n))
- << " conflict files";
+ // logging
+ {
+ const QString action = (visible ? "unhiding" : "hiding");
+
+ QString files;
+ if (n > max_small_selection)
+ files = "a lot of";
+ else
+ files = QString("%1").arg(n);
+
+ log::debug("{} {} conflict files", action, files);
+ }
QFlags flags =
(visible ? FileRenamer::UNHIDE : FileRenamer::HIDE);
@@ -467,7 +475,7 @@ void ConflictsTab::changeItemsVisibility(QTreeView* tree, bool visible)
if (visible) {
if (!item->canUnhide()) {
- qDebug().nospace() << "cannot unhide " << item->relativeName() << ", skipping";
+ log::debug("cannot unhide {}, skipping", item->relativeName());
return true;
}
@@ -475,7 +483,7 @@ void ConflictsTab::changeItemsVisibility(QTreeView* tree, bool visible)
} else {
if (!item->canHide()) {
- qDebug().nospace() << "cannot hide " << item->relativeName() << ", skipping";
+ log::debug("cannot hide {}, skipping", item->relativeName());
return true;
}
@@ -504,10 +512,10 @@ void ConflictsTab::changeItemsVisibility(QTreeView* tree, bool visible)
return true;
});
- qDebug().nospace() << (visible ? "unhiding" : "hiding") << " conflict files done";
+ log::debug("{} conflict files done", (visible ? "unhiding" : "hiding"));
if (changed) {
- qDebug().nospace() << "triggering refresh";
+ log::debug("triggering refresh");
if (origin()) {
emitOriginModified();
diff --git a/src/modinfodialogfiletree.cpp b/src/modinfodialogfiletree.cpp
index 219ddf35..207c792d 100644
--- a/src/modinfodialogfiletree.cpp
+++ b/src/modinfodialogfiletree.cpp
@@ -257,9 +257,9 @@ void FileTreeTab::changeVisibility(bool visible)
bool changed = false;
bool stop = false;
- qDebug().nospace()
- << (visible ? "unhiding" : "hiding") << " "
- << selection.size() << " filetree files";
+ log::debug(
+ "{} {} filetree files",
+ (visible ? "unhiding" : "hiding"), selection.size());
QFlags flags =
(visible ? FileRenamer::UNHIDE : FileRenamer::HIDE);
@@ -280,13 +280,13 @@ void FileTreeTab::changeVisibility(bool visible)
if (visible) {
if (!canUnhideFile(false, path)) {
- qDebug().nospace() << "cannot unhide " << path << ", skipping";
+ log::debug("cannot unhide {}, skipping", path);
continue;
}
result = unhideFile(renamer, path);
} else {
if (!canHideFile(false, path)) {
- qDebug().nospace() << "cannot hide " << path << ", skipping";
+ log::debug("cannot hide {}, skipping", path);
continue;
}
result = hideFile(renamer, path);
@@ -312,7 +312,7 @@ void FileTreeTab::changeVisibility(bool visible)
}
}
- qDebug().nospace() << (visible ? "unhiding" : "hiding") << " filetree files done";
+ log::debug("{} filetree files done", (visible ? "unhiding" : "hiding"));
if (changed) {
if (origin()) {
diff --git a/src/modinforegular.cpp b/src/modinforegular.cpp
index 074fa9e2..6e11befc 100644
--- a/src/modinforegular.cpp
+++ b/src/modinforegular.cpp
@@ -883,8 +883,9 @@ std::vector ModInfoRegular::getIniTweaks() const
int numTweaks = metaFile.beginReadArray("INI Tweaks");
if (numTweaks != 0) {
- qDebug("%d active ini tweaks in %s",
- numTweaks, QDir::toNativeSeparators(metaFileName).toUtf8().constData());
+ log::debug(
+ "{} active ini tweaks in {}",
+ numTweaks, QDir::toNativeSeparators(metaFileName));
}
for (int i = 0; i < numTweaks; ++i) {
diff --git a/src/modlist.cpp b/src/modlist.cpp
index 6ebd0e8b..39f51d72 100644
--- a/src/modlist.cpp
+++ b/src/modlist.cpp
@@ -1013,9 +1013,8 @@ bool ModList::dropURLs(const QMimeData *mimeData, int row, const QModelIndex &pa
QString overwriteName = ModInfo::getByIndex(overwriteIndex)->name();
for (auto url : mimeData->urls()) {
- //qDebug("URL drop requested: %s -> %s", qUtf8Printable(url.url()), qUtf8Printable(modDir.canonicalPath()));
if (!url.isLocalFile()) {
- qDebug("URL drop ignored: \"%s\" is not a local file", qUtf8Printable(url.url()));
+ log::debug("URL drop ignored: \"{}\" is not a local file", url.url());
continue;
}
@@ -1035,7 +1034,7 @@ bool ModList::dropURLs(const QMimeData *mimeData, int row, const QModelIndex &pa
originName = overwriteName;
relativePath = overwriteDir.relativeFilePath(sourceFile);
} else {
- qDebug("URL drop ignored: \"%s\" is not a known file to MO", qUtf8Printable(sourceFile));
+ log::debug("URL drop ignored: \"{}\" is not a known file to MO", sourceFile);
continue;
}
@@ -1047,7 +1046,7 @@ bool ModList::dropURLs(const QMimeData *mimeData, int row, const QModelIndex &pa
if (sourceList.count()) {
if (!shellMove(sourceList, targetList)) {
- qDebug("Failed to move file (error %d)", ::GetLastError());
+ log::debug("Failed to move file (error {})", ::GetLastError());
return false;
}
}
diff --git a/src/modlistsortproxy.cpp b/src/modlistsortproxy.cpp
index d330e0c2..77ffad96 100644
--- a/src/modlistsortproxy.cpp
+++ b/src/modlistsortproxy.cpp
@@ -482,7 +482,7 @@ bool ModListSortProxy::filterAcceptsRow(int row, const QModelIndex &parent) cons
QModelIndex idx = sourceModel()->index(row, 0, parent);
if (!idx.isValid()) {
- qDebug("invalid mod index");
+ log::debug("invalid mod index");
return false;
}
if (sourceModel()->hasChildren(idx)) {
diff --git a/src/nexusinterface.cpp b/src/nexusinterface.cpp
index c797aed6..0e2bb45b 100644
--- a/src/nexusinterface.cpp
+++ b/src/nexusinterface.cpp
@@ -316,15 +316,15 @@ void NexusInterface::interpretNexusFileName(const QString &fileName, QString &mo
} else {
modID = strtol(candidate.c_str(), nullptr, 10);
}
- qDebug("mod id guessed: %s -> %d", qUtf8Printable(fileName), modID);
+ log::debug("mod id guessed: {} -> {}", fileName, modID);
} else if (std::regex_search(fileNameUTF8.constData(), result, simpleexp)) {
- qDebug("simple expression matched, using name only");
+ log::debug("simple expression matched, using name only");
modName = QString::fromUtf8(result[1].str().c_str());
modName = modName.replace('_', ' ').trimmed();
modID = -1;
} else {
- qDebug("no expression matched!");
+ log::debug("no expression matched!");
modName.clear();
modID = -1;
}
@@ -860,7 +860,7 @@ void NexusInterface::requestFinished(std::list::iterator iter)
if (nexusError.length() == 0) {
nexusError = tr("empty response");
}
- qDebug("nexus error: %s", qUtf8Printable(nexusError));
+ log::debug("nexus error: {}", nexusError);
emit nxmRequestFailed(iter->m_GameName, iter->m_ModID, iter->m_FileID, iter->m_UserData, iter->m_ID, reply->error(), nexusError);
} else {
QJsonDocument responseDoc = QJsonDocument::fromJson(data);
diff --git a/src/nxmaccessmanager.cpp b/src/nxmaccessmanager.cpp
index 9f40894e..fd1dc0c1 100644
--- a/src/nxmaccessmanager.cpp
+++ b/src/nxmaccessmanager.cpp
@@ -600,9 +600,9 @@ void NXMAccessManager::showCookies() const
{
QUrl url(NexusBaseUrl + "/");
for (const QNetworkCookie &cookie : cookieJar()->cookiesForUrl(url)) {
- qDebug("%s - %s (expires: %s)",
+ log::debug("{} - {} (expires: {})",
cookie.name().constData(), cookie.value().constData(),
- qUtf8Printable(cookie.expirationDate().toString()));
+ cookie.expirationDate().toString());
}
}
diff --git a/src/organizercore.cpp b/src/organizercore.cpp
index 725371e9..f6802673 100644
--- a/src/organizercore.cpp
+++ b/src/organizercore.cpp
@@ -89,9 +89,9 @@ static bool isOnline()
if (addresses.count() == 0) {
continue;
}
- qDebug("interface %s seems to be up (address: %s)",
- qUtf8Printable(iter->humanReadableName()),
- qUtf8Printable(addresses[0].ip().toString()));
+ log::debug("interface {} seems to be up (address: {})",
+ iter->humanReadableName(),
+ addresses[0].ip().toString());
connected = true;
}
}
@@ -543,7 +543,7 @@ void OrganizerCore::setUserInterface(IUserInterface *userInterface,
if (isOnline() && !m_Settings.offlineMode()) {
m_Updater.testForUpdate();
} else {
- qDebug("user doesn't seem to be connected to the internet");
+ log::debug("user doesn't seem to be connected to the internet");
}
}
}
@@ -605,7 +605,7 @@ bool OrganizerCore::nexusApi(bool retry)
QString apiKey;
if (m_Settings.getNexusApiKey(apiKey)) {
// credentials stored or user entered them manually
- qDebug("attempt to verify nexus api key");
+ log::debug("attempt to verify nexus api key");
accessManager->apiCheck(apiKey);
return true;
} else {
@@ -627,7 +627,7 @@ void OrganizerCore::startMOUpdate()
void OrganizerCore::downloadRequestedNXM(const QString &url)
{
- qDebug("download requested: %s", qUtf8Printable(url));
+ log::debug("download requested: {}", url);
if (nexusApi()) {
m_PendingDownloads.append(url);
} else {
@@ -1208,7 +1208,9 @@ QString OrganizerCore::findJavaInstallation(const QString& jarFile)
if (::FindExecutableW(jarFileW.c_str(), nullptr, buffer) > (HINSTANCE)32) {
DWORD binaryType = 0UL;
if (!::GetBinaryTypeW(buffer, &binaryType)) {
- qDebug("failed to determine binary type of \"%ls\": %lu", buffer, ::GetLastError());
+ log::debug(
+ "failed to determine binary type of \"{}\": {}",
+ QString::fromWCharArray(buffer), ::GetLastError());
} else if (binaryType == SCS_32BIT_BINARY || binaryType == SCS_64BIT_BINARY) {
return QString::fromWCharArray(buffer);
}
@@ -1459,7 +1461,7 @@ void OrganizerCore::spawnBinary(const QFileInfo &binary,
// need to remove our stored load order because it may be outdated if a foreign tool changed the
// file time. After removing that file, refreshESPList will use the file time as the order
if (managedGame()->loadOrderMechanism() == IPluginGame::LoadOrderMechanism::FileTime) {
- qDebug("removing loadorder.txt");
+ log::debug("removing loadorder.txt");
QFile::remove(m_CurrentProfile->getLoadOrderFileName());
}
refreshDirectoryStructure();
@@ -1627,7 +1629,7 @@ HANDLE OrganizerCore::spawnBinaryProcess(const QFileInfo &binary,
m_USVFS.updateForcedLibraries(forcedLibraries);
} catch (const UsvfsConnectorException &e) {
- qDebug(e.what());
+ log::debug(e.what());
return INVALID_HANDLE_VALUE;
} catch (const std::exception &e) {
QMessageBox::warning(window, tr("Error"), e.what());
@@ -1694,17 +1696,16 @@ HANDLE OrganizerCore::spawnBinaryProcess(const QFileInfo &binary,
.arg(QDir::toNativeSeparators(cwdPath),
QDir::toNativeSeparators(binPath), arguments);
- qDebug() << "Spawning proxyed process <" << cmdline << ">";
+ log::debug("Spawning proxyed process <{}>", cmdline);
return startBinary(QFileInfo(QCoreApplication::applicationFilePath()),
cmdline, QCoreApplication::applicationDirPath(), true);
} else {
- qDebug() << "Spawning direct process <" << binPath << "," << arguments << "," << cwdPath << ">";
+ log::debug("Spawning direct process <{}, {}, {}>", binPath, arguments, cwdPath);
return startBinary(binary, arguments, currentDirectory, true);
}
} else {
- qDebug("start of \"%s\" canceled by plugin",
- qUtf8Printable(binary.absoluteFilePath()));
+ log::debug("start of \"{}\" canceled by plugin", binary.absoluteFilePath());
return INVALID_HANDLE_VALUE;
}
}
@@ -1872,9 +1873,11 @@ bool OrganizerCore::waitForProcessCompletion(HANDLE handle, LPDWORD exitCode, IL
processName += QString(" (%1)").arg(currentPID);
if (uilock)
uilock->setProcessName(processName);
- qDebug() << "Waiting for"
- << (originalHandle ? "spawned" : "usvfs")
- << "process completion :" << qUtf8Printable(processName);
+
+ log::debug(
+ "Waiting for {} process completion: {}",
+ (originalHandle ? "spawned" : "usvfs"), processName);
+
newHandle = false;
}
@@ -1943,11 +1946,11 @@ bool OrganizerCore::waitForProcessCompletion(HANDLE handle, LPDWORD exitCode, IL
}
if (res == WAIT_OBJECT_0)
- qDebug() << "Waiting for process completion successfull";
+ log::debug("Waiting for process completion successfull");
else if (uiunlocked)
- qDebug() << "Waiting for process completion aborted by UI";
+ log::debug("Waiting for process completion aborted by UI");
else
- qDebug() << "Waiting for process completion not successfull :" << res;
+ log::debug("Waiting for process completion not successfull: {}", res);
if (handle != INVALID_HANDLE_VALUE)
::CloseHandle(handle);
diff --git a/src/persistentcookiejar.cpp b/src/persistentcookiejar.cpp
index 670bf382..8657f356 100644
--- a/src/persistentcookiejar.cpp
+++ b/src/persistentcookiejar.cpp
@@ -13,7 +13,7 @@ PersistentCookieJar::PersistentCookieJar(const QString &fileName, QObject *paren
}
PersistentCookieJar::~PersistentCookieJar() {
- qDebug("save %s", qUtf8Printable(m_FileName));
+ log::debug("save {}", m_FileName);
save();
}
diff --git a/src/plugincontainer.cpp b/src/plugincontainer.cpp
index 36daec52..62cdff1e 100644
--- a/src/plugincontainer.cpp
+++ b/src/plugincontainer.cpp
@@ -91,7 +91,7 @@ bool PluginContainer::registerPlugin(QObject *plugin, const QString &fileName)
{ // generic treatment for all plugins
IPlugin *pluginObj = qobject_cast(plugin);
if (pluginObj == nullptr) {
- qDebug("not an IPlugin");
+ log::debug("not an IPlugin");
return false;
}
plugin->setProperty("filename", fileName);
@@ -164,7 +164,7 @@ bool PluginContainer::registerPlugin(QObject *plugin, const QString &fileName)
for (QObject *proxiedPlugin : matchingPlugins) {
if (proxiedPlugin != nullptr) {
if (registerPlugin(proxiedPlugin, pluginName)) {
- qDebug("loaded plugin \"%s\"", qUtf8Printable(QFileInfo(pluginName).fileName()));
+ log::debug("loaded plugin \"{}\"", QFileInfo(pluginName).fileName());
}
else {
log::warn(
@@ -191,7 +191,7 @@ bool PluginContainer::registerPlugin(QObject *plugin, const QString &fileName)
}
}
- qDebug("no matching plugin interface");
+ log::debug("no matching plugin interface");
return false;
}
@@ -225,7 +225,7 @@ void PluginContainer::unloadPlugins()
QPluginLoader *loader = m_PluginLoaders.back();
m_PluginLoaders.pop_back();
if ((loader != nullptr) && !loader->unload()) {
- qDebug("failed to unload %s: %s", qUtf8Printable(loader->fileName()), qUtf8Printable(loader->errorString()));
+ log::debug("failed to unload {}: {}", loader->fileName(), loader->errorString());
}
delete loader;
}
@@ -274,13 +274,13 @@ void PluginContainer::loadPlugins()
loadCheck.open(QIODevice::WriteOnly);
QString pluginPath = qApp->applicationDirPath() + "/" + ToQString(AppConfig::pluginPath());
- qDebug("looking for plugins in %s", QDir::toNativeSeparators(pluginPath).toUtf8().constData());
+ log::debug("looking for plugins in {}", QDir::toNativeSeparators(pluginPath));
QDirIterator iter(pluginPath, QDir::Files | QDir::NoDotAndDotDot);
while (iter.hasNext()) {
iter.next();
if (m_Organizer->settings().pluginBlacklisted(iter.fileName())) {
- qDebug("plugin \"%s\" blacklisted", qUtf8Printable(iter.fileName()));
+ log::debug("plugin \"{}\" blacklisted", iter.fileName());
continue;
}
loadCheck.write(iter.fileName().toUtf8());
@@ -296,7 +296,7 @@ void PluginContainer::loadPlugins()
pluginName, pluginLoader->errorString());
} else {
if (registerPlugin(pluginLoader->instance(), pluginName)) {
- qDebug("loaded plugin \"%s\"", qUtf8Printable(QFileInfo(pluginName).fileName()));
+ log::debug("loaded plugin \"{}\"", QFileInfo(pluginName).fileName());
m_PluginLoaders.push_back(pluginLoader.release());
} else {
m_FailedPlugins.push_back(pluginName);
diff --git a/src/pluginlist.cpp b/src/pluginlist.cpp
index e436d7f6..6718641f 100644
--- a/src/pluginlist.cpp
+++ b/src/pluginlist.cpp
@@ -481,7 +481,7 @@ void PluginList::writeLockedOrder(const QString &fileName) const
file->write(QString("%1|%2\r\n").arg(iter->first).arg(iter->second).toUtf8());
}
file.commit();
- qDebug("%s saved", qUtf8Printable(QDir::toNativeSeparators(fileName)));
+ log::debug("{} saved", QDir::toNativeSeparators(fileName));
}
@@ -506,7 +506,7 @@ void PluginList::saveTo(const QString &lockedOrderFileName
}
}
if (deleterFile.commitIfDifferent(m_LastSaveHash[deleterFileName])) {
- qDebug("%s saved", qUtf8Printable(QDir::toNativeSeparators(deleterFileName)));
+ log::debug("{} saved", QDir::toNativeSeparators(deleterFileName));
}
} else if (QFile::exists(deleterFileName)) {
shellDelete(QStringList() << deleterFileName);
@@ -521,7 +521,7 @@ bool PluginList::saveLoadOrder(DirectoryEntry &directoryStructure)
return true;
}
- qDebug("setting file times on esps");
+ log::debug("setting file times on esps");
for (ESPInfo &esp : m_ESPs) {
std::wstring espName = ToWString(esp.m_Name);
diff --git a/src/profile.cpp b/src/profile.cpp
index 555de89a..27616986 100644
--- a/src/profile.cpp
+++ b/src/profile.cpp
@@ -40,7 +40,6 @@ along with Mod Organizer. If not, see .
#include
#include
#include // for QStringList
-#include // for qDebug, qWarning, etc
#include // for qUtf8Printable
#include
#include
@@ -232,7 +231,6 @@ void Profile::doWriteModlist()
}
for (std::map::const_reverse_iterator iter = m_ModIndexByPriority.crbegin(); iter != m_ModIndexByPriority.crend(); iter++ ) {
- //qDebug(QString("write mod %1 to priority %2").arg(iter->first).arg(iter->second).toLocal8Bit());
// the priority order was inverted on load so it has to be inverted again
unsigned int index = iter->second;
if (index != UINT_MAX) {
@@ -253,7 +251,7 @@ void Profile::doWriteModlist()
}
if (file.commitIfDifferent(m_LastModlistHash)) {
- qDebug("%s saved", qUtf8Printable(QDir::toNativeSeparators(fileName)));
+ log::debug("{} saved", QDir::toNativeSeparators(fileName));
}
} catch (const std::exception &e) {
reportError(tr("failed to write mod list: %1").arg(e.what()));
@@ -292,7 +290,7 @@ void Profile::createTweakedIniFile()
.arg(formatSystemMessageQ(e)));
}
- qDebug("%s saved", qUtf8Printable(QDir::toNativeSeparators(tweakedIni)));
+ log::debug("{} saved", QDir::toNativeSeparators(tweakedIni));
}
// static
@@ -364,8 +362,9 @@ void Profile::renameModInList(QFile &modList, const QString &oldName, const QStr
}
if (renamed)
- qDebug("Renamed %d \"%s\" mod to \"%s\" in %s",
- renamed, qUtf8Printable(oldName), qUtf8Printable(newName), qUtf8Printable(modList.fileName()));
+ log::debug(
+ "Renamed {} \"{}\" mod to \"{}\" in {}",
+ renamed, oldName, newName, modList.fileName());
}
void Profile::refreshModStatus()
@@ -431,8 +430,9 @@ void Profile::refreshModStatus()
modStatusModified = true;
}
} else {
- qDebug("mod not found: \"%s\" (profile \"%s\")",
- qUtf8Printable(modName), qUtf8Printable(m_Directory.path()));
+ log::debug(
+ "mod not found: \"{}\" (profile \"{}\")",
+ modName, m_Directory.path());
// need to rewrite the modlist to fix this
modStatusModified = true;
}
diff --git a/src/qtgroupingproxy.cpp b/src/qtgroupingproxy.cpp
index 5fcb84d3..ff9539d7 100644
--- a/src/qtgroupingproxy.cpp
+++ b/src/qtgroupingproxy.cpp
@@ -18,11 +18,14 @@
#include "qtgroupingproxy.h"
+#include
#include
#include
#include
+using namespace MOBase;
+
/*!
\class QtGroupingProxy
\brief The QtGroupingProxy class will group source model rows by adding a new top tree-level.
@@ -86,7 +89,6 @@ QtGroupingProxy::setGroupedColumn( int groupedColumn )
QList
QtGroupingProxy::belongsTo( const QModelIndex &idx )
{
- //qDebug() << __FILE__ << __FUNCTION__;
QList rowDataList;
//get all the data for this index from the model
@@ -106,7 +108,7 @@ QtGroupingProxy::belongsTo( const QModelIndex &idx )
i.next();
int role = i.key();
QVariant variant = i.value();
- // qDebug() << "role " << role << " : (" << variant.typeName() << ") : "<< variant;
+
if ( variant.type() == QVariant::List )
{
//a list of variants get's expanded to multiple rows
@@ -162,7 +164,7 @@ QtGroupingProxy::buildTree()
m_parentCreateList.clear();
int max = sourceModel()->rowCount( m_rootNode );
- //qDebug() << QString("building tree with %1 leafs.").arg( max );
+
//WARNING: these have to be added in order because the addToGroups function is optimized for
//modelRowsInserted(). Failure to do so will result in wrong data shown in the view at best.
for( int row = 0; row < max; row++ )
@@ -232,9 +234,6 @@ QtGroupingProxy::addSourceRow( const QModelIndex &idx )
int updatedGroup = -1;
if( !data.isEmpty() )
{
- // qDebug() << QString("index %1 belongs to group %2").arg( row )
- // .arg( data[0][Qt::DisplayRole].toString() );
-
foreach( const RowData &cachedData, m_groupMaps )
{
//when this matches the index belongs to an existing group
@@ -316,21 +315,12 @@ QtGroupingProxy::indexOfParentCreate( const QModelIndex &parent ) const
pc.row = parent.row();
m_parentCreateList << pc;
- //dumpParentCreateList();
- // qDebug() << QString( "m_parentCreateList: (%1)" ).arg( m_parentCreateList.size() );
- // for( int i = 0 ; i < m_parentCreateList.size() ; i++ )
- // {
- // qDebug() << i << " : " << m_parentCreateList[i].parentCreateIndex <<
- // " | " << m_parentCreateList[i].row;
- // }
-
return m_parentCreateList.size() - 1;
}
QModelIndex
QtGroupingProxy::index( int row, int column, const QModelIndex &parent ) const
{
- // qDebug() << "index requested for: (" << row << "," << column << "), " << parent;
if( !hasIndex(row, column, parent) ) {
return QModelIndex();
}
@@ -350,17 +340,15 @@ QtGroupingProxy::index( int row, int column, const QModelIndex &parent ) const
QModelIndex
QtGroupingProxy::parent( const QModelIndex &index ) const
{
- //qDebug() << "parent: " << index;
if( !index.isValid() )
return QModelIndex();
int parentCreateIndex = index.internalId();
- //qDebug() << "parentCreateIndex: " << parentCreateIndex;
if( parentCreateIndex == -1 || parentCreateIndex >= m_parentCreateList.count() )
return QModelIndex();
struct ParentCreate pc = m_parentCreateList[parentCreateIndex];
- //qDebug() << "parentCreate: (" << pc.parentCreateIndex << "," << pc.row << ")";
+
//only items at column 0 have children
return createIndex( pc.row, 0, pc.parentCreateIndex );
}
@@ -368,12 +356,10 @@ QtGroupingProxy::parent( const QModelIndex &index ) const
int
QtGroupingProxy::rowCount( const QModelIndex &index ) const
{
- //qDebug() << "rowCount: " << index;
if( !index.isValid() )
{
//the number of top level groups + the number of non-grouped items
int rows = m_groupMaps.count() + m_groupHash.value( std::numeric_limits::max() ).count();
- //qDebug() << rows << " in root group";
return rows;
}
@@ -382,12 +368,10 @@ QtGroupingProxy::rowCount( const QModelIndex &index ) const
{
qint64 groupIndex = index.row();
int rows = m_groupHash.value( groupIndex ).count();
- //qDebug() << rows << " in group " << m_groupMaps[groupIndex];
return rows;
} else {
QModelIndex originalIndex = mapToSource( index );
int rowCount = sourceModel()->rowCount( originalIndex );
- //qDebug() << "original item: rowCount == " << rowCount;
return rowCount;
}
}
@@ -447,7 +431,7 @@ QtGroupingProxy::data( const QModelIndex &index, int role ) const
{
if( !index.isValid() )
return QVariant();
- // qDebug() << __FUNCTION__ << index << " role: " << role;
+
int row = index.row();
int column = index.column();
if( isGroup( index ) )
@@ -495,11 +479,9 @@ QtGroupingProxy::data( const QModelIndex &index, int role ) const
}
}
- //qDebug() << __FUNCTION__ << "is a group";
//use cached or precalculated data
if( m_groupMaps[row][column].contains( Qt::DisplayRole ) )
{
- // qDebug() << "Using cached data for " << row << "x" << column << ": " << m_groupMaps[row][column].value(Qt::DisplayRole).toString();
if ((m_flags & FLAG_NOGROUPNAME) != 0) {
QModelIndex parentIndex = this->index( row, 0, index.parent() );
QModelIndex childIndex = this->index( 0, column, parentIndex );
@@ -526,18 +508,17 @@ QtGroupingProxy::data( const QModelIndex &index, int role ) const
function = mapToSource(childIndex).data(m_aggregateRole).toInt();
}
- //qDebug() << __FUNCTION__ << "childCount: " << childCount;
//Need a parentIndex with column == 0 because only those have children.
QModelIndex parentIndex = this->index( row, 0, index.parent() );
for( int childRow = 0; childRow < childCount; childRow++ )
{
QModelIndex childIndex = this->index( childRow, column, parentIndex );
QVariant data = mapToSource( childIndex ).data( role );
- //qDebug() << __FUNCTION__ << data << QVariant::typeToName(data.type());
+
if( data.isValid() && !variantsOfChildren.contains( data ) )
variantsOfChildren << data;
}
- //qDebug() << "gathered this data from children: " << variantsOfChildren;
+
//saving in cache
ItemData roleMap = m_groupMaps[row].value( column );
foreach( const QVariant &variant, variantsOfChildren )
@@ -547,8 +528,6 @@ QtGroupingProxy::data( const QModelIndex &index, int role ) const
}
}
- //qDebug() << QString("roleMap[%1]:").arg(role) << roleMap[role];
-
if( variantsOfChildren.count() == 0 )
return QVariant();
@@ -621,34 +600,30 @@ QtGroupingProxy::isGroup( const QModelIndex &index ) const
QModelIndex
QtGroupingProxy::mapToSource( const QModelIndex &index ) const
{
- //qDebug() << "mapToSource: " << index;
if( !index.isValid() ) {
return m_rootNode;
}
if( isGroup( index ) )
{
- //qDebug() << "is a group: " << index.data( Qt::DisplayRole ).toString();
return m_rootNode;
}
QModelIndex proxyParent = index.parent();
- //qDebug() << "parent: " << proxyParent;
QModelIndex originalParent = mapToSource( proxyParent );
- //qDebug() << "originalParent: " << originalParent;
+
int originalRow = index.row();
if( originalParent == m_rootNode )
{
int indexInGroup = index.row();
if( !proxyParent.isValid() )
indexInGroup -= m_groupMaps.count();
- //qDebug() << "indexInGroup" << indexInGroup;
+
QList childRows = m_groupHash.value( proxyParent.row() );
if( childRows.isEmpty() || indexInGroup >= childRows.count() || indexInGroup < 0 )
return QModelIndex();
originalRow = childRows.at( indexInGroup );
- //qDebug() << "originalRow: " << originalRow;
}
return sourceModel()->index( originalRow, index.column(), originalParent );
}
@@ -674,7 +649,7 @@ QtGroupingProxy::mapFromSource( const QModelIndex &idx ) const
QModelIndex proxyParent;
QModelIndex sourceParent = idx.parent();
- //qDebug() << "sourceParent: " << sourceParent;
+
int proxyRow = idx.row();
int sourceRow = idx.row();
@@ -708,15 +683,12 @@ QtGroupingProxy::mapFromSource( const QModelIndex &idx ) const
proxyParent = QModelIndex();
// if the proxy item is not in a group it will be below the groups.
int groupLength = m_groupMaps.count();
- //qDebug() << "groupNames length: " << groupLength;
int i = m_groupHash.value( std::numeric_limits::max() ).indexOf( sourceRow );
- //qDebug() << "index in hash: " << i;
+
proxyRow = groupLength + i;
}
}
- //qDebug() << "proxyParent: " << proxyParent;
- //qDebug() << "proxyRow: " << proxyRow;
return this->index( proxyRow, idx.column(), proxyParent );
}
@@ -731,9 +703,9 @@ QtGroupingProxy::flags( const QModelIndex &idx ) const
return 0;
}
+
//only if the grouped column has the editable flag set allow the
//actions leading to setData on the source (edit & drop)
- // qDebug() << idx;
if( isGroup( idx ) )
{
// dumpGroups();
@@ -749,7 +721,7 @@ QtGroupingProxy::flags( const QModelIndex &idx ) const
m_rootNode.parent() );
if ( (originalIdx.flags() & Qt::ItemIsUserCheckable) == 0 )
{
- qDebug("row %d is not checkable", originalRow);
+ log::debug("row {} is not checkable", originalRow);
checkable = false;
}
}
@@ -892,9 +864,7 @@ QtGroupingProxy::modelRowsAboutToBeInserted( const QModelIndex &parent, int star
if( parent != m_rootNode )
{
//an item will be added to an original index, remap and pass it on
- // qDebug() << parent;
QModelIndex proxyParent = mapFromSource( parent );
- // qDebug() << proxyParent;
beginInsertRows( proxyParent, start, end );
}
}
@@ -914,7 +884,12 @@ QtGroupingProxy::modelRowsInserted( const QModelIndex &parent, int start, int en
{
//an item was added to an original index, remap and pass it on
QModelIndex proxyParent = mapFromSource( parent );
- qDebug() << proxyParent;
+
+ QString s;
+ QDebug debug(&s);
+ debug << proxyParent;
+ log::debug("{}", s);
+
//beginInsertRows had to be called in modelRowsAboutToBeInserted()
endInsertRows();
}
@@ -951,9 +926,7 @@ QtGroupingProxy::modelRowsAboutToBeRemoved( const QModelIndex &parent, int start
else
{
//child item(s) of an original item will be removed, remap and pass it on
- // qDebug() << parent;
QModelIndex proxyParent = mapFromSource( parent );
- // qDebug() << proxyParent;
beginRemoveRows( proxyParent, start, end );
}
}
@@ -1044,16 +1017,24 @@ QtGroupingProxy::isAGroupSelected( const QModelIndexList& list ) const
void
QtGroupingProxy::dumpGroups() const
{
- qDebug() << "m_groupHash: ";
+ QString s;
+ QDebug debug(&s);
+
+ debug << "m_groupHash:\n";
for( int groupIndex = -1; groupIndex < m_groupHash.keys().count() - 1; groupIndex++ )
{
- qDebug() << groupIndex << " : " << m_groupHash.value( groupIndex );
+ debug << groupIndex << " : " << m_groupHash.value( groupIndex ) << "\n";
}
- qDebug() << "m_groupMaps: ";
+ debug << "m_groupMaps:\n";
for( int groupIndex = 0; groupIndex < m_groupMaps.count(); groupIndex++ )
- qDebug() << m_groupMaps[groupIndex] << ": " << m_groupHash.value( groupIndex );
- qDebug() << m_groupHash.value( std::numeric_limits::max() );
+ {
+ debug << m_groupMaps[groupIndex] << ": " << m_groupHash.value( groupIndex ) << "\n";
+ }
+
+ debug << m_groupHash.value( std::numeric_limits::max() );
+
+ log::debug("{}", s);
}
diff --git a/src/selfupdater.cpp b/src/selfupdater.cpp
index e967b27c..0ca39b19 100644
--- a/src/selfupdater.cpp
+++ b/src/selfupdater.cpp
@@ -150,23 +150,23 @@ void SelfUpdater::testForUpdate()
VersionInfo newestVer(newest["tag_name"].toString());
if (newestVer > this->m_MOVersion) {
m_UpdateCandidate = newest;
- qDebug("update available: %s -> %s",
- qUtf8Printable(this->m_MOVersion.displayString(3)),
- qUtf8Printable(newestVer.displayString(3)));
+ log::debug("update available: {} -> {}",
+ this->m_MOVersion.displayString(3),
+ newestVer.displayString(3));
emit updateAvailable();
} else if (newestVer < this->m_MOVersion) {
// this could happen if the user switches from using prereleases to
// stable builds. Should we downgrade?
- qDebug("This version is newer than the latest released one: %s -> %s",
- qUtf8Printable(this->m_MOVersion.displayString(3)),
- qUtf8Printable(newestVer.displayString(3)));
+ log::debug("This version is newer than the latest released one: {} -> {}",
+ this->m_MOVersion.displayString(3),
+ newestVer.displayString(3));
}
}
});
}
//Catch all is bad by design, should be improved
catch (...) {
- qDebug("Unable to connect to github.com to check version");
+ log::debug("Unable to connect to github.com to check version");
}
}
@@ -230,7 +230,7 @@ void SelfUpdater::closeProgress()
void SelfUpdater::openOutputFile(const QString &fileName)
{
QString outputPath = QDir::fromNativeSeparators(qApp->property("dataPath").toString()) + "/" + fileName;
- qDebug("downloading to %s", qUtf8Printable(outputPath));
+ log::debug("downloading to {}", outputPath);
m_UpdateFile.setFileName(outputPath);
m_UpdateFile.open(QIODevice::WriteOnly);
}
@@ -312,7 +312,7 @@ void SelfUpdater::downloadFinished()
return;
}
- qDebug("download: %s", m_UpdateFile.fileName().toUtf8().constData());
+ log::debug("download: {}", m_UpdateFile.fileName());
try {
installUpdate();
diff --git a/src/settings.cpp b/src/settings.cpp
index 9c303442..ff5b9976 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -54,7 +54,6 @@ along with Mod Organizer. If not, see .
#include
#include // for Qt::UserRole, etc
-#include // for qDebug, qWarning
#include // For ShellExecuteW, HINSTANCE, etc
#include // For storage
@@ -635,7 +634,7 @@ void Settings::updateServers(const QList &servers)
QVariantMap val = m_Settings.value(key).toMap();
QDate lastSeen = val["lastSeen"].toDate();
if (lastSeen.daysTo(now) > 30) {
- qDebug("removing server %s since it hasn't been available for downloads in over a month", qUtf8Printable(key));
+ log::debug("removing server {} since it hasn't been available for downloads in over a month", key);
m_Settings.remove(key);
}
}
@@ -758,10 +757,10 @@ void Settings::query(PluginContainer *pluginContainer, QWidget *parent)
if (m_Settings.value(k).toString() != before[k] && !k.contains("username") && !k.contains("password"))
{
if (first_update) {
- qDebug("Changed settings:");
+ log::debug("Changed settings:");
first_update = false;
}
- qDebug(" %s=%s", k.toUtf8().data(), m_Settings.value(k).toString().toUtf8().data());
+ log::debug(" {}={}", k, m_Settings.value(k).toString());
}
m_Settings.endGroup();
}
diff --git a/src/usvfsconnector.cpp b/src/usvfsconnector.cpp
index 197955b8..5918c8a5 100644
--- a/src/usvfsconnector.cpp
+++ b/src/usvfsconnector.cpp
@@ -60,8 +60,7 @@ LogWorker::LogWorker()
"yyyy-MM-dd_hh-mm-ss")))
{
m_LogFile.open(QIODevice::WriteOnly);
- qDebug("usvfs log messages are written to %s",
- qUtf8Printable(m_LogFile.fileName()));
+ log::debug("usvfs log messages are written to {}", m_LogFile.fileName());
}
LogWorker::~LogWorker()
@@ -129,7 +128,10 @@ UsvfsConnector::UsvfsConnector()
USVFSInitParameters(¶ms, SHMID, false, level, dumpType, dumpPath.c_str());
InitLogging(false);
- qDebug("Initializing VFS <%s, %d, %d, %s>", params.instanceName, params.logLevel, params.crashDumpsType, params.crashDumpsPath);
+ log::debug(
+ "Initializing VFS <{}, {}, {}, {}>",
+ params.instanceName, static_cast(params.logLevel),
+ static_cast(params.crashDumpsType), params.crashDumpsPath);
CreateVFS(¶ms);
@@ -168,7 +170,7 @@ void UsvfsConnector::updateMapping(const MappingType &mapping)
int files = 0;
int dirs = 0;
- qDebug("Updating VFS mappings...");
+ log::debug("Updating VFS mappings...");
ClearVirtualMappings();
@@ -196,14 +198,7 @@ void UsvfsConnector::updateMapping(const MappingType &mapping)
}
}
- qDebug("VFS mappings updated ", dirs, files);
- /*
- size_t dumpSize = 0;
- CreateVFSDump(nullptr, &dumpSize);
- std::unique_ptr buffer(new char[dumpSize]);
- CreateVFSDump(buffer.get(), &dumpSize);
- qDebug(buffer.get());
- */
+ log::debug("VFS mappings updated ", dirs, files);
}
void UsvfsConnector::updateParams(
--
cgit v1.3.1