[Qt] allow setting listen via GUI
- add DEFAULT_LISTEN in net.h and use in the code (shared setting between core and GUI) Important: This makes it obvious, that we need to re-think the settings/options handling, as GUI settings are processed before any parameter-interaction (which is mostly important for network stuff) in AppInit2()!
This commit is contained in:
@@ -242,6 +242,16 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="allowIncoming">
|
||||
<property name="toolTip">
|
||||
<string>Accept connections from outside</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Allow incoming connections</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="connectSocks">
|
||||
<property name="toolTip">
|
||||
|
||||
@@ -151,6 +151,7 @@ void OptionsDialog::setModel(OptionsModel *model)
|
||||
/* Wallet */
|
||||
connect(ui->spendZeroConfChange, SIGNAL(clicked(bool)), this, SLOT(showRestartWarning()));
|
||||
/* Network */
|
||||
connect(ui->allowIncoming, SIGNAL(clicked(bool)), this, SLOT(showRestartWarning()));
|
||||
connect(ui->connectSocks, SIGNAL(clicked(bool)), this, SLOT(showRestartWarning()));
|
||||
/* Display */
|
||||
connect(ui->lang, SIGNAL(valueChanged()), this, SLOT(showRestartWarning()));
|
||||
@@ -171,6 +172,7 @@ void OptionsDialog::setMapper()
|
||||
|
||||
/* Network */
|
||||
mapper->addMapping(ui->mapPortUpnp, OptionsModel::MapPortUPnP);
|
||||
mapper->addMapping(ui->allowIncoming, OptionsModel::Listen);
|
||||
|
||||
mapper->addMapping(ui->connectSocks, OptionsModel::ProxyUse);
|
||||
mapper->addMapping(ui->proxyIp, OptionsModel::ProxyIP);
|
||||
|
||||
@@ -110,6 +110,11 @@ void OptionsModel::Init()
|
||||
if (!SoftSetBoolArg("-upnp", settings.value("fUseUPnP").toBool()))
|
||||
addOverriddenOption("-upnp");
|
||||
|
||||
if (!settings.contains("fListen"))
|
||||
settings.setValue("fListen", DEFAULT_LISTEN);
|
||||
if (!SoftSetBoolArg("-listen", settings.value("fListen").toBool()))
|
||||
addOverriddenOption("-listen");
|
||||
|
||||
if (!settings.contains("fUseProxy"))
|
||||
settings.setValue("fUseProxy", false);
|
||||
if (!settings.contains("addrProxy"))
|
||||
@@ -214,6 +219,8 @@ QVariant OptionsModel::data(const QModelIndex & index, int role) const
|
||||
return settings.value("nDatabaseCache");
|
||||
case ThreadsScriptVerif:
|
||||
return settings.value("nThreadsScriptVerif");
|
||||
case Listen:
|
||||
return settings.value("fListen");
|
||||
default:
|
||||
return QVariant();
|
||||
}
|
||||
@@ -339,6 +346,12 @@ bool OptionsModel::setData(const QModelIndex & index, const QVariant & value, in
|
||||
setRestartRequired(true);
|
||||
}
|
||||
break;
|
||||
case Listen:
|
||||
if (settings.value("fListen") != value) {
|
||||
settings.setValue("fListen", value);
|
||||
setRestartRequired(true);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -42,6 +42,7 @@ public:
|
||||
ThreadsScriptVerif, // int
|
||||
DatabaseCache, // int
|
||||
SpendZeroConfChange, // bool
|
||||
Listen, // bool
|
||||
OptionIDRowCount,
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user