This commit is contained in:
Martin Rotter 2023-12-08 07:41:25 +01:00
parent 8db946e368
commit 436c960712
2 changed files with 26 additions and 0 deletions

View File

@ -10,6 +10,8 @@
#include "gui/mediaplayer/libmpv/libmpvbackend.h"
#include <mpv/client.h>
#include <QFileDialog>
#endif
SettingsMediaPlayer::SettingsMediaPlayer(Settings* settings, QWidget* parent) : SettingsPanel(settings, parent) {
@ -39,6 +41,8 @@ void SettingsMediaPlayer::loadSettings() {
->value(GROUP(VideoPlayer),
SETTING(VideoPlayer::MpvCustomConfigFolder))
.toString()));
connect(m_ui.m_btnMpvConfigFolder, &QPushButton::clicked, this, &SettingsMediaPlayer::selectMpvConfigFolder);
#elif defined(ENABLE_MEDIAPLAYER_QTMULTIMEDIA)
m_ui.m_txtBackend->setText(QSL("QtMultimedia"));
m_ui.m_helpInfo->setHelpText(tr("You use lightweight QtMultimedia-based media player backend. If some videos do not "
@ -58,6 +62,23 @@ void SettingsMediaPlayer::loadSettings() {
onEndLoadSettings();
}
#if defined(ENABLE_MEDIAPLAYER_LIBMPV)
void SettingsMediaPlayer::selectMpvConfigFolder() {
QString real_path = qApp->replaceUserDataFolderPlaceholder(m_ui.m_txtMpvConfigFolder->text());
QFileDialog dialog(this, tr("Select folder for your MPV configuration"), real_path);
dialog.setFileMode(QFileDialog::FileMode::Directory);
dialog.setWindowIcon(icon());
dialog.setOptions(QFileDialog::Option::DontUseNativeDialog | QFileDialog::Option::ShowDirsOnly |
QFileDialog::Option::HideNameFilterDetails);
dialog.setViewMode(QFileDialog::ViewMode::Detail);
if (dialog.exec() == QDialog::DialogCode::Accepted && !dialog.selectedFiles().isEmpty()) {
m_ui.m_txtMpvConfigFolder->setText(QDir::toNativeSeparators(dialog.selectedFiles().at(0)));
}
}
#endif
void SettingsMediaPlayer::saveSettings() {
onBeginSaveSettings();

View File

@ -18,6 +18,11 @@ class SettingsMediaPlayer : public SettingsPanel {
virtual void loadSettings();
virtual void saveSettings();
#if defined(ENABLE_MEDIAPLAYER_LIBMPV)
private slots:
void selectMpvConfigFolder();
#endif
private:
Ui::SettingsMediaPlayer m_ui;
};