X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fmainwin.cpp;h=cccca9fb6c5572c5f981a480da4eeb36dce2beb9;hb=fcacaaf16551524c7ebb6114254d005274cc3d63;hp=fc0e061760d019c6a646fbddc783d96177bd574c;hpb=39328183a6a87c6eb10a9dbbffcd5d65bf154a1f;p=quassel.git diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp index fc0e0617..cccca9fb 100644 --- a/src/qtui/mainwin.cpp +++ b/src/qtui/mainwin.cpp @@ -161,11 +161,7 @@ MainWin::MainWin(QWidget *parent) #endif _msgProcessorStatusWidget(new MsgProcessorStatusWidget(this)), _coreConnectionStatusWidget(new CoreConnectionStatusWidget(Client::coreConnection(), this)), - _titleSetter(this), - _awayLog(nullptr), - _layoutLoaded(false), - _activeBufferViewIndex(-1), - _aboutToQuit(false) + _titleSetter(this) { setAttribute(Qt::WA_DeleteOnClose, false); // we delete the mainwin manually @@ -187,29 +183,29 @@ MainWin::MainWin(QWidget *parent) void MainWin::init() { - connect(Client::instance(), SIGNAL(networkCreated(NetworkId)), SLOT(clientNetworkCreated(NetworkId))); - connect(Client::instance(), SIGNAL(networkRemoved(NetworkId)), SLOT(clientNetworkRemoved(NetworkId))); - connect(Client::messageModel(), SIGNAL(rowsInserted(const QModelIndex &, int, int)), - SLOT(messagesInserted(const QModelIndex &, int, int))); + connect(Client::instance(), &Client::networkCreated, this, &MainWin::clientNetworkCreated); + connect(Client::instance(), &Client::networkRemoved, this, &MainWin::clientNetworkRemoved); + connect(Client::messageModel(), &QAbstractItemModel::rowsInserted, + this, &MainWin::messagesInserted); connect(GraphicalUi::contextMenuActionProvider(), - SIGNAL(showChannelList(NetworkId,QString,bool)), - SLOT(showChannelList(NetworkId,QString,bool))); + &NetworkModelController::showChannelList, + this, &MainWin::showChannelList); connect(Client::instance(), - SIGNAL(showChannelList(NetworkId,QString,bool)), - SLOT(showChannelList(NetworkId,QString,bool))); - connect(GraphicalUi::contextMenuActionProvider(), SIGNAL(showNetworkConfig(NetworkId)), SLOT(showNetworkConfig(NetworkId))); - connect(GraphicalUi::contextMenuActionProvider(), SIGNAL(showIgnoreList(QString)), SLOT(showIgnoreList(QString))); - connect(Client::instance(), SIGNAL(showIgnoreList(QString)), SLOT(showIgnoreList(QString))); - connect(Client::instance(), SIGNAL(dbUpgradeInProgress(bool)), SLOT(showMigrationWarning(bool))); - connect(Client::instance(), SIGNAL(exitRequested(QString)), SLOT(onExitRequested(QString))); - - connect(Client::coreConnection(), SIGNAL(startCoreSetup(QVariantList, QVariantList)), SLOT(showCoreConfigWizard(QVariantList, QVariantList))); - connect(Client::coreConnection(), SIGNAL(connectionErrorPopup(QString)), SLOT(handleCoreConnectionError(QString))); - connect(Client::coreConnection(), SIGNAL(userAuthenticationRequired(CoreAccount *, bool *, QString)), SLOT(userAuthenticationRequired(CoreAccount *, bool *, QString))); - connect(Client::coreConnection(), SIGNAL(handleNoSslInClient(bool *)), SLOT(handleNoSslInClient(bool *))); - connect(Client::coreConnection(), SIGNAL(handleNoSslInCore(bool *)), SLOT(handleNoSslInCore(bool *))); + &Client::showChannelList, + this, &MainWin::showChannelList); + connect(GraphicalUi::contextMenuActionProvider(), &NetworkModelController::showNetworkConfig, this, &MainWin::showNetworkConfig); + connect(GraphicalUi::contextMenuActionProvider(), &NetworkModelController::showIgnoreList, this, &MainWin::showIgnoreList); + connect(Client::instance(), &Client::showIgnoreList, this, &MainWin::showIgnoreList); + connect(Client::instance(), &Client::dbUpgradeInProgress, this, &MainWin::showMigrationWarning); + connect(Client::instance(), &Client::exitRequested, this, &MainWin::onExitRequested); + + connect(Client::coreConnection(), &CoreConnection::startCoreSetup, this, &MainWin::showCoreConfigWizard); + connect(Client::coreConnection(), &CoreConnection::connectionErrorPopup, this, &MainWin::handleCoreConnectionError); + connect(Client::coreConnection(), &CoreConnection::userAuthenticationRequired, this, &MainWin::userAuthenticationRequired); + connect(Client::coreConnection(), &CoreConnection::handleNoSslInClient, this, &MainWin::handleNoSslInClient); + connect(Client::coreConnection(), &CoreConnection::handleNoSslInCore, this, &MainWin::handleNoSslInCore); #ifdef HAVE_SSL - connect(Client::coreConnection(), SIGNAL(handleSslErrors(const QSslSocket *, bool *, bool *)), SLOT(handleSslErrors(const QSslSocket *, bool *, bool *))); + connect(Client::coreConnection(), &CoreConnection::handleSslErrors, this, &MainWin::handleSslErrors); #endif // Setup Dock Areas @@ -293,7 +289,7 @@ void MainWin::init() qApp->closeAllWindows(); }); - QTimer::singleShot(0, this, SLOT(doAutoConnect())); + QTimer::singleShot(0, this, &MainWin::doAutoConnect); } @@ -398,7 +394,7 @@ void MainWin::setupActions() QAction *lockAct = coll->addAction("LockLayout", new Action(tr("&Lock Layout"), coll)); lockAct->setCheckable(true); - connect(lockAct, SIGNAL(toggled(bool)), SLOT(on_actionLockLayout_toggled(bool))); + connect(lockAct, &QAction::toggled, this, &MainWin::on_actionLockLayout_toggled); coll->addAction("ToggleSearchBar", new Action(icon::get("edit-find"), tr("Show &Search Bar"), coll, nullptr, nullptr, QKeySequence::Find))->setCheckable(true); @@ -645,7 +641,7 @@ void MainWin::setupMenus() enabled ? menuBar()->show() : menuBar()->hide(); connect(showMenuBar, SIGNAL(toggled(bool)), menuBar(), SLOT(setVisible(bool))); - connect(showMenuBar, SIGNAL(toggled(bool)), this, SLOT(saveMenuBarStatus(bool))); + connect(showMenuBar, &QAction::toggled, this, &MainWin::saveMenuBarStatus); } @@ -670,10 +666,10 @@ void MainWin::addBufferView(ClientBufferViewConfig *config) return; config->setLocked(QtUiSettings().value("LockLayout", false).toBool()); - BufferViewDock *dock = new BufferViewDock(config, this); + auto *dock = new BufferViewDock(config, this); //create the view and initialize it's filter - BufferView *view = new BufferView(dock); + auto *view = new BufferView(dock); view->setFilteredModel(Client::bufferModel(), config); view->installEventFilter(_inputWidget); // for key presses @@ -687,8 +683,8 @@ void MainWin::addBufferView(ClientBufferViewConfig *config) addDockWidget(Qt::LeftDockWidgetArea, dock); _bufferViewsMenu->addAction(dock->toggleViewAction()); - connect(dock->toggleViewAction(), SIGNAL(toggled(bool)), this, SLOT(bufferViewToggled(bool))); - connect(dock, SIGNAL(visibilityChanged(bool)), SLOT(bufferViewVisibilityChanged(bool))); + connect(dock->toggleViewAction(), &QAction::toggled, this, &MainWin::bufferViewToggled); + connect(dock, &QDockWidget::visibilityChanged, this, &MainWin::bufferViewVisibilityChanged); _bufferViews.append(dock); if (!activeBufferView()) @@ -730,9 +726,9 @@ void MainWin::bufferViewToggled(bool enabled) // since this isn't our fault and we can't do anything about it, we suppress the resulting calls return; } - QAction *action = qobject_cast(sender()); + auto *action = qobject_cast(sender()); Q_ASSERT(action); - BufferViewDock *dock = qobject_cast(action->parent()); + auto *dock = qobject_cast(action->parent()); Q_ASSERT(dock); // Make sure we don't toggle backlog fetch for a view we've already removed @@ -749,7 +745,7 @@ void MainWin::bufferViewToggled(bool enabled) void MainWin::bufferViewVisibilityChanged(bool visible) { Q_UNUSED(visible); - BufferViewDock *dock = qobject_cast(sender()); + auto *dock = qobject_cast(sender()); Q_ASSERT(dock); if ((!dock->isHidden() && !activeBufferView()) || (dock->isHidden() && dock->isActive())) nextBufferView(); @@ -995,7 +991,7 @@ void MainWin::setupChatMonitor() VerticalDock *dock = new VerticalDock(tr("Chat Monitor"), this); dock->setObjectName("ChatMonitorDock"); - ChatMonitorFilter *filter = new ChatMonitorFilter(Client::messageModel(), this); + auto *filter = new ChatMonitorFilter(Client::messageModel(), this); _chatMonitorView = new ChatMonitorView(filter, this); _chatMonitorView->show(); dock->setWidget(_chatMonitorView); @@ -1099,8 +1095,8 @@ void MainWin::setupStatusBar() showStatusbar->setChecked(enabled); enabled ? statusBar()->show() : statusBar()->hide(); - connect(showStatusbar, SIGNAL(toggled(bool)), statusBar(), SLOT(setVisible(bool))); - connect(showStatusbar, SIGNAL(toggled(bool)), this, SLOT(saveStatusBarStatus(bool))); + connect(showStatusbar, &QAction::toggled, statusBar(), &QWidget::setVisible); + connect(showStatusbar, &QAction::toggled, this, &MainWin::saveStatusBarStatus); connect(Client::coreConnection(), SIGNAL(connectionMsg(QString)), statusBar(), SLOT(showMessage(QString))); } @@ -1108,7 +1104,7 @@ void MainWin::setupStatusBar() void MainWin::setupHotList() { - FlatProxyModel *flatProxy = new FlatProxyModel(this); + auto *flatProxy = new FlatProxyModel(this); flatProxy->setSourceModel(Client::bufferModel()); _bufferHotList = new BufferHotListFilter(flatProxy); } @@ -1218,11 +1214,11 @@ void MainWin::connectedToCore() { Q_CHECK_PTR(Client::bufferViewManager()); connect(Client::bufferViewManager(), SIGNAL(bufferViewConfigAdded(int)), this, SLOT(addBufferView(int))); - connect(Client::bufferViewManager(), SIGNAL(bufferViewConfigDeleted(int)), this, SLOT(removeBufferView(int))); - connect(Client::bufferViewManager(), SIGNAL(initDone()), this, SLOT(loadLayout())); + connect(Client::bufferViewManager(), &BufferViewManager::bufferViewConfigDeleted, this, &MainWin::removeBufferView); + connect(Client::bufferViewManager(), &SyncableObject::initDone, this, &MainWin::loadLayout); if (Client::transferManager()) { - connect(Client::transferManager(), SIGNAL(transferAdded(QUuid)), SLOT(showNewTransferDlg(QUuid))); + connect(Client::transferManager(), &TransferManager::transferAdded, this, &MainWin::showNewTransferDlg); } setConnectedState(); @@ -1243,13 +1239,13 @@ void MainWin::setConnectedState() action->setVisible(!Client::internalCore()); } - disconnect(Client::backlogManager(), SIGNAL(updateProgress(int, int)), _msgProcessorStatusWidget, SLOT(setProgress(int, int))); - disconnect(Client::backlogManager(), SIGNAL(messagesRequested(const QString &)), this, SLOT(showStatusBarMessage(const QString &))); - disconnect(Client::backlogManager(), SIGNAL(messagesProcessed(const QString &)), this, SLOT(showStatusBarMessage(const QString &))); + disconnect(Client::backlogManager(), &ClientBacklogManager::updateProgress, _msgProcessorStatusWidget, &MsgProcessorStatusWidget::setProgress); + disconnect(Client::backlogManager(), &ClientBacklogManager::messagesRequested, this, &MainWin::showStatusBarMessage); + disconnect(Client::backlogManager(), &ClientBacklogManager::messagesProcessed, this, &MainWin::showStatusBarMessage); if (!Client::internalCore()) { - connect(Client::backlogManager(), SIGNAL(updateProgress(int, int)), _msgProcessorStatusWidget, SLOT(setProgress(int, int))); - connect(Client::backlogManager(), SIGNAL(messagesRequested(const QString &)), this, SLOT(showStatusBarMessage(const QString &))); - connect(Client::backlogManager(), SIGNAL(messagesProcessed(const QString &)), this, SLOT(showStatusBarMessage(const QString &))); + connect(Client::backlogManager(), &ClientBacklogManager::updateProgress, _msgProcessorStatusWidget, &MsgProcessorStatusWidget::setProgress); + connect(Client::backlogManager(), &ClientBacklogManager::messagesRequested, this, &MainWin::showStatusBarMessage); + connect(Client::backlogManager(), &ClientBacklogManager::messagesProcessed, this, &MainWin::showStatusBarMessage); } // _viewMenu->setEnabled(true); @@ -1454,7 +1450,7 @@ void MainWin::showCoreConnectionDlg() void MainWin::showCoreConfigWizard(const QVariantList &backends, const QVariantList &authenticators) { - CoreConfigWizard *wizard = new CoreConfigWizard(Client::coreConnection(), backends, authenticators, this); + auto *wizard = new CoreConfigWizard(Client::coreConnection(), backends, authenticators, this); wizard->show(); } @@ -1463,7 +1459,7 @@ void MainWin::showCoreConfigWizard(const QVariantList &backends, const QVariantL void MainWin::showChannelList(NetworkId netId, const QString &channelFilters, bool listImmediately) { if (!netId.isValid()) { - QAction *action = qobject_cast(sender()); + auto *action = qobject_cast(sender()); if (action) netId = action->data().value(); if (!netId.isValid()) { @@ -1478,7 +1474,7 @@ void MainWin::showChannelList(NetworkId netId, const QString &channelFilters, bo } } - ChannelListDlg *channelListDlg = new ChannelListDlg(this); + auto *channelListDlg = new ChannelListDlg(this); channelListDlg->setAttribute(Qt::WA_DeleteOnClose); channelListDlg->setNetwork(netId); if (!channelFilters.isEmpty()) { @@ -1520,10 +1516,10 @@ void MainWin::showAwayLog() { if (_awayLog) return; - AwayLogFilter *filter = new AwayLogFilter(Client::messageModel()); + auto *filter = new AwayLogFilter(Client::messageModel()); _awayLog = new AwayLogView(filter, nullptr); filter->setParent(_awayLog); - connect(_awayLog, SIGNAL(destroyed()), this, SLOT(awayLogDestroyed())); + connect(_awayLog, &QObject::destroyed, this, &MainWin::awayLogDestroyed); _awayLog->setAttribute(Qt::WA_DeleteOnClose); _awayLog->show(); } @@ -1537,7 +1533,7 @@ void MainWin::awayLogDestroyed() void MainWin::showSettingsDlg() { - SettingsDlg *dlg = new SettingsDlg(this); + auto *dlg = new SettingsDlg(); //Category: Interface dlg->registerSettingsPage(new AppearanceSettingsPage(dlg)); @@ -1598,7 +1594,7 @@ void MainWin::showNewTransferDlg(const QUuid &transferId) auto transfer = Client::transferManager()->transfer(transferId); if (transfer) { if (transfer->status() == Transfer::Status::New) { - ReceiveFileDlg *dlg = new ReceiveFileDlg(transfer, this); + auto *dlg = new ReceiveFileDlg(transfer, this); dlg->show(); } } @@ -1667,7 +1663,7 @@ void MainWin::resizeEvent(QResizeEvent *event) void MainWin::closeEvent(QCloseEvent *event) { QtUiSettings s; - QtUiApplication *app = qobject_cast qApp; + auto *app = qobject_cast qApp; Q_ASSERT(app); // On OSX it can happen that the closeEvent occurs twice. (Especially if packaged with Frameworks) // This messes up MainWinState/MainWinHidden save/restore. @@ -1753,11 +1749,11 @@ void MainWin::currentBufferChanged(BufferId buffer) void MainWin::clientNetworkCreated(NetworkId id) { const Network *net = Client::network(id); - QAction *act = new QAction(net->networkName(), this); + auto *act = new QAction(net->networkName(), this); act->setObjectName(QString("NetworkAction-%1").arg(id.toInt())); act->setData(QVariant::fromValue(id)); - connect(net, SIGNAL(updatedRemotely()), this, SLOT(clientNetworkUpdated())); - connect(act, SIGNAL(triggered()), this, SLOT(connectOrDisconnectFromNet())); + connect(net, &SyncableObject::updatedRemotely, this, &MainWin::clientNetworkUpdated); + connect(act, &QAction::triggered, this, &MainWin::connectOrDisconnectFromNet); QAction *beforeAction = nullptr; foreach(QAction *action, _networksMenu->actions()) { @@ -1774,11 +1770,11 @@ void MainWin::clientNetworkCreated(NetworkId id) void MainWin::clientNetworkUpdated() { - const Network *net = qobject_cast(sender()); + const auto *net = qobject_cast(sender()); if (!net) return; - QAction *action = findChild(QString("NetworkAction-%1").arg(net->networkId().toInt())); + auto *action = findChild(QString("NetworkAction-%1").arg(net->networkId().toInt())); if (!action) return; @@ -1807,7 +1803,7 @@ void MainWin::clientNetworkUpdated() void MainWin::clientNetworkRemoved(NetworkId id) { - QAction *action = findChild(QString("NetworkAction-%1").arg(id.toInt())); + auto *action = findChild(QString("NetworkAction-%1").arg(id.toInt())); if (!action) return; @@ -1817,7 +1813,7 @@ void MainWin::clientNetworkRemoved(NetworkId id) void MainWin::connectOrDisconnectFromNet() { - QAction *act = qobject_cast(sender()); + auto *act = qobject_cast(sender()); if (!act) return; const Network *net = Client::network(act->data().value()); if (!net) return; @@ -1901,7 +1897,7 @@ void MainWin::on_bufferSearch_triggered() void MainWin::onJumpKey() { - QAction *action = qobject_cast(sender()); + auto *action = qobject_cast(sender()); if (!action || !Client::bufferModel()) return; int idx = action->property("Index").toInt(); @@ -1920,7 +1916,7 @@ void MainWin::onJumpKey() void MainWin::bindJumpKey() { - QAction *action = qobject_cast(sender()); + auto *action = qobject_cast(sender()); if (!action || !Client::bufferModel()) return; int idx = action->property("Index").toInt(); @@ -1932,7 +1928,7 @@ void MainWin::bindJumpKey() void MainWin::on_actionDebugNetworkModel_triggered() { - QTreeView *view = new QTreeView; + auto *view = new QTreeView; view->setAttribute(Qt::WA_DeleteOnClose); view->setWindowTitle("Debug NetworkModel View"); view->setModel(Client::networkModel()); @@ -1949,7 +1945,7 @@ void MainWin::on_actionDebugHotList_triggered() _bufferHotList->invalidate(); _bufferHotList->sort(0, Qt::DescendingOrder); - QTreeView *view = new QTreeView; + auto *view = new QTreeView; view->setAttribute(Qt::WA_DeleteOnClose); view->setModel(_bufferHotList); view->show(); @@ -1958,7 +1954,7 @@ void MainWin::on_actionDebugHotList_triggered() void MainWin::on_actionDebugBufferViewOverlay_triggered() { - DebugBufferViewOverlay *overlay = new DebugBufferViewOverlay(nullptr); + auto *overlay = new DebugBufferViewOverlay(nullptr); overlay->setAttribute(Qt::WA_DeleteOnClose); overlay->show(); } @@ -1966,8 +1962,8 @@ void MainWin::on_actionDebugBufferViewOverlay_triggered() void MainWin::on_actionDebugMessageModel_triggered() { - QTableView *view = new QTableView(nullptr); - DebugMessageModelFilter *filter = new DebugMessageModelFilter(view); + auto *view = new QTableView(nullptr); + auto *filter = new DebugMessageModelFilter(view); filter->setSourceModel(Client::messageModel()); view->setModel(filter); view->setAttribute(Qt::WA_DeleteOnClose, true);