On windows, show message box with help, as there is no stderr (fixes #702)

This commit is contained in:
Wladimir J. van der Laan 2012-02-17 17:53:41 +01:00
parent 39231e9105
commit bc5e6b9f21
2 changed files with 9 additions and 12 deletions

View file

@ -246,7 +246,12 @@ bool AppInit2(int argc, char* argv[])
// Remove tabs // Remove tabs
strUsage.erase(std::remove(strUsage.begin(), strUsage.end(), '\t'), strUsage.end()); strUsage.erase(std::remove(strUsage.begin(), strUsage.end(), '\t'), strUsage.end());
#if defined(QT_GUI) && defined(WIN32)
// On windows, show a message box, as there is no stderr
wxMessageBox(strUsage, "Usage");
#else
fprintf(stderr, "%s", strUsage.c_str()); fprintf(stderr, "%s", strUsage.c_str());
#endif
return false; return false;
} }

View file

@ -27,18 +27,10 @@ QSplashScreen *splashref;
int MyMessageBox(const std::string& message, const std::string& caption, int style, wxWindow* parent, int x, int y) int MyMessageBox(const std::string& message, const std::string& caption, int style, wxWindow* parent, int x, int y)
{ {
// Message from main thread // Message from AppInit2(), always in main thread before main window is constructed
if(guiref)
{
guiref->error(QString::fromStdString(caption),
QString::fromStdString(message));
}
else
{
QMessageBox::critical(0, QString::fromStdString(caption), QMessageBox::critical(0, QString::fromStdString(caption),
QString::fromStdString(message), QString::fromStdString(message),
QMessageBox::Ok, QMessageBox::Ok); QMessageBox::Ok, QMessageBox::Ok);
}
return 4; return 4;
} }