mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-02-19 03:49:16 +00:00
Use a messagebox to display the error when -server is provided without providing a rpc password
(plus part of 7cfbe1fee465e82ddbdc8ed17dfcce791bd765f5)
This commit is contained in:
parent
724c65c1f8
commit
91d7e847e0
@ -2174,7 +2174,7 @@ void ThreadRPCServer2(void* parg)
|
||||
strWhatAmI = strprintf(_("To use the %s option"), "\"-server\"");
|
||||
else if (mapArgs.count("-daemon"))
|
||||
strWhatAmI = strprintf(_("To use the %s option"), "\"-daemon\"");
|
||||
PrintConsole(
|
||||
ThreadSafeMessageBox(strprintf(
|
||||
_("Error: %s, you must set a rpcpassword in the configuration file:\n %s\n"
|
||||
"It is recommended you use the following random password:\n"
|
||||
"rpcuser=bitcoinrpc\n"
|
||||
@ -2183,7 +2183,8 @@ void ThreadRPCServer2(void* parg)
|
||||
"If the file does not exist, create it with owner-readable-only file permissions.\n"),
|
||||
strWhatAmI.c_str(),
|
||||
GetConfigFile().c_str(),
|
||||
EncodeBase58(&rand_pwd[0],&rand_pwd[0]+32).c_str());
|
||||
EncodeBase58(&rand_pwd[0],&rand_pwd[0]+32).c_str()),
|
||||
_("Error"), wxOK | wxMODAL);
|
||||
#ifndef QT_GUI
|
||||
CreateThread(Shutdown, NULL);
|
||||
#endif
|
||||
|
||||
@ -36,6 +36,8 @@ typedef void wxWindow;
|
||||
#define wxHELP 0x00008000
|
||||
#define wxMORE 0x00010000
|
||||
#define wxSETUP 0x00020000
|
||||
// Force blocking, modal message box dialog (not just notification)
|
||||
#define wxMODAL 0x00040000
|
||||
|
||||
inline int MyMessageBox(const std::string& message, const std::string& caption="Message", int style=wxOK, wxWindow* parent=NULL, int x=-1, int y=-1)
|
||||
{
|
||||
|
||||
@ -41,12 +41,19 @@ int MyMessageBox(const std::string& message, const std::string& caption, int sty
|
||||
|
||||
int ThreadSafeMessageBox(const std::string& message, const std::string& caption, int style, wxWindow* parent, int x, int y)
|
||||
{
|
||||
bool modal = style & wxMODAL;
|
||||
|
||||
if (modal)
|
||||
while (!guiref)
|
||||
sleep(1);
|
||||
|
||||
// Message from network thread
|
||||
if(guiref)
|
||||
{
|
||||
QMetaObject::invokeMethod(guiref, "error", Qt::QueuedConnection,
|
||||
Q_ARG(QString, QString::fromStdString(caption)),
|
||||
Q_ARG(QString, QString::fromStdString(message)));
|
||||
Q_ARG(QString, QString::fromStdString(message)),
|
||||
Q_ARG(bool, modal));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -516,10 +516,15 @@ void BitcoinGUI::refreshStatusBar()
|
||||
setNumBlocks(clientModel->getNumBlocks());
|
||||
}
|
||||
|
||||
void BitcoinGUI::error(const QString &title, const QString &message)
|
||||
void BitcoinGUI::error(const QString &title, const QString &message, bool modal)
|
||||
{
|
||||
// Report errors from network/worker thread
|
||||
notificator->notify(Notificator::Critical, title, message);
|
||||
if (modal)
|
||||
{
|
||||
QMessageBox::critical(this, title, message, QMessageBox::Ok, QMessageBox::Ok);
|
||||
} else {
|
||||
notificator->notify(Notificator::Critical, title, message);
|
||||
}
|
||||
}
|
||||
|
||||
void BitcoinGUI::changeEvent(QEvent *e)
|
||||
|
||||
@ -100,7 +100,7 @@ public slots:
|
||||
/** Set the status bar text if there are any warnings (removes sync progress bar if applicable) */
|
||||
void refreshStatusBar();
|
||||
|
||||
void error(const QString &title, const QString &message);
|
||||
void error(const QString &title, const QString &message, bool modal = false);
|
||||
/* It is currently not possible to pass a return value to another thread through
|
||||
BlockingQueuedConnection, so use an indirected pointer.
|
||||
http://bugreports.qt.nokia.com/browse/QTBUG-10440
|
||||
|
||||
@ -35,6 +35,8 @@ typedef void wxWindow;
|
||||
#define wxHELP 0x00008000
|
||||
#define wxMORE 0x00010000
|
||||
#define wxSETUP 0x00020000
|
||||
// Force blocking, modal message box dialog (not just notification)
|
||||
#define wxMODAL 0x00040000
|
||||
|
||||
extern int MyMessageBox(const std::string& message, const std::string& caption="Message", int style=wxOK, wxWindow* parent=NULL, int x=-1, int y=-1);
|
||||
#define wxMessageBox MyMessageBox
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user