Rewrite MusicBrainzClient
Use Json instead of XML, make Disc ID requests respect rate limiting, handle sort names.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
* Strawberry Music Player
|
||||
* This file was part of Clementine.
|
||||
* Copyright 2010, David Sansome <me@davidsansome.com>
|
||||
* Copyright 2019-2021, Jonas Kvinge <jonas@jkvinge.net>
|
||||
* Copyright 2019-2025, Jonas Kvinge <jonas@jkvinge.net>
|
||||
*
|
||||
* Strawberry is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
@@ -89,6 +89,7 @@ TrackSelectionDialog::TrackSelectionDialog(const SharedPtr<TagReaderClient> tagr
|
||||
ui_->results->setColumnWidth(2, 160); // Title column
|
||||
ui_->results->setColumnWidth(3, 160); // Artist column
|
||||
ui_->results->setColumnWidth(4, 160); // Album column
|
||||
ui_->results->setColumnWidth(5, 160); // Album artist column
|
||||
|
||||
}
|
||||
|
||||
@@ -228,10 +229,15 @@ void TrackSelectionDialog::AddDivider(const QString &text, QTreeWidget *parent)
|
||||
|
||||
}
|
||||
|
||||
void TrackSelectionDialog::AddSong(const Song &song, int result_index, QTreeWidget *parent) {
|
||||
void TrackSelectionDialog::AddSong(const Song &song, const int result_index, QTreeWidget *parent) {
|
||||
|
||||
QStringList values;
|
||||
values << ((song.track() > 0) ? QString::number(song.track()) : QString()) << ((song.year() > 0) ? QString::number(song.year()) : QString()) << song.title() << song.artist() << song.album();
|
||||
values << ((song.track() > 0) ? QString::number(song.track()) : QString())
|
||||
<< ((song.year() > 0) ? QString::number(song.year()) : QString())
|
||||
<< song.title()
|
||||
<< song.artist()
|
||||
<< song.album()
|
||||
<< song.albumartist();
|
||||
|
||||
QTreeWidgetItem *item = new QTreeWidgetItem(parent, values);
|
||||
item->setData(0, Qt::UserRole, result_index);
|
||||
@@ -275,6 +281,9 @@ void TrackSelectionDialog::SaveData(const QList<Data> &_data) const {
|
||||
Song copy(ref.original_song_);
|
||||
copy.set_title(new_metadata.title());
|
||||
copy.set_artist(new_metadata.artist());
|
||||
copy.set_artistsort(new_metadata.artistsort());
|
||||
copy.set_albumartist(new_metadata.albumartist());
|
||||
copy.set_albumartistsort(new_metadata.albumartistsort());
|
||||
copy.set_album(new_metadata.album());
|
||||
copy.set_track(new_metadata.track());
|
||||
copy.set_year(new_metadata.year());
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* Strawberry Music Player
|
||||
* This file was part of Clementine.
|
||||
* Copyright 2010, David Sansome <me@davidsansome.com>
|
||||
* Copyright 2019-2021, Jonas Kvinge <jonas@jkvinge.net>
|
||||
* Copyright 2019-2025, Jonas Kvinge <jonas@jkvinge.net>
|
||||
*
|
||||
* Strawberry is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
@@ -83,7 +83,7 @@ class TrackSelectionDialog : public QDialog {
|
||||
};
|
||||
|
||||
void AddDivider(const QString &text, QTreeWidget *parent) const;
|
||||
static void AddSong(const Song &song, int result_index, QTreeWidget *parent);
|
||||
static void AddSong(const Song &song, const int result_index, QTreeWidget *parent);
|
||||
|
||||
void SetLoading(const QString &message);
|
||||
void SaveData(const QList<Data> &data) const;
|
||||
|
||||
@@ -210,6 +210,11 @@
|
||||
<string>Title</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Album artist</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Artist</string>
|
||||
@@ -260,7 +265,6 @@
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources>
|
||||
<include location="../../data/data.qrc"/>
|
||||
<include location="../../data/icons.qrc"/>
|
||||
</resources>
|
||||
<connections>
|
||||
|
||||
Reference in New Issue
Block a user