diff --git a/krusader/Dialogs/krmaskchoice.cpp b/krusader/Dialogs/krmaskchoice.cpp --- a/krusader/Dialogs/krmaskchoice.cpp +++ b/krusader/Dialogs/krmaskchoice.cpp @@ -110,7 +110,8 @@ connect(PushButton7, &QPushButton::clicked, this, &KRMaskChoice::addSelection); connect(PushButton7_2, &QPushButton::clicked, this, &KRMaskChoice::deleteSelection); connect(PushButton7_3, &QPushButton::clicked, this, &KRMaskChoice::clearSelections); - connect(selection, QOverload::of(&KComboBox::activated), selection, &KComboBox::setEditText); + connect(selection, static_cast(&KComboBox::activated), + selection, &KComboBox::setEditText); connect(selection->lineEdit(), &QLineEdit::returnPressed, this, &KRMaskChoice::accept); connect(preSelections, &KrListWidget::currentItemChanged, this, &KRMaskChoice::currentItemChanged); connect(preSelections, &KrListWidget::itemActivated, this, &KRMaskChoice::acceptFromList); diff --git a/krusader/Dialogs/newftpgui.cpp b/krusader/Dialogs/newftpgui.cpp --- a/krusader/Dialogs/newftpgui.cpp +++ b/krusader/Dialogs/newftpgui.cpp @@ -152,8 +152,10 @@ connect(buttonBox, &QDialogButtonBox::accepted, this, &newFTPGUI::accept); connect(buttonBox, &QDialogButtonBox::rejected, this, &newFTPGUI::reject); - connect(prefix, QOverload::of(&KComboBox::activated), this, &newFTPGUI::slotTextChanged); - connect(url, QOverload::of(&KHistoryComboBox::activated), url, &KHistoryComboBox::addToHistory); + connect(prefix, static_cast(&KComboBox::activated), + this, &newFTPGUI::slotTextChanged); + connect(url, static_cast(&KHistoryComboBox::activated), + url, &KHistoryComboBox::addToHistory); if(!lastUsedProtocol.isEmpty()) { // update the port field diff --git a/krusader/Dialogs/packguibase.cpp b/krusader/Dialogs/packguibase.cpp --- a/krusader/Dialogs/packguibase.cpp +++ b/krusader/Dialogs/packguibase.cpp @@ -87,8 +87,10 @@ typeData = new QComboBox(this); typeData->setSizePolicy(QSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed)); - connect(typeData, QOverload::of(&QComboBox::activated), this, &PackGUIBase::checkConsistency); - connect(typeData, QOverload::of(&QComboBox::highlighted), this, &PackGUIBase::checkConsistency); + connect(typeData, static_cast(&QComboBox::activated), + this, &PackGUIBase::checkConsistency); + connect(typeData, static_cast(&QComboBox::highlighted), + this, &PackGUIBase::checkConsistency); hbox->addWidget(typeData); grid->addLayout(hbox, 1, 0); diff --git a/krusader/DiskUsage/radialMap/widget.cpp b/krusader/DiskUsage/radialMap/widget.cpp --- a/krusader/DiskUsage/radialMap/widget.cpp +++ b/krusader/DiskUsage/radialMap/widget.cpp @@ -50,7 +50,7 @@ setPalette(pal); connect(this, &Widget::created, this, &Widget::sendFakeMouseEvent); - connect(this, &Widget::created, this, QOverload<>::of(&Widget::update)); + connect(this, &Widget::created, this, static_cast(&Widget::update)); connect(&m_timer, &QTimer::timeout, this, &Widget::resizeTimeout); } diff --git a/krusader/Filter/generalfilter.cpp b/krusader/Filter/generalfilter.cpp --- a/krusader/Filter/generalfilter.cpp +++ b/krusader/Filter/generalfilter.cpp @@ -168,7 +168,8 @@ ofType->addItem(i18n("Text Files")); ofType->addItem(i18n("Video Files")); ofType->addItem(i18n("Audio Files")); - connect(ofType, QOverload::of(&KComboBox::currentIndexChanged), this, &GeneralFilter::slotDisable); + connect(ofType, static_cast(&KComboBox::currentIndexChanged), + this, &GeneralFilter::slotDisable); nameGroupLayout->addWidget(ofType, 1, 1); filterLayout->addWidget(nameGroup, 0, 0); @@ -390,8 +391,10 @@ connect(profileManager, &ProfileManager::saveToProfile, fltTabs, &FilterTabs::saveToProfile); } - connect(searchFor, QOverload::of(&KHistoryComboBox::activated), searchFor, &KHistoryComboBox::addToHistory); - connect(containsText, QOverload::of(&KHistoryComboBox::activated), containsText, &KHistoryComboBox::addToHistory); + connect(searchFor, static_cast(&KHistoryComboBox::activated), + searchFor, &KHistoryComboBox::addToHistory); + connect(containsText, static_cast(&KHistoryComboBox::activated), + containsText, &KHistoryComboBox::addToHistory); // load the completion and history lists // ==> search for diff --git a/krusader/GUI/kcmdline.cpp b/krusader/GUI/kcmdline.cpp --- a/krusader/GUI/kcmdline.cpp +++ b/krusader/GUI/kcmdline.cpp @@ -179,8 +179,8 @@ QStringList list = grpSvr.readEntry("cmdline history", QStringList()); cmdLine->setHistoryItems(list); - connect(cmdLine, QOverload::of(&CmdLineCombo::returnPressed), this, &KCMDLine::slotRun); - connect(cmdLine, QOverload::of(&CmdLineCombo::returnPressed), cmdLine->lineEdit(), &QLineEdit::clear); + connect(cmdLine, static_cast(&CmdLineCombo::returnPressed), this, &KCMDLine::slotRun); + connect(cmdLine, static_cast(&CmdLineCombo::returnPressed), cmdLine->lineEdit(), &QLineEdit::clear); connect(cmdLine, &CmdLineCombo::returnToPanel, this, &KCMDLine::slotReturnFocus); cmdLine->setWhatsThis(i18n("

Well, it is actually quite simple: you type your command here and Krusader obeys.

Tip: move within command line history with <Up> and <Down> arrows.

")); diff --git a/krusader/Konfigurator/kgcolors.cpp b/krusader/Konfigurator/kgcolors.cpp --- a/krusader/Konfigurator/kgcolors.cpp +++ b/krusader/Konfigurator/kgcolors.cpp @@ -265,7 +265,8 @@ connect(generals->find("Enable Alternate Background"), &KonfiguratorCheckBox::stateChanged, this, &KgColors::generatePreview); connect(colorTabWidget, &QTabWidget::currentChanged, this, &KgColors::generatePreview); - connect(dimFactor, QOverload::of(&KonfiguratorSpinBox::valueChanged), this, &KgColors::generatePreview); + connect(dimFactor, static_cast(&KonfiguratorSpinBox::valueChanged), + this, &KgColors::generatePreview); kgColorsLayout->addWidget(hboxWidget, 1 , 0, 1, 3); diff --git a/krusader/Konfigurator/konfiguratoritems.cpp b/krusader/Konfigurator/konfiguratoritems.cpp --- a/krusader/Konfigurator/konfiguratoritems.cpp +++ b/krusader/Konfigurator/konfiguratoritems.cpp @@ -101,7 +101,8 @@ connect(ext, &KonfiguratorExtension::setDefaultsAuto, this, &KonfiguratorCheckBox::slotSetDefaults); connect(ext, &KonfiguratorExtension::setInitialValue, this, &KonfiguratorCheckBox::loadInitialValue); - connect(this, &KonfiguratorCheckBox::stateChanged, ext, QOverload<>::of(&KonfiguratorExtension::setChanged)); + connect(this, &KonfiguratorCheckBox::stateChanged, + ext, static_cast(&KonfiguratorExtension::setChanged)); loadInitialValue(); } @@ -166,7 +167,8 @@ connect(ext, &KonfiguratorExtension::setDefaultsAuto, this, &KonfiguratorSpinBox::slotSetDefaults); connect(ext, &KonfiguratorExtension::setInitialValue, this, &KonfiguratorSpinBox::loadInitialValue); - connect(this, QOverload::of(&KonfiguratorSpinBox::valueChanged), ext, QOverload<>::of(&KonfiguratorExtension::setChanged)); + connect(this, static_cast(&KonfiguratorSpinBox::valueChanged), + ext, static_cast(&KonfiguratorExtension::setChanged)); setMinimum(min); setMaximum(max); @@ -250,7 +252,8 @@ radioNames.push_back(name); radioValues.push_back(value); - connect(radioWidget, &QRadioButton::toggled, ext, QOverload<>::of(&KonfiguratorExtension::setChanged)); + connect(radioWidget, &QRadioButton::toggled, + ext, static_cast(&KonfiguratorExtension::setChanged)); } QRadioButton * KonfiguratorRadioButtons::find(int index) @@ -341,7 +344,8 @@ connect(ext, &KonfiguratorExtension::setDefaultsAuto, this, &KonfiguratorEditBox::slotSetDefaults); connect(ext, &KonfiguratorExtension::setInitialValue, this, &KonfiguratorEditBox::loadInitialValue); - connect(this, &KonfiguratorEditBox::textChanged, ext, QOverload<>::of(&KonfiguratorExtension::setChanged)); + connect(this, &KonfiguratorEditBox::textChanged, + ext, static_cast(&KonfiguratorExtension::setChanged)); loadInitialValue(); } @@ -383,7 +387,8 @@ connect(ext, &KonfiguratorExtension::setDefaultsAuto, this, &KonfiguratorURLRequester::slotSetDefaults); connect(ext, &KonfiguratorExtension::setInitialValue, this, &KonfiguratorURLRequester::loadInitialValue); - connect(this, &KonfiguratorURLRequester::textChanged, ext, QOverload<>::of(&KonfiguratorExtension::setChanged)); + connect(this, &KonfiguratorURLRequester::textChanged, + ext, static_cast(&KonfiguratorExtension::setChanged)); loadInitialValue(); } @@ -501,8 +506,10 @@ connect(ext, &KonfiguratorExtension::setInitialValue, this, &KonfiguratorComboBox::loadInitialValue); //connect(this, &KonfiguratorComboBox::highlighted, ext, &KonfiguratorExtension::setChanged); /* Removed because of startup combo failure */ - connect(this, QOverload::of(&KonfiguratorComboBox::activated), ext, QOverload<>::of(&KonfiguratorExtension::setChanged)); - connect(this, &KonfiguratorComboBox::currentTextChanged, ext, QOverload<>::of(&KonfiguratorExtension::setChanged)); + connect(this, static_cast(&KonfiguratorComboBox::activated), + ext, static_cast(&KonfiguratorExtension::setChanged)); + connect(this, &KonfiguratorComboBox::currentTextChanged, + ext, static_cast(&KonfiguratorExtension::setChanged)); setEditable(editable); loadInitialValue(); @@ -597,7 +604,8 @@ addColor(i18n("Dark Gray"), Qt::darkGray); addColor(i18n("Black"), Qt::black); - connect(this, QOverload::of(&KonfiguratorColorChooser::activated), this, &KonfiguratorColorChooser::slotCurrentChanged); + connect(this, static_cast(&KonfiguratorColorChooser::activated), + this, &KonfiguratorColorChooser::slotCurrentChanged); loadInitialValue(); } diff --git a/krusader/Konfigurator/krresulttable.cpp b/krusader/Konfigurator/krresulttable.cpp --- a/krusader/Konfigurator/krresulttable.cpp +++ b/krusader/Konfigurator/krresulttable.cpp @@ -195,7 +195,7 @@ urlLabel->setContentsMargins(5, 5, 5, 5); urlLabel->setAlignment(Qt::AlignTop); grid->addWidget(urlLabel, _numRows, 0); - connect(urlLabel, QOverload::of(&KUrlLabel::leftClickedUrl), + connect(urlLabel, static_cast(&KUrlLabel::leftClickedUrl), this, &KrArchiverResultTable::website); _label = urlLabel; @@ -345,7 +345,8 @@ l->setAlignment(Qt::AlignLeft | Qt::AlignTop); l->setContentsMargins(5, 5, 5, 5); - connect(l, QOverload::of(&KUrlLabel::leftClickedUrl), this, &KrToolResultTable::website); + connect(l, static_cast(&KUrlLabel::leftClickedUrl), + this, &KrToolResultTable::website); } grid->addWidget(toolBoxWidget, _numRows, 1); diff --git a/krusader/Locate/locate.cpp b/krusader/Locate/locate.cpp --- a/krusader/Locate/locate.cpp +++ b/krusader/Locate/locate.cpp @@ -226,7 +226,8 @@ if (updateProcess) { if (updateProcess->state() == QProcess::Running) { - connect(updateProcess, QOverload::of(&KProcess::finished), this, &LocateDlg::updateFinished); + connect(updateProcess, static_cast(&KProcess::finished), + this, &LocateDlg::updateFinished); updateDbButton->setEnabled(false); } else updateFinished(); @@ -254,7 +255,8 @@ *updateProcess << KrServices::fullPathName("updatedb"); *updateProcess << KShell::splitArgs(group.readEntry("UpdateDB Arguments")); - connect(updateProcess, QOverload::of(&KProcess::finished), this, &LocateDlg::updateFinished); + connect(updateProcess, static_cast(&KProcess::finished), + this, &LocateDlg::updateFinished); updateProcess->start(); updateDbButton->setEnabled(false); } @@ -298,8 +300,10 @@ locateProc->setOutputChannelMode(KProcess::SeparateChannels); // default is forwarding to the parent channels connect(locateProc, &KProcess::readyReadStandardOutput, this, &LocateDlg::processStdout); connect(locateProc, &KProcess::readyReadStandardError, this, &LocateDlg::processStderr); - connect(locateProc, QOverload::of(&KProcess::finished), this, &LocateDlg::locateFinished); - connect(locateProc, QOverload::of(&KProcess::error), this, &LocateDlg::locateError); + connect(locateProc, static_cast(&KProcess::finished), + this, &LocateDlg::locateFinished); + connect(locateProc, static_cast(&KProcess::error), + this, &LocateDlg::locateError); *locateProc << KrServices::fullPathName("locate"); if (!isCs) diff --git a/krusader/MountMan/kmountmangui.cpp b/krusader/MountMan/kmountmangui.cpp --- a/krusader/MountMan/kmountmangui.cpp +++ b/krusader/MountMan/kmountmangui.cpp @@ -96,8 +96,10 @@ connect(mountButton, &QPushButton::clicked, this, &KMountManGUI::slotToggleMount); connect(mountList, &KrTreeWidget::itemDoubleClicked, this, &KMountManGUI::doubleClicked); connect(mountList, &KrTreeWidget::itemRightClicked, this, &KMountManGUI::clicked); - connect(mountList, &KrTreeWidget::itemClicked, this, QOverload::of(&KMountManGUI::changeActive)); - connect(mountList, &KrTreeWidget::itemSelectionChanged, this, QOverload<>::of(&KMountManGUI::changeActive)); + connect(mountList, &KrTreeWidget::itemClicked, + this, static_cast(&KMountManGUI::changeActive)); + connect(mountList, &KrTreeWidget::itemSelectionChanged, + this, static_cast(&KMountManGUI::changeActive)); KConfigGroup group(krConfig, "MountMan"); int sx = group.readEntry("Window Width", -1); diff --git a/krusader/Panel/PanelView/krinterbriefview.cpp b/krusader/Panel/PanelView/krinterbriefview.cpp --- a/krusader/Panel/PanelView/krinterbriefview.cpp +++ b/krusader/Panel/PanelView/krinterbriefview.cpp @@ -141,7 +141,8 @@ _header->setSectionResizeMode(QHeaderView::Fixed); _header->setSectionsClickable(true); _header->setSortIndicatorShown(true); - connect(_header, &QHeaderView::sortIndicatorChanged, _model, QOverload::of(&ListModel::sort)); + connect(_header, &QHeaderView::sortIndicatorChanged, + _model, static_cast(&ListModel::sort)); _header->installEventFilter(this); _numOfColumns = _properties->numberOfColumns; diff --git a/krusader/Panel/krsearchbar.cpp b/krusader/Panel/krsearchbar.cpp --- a/krusader/Panel/krsearchbar.cpp +++ b/krusader/Panel/krsearchbar.cpp @@ -53,7 +53,8 @@ _modeBox = new QComboBox(this); _modeBox->addItems(QStringList() << i18n("Search") << i18n("Select") << i18n("Filter")); _modeBox->setToolTip(i18n("Change the search mode")); - connect(_modeBox, QOverload::of(&QComboBox::currentIndexChanged), this, &KrSearchBar::onModeChange); + connect(_modeBox, static_cast(&QComboBox::currentIndexChanged), + this, &KrSearchBar::onModeChange); _currentMode = static_cast(_modeBox->currentIndex()); diff --git a/krusader/Panel/listpanel.cpp b/krusader/Panel/listpanel.cpp --- a/krusader/Panel/listpanel.cpp +++ b/krusader/Panel/listpanel.cpp @@ -194,7 +194,7 @@ connect(urlNavigator, &KUrlNavigator::urlChanged, this, &ListPanel::slotNavigatorUrlChanged); connect(urlNavigator->editor()->lineEdit(), &QLineEdit::editingFinished, this, &ListPanel::resetNavigatorMode); connect(urlNavigator, &KUrlNavigator::tabRequested, this, [=](const QUrl &url) { ListPanel::newTab(url); }); - connect(urlNavigator, &KUrlNavigator::urlsDropped, this, QOverload::of(&ListPanel::handleDrop)); + connect(urlNavigator, &KUrlNavigator::urlsDropped, this, static_cast(&ListPanel::handleDrop)); ADD_WIDGET(urlNavigator); // toolbar @@ -437,9 +437,11 @@ connect(view->op(), &KrViewOperator::goHome, func, &ListPanelFunc::home); connect(view->op(), &KrViewOperator::dirUp, func, &ListPanelFunc::dirUp); connect(view->op(), &KrViewOperator::defaultDeleteFiles, func, &ListPanelFunc::defaultDeleteFiles); - connect(view->op(), &KrViewOperator::middleButtonClicked, this, QOverload::of(&ListPanel::newTab)); + connect(view->op(), &KrViewOperator::middleButtonClicked, + this, static_cast(&ListPanel::newTab)); connect(view->op(), &KrViewOperator::currentChanged, this, &ListPanel::slotCurrentChanged); - connect(view->op(), &KrViewOperator::renameItem, func, QOverload::of(&ListPanelFunc::rename)); + connect(view->op(), &KrViewOperator::renameItem, + func, static_cast(&ListPanelFunc::rename)); connect(view->op(), &KrViewOperator::executed, func, &ListPanelFunc::execute); connect(view->op(), &KrViewOperator::goInside, func, &ListPanelFunc::goInside); connect(view->op(), &KrViewOperator::needFocus, this, [=]() { slotFocusOnMe(); }); diff --git a/krusader/Panel/listpanelactions.cpp b/krusader/Panel/listpanelactions.cpp --- a/krusader/Panel/listpanelactions.cpp +++ b/krusader/Panel/listpanelactions.cpp @@ -42,15 +42,16 @@ { // set view type auto *mapper = new QSignalMapper(this); - connect(mapper, QOverload::of(&QSignalMapper::mapped), this, &ListPanelActions::setView); + connect(mapper, static_cast(&QSignalMapper::mapped), + this, &ListPanelActions::setView); auto *group = new QActionGroup(this); group->setExclusive(true); QList views = KrViewFactory::registeredViews(); for(int i = 0; i < views.count(); i++) { KrViewInstance *inst = views[i]; QAction *action = new QAction(Icon(inst->iconName()), inst->description(), group); action->setCheckable(true); - connect(action, &QAction::triggered, mapper, QOverload<>::of(&QSignalMapper::map)); + connect(action, &QAction::triggered, mapper, static_cast(&QSignalMapper::map)); mapper->setMapping(action, inst->id()); _mainWindow->actions()->addAction("view" + QString::number(i), action); _mainWindow->actions()->setDefaultShortcut(action, inst->shortcut()); diff --git a/krusader/Panel/sidebar.cpp b/krusader/Panel/sidebar.cpp --- a/krusader/Panel/sidebar.cpp +++ b/krusader/Panel/sidebar.cpp @@ -62,7 +62,8 @@ btns = new QButtonGroup(this); btns->setExclusive(true); - connect(btns, QOverload::of(&QButtonGroup::buttonClicked), this, &Sidebar::tabSelected); + connect(btns, static_cast(&QButtonGroup::buttonClicked), + this, &Sidebar::tabSelected); treeBtn = new QToolButton(this); treeBtn->setToolTip(i18n("Tree Panel: a tree view of the local file system")); diff --git a/krusader/Splitter/splittergui.cpp b/krusader/Splitter/splittergui.cpp --- a/krusader/Splitter/splittergui.cpp +++ b/krusader/Splitter/splittergui.cpp @@ -150,8 +150,10 @@ KConfigGroup cfg(KSharedConfig::openConfig(), QStringLiteral("Splitter")); overwriteCb->setChecked(cfg.readEntry("OverWriteFiles", false)); - connect(sizeCombo, QOverload::of(&QComboBox::activated), this, &SplitterGUI::sizeComboActivated); - connect(deviceCombo, QOverload::of(&QComboBox::activated), this, &SplitterGUI::predefinedComboActivated); + connect(sizeCombo, static_cast(&QComboBox::activated), + this, &SplitterGUI::sizeComboActivated); + connect(deviceCombo, static_cast(&QComboBox::activated), + this, &SplitterGUI::predefinedComboActivated); connect(buttonBox, &QDialogButtonBox::rejected, this, &SplitterGUI::reject); connect(buttonBox , &QDialogButtonBox::accepted, this, &SplitterGUI::splitPressed); diff --git a/krusader/UserAction/kraction.cpp b/krusader/UserAction/kraction.cpp --- a/krusader/UserAction/kraction.cpp +++ b/krusader/UserAction/kraction.cpp @@ -284,7 +284,8 @@ _proc = new KProcess(this); _proc->clearProgram(); // this clears the arglist too _proc->setWorkingDirectory(workingDir); - connect(_proc, QOverload::of(&KProcess::finished), this, &KrActionProc::processExited); + connect(_proc, static_cast(&KProcess::finished), + this, &KrActionProc::processExited); if (_action->execType() == KrAction::Normal || _action->execType() == KrAction::Terminal) { // not collect output if (_action->execType() == KrAction::Terminal) { // run in terminal diff --git a/krusader/krslots.h b/krusader/krslots.h --- a/krusader/krslots.h +++ b/krusader/krslots.h @@ -45,7 +45,8 @@ KrProcess(QString in1, QString in2) { tmp1 = std::move(in1); tmp2 = std::move(in2); - connect(this, QOverload::of(&KrProcess::finished), this, &KrProcess::processHasExited); + connect(this, static_cast(&KrProcess::finished), + this, &KrProcess::processHasExited); } public slots: diff --git a/krusader/krusader.cpp b/krusader/krusader.cpp --- a/krusader/krusader.cpp +++ b/krusader/krusader.cpp @@ -272,7 +272,7 @@ //HACK: make sure the active view becomes focused // for some reason sometimes the active view cannot be focused immediately at this point, // so queue it for the main loop - QTimer::singleShot(0, ACTIVE_PANEL->view->widget(), QOverload<>::of(&QWidget::setFocus)); + QTimer::singleShot(0, ACTIVE_PANEL->view->widget(), static_cast(&QWidget::setFocus)); _openUrlTimer.setSingleShot(true); connect(&_openUrlTimer, &QTimer::timeout, this, &Krusader::doOpenUrl); diff --git a/krusader/panelmanager.cpp b/krusader/panelmanager.cpp --- a/krusader/panelmanager.cpp +++ b/krusader/panelmanager.cpp @@ -63,13 +63,13 @@ _newTab->setToolTip(i18n("Open a new tab in home")); _newTab->setIcon(Icon("tab-new")); _newTab->adjustSize(); - connect(_newTab, &QToolButton::clicked, this, QOverload<>::of(&PanelManager::slotNewTab)); + connect(_newTab, &QToolButton::clicked, this, static_cast(&PanelManager::slotNewTab)); // tab-bar _tabbar = new PanelTabBar(this, _actions); connect(_tabbar, &PanelTabBar::currentChanged, this, &PanelManager::slotCurrentTabChanged); - connect(_tabbar, &PanelTabBar::tabCloseRequested, this, QOverload::of(&PanelManager::slotCloseTab)); - connect(_tabbar, &PanelTabBar::closeCurrentTab, this, QOverload<>::of(&PanelManager::slotCloseTab)); + connect(_tabbar, &PanelTabBar::tabCloseRequested, this, static_cast(&PanelManager::slotCloseTab)); + connect(_tabbar, &PanelTabBar::closeCurrentTab, this, static_cast(&PanelManager::slotCloseTab)); connect(_tabbar, &PanelTabBar::newTab, this, [=] (const QUrl &url) { slotNewTab(url); }); connect(_tabbar, &PanelTabBar::draggingTab, this, &PanelManager::slotDraggingTab); connect(_tabbar, &PanelTabBar::draggingTabFinished, this, &PanelManager::slotDraggingTabFinished);