LogToFileMsgHandler::LogToFileMsgHandler() { logFile = 0; qint64 appPid = QApplication::applicationPid(); QString logFileName = QString("/tmp/ktechlab-pid-%1-log").arg(appPid); qDebug() << "Starting logging to " << logFileName; logFile = fopen(logFileName.toLatin1().data(), "w+"); if (!logFile) { const int lastErrno = errno; qWarning() << "Failed to create log file" << logFileName << ". errno=" << lastErrno << ", strerror=" << strerror(lastErrno); return; } qInstallMsgHandler(ktlMessageOutput); qDebug() << "logging started to " << logFileName << " by " << this; }
int main(int argc, char **argv) { if (logFileOutput) { #if defined(HAVE_QT5) qInstallMessageHandler(LogFile::msgHandler); #else qInstallMsgHandler(LogFile::msgHandler); #endif } MainApplication app(argc, argv); if (app.isClosing()) return 0; return app.exec(); }
static LoggerPrivate* instance() { LoggerPrivate* result = 0; { result = m_self; } if (!result) { m_self = new LoggerPrivate; qInstallMsgHandler(qtLoggerMessageHandler); qAddPostRoutine(cleanupLoggerPrivate); result = m_self; } return result; }
int main(int argc, char *argv[]) { if (getenv("QT_RADIO_NO_DEBUG")) fOutputDisabled = 1; qInstallMsgHandler(myMessageOutput); // initialize resources, if needed // Q_INIT_RESOURCE(resfile); QApplication app(argc, argv); // create and show your widgets here UI widget; widget.show(); return app.exec(); }
int main(int argc, char* argv[]){ QCoreApplication::setOrganizationName("Ibrahim Sha'ath"); QCoreApplication::setOrganizationDomain("ibrahimshaath.co.uk"); QCoreApplication::setApplicationName(GuiStrings::getInstance()->appName()); // libav setup av_register_all(); av_log_set_level(AV_LOG_ERROR); av_lockmgr_register(NULL); // primitive command line use if(argc > 2){ int cliResult = commandLineInterface(argc,argv); if(cliResult >= 0) return cliResult; } qInstallMsgHandler(LoggingHandler); QApplication a(argc, argv); QTranslator qtTranslator; qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath)); a.installTranslator(&qtTranslator); QString localeParam = "%1/Translations/is_keyfinder_%2.qm"; #if defined Q_OS_MAC QDir dir(QApplication::applicationDirPath()); dir.cdUp(); QString localePath = localeParam.arg(dir.absolutePath()).arg(QLocale::system().name()); #elif defined Q_OS_LINUX QString localePath = localeParam.arg(WORK_CACHEDIR).arg(QLocale::system().name()); #else QString localePath = localeParam.arg(QCoreApplication::applicationDirPath()).arg(QLocale::system().name()); #endif QTranslator myappTranslator; myappTranslator.load(localePath); a.installTranslator(&myappTranslator); MainMenuHandler* menuHandler = new MainMenuHandler(0); menuHandler->new_Batch_Window(true); return a.exec(); }
int main( int argc, char ** argv ) { while (argc > 1) { if (strcmp(argv[--argc], "-d") == 0) { // daemonize openlog(APPNAME, 0, LOG_DAEMON); qInstallMsgHandler(toSyslog); if (daemon_init() != 0) { fprintf(stderr, "%s: Error: Unable to daemonize\n", APPNAME); return 1; } } } OQWSServer a(argc, argv, QApplication::GuiServer); return a.exec(); }
int main(int argc, char **argv) { #ifndef DEBUG qInstallMsgHandler(debugMessagesFilter); #endif QtSingleApplication a(argc, argv); a.setApplicationName("ImageShack Uploader"); a.setOrganizationName("ImageShack"); a.setOrganizationDomain("imageshack.us"); a.setApplicationVersion(VERSION); QStringList filelist; for (int i=1; i< argc; i++) filelist << QString::fromLocal8Bit(argv[i]); if ((argc==2) && (QString(argv[1]) == "-unregister")) { qDebug() << "unregistering..."; #ifdef Q_OS_WIN WindowsExplorerIntegrator().deintegrate(); #endif QSettings sets; sets.clear(); return 0; } if (a.isRunning() && argc>1) { a.sendMessage(filelist.join("\r\n"), 5000); return 0; } MainWindow w; if (filelist.size()) w.commandLineAddFile(filelist.join("\r\n")); QObject::connect(&a, SIGNAL(messageReceived(const QString&)), &w, SLOT(commandLineAddFile(const QString&))); #ifdef Q_OS_WIN WindowsExplorerIntegrator().integrate(); #endif w.show(); return a.exec(); }
int main( int _argc, char* _argv[] ) { try{ App Application(_argc, _argv); QCoreApplication::setOrganizationName("genome-tools"); QCoreApplication::setApplicationName(_APPNAME); gArgs().Init(QCoreApplication::arguments()); for(int j=1; j< _argc;j++) { QString s(_argv[j]); if(s.contains("pass")) for(int i=0;i<s.size();i++) _argv[j][i]='*'; } _logfile.setFileName(gArgs().getArgs("log").toString()); _logfile.open(QIODevice::WriteOnly|QIODevice::Append); #ifdef _WARDROBE_ gSettings().Init(gArgs().getArgs("wardrobe").toString()); #endif #if QT_VERSION >= 0x050000 qInstallMessageHandler(printMsgHandler); #else qInstallMsgHandler(printMsgHandler); #endif FSTM *machine = new FSTM(); QObject::connect(machine,SIGNAL(finished()),QCoreApplication::instance(),SLOT(quit())); QTimer::singleShot(0, machine, SLOT(start())); return Application.exec(); } catch(char *str) { cerr << "Error rised:"<<str << endl; } catch(exception &e ) { cerr << "Caught " << e.what( ) << endl; cerr << "Type " << typeid( e ).name( ) << endl; } catch(...) { } }
int main(int argc, char *argv[]){ qDebug()<<"Starting up."; qInstallMsgHandler(dbgout); qDebug()<<"Debug output is on."<<endl; qDebug()<<"Creating QApplication..."; QApplication a(argc, argv); qDebug()<<"done."<<endl; qDebug()<<"Creating WPI..."; WPI wpi; qDebug()<<"done."<<endl; qDebug()<<"Setting up signals and slots..."; QObject::connect(&a,SIGNAL(aboutToQuit()),&wpi,SLOT(aboutToQuit())); QTimer::singleShot(100,&wpi,SLOT(run())); qDebug()<<"done."<<endl; qDebug()<<"Entering main event loop."<<endl; int rc=a.exec(); qDebug().nospace()<<"Exited main event loop with rc="<<rc<<"."<<endl; qDebug()<<"Quitting."<<endl; return rc; }
int main( int argc, char ** argv ) { qInstallMsgHandler(SysTrace::debug); QApplication app( argc, argv ); #if defined(Q_OS_MAC) QDir dir(QApplication::applicationDirPath()); dir.cdUp(); dir.cd("plugins"); QApplication::addLibraryPath(dir.absolutePath()); #endif QString absolutePath = QCoreApplication::instance()->applicationDirPath(); // portable installation: // check for a configuration file in the program folder. QSettings *user; if(QFileInfo(absolutePath + "/RockboxUtility.ini").isFile()) user = new QSettings(absolutePath + "/RockboxUtility.ini", QSettings::IniFormat, 0); else user = new QSettings(QSettings::IniFormat, QSettings::UserScope, "rockbox.org", "RockboxUtility"); QString applang = QLocale::system().name(); QTranslator translator; QTranslator qttrans; // install translator if(!user->value("lang", "").toString().isEmpty()) { applang = user->value("lang", "").toString(); } if(!applang.isEmpty()) { if(!translator.load("rbutil_" + applang, absolutePath)) translator.load("rbutil_" + applang, ":/lang"); if(!qttrans.load("qt_" + applang, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) qttrans.load("qt_" + applang, ":/lang"); QLocale::setDefault(applang); } delete user; app.installTranslator(&translator); app.installTranslator(&qttrans); if(applang.startsWith("he")) app.setLayoutDirection(Qt::RightToLeft); RbUtilQt window(0); window.show(); // app.connect( &app, SIGNAL(lastWindowClosed()), &app, SLOT(quit()) ); return app.exec(); }
int main(int argc, char *argv[]) { const char *logname; if ( (logname = getenv("SWIPL_LOGFILE")) ) { logfile = fopen(logname, "w"); #if QT_VERSION < 0x050000 previous = qInstallMsgHandler(logger); #else previous = qInstallMessageHandler(logger); #endif } auto a = new swipl_win(argc, argv); int rc = a->exec(); qDebug() << "main loop finished" << rc; return rc; }
void Phantom::onInitialized() { // Add 'phantom' object to the global scope m_page->mainFrame()->addToJavaScriptWindowObject("phantom", this); // Bootstrap the PhantomJS scope m_page->mainFrame()->evaluateJavaScript(Utils::readResourceFileUtf8(":/bootstrap.js")); // Listen for stdin closing pStdinNotifier = new QSocketNotifier(STDIN_FILENO, QSocketNotifier::Read, this); connect(pStdinNotifier, SIGNAL(activated(int)), this, SLOT(onStdin())); pStdinNotifier->setEnabled(true); // Avoid printing qWarnings (the above notifier generates one at program exit) qInstallMsgHandler(messageOutput); }
Server::Server () : QObject () { qInstallMsgHandler (Write); const auto pid = QCoreApplication::applicationPid (); RegisterTypes (); auto sb = QDBusConnection::sessionBus (); const auto& serviceName = QString ("org.LeechCraft.Wrapper_%1").arg (pid); qDebug () << "registering service..." << sb.registerService (serviceName); qDebug () << "registering primary object..." << sb.registerObject ("/org/LeechCraft/Control", this, QDBusConnection::ExportAllContents); QLocalSocket socket; socket.connectToServer (QString ("lc_waiter_%1").arg (pid)); qDebug () << "notifying master..." << socket.waitForConnected (); }
int main(int argc, char *argv[]) { qInstallMsgHandler(msgOutput); QApplication app(argc, argv); reditor::REditor * edit = new reditor::REditor(); reditor::RMainWnd * mwnd = new reditor::RMainWnd(edit); edit->attachTo( static_cast<reditor::REditWnd *>(mwnd->centralWidget()) ); edit->attachToMainWnd(mwnd); // TODO create reditor manager class and implement all slots there to make possible multiple editor windows mwnd->resize(800, 600); mwnd->show(); // can't be moved earlier because it requires initiated OpenGL engine to load textures to GPU memory rscDB.load(reditor::RConfig::texturesDir(""), reditor::RConfig::modelsDir("")); mwnd->initObjPickers(); return app.exec(); }
void Logger::openLog(const QString &APath) { QMutexLocker locker(&FMutex); LoggerData *q = instance()->d; if (!q->logFile.isOpen() && !APath.isEmpty()) { QDir logDir(APath); QStringList logFiles = logDir.entryList(QStringList()<<"*.log",QDir::Files,QDir::Name); while (logFiles.count() > MAX_LOG_FILES) QFile::remove(logDir.absoluteFilePath(logFiles.takeFirst())); #ifndef DEBUG_MODE qInstallMsgHandler(qtMessagesHandler); #endif q->logFile.setFileName(logDir.absoluteFilePath(DateTime(QDateTime::currentDateTime()).toX85DateTime().replace(":","-") +".log")); q->logFile.open(QFile::WriteOnly|QFile::Truncate); } }
Q_DECL_EXPORT int main(int argc, char **argv) { bb::cascades::Application app(argc, argv); #ifdef QT_DEBUG qInstallMsgHandler(standardOutput); #endif // QT_DEBUG QTranslator translator; QString locale_string = QLocale().name(); QString filename = QString( "Altimeter_%1" ).arg( locale_string ); if (translator.load(filename, "app/native/qm")) { app.installTranslator( &translator ); } new ApplicationUI(&app); return bb::cascades::Application::exec(); }
int main() { qInstallMsgHandler(myMessageHandler); SkosModel g_skosModel; SkosParser g_skosParser(&g_skosModel); g_skosParser.parseFile("example.tur", Soprano::SerializationTurtle); g_skosModel.removeConceptScheme(QUrl("http://example.org/ns/ConceptScheme")); g_skosModel.removeConcept(QUrl("http://example.org/ns/AnotherConcept")); g_skosModel.removeLabel(Soprano::Node("Ukryty smok","pl"), HiddenLabelType, QUrl("http://example.org/ns/MyConcept")); g_skosModel.removeLabel(Soprano::Node("Ukryty smok","pl"), HiddenLabelType, QUrl("http://example.org/ns/MyConcept")); SkosSerializer g_skosSerializer(&g_skosModel); g_skosSerializer.serialize(QString("out2.txt"), Soprano::SerializationTurtle); return 0; }
// signal handlers setup void dbgSetupSignals() { SYNC_F _dbgSigAdd(SIGINT ); // ctrl+c _dbgSigAdd(SIGTERM); // kill (terminate, no force) _dbgSigAdd(SIGHUP ); _dbgSigAdd(SIGABRT); // uncaught c++ exception _dbgSigAdd(SIGSEGV); // segmentation fault _dbgSigAdd(SIGBUS ); _dbgSigAdd(SIGILL ); _dbgSigAdd(SIGFPE ); // floating point exception //atexit(_dbgShutdown); std::set_terminate (_dbgShutdown); std::set_unexpected(_dbgShutdown); #ifdef HAVE_QT qInstallMsgHandler(_qtMsgHandler); #endif }
int main(int argc, char** argv) { // Register a new Message Handler for qDebug/qWarning/qCritical/qFatal #ifdef INSTALL_MESSAGE_HANDLER qInstallMsgHandler(messageHandler); #endif // Create the Application QApplication app(argc, argv); app.setApplicationName(APP_NAME); app.setApplicationVersion(APP_VERSION); app.setOrganizationName(ORG_NAME); app.setOrganizationDomain(ORG_DOMAIN); // Init Resource Files Q_INIT_RESOURCE(qmls); // MainView, that will hold the QML UI MainView mainView; #if defined(Q_OS_SYMBIAN) qt_SetDefaultIap(); // This will avoid the browser to keep asking for an IAP #elif defined(Q_WS_MAEMO_5) mainView.setAttribute(Qt::WA_Maemo5NonComposited, true); //< This will avoid the use of Composite on this Parentless-Widget mainView.setAttribute(Qt::WA_Maemo5AutoOrientation, true); //< "Qt::WA_Maemo5PortraitOrientation" or "Qt::WA_Maemo5LandscapeOrientation" or "Qt::WA_Maemo5AutoOrientation" #endif #if defined(Q_OS_MAC) || defined(Q_OS_WIN32) //desktop build, just open a window // mainView.setWindowFlags(Qt::FramelessWindowHint); mainView.show(); #else //TODO recognise whether Q_OS_LINUX is defined and understand whether is meego or desktop linux //mobile builds, we want the whole screen! mainView.showFullScreen(); #endif // The Core of the Application Core core(&mainView); core.start(); return app.exec(); }
int main( int argc, char **argv ) { qInstallMsgHandler( myMessageOutput ); QApplication app(argc, argv); if (!QSystemTrayIcon::isSystemTrayAvailable()) { QMessageBox::critical(0, ki18n("Systray"), ki18n("I couldn't detect any system tray " "on this system.")); return 1; } QApplication::setQuitOnLastWindowClosed(false); Ktw w( argc, argv ); w.initWorkflow(); return app.exec(); }
/*! \brief Instance a LoggerPrivate. \return new logger */ static LoggerPrivate* instance() { LoggerPrivate* result = 0; { QReadLocker locker(&mSelfLock); result = mSelf; } if (!result) { QWriteLocker locker(&mSelfLock); mSelf = new LoggerPrivate; qInstallMsgHandler(qtLoggerMessageHandler); qAddPostRoutine(cleanupLoggerPrivate); result = mSelf; } return result; }
void QTestLog::startLogging() { QTEST_ASSERT(!QTest::testLogger); switch (QTest::logMode) { case QTestLog::Plain: QTest::testLogger = new QPlainTestLogger(); break; case QTestLog::XML: QTest::testLogger = new QXmlTestLogger(QXmlTestLogger::Complete); break; case QTestLog::LightXML: QTest::testLogger = new QXmlTestLogger(QXmlTestLogger::Light); } QTest::testLogger->startLogging(); QTest::oldMessageHandler = qInstallMsgHandler(QTest::messageHandler); }
int main(int argc, char *argv[]) { qInstallMsgHandler(myMsgHandler); QApplication a(argc, argv); MainWindow astroFitsVTK; _mainWindow = &astroFitsVTK; /// Frame Rate Calculation vtkSmartPointer<vtkFrameRateWidget> frameRateWidget = vtkSmartPointer<vtkFrameRateWidget>::New(); _vtkFrameRateWidget = frameRateWidget; //loadFrameRate(frameRateWidget, _mainWindow); qDebug(); astroFitsVTK.show(); return a.exec(); }
int main(int argc, char *argv[]) { qInstallMsgHandler(0); // Default QApplication app(argc, argv); MainWindow mainWindow; mainWindow.setOrientation(MainWindow::ScreenOrientationLockPortrait); mainWindow.showExpanded(); mainWindow.show(); QPixmap pixmap = QPixmap(":/images/splash"); int widthSize = mainWindow.width(); int heightSize = mainWindow.height(); QSize size = QSize(widthSize,heightSize); QPoint point = QPoint((1000 - widthSize)/2,(1000 - heightSize)/2); QRect rect = QRect(point,size); pixmap = pixmap.copy(rect); QSplashScreen splash(pixmap); splash.show(); Qt::Alignment bottomRight = Qt::AlignHCenter | Qt::AlignBottom; QString msg; if(QLocale::system().language() == QLocale::Spanish){ msg = "Iniciando..."; }else{ msg = "Starting..."; } splash.showMessage(msg,bottomRight, Qt::black); app.processEvents();//This is used to accept a click on the screen so that user can cancel the screen mainWindow.init(); //mainWindow.show(); QTimer::singleShot(2000, &splash, SLOT(close())); return app.exec(); }
Q_DECL_EXPORT int main(int argc, char *argv[]) { QScopedPointer<QApplication> app(createApplication(argc, argv)); QScopedPointer<QmlApplicationViewer> viewer(QmlApplicationViewer::create()); QCoreApplication::setAttribute(Qt::AA_S60DisablePartialScreenInputMode, false); #ifdef Q_OS_SYMBIAN QFile file("D:\\jellyunlock.txt"); if (file.exists()){file.remove();} qInstallMsgHandler(myMessageHandler); qDebug()<<"app obj created"; #endif Application* myapp=new Application(*viewer.data()); viewer->rootContext()->setContextProperty("application",myapp); qDebug()<<"3 - "<<myapp<<myapp->loc; QStringList gestures,strings,keys,zoom,orient,time; strings=myapp->loc->GetStringsAsList(); qDebug()<<"3.5 -"<<strings.count(); gestures<<strings[37]<<strings[24]<<strings[25]; keys<<strings[38]<<strings[39]<<strings[40]<<strings[41]<<strings[42]<<strings[43]<<strings[44]; zoom<<strings[32]<<strings[33]; time<<strings[36]<<strings[35]; orient<<strings[46]<<strings[59]<<strings[47]; qDebug()<<"4"; viewer->rootContext()->setContextProperty("strings",strings); viewer->rootContext()->setContextProperty("keyslist",keys); viewer->rootContext()->setContextProperty("zoomlist",zoom); viewer->rootContext()->setContextProperty("timelist",time); viewer->rootContext()->setContextProperty("gesturelist",gestures); viewer->rootContext()->setContextProperty("orientlist",orient); viewer->rootContext()->setContextProperty("appModel",myapp->appModel); viewer->rootContext()->setContextProperty("firstLaunch",myapp->isFirstStart); viewer->rootContext()->setContextProperty("lockscreens",myapp->GetAnotherLockscreens()); qDebug()<<5; //myapp->ReadSettings(); viewer->setMainQmlFile(QLatin1String("qml/JellyUnlock/main.qml")); qDebug()<<6; myapp->ReadSettings(); qDebug()<<7; viewer->showExpanded(); qDebug()<<"ok"; return app->exec(); }
int main( int argc, char** argv ) { #if defined(Q_OS_UNIX) && defined(USING_PE_DETECTION) //increase the stack size for PEDetection! struct rlimit MaxLimit; getrlimit(RLIMIT_STACK, &MaxLimit); printf ("Current stack Size: \n"); printf ("rlim_cur = %d, ", (int)MaxLimit.rlim_cur); printf ("rlim_max = %d\n", (int)MaxLimit.rlim_max); fflush (stdout); MaxLimit.rlim_cur = 1024*1024*32; MaxLimit.rlim_max = 1024*1024*128; setrlimit(RLIMIT_STACK, &MaxLimit); getrlimit(RLIMIT_STACK, &MaxLimit); printf ("Increased stack Size: \n"); printf ("rlim_cur = %d, ", (int)MaxLimit.rlim_cur); printf ("rlim_max = %d\n", (int)MaxLimit.rlim_max); fflush (stdout); #endif QApplication::setColorSpec( QApplication::ManyColor ); QApplication app( argc, argv ); int retval; mainwindow = new NewVolumeMainWindow; app.setMainWidget(mainwindow); qInstallMsgHandler(msgHandler); mainwindow->show(); mainwindow->init(); //set up GL scene VolMagickEventBasedOpStatus status; VolMagick::setDefaultMessenger(&status); retval = app.exec(); delete (NewVolumeMainWindow*) mainwindow; /* make sure destructor is called in case glDeleteTextures is called or something */ return retval; }
int main(int argc, char *argv[]) { // Передаем аргументы в ядро Qt Framework QCoreApplication a(argc, argv); // Устанавливаем кодировку для всех наших текстов QTextCodec* codec = QTextCodec::codecForName("UTF-8"); QTextCodec::setCodecForTr(codec); // Устанавливаем свой лог-обработчик qInstallMsgHandler(logOutput); // Выводим информацию в консоль о нашем приложении printf("FlyWork Server: %s (%s)\n", _HASH, _DATE); printf("Press <Ctrl-C> to stop this daemon.\n"); printf("===============================================================\n"); printf(" FFFFFFFF FFF FFFFF FFFFF FF \n"); printf(" FFFFFFF FFF FFF FFF FFF FF \n"); printf(" FFF FF FFF FFF FFF FFF FF \n"); printf(" FFF FFF FFFFF FFF FFF FFFF FFF FF FF FF \n"); printf(" FFFFFF FFF FFF FFF FFF FFF FFFFFF FFFFFF FF FF \n"); printf(" FFFFFFF FFF FFF FFF FFFFF FFF FF FF FF FFFF \n"); printf(" FFF FFF FFF FFFFFFFFFFFFFFF FF FF FF FFFF \n"); printf(" FFF FFF FFFFF FFFFF FFFFFF FF FF FF \n"); printf(" FFF FFFFFFF FFF FFF FFFF FF FF FF \n"); printf(" FFFFFFFFF FF FF FF \n"); printf("===============================================================\n"); printf("FlyWork is free software; you can redistribute it and/or modify\n"); printf("it under the terms of the GNU GPL v3. Source code is located:\n"); printf(" - https://github.com/biziwalker/flywork \n"); printf("===============================================================\n\n"); // Создаем сервер FlyServer *cServer = new FlyServer(); // По умолчанию запускаем сервер на 127.0.0.1:6425 //TODO: добавить возможность изменять адрес cServer->doStartServer(QHostAddress::LocalHost, 6425); // Запускаем само приложение return a.exec(); }
int main(int argc, char *argv[]) { qInstallMsgHandler(myMessageOutput); QApplication a(argc, argv); MainWindow w; #ifdef WINDOWS purgeLogfile(); #endif QVariant url; url = _get("url"); if (url.isNull() != true && url.toString() != "") { w.to_url = url.toString(); } else { w.to_url = "file:///C:/Users/ayon/Documents/GitHub/qushie-app/index.html"; } w.Init(); w.show(); return a.exec(); }
int main( int argc, char **argv ) { qInstallMsgHandler( myMessageOutput ); QApplication app( argc, argv ); MainWin mainWin; QStringList unknown; // very simple parsing (tm) for (int i=1; i<argc; ++i) { if (QString(argv[i]) == "--debug") { mainWin.setConsoleLogging( true ); } else if (QString(argv[i]) == "--print") { mainWin.setConsoleOutput( true ); } else if (QString(argv[i]) == "--help" || QString(argv[i]) == "-?") { printHelp(); } else unknown += argv[i]; } if (unknown.size()) { std::cerr << "Unknown command line options:" << std::endl; for (int i=0; i<unknown.size(); ++i) { std::cerr << " " << unknown[i].latin1() << std::endl; } printHelp(); } app.setMainWidget( &mainWin ); mainWin.show(); mainWin.move( 100, 100 ); return app.exec(); }
void logInit(const QString &filename) { logfp = fopen(filename.toUtf8().data(), "w"); if (!logfp) { logfp = stderr; } #ifdef Q_WS_WIN /* Windows does not support line-buffering, so use no buffering */ setvbuf(logfp, NULL, _IONBF, 0); /* Also unbuffer stderr when qDebug() cannot be used (non-GUI threads) */ setvbuf(stderr, NULL, _IONBF, 0); #else setvbuf(logfp, NULL, _IOLBF, 0); /* use line buffering */ #endif qInstallMsgHandler(logMsgHandler); qDebug(APPNAME " %s (%s)", VERSION, COMMIT_ID); logSystemInformation(); }