mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-04-04 04:45:10 +02:00
[gui] add explicit prune setter
This makes it possible to enable pruning after the OptionsModel has been initialized and reset.
This commit is contained in:
@@ -92,11 +92,7 @@ void OptionsModel::Init(bool resetSettings)
|
||||
settings.setValue("bPrune", false);
|
||||
if (!settings.contains("nPruneSize"))
|
||||
settings.setValue("nPruneSize", 2);
|
||||
// Convert prune size from GB to MiB:
|
||||
const uint64_t nPruneSizeMiB = (settings.value("nPruneSize").toInt() * GB_BYTES) >> 20;
|
||||
if (!m_node.softSetArg("-prune", settings.value("bPrune").toBool() ? std::to_string(nPruneSizeMiB) : "0")) {
|
||||
addOverriddenOption("-prune");
|
||||
}
|
||||
SetPrune(settings.value("bPrune").toBool());
|
||||
|
||||
if (!settings.contains("nDatabaseCache"))
|
||||
settings.setValue("nDatabaseCache", (qint64)nDefaultDbCache);
|
||||
@@ -240,6 +236,22 @@ static const QString GetDefaultProxyAddress()
|
||||
return QString("%1:%2").arg(DEFAULT_GUI_PROXY_HOST).arg(DEFAULT_GUI_PROXY_PORT);
|
||||
}
|
||||
|
||||
void OptionsModel::SetPrune(bool prune, bool force)
|
||||
{
|
||||
QSettings settings;
|
||||
settings.setValue("bPrune", prune);
|
||||
// Convert prune size from GB to MiB:
|
||||
const uint64_t nPruneSizeMiB = (settings.value("nPruneSize").toInt() * GB_BYTES) >> 20;
|
||||
std::string prune_val = prune ? std::to_string(nPruneSizeMiB) : "0";
|
||||
if (force) {
|
||||
m_node.forceSetArg("-prune", prune_val);
|
||||
return;
|
||||
}
|
||||
if (!m_node.softSetArg("-prune", prune_val)) {
|
||||
addOverriddenOption("-prune");
|
||||
}
|
||||
}
|
||||
|
||||
// read QSettings values and return them
|
||||
QVariant OptionsModel::data(const QModelIndex & index, int role) const
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user