mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-12-17 08:06:59 +01:00
update SelectParamsFromCommandLine() handling/order
- move SelectParamsFromCommandLine() from init.cpp to bitcoin.cpp to allow
to use TestNet() for Bitcoin-Qt instead of GetBoolArg("-testnet", false)
- change order in bitcoind.cpp to match bitcoin.cpp functionality
- hamonize error message strings for missing datadir and failing
SelectParamsFromCommandLine() in bitcoin.cpp and bitcoind.cpp
- use TestNet() call in splashscreen.cpp
This commit is contained in:
committed by
Gavin Andresen
parent
3624356e82
commit
a2189fbaf6
@@ -154,10 +154,23 @@ static void initTranslations(QTranslator &qtTranslatorBase, QTranslator &qtTrans
|
||||
#ifndef BITCOIN_QT_TEST
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
bool fMissingDatadir = false;
|
||||
bool fSelParFromCLFailed = false;
|
||||
|
||||
fHaveGUI = true;
|
||||
|
||||
// Command-line options take precedence:
|
||||
ParseParameters(argc, argv);
|
||||
// ... then bitcoin.conf:
|
||||
if (!boost::filesystem::is_directory(GetDataDir(false))) {
|
||||
fMissingDatadir = true;
|
||||
} else {
|
||||
ReadConfigFile(mapArgs, mapMultiArgs);
|
||||
}
|
||||
// Check for -testnet or -regtest parameter (TestNet() calls are only valid after this clause)
|
||||
if (!SelectParamsFromCommandLine()) {
|
||||
fSelParFromCLFailed = true;
|
||||
}
|
||||
|
||||
#if QT_VERSION < 0x050000
|
||||
// Internal string conversion is all UTF-8
|
||||
@@ -175,7 +188,7 @@ int main(int argc, char *argv[])
|
||||
// as it is used to locate QSettings)
|
||||
QApplication::setOrganizationName("Bitcoin");
|
||||
QApplication::setOrganizationDomain("bitcoin.org");
|
||||
if (GetBoolArg("-testnet", false)) // Separate UI settings for testnet
|
||||
if (TestNet()) // Separate UI settings for testnet
|
||||
QApplication::setApplicationName("Bitcoin-Qt-testnet");
|
||||
else
|
||||
QApplication::setApplicationName("Bitcoin-Qt");
|
||||
@@ -184,6 +197,17 @@ int main(int argc, char *argv[])
|
||||
QTranslator qtTranslatorBase, qtTranslator, translatorBase, translator;
|
||||
initTranslations(qtTranslatorBase, qtTranslator, translatorBase, translator);
|
||||
|
||||
// Now that translations are initialized check for errors and allow a translatable error message
|
||||
if (fMissingDatadir) {
|
||||
QMessageBox::critical(0, QObject::tr("Bitcoin"),
|
||||
QObject::tr("Error: Specified data directory \"%1\" does not exist.").arg(QString::fromStdString(mapArgs["-datadir"])));
|
||||
return 1;
|
||||
}
|
||||
else if (fSelParFromCLFailed) {
|
||||
QMessageBox::critical(0, QObject::tr("Bitcoin"), QObject::tr("Error: Invalid combination of -regtest and -testnet."));
|
||||
return 1;
|
||||
}
|
||||
|
||||
// User language is set up: pick a data directory
|
||||
Intro::pickDataDirectory();
|
||||
|
||||
@@ -196,16 +220,7 @@ int main(int argc, char *argv[])
|
||||
// Install global event filter that makes sure that long tooltips can be word-wrapped
|
||||
app.installEventFilter(new GUIUtil::ToolTipToRichTextFilter(TOOLTIP_WRAP_THRESHOLD, &app));
|
||||
|
||||
// ... then bitcoin.conf:
|
||||
if (!boost::filesystem::is_directory(GetDataDir(false)))
|
||||
{
|
||||
QMessageBox::critical(0, QObject::tr("Bitcoin"),
|
||||
QObject::tr("Error: Specified data directory \"%1\" does not exist.").arg(QString::fromStdString(mapArgs["-datadir"])));
|
||||
return 1;
|
||||
}
|
||||
ReadConfigFile(mapArgs, mapMultiArgs);
|
||||
|
||||
// ... then GUI settings:
|
||||
// ... now GUI settings:
|
||||
OptionsModel optionsModel;
|
||||
|
||||
// Subscribe to global signals from core
|
||||
@@ -245,7 +260,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
boost::thread_group threadGroup;
|
||||
|
||||
BitcoinGUI window(GetBoolArg("-testnet", false), 0);
|
||||
BitcoinGUI window(TestNet(), 0);
|
||||
guiref = &window;
|
||||
|
||||
QTimer* pollShutdownTimer = new QTimer(guiref);
|
||||
|
||||
Reference in New Issue
Block a user