|
|
@ -57,9 +57,11 @@ |
|
|
|
#include "logger.h" |
|
|
|
#include "logger.h" |
|
|
|
#include "preferences.h" |
|
|
|
#include "preferences.h" |
|
|
|
|
|
|
|
|
|
|
|
Preferences* Preferences::m_instance = 0; |
|
|
|
Preferences *Preferences::m_instance = 0; |
|
|
|
|
|
|
|
|
|
|
|
Preferences::Preferences() {} |
|
|
|
Preferences::Preferences() |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Preferences *Preferences::instance() |
|
|
|
Preferences *Preferences::instance() |
|
|
|
{ |
|
|
|
{ |
|
|
@ -193,6 +195,7 @@ void Preferences::setCloseToTray(bool b) |
|
|
|
{ |
|
|
|
{ |
|
|
|
setValue("Preferences/General/CloseToTray", b); |
|
|
|
setValue("Preferences/General/CloseToTray", b); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
bool Preferences::isToolbarDisplayed() const |
|
|
|
bool Preferences::isToolbarDisplayed() const |
|
|
@ -264,6 +267,7 @@ void Preferences::setWinStartup(bool b) |
|
|
|
settings.remove("qBittorrent"); |
|
|
|
settings.remove("qBittorrent"); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
// Downloads
|
|
|
|
// Downloads
|
|
|
@ -740,6 +744,7 @@ void Preferences::useSystemIconTheme(bool enabled) |
|
|
|
{ |
|
|
|
{ |
|
|
|
setValue("Preferences/Advanced/useSystemIconTheme", enabled); |
|
|
|
setValue("Preferences/Advanced/useSystemIconTheme", enabled); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
bool Preferences::recursiveDownloadDisabled() const |
|
|
|
bool Preferences::recursiveDownloadDisabled() const |
|
|
@ -753,7 +758,8 @@ void Preferences::disableRecursiveDownload(bool disable) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#ifdef Q_OS_WIN |
|
|
|
#ifdef Q_OS_WIN |
|
|
|
namespace { |
|
|
|
namespace |
|
|
|
|
|
|
|
{ |
|
|
|
enum REG_SEARCH_TYPE |
|
|
|
enum REG_SEARCH_TYPE |
|
|
|
{ |
|
|
|
{ |
|
|
|
USER, |
|
|
|
USER, |
|
|
@ -842,7 +848,7 @@ namespace { |
|
|
|
versions.sort(); |
|
|
|
versions.sort(); |
|
|
|
|
|
|
|
|
|
|
|
bool found = false; |
|
|
|
bool found = false; |
|
|
|
while(!found && !versions.empty()) { |
|
|
|
while (!found && !versions.empty()) { |
|
|
|
const QString version = versions.takeLast() + "\\InstallPath"; |
|
|
|
const QString version = versions.takeLast() + "\\InstallPath"; |
|
|
|
LPWSTR lpSubkey = new WCHAR[version.size() + 1]; |
|
|
|
LPWSTR lpSubkey = new WCHAR[version.size() + 1]; |
|
|
|
version.toWCharArray(lpSubkey); |
|
|
|
version.toWCharArray(lpSubkey); |
|
|
@ -872,7 +878,6 @@ namespace { |
|
|
|
|
|
|
|
|
|
|
|
return path; |
|
|
|
return path; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
QString Preferences::getPythonPath() |
|
|
|
QString Preferences::getPythonPath() |
|
|
@ -978,6 +983,7 @@ void Preferences::setMagnetLinkAssoc(bool set) |
|
|
|
|
|
|
|
|
|
|
|
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0); |
|
|
|
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#ifdef Q_OS_MAC |
|
|
|
#ifdef Q_OS_MAC |
|
|
@ -1034,6 +1040,7 @@ void Preferences::setMagnetLinkAssoc() |
|
|
|
CFStringRef myBundleId = CFBundleGetIdentifier(CFBundleGetMainBundle()); |
|
|
|
CFStringRef myBundleId = CFBundleGetIdentifier(CFBundleGetMainBundle()); |
|
|
|
LSSetDefaultHandlerForURLScheme(magnetUrlScheme, myBundleId); |
|
|
|
LSSetDefaultHandlerForURLScheme(magnetUrlScheme, myBundleId); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
int Preferences::getTrackerPort() const |
|
|
|
int Preferences::getTrackerPort() const |
|
|
@ -1056,6 +1063,7 @@ void Preferences::setUpdateCheckEnabled(bool enabled) |
|
|
|
{ |
|
|
|
{ |
|
|
|
setValue("Preferences/Advanced/updateCheck", enabled); |
|
|
|
setValue("Preferences/Advanced/updateCheck", enabled); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
bool Preferences::confirmTorrentDeletion() const |
|
|
|
bool Preferences::confirmTorrentDeletion() const |
|
|
@ -1098,6 +1106,7 @@ void Preferences::setTrayIconStyle(TrayIcon::Style style) |
|
|
|
{ |
|
|
|
{ |
|
|
|
setValue("Preferences/Advanced/TrayIconStyle", style); |
|
|
|
setValue("Preferences/Advanced/TrayIconStyle", style); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
// Stuff that don't appear in the Options GUI but are saved
|
|
|
|
// Stuff that don't appear in the Options GUI but are saved
|
|
|
@ -1163,7 +1172,7 @@ void Preferences::setMainLastDir(const QString &path) |
|
|
|
setValue("MainWindowLastDir", path); |
|
|
|
setValue("MainWindowLastDir", path); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
QSize Preferences::getPrefSize(const QSize& defaultSize) const |
|
|
|
QSize Preferences::getPrefSize(const QSize &defaultSize) const |
|
|
|
{ |
|
|
|
{ |
|
|
|
return value("Preferences/State/size", defaultSize).toSize(); |
|
|
|
return value("Preferences/State/size", defaultSize).toSize(); |
|
|
|
} |
|
|
|
} |
|
|
@ -1393,7 +1402,7 @@ void Preferences::setTransHeaderState(const QByteArray &state) |
|
|
|
setValue("TransferList/qt5/HeaderState", state); |
|
|
|
setValue("TransferList/qt5/HeaderState", state); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//From old RssSettings class
|
|
|
|
// From old RssSettings class
|
|
|
|
bool Preferences::isRSSWidgetEnabled() const |
|
|
|
bool Preferences::isRSSWidgetEnabled() const |
|
|
|
{ |
|
|
|
{ |
|
|
|
return value("GUI/RSSWidget/Enabled", false).toBool(); |
|
|
|
return value("GUI/RSSWidget/Enabled", false).toBool(); |
|
|
@ -1459,10 +1468,9 @@ void Preferences::upgrade() |
|
|
|
QStringList labels = value("TransferListFilters/customLabels").toStringList(); |
|
|
|
QStringList labels = value("TransferListFilters/customLabels").toStringList(); |
|
|
|
if (!labels.isEmpty()) { |
|
|
|
if (!labels.isEmpty()) { |
|
|
|
QVariantMap categories = value("BitTorrent/Session/Categories").toMap(); |
|
|
|
QVariantMap categories = value("BitTorrent/Session/Categories").toMap(); |
|
|
|
foreach (const QString &label, labels) { |
|
|
|
foreach (const QString &label, labels) |
|
|
|
if (!categories.contains(label)) |
|
|
|
if (!categories.contains(label)) |
|
|
|
categories[label] = ""; |
|
|
|
categories[label] = ""; |
|
|
|
} |
|
|
|
|
|
|
|
setValue("BitTorrent/Session/Categories", categories); |
|
|
|
setValue("BitTorrent/Session/Categories", categories); |
|
|
|
SettingsStorage::instance()->removeValue("TransferListFilters/customLabels"); |
|
|
|
SettingsStorage::instance()->removeValue("TransferListFilters/customLabels"); |
|
|
|
} |
|
|
|
} |
|
|
|