@@ -1801,6 +1801,12 @@ void CollectionBackend::ResetStatistics(const int id) {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CollectionBackend::DeleteAllAsync() {
|
||||||
|
|
||||||
|
QMetaObject::invokeMethod(this, "DeleteAll", Qt::QueuedConnection);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
void CollectionBackend::DeleteAll() {
|
void CollectionBackend::DeleteAll() {
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -197,7 +197,7 @@ class CollectionBackend : public CollectionBackendInterface {
|
|||||||
void IncrementSkipCountAsync(const int id, const float progress);
|
void IncrementSkipCountAsync(const int id, const float progress);
|
||||||
void ResetStatisticsAsync(const int id);
|
void ResetStatisticsAsync(const int id);
|
||||||
|
|
||||||
void DeleteAll();
|
void DeleteAllAsync();
|
||||||
|
|
||||||
Song GetSongBySongId(const QString &song_id);
|
Song GetSongBySongId(const QString &song_id);
|
||||||
SongList GetSongsBySongId(const QStringList &song_ids);
|
SongList GetSongsBySongId(const QStringList &song_ids);
|
||||||
@@ -234,6 +234,7 @@ class CollectionBackend : public CollectionBackendInterface {
|
|||||||
void IncrementPlayCount(const int id);
|
void IncrementPlayCount(const int id);
|
||||||
void IncrementSkipCount(const int id, const float progress);
|
void IncrementSkipCount(const int id, const float progress);
|
||||||
void ResetStatistics(const int id);
|
void ResetStatistics(const int id);
|
||||||
|
void DeleteAll();
|
||||||
void SongPathChanged(const Song &song, const QFileInfo &new_file, const std::optional<int> new_collection_directory_id);
|
void SongPathChanged(const Song &song, const QFileInfo &new_file, const std::optional<int> new_collection_directory_id);
|
||||||
|
|
||||||
SongList GetSongsBy(const QString &artist, const QString &album, const QString &title);
|
SongList GetSongsBy(const QString &artist, const QString &album, const QString &title);
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ SubsonicSettingsPage::SubsonicSettingsPage(SettingsDialog *dialog, QWidget *pare
|
|||||||
setWindowIcon(IconLoader::Load("subsonic"));
|
setWindowIcon(IconLoader::Load("subsonic"));
|
||||||
|
|
||||||
QObject::connect(ui_->button_test, &QPushButton::clicked, this, &SubsonicSettingsPage::TestClicked);
|
QObject::connect(ui_->button_test, &QPushButton::clicked, this, &SubsonicSettingsPage::TestClicked);
|
||||||
|
QObject::connect(ui_->button_deletesongs, &QPushButton::clicked, service_, &SubsonicService::DeleteSongs);
|
||||||
|
|
||||||
QObject::connect(this, &SubsonicSettingsPage::Test, service_, &SubsonicService::SendPingWithCredentials);
|
QObject::connect(this, &SubsonicSettingsPage::Test, service_, &SubsonicService::SendPingWithCredentials);
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>460</width>
|
<width>460</width>
|
||||||
<height>644</height>
|
<height>749</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
@@ -144,13 +144,6 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
|
||||||
<widget class="QPushButton" name="button_test">
|
|
||||||
<property name="text">
|
|
||||||
<string>Test</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
<item>
|
||||||
<widget class="QGroupBox" name="groupbox_preferences">
|
<widget class="QGroupBox" name="groupbox_preferences">
|
||||||
<property name="title">
|
<property name="title">
|
||||||
@@ -188,6 +181,42 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="groupbox_tools">
|
||||||
|
<property name="title">
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
|
<item row="0" column="2">
|
||||||
|
<spacer name="horizontalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QPushButton" name="button_test">
|
||||||
|
<property name="text">
|
||||||
|
<string>Test</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="QPushButton" name="button_deletesongs">
|
||||||
|
<property name="text">
|
||||||
|
<string>Delete songs</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<spacer name="spacer_middle">
|
<spacer name="spacer_middle">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
@@ -244,7 +273,6 @@
|
|||||||
<tabstop>server_url</tabstop>
|
<tabstop>server_url</tabstop>
|
||||||
<tabstop>username</tabstop>
|
<tabstop>username</tabstop>
|
||||||
<tabstop>password</tabstop>
|
<tabstop>password</tabstop>
|
||||||
<tabstop>button_test</tabstop>
|
|
||||||
<tabstop>checkbox_verify_certificate</tabstop>
|
<tabstop>checkbox_verify_certificate</tabstop>
|
||||||
<tabstop>checkbox_download_album_covers</tabstop>
|
<tabstop>checkbox_download_album_covers</tabstop>
|
||||||
</tabstops>
|
</tabstops>
|
||||||
|
|||||||
@@ -446,6 +446,12 @@ void SubsonicService::GetSongs() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SubsonicService::DeleteSongs() {
|
||||||
|
|
||||||
|
collection_backend_->DeleteAllAsync();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
void SubsonicService::SongsResultsReceived(const SongMap &songs, const QString &error) {
|
void SubsonicService::SongsResultsReceived(const SongMap &songs, const QString &error) {
|
||||||
|
|
||||||
emit SongsResults(songs, error);
|
emit SongsResults(songs, error);
|
||||||
|
|||||||
@@ -92,6 +92,7 @@ class SubsonicService : public InternetService {
|
|||||||
void SendPing();
|
void SendPing();
|
||||||
void SendPingWithCredentials(QUrl url, const QString &username, const QString &password, const SubsonicSettingsPage::AuthMethod auth_method, const bool redirect = false);
|
void SendPingWithCredentials(QUrl url, const QString &username, const QString &password, const SubsonicSettingsPage::AuthMethod auth_method, const bool redirect = false);
|
||||||
void GetSongs() override;
|
void GetSongs() override;
|
||||||
|
void DeleteSongs();
|
||||||
void ResetSongsRequest() override;
|
void ResetSongsRequest() override;
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
|||||||
Reference in New Issue
Block a user