QtUiApplication::QtUiApplication(int &argc, char **argv)
: QApplication(argc, argv)
{
- connect(this, &QGuiApplication::commitDataRequest, this, &QtUiApplication::commitData, Qt::DirectConnection);
- connect(this, &QGuiApplication::saveStateRequest, this, &QtUiApplication::saveState, Qt::DirectConnection);
-
#if QT_VERSION >= 0x050600
QGuiApplication::setFallbackSessionManagementEnabled(false);
#endif
_client = std::make_unique<Client>(std::make_unique<QtUi>());
// Init UI only after the event loop has started
- // TODO Qt5: Make this a lambda
- QTimer::singleShot(0, this, &QtUiApplication::initUi);
-}
-
-
-void QtUiApplication::initUi()
-{
- QtUi::instance()->init();
+ QTimer::singleShot(0, this, [this]() {
+ QtUi::instance()->init();
+ connect(this, &QGuiApplication::commitDataRequest, this, &QtUiApplication::commitData, Qt::DirectConnection);
+ connect(this, &QGuiApplication::saveStateRequest, this, &QtUiApplication::saveState, Qt::DirectConnection);
- // Needs to happen after UI init, so the MainWin quit handler is registered first
- Quassel::registerQuitHandler(quitHandler());
+ // Needs to happen after UI init, so the MainWin quit handler is registered first
+ Quassel::registerQuitHandler(quitHandler());
- resumeSessionIfPossible();
+ resumeSessionIfPossible();
+ });
}
// Wait until the Client instance is destroyed before quitting the event loop
return [this]() {
quInfo() << "Client shutting down...";
- connect(_client.get(), SIGNAL(destroyed()), QCoreApplication::instance(), SLOT(quit()));
+ connect(_client.get(), &QObject::destroyed, QCoreApplication::instance(), &QCoreApplication::quit);
_client.release()->deleteLater();
};
}