@@ -26,6 +26,7 @@
|
||||
#include <QVariant>
|
||||
#include <QString>
|
||||
|
||||
#include "core/shared_ptr.h"
|
||||
#include "core/application.h"
|
||||
#include "core/player.h"
|
||||
#include "engine/enginebase.h"
|
||||
@@ -51,7 +52,7 @@ class BackendSettingsPage : public SettingsPage {
|
||||
void Save() override;
|
||||
void Cancel() override;
|
||||
|
||||
EngineBase *engine() const { return dialog()->app()->player()->engine(); }
|
||||
SharedPtr<EngineBase> engine() const { return dialog()->app()->player()->engine(); }
|
||||
|
||||
#ifdef HAVE_ALSA
|
||||
enum class ALSAPluginType {
|
||||
|
||||
@@ -54,7 +54,7 @@ GlobalShortcutsSettingsPage::GlobalShortcutsSettingsPage(SettingsDialog *dialog,
|
||||
: SettingsPage(dialog, parent),
|
||||
ui_(new Ui_GlobalShortcutsSettingsPage),
|
||||
initialized_(false),
|
||||
grabber_(new GlobalShortcutGrabber) {
|
||||
grabber_(new GlobalShortcutGrabber()) {
|
||||
|
||||
ui_->setupUi(this);
|
||||
ui_->shortcut_options->setEnabled(false);
|
||||
|
||||
@@ -24,14 +24,13 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include <QObject>
|
||||
#include <QSettings>
|
||||
#include <QMap>
|
||||
#include <QString>
|
||||
#include <QKeySequence>
|
||||
|
||||
#include "core/scoped_ptr.h"
|
||||
#include "globalshortcuts/globalshortcutsmanager.h"
|
||||
#include "settingspage.h"
|
||||
|
||||
@@ -77,7 +76,7 @@ class GlobalShortcutsSettingsPage : public SettingsPage {
|
||||
Ui_GlobalShortcutsSettingsPage *ui_;
|
||||
|
||||
bool initialized_;
|
||||
std::unique_ptr<GlobalShortcutGrabber> grabber_;
|
||||
ScopedPtr<GlobalShortcutGrabber> grabber_;
|
||||
|
||||
QMap<QString, Shortcut> shortcuts_;
|
||||
|
||||
|
||||
@@ -53,10 +53,10 @@ QobuzSettingsPage::QobuzSettingsPage(SettingsDialog *dialog, QWidget *parent)
|
||||
QObject::connect(ui_->button_login, &QPushButton::clicked, this, &QobuzSettingsPage::LoginClicked);
|
||||
QObject::connect(ui_->login_state, &LoginStateWidget::LogoutClicked, this, &QobuzSettingsPage::LogoutClicked);
|
||||
|
||||
QObject::connect(this, &QobuzSettingsPage::Login, service_, &InternetService::LoginWithCredentials);
|
||||
QObject::connect(this, &QobuzSettingsPage::Login, &*service_, &InternetService::LoginWithCredentials);
|
||||
|
||||
QObject::connect(service_, &InternetService::LoginFailure, this, &QobuzSettingsPage::LoginFailure);
|
||||
QObject::connect(service_, &InternetService::LoginSuccess, this, &QobuzSettingsPage::LoginSuccess);
|
||||
QObject::connect(&*service_, &InternetService::LoginFailure, this, &QobuzSettingsPage::LoginFailure);
|
||||
QObject::connect(&*service_, &InternetService::LoginSuccess, this, &QobuzSettingsPage::LoginSuccess);
|
||||
|
||||
dialog->installEventFilter(this);
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
|
||||
#include "core/shared_ptr.h"
|
||||
#include "settings/settingspage.h"
|
||||
|
||||
class QEvent;
|
||||
@@ -55,7 +56,7 @@ class QobuzSettingsPage : public SettingsPage {
|
||||
|
||||
private:
|
||||
Ui_QobuzSettingsPage *ui_;
|
||||
QobuzService *service_;
|
||||
SharedPtr<QobuzService> service_;
|
||||
};
|
||||
|
||||
#endif // QOBUZSETTINGSPAGE_H
|
||||
|
||||
@@ -58,21 +58,21 @@ ScrobblerSettingsPage::ScrobblerSettingsPage(SettingsDialog *dialog, QWidget *pa
|
||||
setWindowIcon(IconLoader::Load("scrobble", true, 0, 32));
|
||||
|
||||
// Last.fm
|
||||
QObject::connect(lastfmscrobbler_, &LastFMScrobbler::AuthenticationComplete, this, &ScrobblerSettingsPage::LastFM_AuthenticationComplete);
|
||||
QObject::connect(&*lastfmscrobbler_, &LastFMScrobbler::AuthenticationComplete, this, &ScrobblerSettingsPage::LastFM_AuthenticationComplete);
|
||||
QObject::connect(ui_->button_lastfm_login, &QPushButton::clicked, this, &ScrobblerSettingsPage::LastFM_Login);
|
||||
QObject::connect(ui_->widget_lastfm_login_state, &LoginStateWidget::LoginClicked, this, &ScrobblerSettingsPage::LastFM_Login);
|
||||
QObject::connect(ui_->widget_lastfm_login_state, &LoginStateWidget::LogoutClicked, this, &ScrobblerSettingsPage::LastFM_Logout);
|
||||
ui_->widget_lastfm_login_state->AddCredentialGroup(ui_->widget_lastfm_login);
|
||||
|
||||
// Libre.fm
|
||||
QObject::connect(librefmscrobbler_, &LibreFMScrobbler::AuthenticationComplete, this, &ScrobblerSettingsPage::LibreFM_AuthenticationComplete);
|
||||
QObject::connect(&*librefmscrobbler_, &LibreFMScrobbler::AuthenticationComplete, this, &ScrobblerSettingsPage::LibreFM_AuthenticationComplete);
|
||||
QObject::connect(ui_->button_librefm_login, &QPushButton::clicked, this, &ScrobblerSettingsPage::LibreFM_Login);
|
||||
QObject::connect(ui_->widget_librefm_login_state, &LoginStateWidget::LoginClicked, this, &ScrobblerSettingsPage::LibreFM_Login);
|
||||
QObject::connect(ui_->widget_librefm_login_state, &LoginStateWidget::LogoutClicked, this, &ScrobblerSettingsPage::LibreFM_Logout);
|
||||
ui_->widget_librefm_login_state->AddCredentialGroup(ui_->widget_librefm_login);
|
||||
|
||||
// ListenBrainz
|
||||
QObject::connect(listenbrainzscrobbler_, &ListenBrainzScrobbler::AuthenticationComplete, this, &ScrobblerSettingsPage::ListenBrainz_AuthenticationComplete);
|
||||
QObject::connect(&*listenbrainzscrobbler_, &ListenBrainzScrobbler::AuthenticationComplete, this, &ScrobblerSettingsPage::ListenBrainz_AuthenticationComplete);
|
||||
QObject::connect(ui_->button_listenbrainz_login, &QPushButton::clicked, this, &ScrobblerSettingsPage::ListenBrainz_Login);
|
||||
QObject::connect(ui_->widget_listenbrainz_login_state, &LoginStateWidget::LoginClicked, this, &ScrobblerSettingsPage::ListenBrainz_Login);
|
||||
QObject::connect(ui_->widget_listenbrainz_login_state, &LoginStateWidget::LogoutClicked, this, &ScrobblerSettingsPage::ListenBrainz_Logout);
|
||||
@@ -91,12 +91,12 @@ void ScrobblerSettingsPage::Load() {
|
||||
QSettings s;
|
||||
if (!s.contains(kSettingsGroup)) set_changed();
|
||||
|
||||
ui_->checkbox_enable->setChecked(scrobbler_->IsEnabled());
|
||||
ui_->checkbox_scrobble_button->setChecked(scrobbler_->ScrobbleButton());
|
||||
ui_->checkbox_love_button->setChecked(scrobbler_->LoveButton());
|
||||
ui_->checkbox_offline->setChecked(scrobbler_->IsOffline());
|
||||
ui_->spinbox_submit->setValue(scrobbler_->SubmitDelay());
|
||||
ui_->checkbox_albumartist->setChecked(scrobbler_->PreferAlbumArtist());
|
||||
ui_->checkbox_enable->setChecked(scrobbler_->enabled());
|
||||
ui_->checkbox_scrobble_button->setChecked(scrobbler_->scrobble_button());
|
||||
ui_->checkbox_love_button->setChecked(scrobbler_->love_button());
|
||||
ui_->checkbox_offline->setChecked(scrobbler_->offline());
|
||||
ui_->spinbox_submit->setValue(scrobbler_->submit_delay());
|
||||
ui_->checkbox_albumartist->setChecked(scrobbler_->prefer_albumartist());
|
||||
ui_->checkbox_show_error_dialog->setChecked(scrobbler_->ShowErrorDialog());
|
||||
|
||||
ui_->checkbox_source_collection->setChecked(scrobbler_->sources().contains(Song::Source::Collection));
|
||||
@@ -111,15 +111,15 @@ void ScrobblerSettingsPage::Load() {
|
||||
ui_->checkbox_source_radioparadise->setChecked(scrobbler_->sources().contains(Song::Source::RadioParadise));
|
||||
ui_->checkbox_source_unknown->setChecked(scrobbler_->sources().contains(Song::Source::Unknown));
|
||||
|
||||
ui_->checkbox_lastfm_enable->setChecked(lastfmscrobbler_->IsEnabled());
|
||||
LastFM_RefreshControls(lastfmscrobbler_->IsAuthenticated());
|
||||
ui_->checkbox_lastfm_enable->setChecked(lastfmscrobbler_->enabled());
|
||||
LastFM_RefreshControls(lastfmscrobbler_->authenticated());
|
||||
|
||||
ui_->checkbox_librefm_enable->setChecked(librefmscrobbler_->IsEnabled());
|
||||
LibreFM_RefreshControls(librefmscrobbler_->IsAuthenticated());
|
||||
ui_->checkbox_librefm_enable->setChecked(librefmscrobbler_->enabled());
|
||||
LibreFM_RefreshControls(librefmscrobbler_->authenticated());
|
||||
|
||||
ui_->checkbox_listenbrainz_enable->setChecked(listenbrainzscrobbler_->IsEnabled());
|
||||
ui_->checkbox_listenbrainz_enable->setChecked(listenbrainzscrobbler_->enabled());
|
||||
ui_->lineedit_listenbrainz_user_token->setText(listenbrainzscrobbler_->user_token());
|
||||
ListenBrainz_RefreshControls(listenbrainzscrobbler_->IsAuthenticated());
|
||||
ListenBrainz_RefreshControls(listenbrainzscrobbler_->authenticated());
|
||||
|
||||
Init(ui_->layout_scrobblersettingspage->parentWidget());
|
||||
|
||||
|
||||
@@ -20,11 +20,15 @@
|
||||
#ifndef SCROBBLERSETTINGSPAGE_H
|
||||
#define SCROBBLERSETTINGSPAGE_H
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "settingspage.h"
|
||||
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
|
||||
#include "core/shared_ptr.h"
|
||||
|
||||
class SettingsDialog;
|
||||
class Ui_ScrobblerSettingsPage;
|
||||
class AudioScrobbler;
|
||||
@@ -56,10 +60,10 @@ class ScrobblerSettingsPage : public SettingsPage {
|
||||
void ListenBrainz_AuthenticationComplete(const bool success, const QString &error = QString());
|
||||
|
||||
private:
|
||||
AudioScrobbler *scrobbler_;
|
||||
LastFMScrobbler *lastfmscrobbler_;
|
||||
LibreFMScrobbler *librefmscrobbler_;
|
||||
ListenBrainzScrobbler *listenbrainzscrobbler_;
|
||||
SharedPtr<AudioScrobbler> scrobbler_;
|
||||
SharedPtr<LastFMScrobbler> lastfmscrobbler_;
|
||||
SharedPtr<LibreFMScrobbler> librefmscrobbler_;
|
||||
SharedPtr<ListenBrainzScrobbler> listenbrainzscrobbler_;
|
||||
Ui_ScrobblerSettingsPage *ui_;
|
||||
|
||||
bool lastfm_waiting_for_auth_;
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#include <QString>
|
||||
#include <QSettings>
|
||||
|
||||
#include "core/shared_ptr.h"
|
||||
#include "engine/enginebase.h"
|
||||
#include "osd/osdbase.h"
|
||||
|
||||
@@ -104,8 +105,8 @@ class SettingsDialog : public QDialog {
|
||||
|
||||
Application *app() const { return app_; }
|
||||
OSDBase *osd() const { return osd_; }
|
||||
Player *player() const { return player_; }
|
||||
EngineBase *engine() const { return engine_; }
|
||||
SharedPtr<Player> player() const { return player_; }
|
||||
SharedPtr<EngineBase> engine() const { return engine_; }
|
||||
CollectionDirectoryModel *collection_directory_model() const { return model_; }
|
||||
GlobalShortcutsManager *global_shortcuts_manager() const { return manager_; }
|
||||
|
||||
@@ -150,8 +151,8 @@ class SettingsDialog : public QDialog {
|
||||
QMainWindow *mainwindow_;
|
||||
Application *app_;
|
||||
OSDBase *osd_;
|
||||
Player *player_;
|
||||
EngineBase *engine_;
|
||||
SharedPtr<Player> player_;
|
||||
SharedPtr<EngineBase> engine_;
|
||||
CollectionDirectoryModel *model_;
|
||||
GlobalShortcutsManager *manager_;
|
||||
|
||||
|
||||
@@ -50,12 +50,12 @@ SubsonicSettingsPage::SubsonicSettingsPage(SettingsDialog *dialog, QWidget *pare
|
||||
setWindowIcon(IconLoader::Load("subsonic", true, 0, 32));
|
||||
|
||||
QObject::connect(ui_->button_test, &QPushButton::clicked, this, &SubsonicSettingsPage::TestClicked);
|
||||
QObject::connect(ui_->button_deletesongs, &QPushButton::clicked, service_, &SubsonicService::DeleteSongs);
|
||||
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);
|
||||
|
||||
QObject::connect(service_, &SubsonicService::TestFailure, this, &SubsonicSettingsPage::TestFailure);
|
||||
QObject::connect(service_, &SubsonicService::TestSuccess, this, &SubsonicSettingsPage::TestSuccess);
|
||||
QObject::connect(&*service_, &SubsonicService::TestFailure, this, &SubsonicSettingsPage::TestFailure);
|
||||
QObject::connect(&*service_, &SubsonicService::TestSuccess, this, &SubsonicSettingsPage::TestSuccess);
|
||||
|
||||
dialog->installEventFilter(this);
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <QString>
|
||||
#include <QUrl>
|
||||
|
||||
#include "core/shared_ptr.h"
|
||||
#include "settings/settingspage.h"
|
||||
|
||||
class QEvent;
|
||||
@@ -62,7 +63,7 @@ class SubsonicSettingsPage : public SettingsPage {
|
||||
|
||||
private:
|
||||
Ui_SubsonicSettingsPage *ui_;
|
||||
SubsonicService *service_;
|
||||
SharedPtr<SubsonicService> service_;
|
||||
};
|
||||
|
||||
#endif // SUBSONICSETTINGSPAGE_H
|
||||
|
||||
@@ -54,11 +54,11 @@ TidalSettingsPage::TidalSettingsPage(SettingsDialog *dialog, QWidget *parent)
|
||||
QObject::connect(ui_->login_state, &LoginStateWidget::LogoutClicked, this, &TidalSettingsPage::LogoutClicked);
|
||||
QObject::connect(ui_->oauth, &QCheckBox::toggled, this, &TidalSettingsPage::OAuthClicked);
|
||||
|
||||
QObject::connect(this, &TidalSettingsPage::Authorize, service_, &TidalService::StartAuthorization);
|
||||
QObject::connect(this, &TidalSettingsPage::Login, service_, &TidalService::SendLoginWithCredentials);
|
||||
QObject::connect(this, &TidalSettingsPage::Authorize, &*service_, &TidalService::StartAuthorization);
|
||||
QObject::connect(this, &TidalSettingsPage::Login, &*service_, &TidalService::SendLoginWithCredentials);
|
||||
|
||||
QObject::connect(service_, &InternetService::LoginFailure, this, &TidalSettingsPage::LoginFailure);
|
||||
QObject::connect(service_, &InternetService::LoginSuccess, this, &TidalSettingsPage::LoginSuccess);
|
||||
QObject::connect(&*service_, &InternetService::LoginFailure, this, &TidalSettingsPage::LoginFailure);
|
||||
QObject::connect(&*service_, &InternetService::LoginSuccess, this, &TidalSettingsPage::LoginSuccess);
|
||||
|
||||
dialog->installEventFilter(this);
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
|
||||
#include "core/shared_ptr.h"
|
||||
#include "settings/settingspage.h"
|
||||
|
||||
class QEvent;
|
||||
@@ -65,7 +66,7 @@ class TidalSettingsPage : public SettingsPage {
|
||||
|
||||
private:
|
||||
Ui_TidalSettingsPage *ui_;
|
||||
TidalService *service_;
|
||||
SharedPtr<TidalService> service_;
|
||||
};
|
||||
|
||||
#endif // TIDALSETTINGSPAGE_H
|
||||
|
||||
Reference in New Issue
Block a user