Use lambdas for QtConcurrent::run instead of NewClosure

This commit is contained in:
Jonas Kvinge
2020-07-18 16:28:39 +02:00
parent 425dac478e
commit af67de8aa6
12 changed files with 25 additions and 47 deletions

View File

@@ -25,8 +25,7 @@
#include <limits>
#include <QtGlobal>
#include <QtConcurrentRun>
#include <QFuture>
#include <QtConcurrent>
#include <QObject>
#include <QWidget>
#include <QDialog>
@@ -286,16 +285,15 @@ void EditTagDialog::SetSongs(const SongList &s, const PlaylistItemList &items) {
ui_->song_list->clear();
// Reload tags in the background
QFuture<QList<Data>> future = QtConcurrent::run(this, &EditTagDialog::LoadData, s);
NewClosure(future, this, SLOT(SetSongsFinished(QFuture<QList<EditTagDialog::Data>>)), future);
(void)QtConcurrent::run([=]{ SetSongsFinished(LoadData(s)); });
}
void EditTagDialog::SetSongsFinished(QFuture<QList<Data>> future) {
void EditTagDialog::SetSongsFinished(QList<Data> _data) {
if (!SetLoading(QString())) return;
data_ = future.result();
data_ = _data;
if (data_.count() == 0) {
// If there were no valid songs, disable everything
ui_->song_list->setEnabled(false);