added icon to setting sections
This commit is contained in:
parent
856cab57e7
commit
de8b65bdec
@ -14,6 +14,7 @@
|
||||
<file>./graphics/Breeze/actions/32/arrow-up-double.svg</file>
|
||||
<file>./graphics/Breeze/status/22/audio-volume-muted.svg</file>
|
||||
<file>./graphics/Breeze/actions/32/call-start.svg</file>
|
||||
<file>./graphics/Breeze/actions/32/configure-shortcuts.svg</file>
|
||||
<file>./graphics/Breeze/actions/32/dialog-cancel.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/dialog-close.svg</file>
|
||||
<file>./graphics/Breeze/status/64/dialog-error.svg</file>
|
||||
@ -28,7 +29,9 @@
|
||||
<file>./graphics/Breeze/actions/32/document-open.svg</file>
|
||||
<file>./graphics/Breeze/actions/32/document-revert.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/download.svg</file>
|
||||
<file>./graphics/Breeze/actions/48/draw-freehand.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/draw-line.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/draw-star.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/edit-clear.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/edit-copy.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/edit-cut.svg</file>
|
||||
@ -41,6 +44,7 @@
|
||||
<file>./graphics/Breeze/emblems/22/emblem-favorite.svg</file>
|
||||
<file>./graphics/Breeze/emblems/22/emblem-shared.svg</file>
|
||||
<file>./graphics/Breeze/places/96/folder.svg</file>
|
||||
<file>./graphics/Breeze/places/64/folder-database.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/format-indent-less.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/format-indent-more.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/format-justify-fill.svg</file>
|
||||
@ -65,6 +69,9 @@
|
||||
<file>./graphics/Breeze/mimetypes/64/image-x-generic.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/insert-link.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/insert-page-break.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/internet-services.svg</file>
|
||||
<file>./graphics/Breeze/apps/48/kmplayer.svg</file>
|
||||
<file>./graphics/Breeze/mimetypes/64/libreoffice-database.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/list-add.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/list-remove.svg</file>
|
||||
<file>./graphics/Breeze/actions/32/mail-attachment.svg</file>
|
||||
@ -81,9 +88,13 @@
|
||||
<file>./graphics/Breeze/actions/32/media-playback-pause.svg</file>
|
||||
<file>./graphics/Breeze/actions/32/media-playback-start.svg</file>
|
||||
<file>./graphics/Breeze/actions/32/media-playback-stop.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/node.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/node-join.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/notifications.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/player-volume.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/player-volume-muted.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/process-stop.svg</file>
|
||||
<file>./graphics/Breeze/apps/48/smplayer.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/system-search.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/system-upgrade.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/tab-new.svg</file>
|
||||
@ -91,6 +102,7 @@
|
||||
<file>./graphics/Breeze/actions/22/tag-new.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/tag-properties.svg</file>
|
||||
<file>./graphics/Breeze/mimetypes/64/text-html.svg</file>
|
||||
<file>./graphics/Breeze/mimetypes/64/text-x-gettext-translation.svg</file>
|
||||
<file>./graphics/Breeze/places/96/user-trash.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/view-fullscreen.svg</file>
|
||||
<file>./graphics/Breeze/actions/22/viewimage.svg</file>
|
||||
@ -113,6 +125,7 @@
|
||||
<file>./graphics/Breeze Dark/actions/32/arrow-up-double.svg</file>
|
||||
<file>./graphics/Breeze Dark/status/22/audio-volume-muted.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/32/call-start.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/32/configure-shortcuts.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/32/dialog-cancel.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/dialog-close.svg</file>
|
||||
<file>./graphics/Breeze Dark/status/64/dialog-error.svg</file>
|
||||
@ -127,7 +140,9 @@
|
||||
<file>./graphics/Breeze Dark/actions/32/document-open.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/32/document-revert.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/download.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/48/draw-freehand.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/draw-line.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/draw-star.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/edit-clear.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/edit-copy.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/edit-cut.svg</file>
|
||||
@ -140,6 +155,7 @@
|
||||
<file>./graphics/Breeze Dark/emblems/22/emblem-favorite.svg</file>
|
||||
<file>./graphics/Breeze Dark/emblems/22/emblem-shared.svg</file>
|
||||
<file>./graphics/Breeze Dark/places/96/folder.svg</file>
|
||||
<file>./graphics/Breeze Dark/places/64/folder-database.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/format-indent-less.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/format-indent-more.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/format-justify-fill.svg</file>
|
||||
@ -164,6 +180,9 @@
|
||||
<file>./graphics/Breeze Dark/mimetypes/64/image-x-generic.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/insert-link.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/insert-page-break.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/internet-services.svg</file>
|
||||
<file>./graphics/Breeze Dark/apps/48/kmplayer.svg</file>
|
||||
<file>./graphics/Breeze Dark/mimetypes/64/libreoffice-database.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/list-add.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/list-remove.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/32/mail-attachment.svg</file>
|
||||
@ -180,9 +199,13 @@
|
||||
<file>./graphics/Breeze Dark/actions/32/media-playback-pause.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/32/media-playback-start.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/32/media-playback-stop.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/node.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/node-join.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/notifications.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/player-volume.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/player-volume-muted.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/process-stop.svg</file>
|
||||
<file>./graphics/Breeze Dark/apps/48/smplayer.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/system-search.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/system-upgrade.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/tab-new.svg</file>
|
||||
@ -190,6 +213,7 @@
|
||||
<file>./graphics/Breeze Dark/actions/22/tag-new.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/tag-properties.svg</file>
|
||||
<file>./graphics/Breeze Dark/mimetypes/64/text-html.svg</file>
|
||||
<file>./graphics/Breeze Dark/mimetypes/64/text-x-gettext-translation.svg</file>
|
||||
<file>./graphics/Breeze Dark/places/96/user-trash.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/view-fullscreen.svg</file>
|
||||
<file>./graphics/Breeze Dark/actions/22/viewimage.svg</file>
|
||||
@ -254,6 +278,7 @@
|
||||
<file>./graphics/Faenza/mimetypes/64/image-x-generic.png</file>
|
||||
<file>./graphics/Faenza/actions/64/insert-link.png</file>
|
||||
<file>./graphics/Faenza/actions/64/insert-object.png</file>
|
||||
<file>./graphics/Faenza/devices/64/keyboard.png</file>
|
||||
<file>./graphics/Faenza/actions/64/list-add.png</file>
|
||||
<file>./graphics/Faenza/actions/64/list-remove.png</file>
|
||||
<file>./graphics/Faenza/actions/64/mail-attachment.png</file>
|
||||
@ -317,6 +342,7 @@
|
||||
<file>./graphics/Numix/22/actions/document-revert.svg</file>
|
||||
<file>./graphics/Numix/22/actions/down.svg</file>
|
||||
<file>./graphics/Numix/22/actions/download.svg</file>
|
||||
<file>./graphics/Numix/22/actions/draw-freehand.svg</file>
|
||||
<file>./graphics/Numix/22/actions/edit-clear.svg</file>
|
||||
<file>./graphics/Numix/22/actions/edit-copy.svg</file>
|
||||
<file>./graphics/Numix/22/actions/edit-cut.svg</file>
|
||||
@ -350,6 +376,9 @@
|
||||
<file>./graphics/Numix/22/mimetypes/image-x-generic.svg</file>
|
||||
<file>./graphics/Numix/22/actions/insert-link.svg</file>
|
||||
<file>./graphics/Numix/22/actions/insert-object.svg</file>
|
||||
<file>./graphics/Numix/22/actions/internet-services.svg</file>
|
||||
<file>./graphics/Numix/22/status/keyboard.svg</file>
|
||||
<file>./graphics/Numix/22/mimetypes/libreoffice-database.svg</file>
|
||||
<file>./graphics/Numix/22/actions/list-add.svg</file>
|
||||
<file>./graphics/Numix/22/actions/list-remove.svg</file>
|
||||
<file>./graphics/Numix/22/actions/mail-attachment.svg</file>
|
||||
@ -366,6 +395,7 @@
|
||||
<file>./graphics/Numix/22/actions/media-playback-pause.svg</file>
|
||||
<file>./graphics/Numix/22/actions/media-playback-start.svg</file>
|
||||
<file>./graphics/Numix/22/actions/media-playback-stop.svg</file>
|
||||
<file>./graphics/Numix/22/actions/node-join.svg</file>
|
||||
<file>./graphics/Numix/22/actions/process-stop.svg</file>
|
||||
<file>./graphics/Numix/22/actions/reload.svg</file>
|
||||
<file>./graphics/Numix/22/actions/system-search.svg</file>
|
||||
@ -375,6 +405,7 @@
|
||||
<file>./graphics/Numix/22/actions/tag-new.svg</file>
|
||||
<file>./graphics/Numix/22/actions/tag-properties.svg</file>
|
||||
<file>./graphics/Numix/22/mimetypes/text-html.svg</file>
|
||||
<file>./graphics/Numix/22/mimetypes/text-x-gettext-translation.svg</file>
|
||||
<file>./graphics/Numix/22/actions/up.svg</file>
|
||||
<file>./graphics/Numix/22/places/user-trash.svg</file>
|
||||
<file>./graphics/Numix/22/actions/view-fullscreen.svg</file>
|
||||
|
@ -150,7 +150,12 @@ void FormSettings::cancelSettings() {
|
||||
}
|
||||
|
||||
void FormSettings::addSettingsPanel(SettingsPanel* panel) {
|
||||
m_ui.m_listSettings->addItem(panel->title());
|
||||
QListWidgetItem* itm = new QListWidgetItem(m_ui.m_listSettings);
|
||||
|
||||
itm->setText(panel->title());
|
||||
itm->setIcon(panel->icon());
|
||||
|
||||
// m_ui.m_listSettings->addItem(itm);
|
||||
m_panels.append(panel);
|
||||
|
||||
QScrollArea* scr = new QScrollArea(m_ui.m_stackedSettings);
|
||||
|
@ -5,6 +5,7 @@
|
||||
#include "3rd-party/boolinq/boolinq.h"
|
||||
#include "definitions/definitions.h"
|
||||
#include "gui/mediaplayer/libmpv/qthelper.h"
|
||||
#include "miscellaneous/settings.h"
|
||||
|
||||
#include <clocale>
|
||||
#include <sstream>
|
||||
@ -36,9 +37,10 @@ static void wakeup(void* ctx) {
|
||||
emit backend->launchMpvEvents();
|
||||
}
|
||||
|
||||
LibMpvBackend::LibMpvBackend(QWidget* parent)
|
||||
: PlayerBackend(parent), m_mpvContainer(new QWidget(this)), m_mpvHandle(nullptr) {
|
||||
LibMpvBackend::LibMpvBackend(Application* app, QWidget* parent)
|
||||
: PlayerBackend(app, parent), m_mpvContainer(new QWidget(this)), m_mpvHandle(nullptr) {
|
||||
installEventFilter(this);
|
||||
loadSettings();
|
||||
|
||||
m_mpvHandle = mpv_create();
|
||||
|
||||
@ -84,9 +86,12 @@ LibMpvBackend::LibMpvBackend(QWidget* parent)
|
||||
mpv_set_option_string(m_mpvHandle, "terminal", "yes");
|
||||
#endif
|
||||
|
||||
// mpv_set_option_string(m_mpvHandle, "osd-italic", "yes");
|
||||
// mpv_set_option_string(m_mpvHandle, "osd-color", "1.0/0.0/0.0");
|
||||
|
||||
//
|
||||
// mpv_set_option_string(m_mpvHandle, "watch-later-dir", "mpv");
|
||||
// mpv_set_option_string(m_mpvHandle, "config-dir", "mpv");
|
||||
mpv_set_option_string(m_mpvHandle, "config-dir", "mpv");
|
||||
// mpv_set_option_string(m_mpvHandle, "input-builtin-bindings", "no");
|
||||
// mpv_set_option_string(m_mpvHandle, "input-test", "yes");
|
||||
|
||||
@ -129,6 +134,8 @@ void LibMpvBackend::destroyHandle() {
|
||||
}
|
||||
}
|
||||
|
||||
void LibMpvBackend::loadSettings() {}
|
||||
|
||||
LibMpvBackend::~LibMpvBackend() {
|
||||
destroyHandle();
|
||||
}
|
||||
@ -469,6 +476,10 @@ bool LibMpvBackend::eventFilter(QObject* watched, QEvent* event) {
|
||||
}
|
||||
|
||||
void LibMpvBackend::playUrl(const QUrl& url) {
|
||||
char* str;
|
||||
|
||||
mpv_get_property(m_mpvHandle, "ytdl_path", MPV_FORMAT_STRING, &str);
|
||||
|
||||
m_url = url;
|
||||
|
||||
if (m_mpvHandle != nullptr) {
|
||||
|
@ -11,7 +11,7 @@ class LibMpvBackend : public PlayerBackend {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit LibMpvBackend(QWidget* parent = nullptr);
|
||||
explicit LibMpvBackend(Application* app, QWidget* parent = nullptr);
|
||||
virtual ~LibMpvBackend();
|
||||
|
||||
public:
|
||||
@ -54,6 +54,7 @@ class LibMpvBackend : public PlayerBackend {
|
||||
QString errorToString(mpv_error error) const;
|
||||
|
||||
void destroyHandle();
|
||||
void loadSettings();
|
||||
|
||||
private:
|
||||
QWidget* m_mpvContainer;
|
||||
|
@ -15,9 +15,9 @@
|
||||
MediaPlayer::MediaPlayer(QWidget* parent)
|
||||
: TabContent(parent), m_backend(
|
||||
#if defined(ENABLE_MEDIAPLAYER_QTMULTIMEDIA)
|
||||
new QtMultimediaBackend(this)
|
||||
new QtMultimediaBackend(qApp, this)
|
||||
#else
|
||||
new LibMpvBackend(this)
|
||||
new LibMpvBackend(qApp, this)
|
||||
#endif
|
||||
),
|
||||
m_muted(false) {
|
||||
|
@ -159,7 +159,7 @@
|
||||
<item>
|
||||
<widget class="PlainToolButton" name="m_btnFullscreen">
|
||||
<property name="toolTip">
|
||||
<string>Download</string>
|
||||
<string>Switch fullscreen mode</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
@ -2,9 +2,12 @@
|
||||
|
||||
#include "gui/mediaplayer/playerbackend.h"
|
||||
|
||||
#include "miscellaneous/application.h"
|
||||
|
||||
#include <QVBoxLayout>
|
||||
|
||||
PlayerBackend::PlayerBackend(QWidget* parent) : QWidget(parent), m_mainLayout(new QVBoxLayout(this)) {
|
||||
PlayerBackend::PlayerBackend(Application* app, QWidget* parent)
|
||||
: QWidget(parent), m_app(app), m_mainLayout(new QVBoxLayout(this)) {
|
||||
m_mainLayout->setSpacing(0);
|
||||
m_mainLayout->setContentsMargins({0, 0, 0, 0});
|
||||
}
|
||||
|
@ -8,6 +8,7 @@
|
||||
#include <QUrl>
|
||||
|
||||
class QVBoxLayout;
|
||||
class Application;
|
||||
|
||||
class PlayerBackend : public QWidget {
|
||||
Q_OBJECT
|
||||
@ -19,7 +20,7 @@ class PlayerBackend : public QWidget {
|
||||
PausedState
|
||||
};
|
||||
|
||||
explicit PlayerBackend(QWidget* parent = nullptr);
|
||||
explicit PlayerBackend(Application* app, QWidget* parent = nullptr);
|
||||
|
||||
virtual QUrl url() const = 0;
|
||||
virtual int position() const = 0;
|
||||
@ -53,7 +54,8 @@ class PlayerBackend : public QWidget {
|
||||
virtual void setVolume(int volume) = 0;
|
||||
virtual void setPosition(int position) = 0;
|
||||
|
||||
signals:
|
||||
protected:
|
||||
Application* m_app;
|
||||
|
||||
private:
|
||||
QVBoxLayout* m_mainLayout;
|
||||
|
@ -95,6 +95,10 @@ SettingsBrowserMail::~SettingsBrowserMail() {
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
QIcon SettingsBrowserMail::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("applications-internet"), QSL("internet-services"));
|
||||
}
|
||||
|
||||
void SettingsBrowserMail::changeDefaultBrowserArguments(int index) {
|
||||
if (index != 0) {
|
||||
m_ui->m_txtExternalBrowserArguments->setText(m_ui->m_cmbExternalBrowserPreset->itemData(index).toString());
|
||||
|
@ -18,6 +18,7 @@ class SettingsBrowserMail : public SettingsPanel {
|
||||
explicit SettingsBrowserMail(Settings* settings, QWidget* parent = nullptr);
|
||||
virtual ~SettingsBrowserMail();
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -6,6 +6,7 @@
|
||||
#include "database/mariadbdriver.h"
|
||||
#include "definitions/definitions.h"
|
||||
#include "miscellaneous/application.h"
|
||||
#include "miscellaneous/iconfactory.h"
|
||||
#include "miscellaneous/settings.h"
|
||||
|
||||
SettingsDatabase::SettingsDatabase(Settings* settings, QWidget* parent)
|
||||
@ -88,6 +89,10 @@ SettingsDatabase::~SettingsDatabase() {
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
QIcon SettingsDatabase::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("folder-database"), QSL("libreoffice-database"));
|
||||
}
|
||||
|
||||
void SettingsDatabase::mysqlTestConnection() {
|
||||
MariaDbDriver* driv = static_cast<MariaDbDriver*>(qApp->database()->driver());
|
||||
const MariaDbDriver::MariaDbError error_code = driv->testConnection(m_ui->m_txtMysqlHostname->lineEdit()->text(),
|
||||
|
@ -8,12 +8,13 @@
|
||||
#include "ui_settingsdatabase.h"
|
||||
|
||||
class SettingsDatabase : public SettingsPanel {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsDatabase(Settings* settings, QWidget* parent = nullptr);
|
||||
virtual ~SettingsDatabase();
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include "gui/settings/settingsdownloads.h"
|
||||
|
||||
#include "miscellaneous/application.h"
|
||||
#include "miscellaneous/iconfactory.h"
|
||||
#include "miscellaneous/settings.h"
|
||||
#include "network-web/downloadmanager.h"
|
||||
|
||||
@ -14,18 +15,24 @@ SettingsDownloads::SettingsDownloads(Settings* settings, QWidget* parent)
|
||||
connect(m_ui->m_checkOpenManagerWhenDownloadStarts, &QCheckBox::toggled, this, &SettingsDownloads::dirtifySettings);
|
||||
connect(m_ui->m_txtDownloadsTargetDirectory, &QLineEdit::textChanged, this, &SettingsDownloads::dirtifySettings);
|
||||
connect(m_ui->m_rbDownloadsAskEachFile, &QRadioButton::toggled, this, &SettingsDownloads::dirtifySettings);
|
||||
connect(m_ui->m_btnDownloadsTargetDirectory, &QPushButton::clicked, this, &SettingsDownloads::selectDownloadsDirectory);
|
||||
connect(m_ui->m_btnDownloadsTargetDirectory,
|
||||
&QPushButton::clicked,
|
||||
this,
|
||||
&SettingsDownloads::selectDownloadsDirectory);
|
||||
}
|
||||
|
||||
SettingsDownloads::~SettingsDownloads() {
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
QIcon SettingsDownloads::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("browser-downloads"), QSL("download"));
|
||||
}
|
||||
|
||||
void SettingsDownloads::selectDownloadsDirectory() {
|
||||
const QString target_directory = QFileDialog::getExistingDirectory(this,
|
||||
tr("Select downloads target directory"),
|
||||
m_ui->m_txtDownloadsTargetDirectory->text()
|
||||
);
|
||||
m_ui->m_txtDownloadsTargetDirectory->text());
|
||||
|
||||
if (!target_directory.isEmpty()) {
|
||||
m_ui->m_txtDownloadsTargetDirectory->setText(QDir::toNativeSeparators(target_directory));
|
||||
@ -34,21 +41,26 @@ void SettingsDownloads::selectDownloadsDirectory() {
|
||||
|
||||
void SettingsDownloads::loadSettings() {
|
||||
onBeginLoadSettings();
|
||||
m_ui->m_checkOpenManagerWhenDownloadStarts->setChecked(settings()->value(GROUP(Downloads),
|
||||
SETTING(Downloads::ShowDownloadsWhenNewDownloadStarts)).toBool());
|
||||
m_ui->m_txtDownloadsTargetDirectory->setText(QDir::toNativeSeparators(settings()->value(GROUP(Downloads),
|
||||
SETTING(Downloads::TargetDirectory)).toString()));
|
||||
m_ui->m_rbDownloadsAskEachFile->setChecked(settings()->value(GROUP(Downloads),
|
||||
SETTING(Downloads::AlwaysPromptForFilename)).toBool());
|
||||
m_ui->m_checkOpenManagerWhenDownloadStarts
|
||||
->setChecked(settings()->value(GROUP(Downloads), SETTING(Downloads::ShowDownloadsWhenNewDownloadStarts)).toBool());
|
||||
m_ui->m_txtDownloadsTargetDirectory->setText(QDir::toNativeSeparators(settings()
|
||||
->value(GROUP(Downloads),
|
||||
SETTING(Downloads::TargetDirectory))
|
||||
.toString()));
|
||||
m_ui->m_rbDownloadsAskEachFile
|
||||
->setChecked(settings()->value(GROUP(Downloads), SETTING(Downloads::AlwaysPromptForFilename)).toBool());
|
||||
onEndLoadSettings();
|
||||
}
|
||||
|
||||
void SettingsDownloads::saveSettings() {
|
||||
onBeginSaveSettings();
|
||||
settings()->setValue(GROUP(Downloads), Downloads::ShowDownloadsWhenNewDownloadStarts,
|
||||
settings()->setValue(GROUP(Downloads),
|
||||
Downloads::ShowDownloadsWhenNewDownloadStarts,
|
||||
m_ui->m_checkOpenManagerWhenDownloadStarts->isChecked());
|
||||
settings()->setValue(GROUP(Downloads), Downloads::TargetDirectory, m_ui->m_txtDownloadsTargetDirectory->text());
|
||||
settings()->setValue(GROUP(Downloads), Downloads::AlwaysPromptForFilename, m_ui->m_rbDownloadsAskEachFile->isChecked());
|
||||
settings()->setValue(GROUP(Downloads),
|
||||
Downloads::AlwaysPromptForFilename,
|
||||
m_ui->m_rbDownloadsAskEachFile->isChecked());
|
||||
qApp->downloadManager()->setDownloadDirectory(m_ui->m_txtDownloadsTargetDirectory->text());
|
||||
onEndSaveSettings();
|
||||
}
|
||||
|
@ -8,12 +8,13 @@
|
||||
#include "ui_settingsdownloads.h"
|
||||
|
||||
class SettingsDownloads : public SettingsPanel {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsDownloads(Settings* settings, QWidget* parent = nullptr);
|
||||
virtual ~SettingsDownloads();
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -212,6 +212,10 @@ SettingsFeedsMessages::~SettingsFeedsMessages() {
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
QIcon SettingsFeedsMessages::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("mail-mark-read"));
|
||||
}
|
||||
|
||||
void SettingsFeedsMessages::initializeMessageDateFormats() {
|
||||
QStringList patterns = TextFactory::dateTimePatterns();
|
||||
|
||||
|
@ -8,12 +8,13 @@
|
||||
#include "ui_settingsfeedsmessages.h"
|
||||
|
||||
class SettingsFeedsMessages : public SettingsPanel {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsFeedsMessages(Settings* settings, QWidget* parent = nullptr);
|
||||
virtual ~SettingsFeedsMessages();
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include "gui/settings/settingsgeneral.h"
|
||||
|
||||
#include "miscellaneous/application.h"
|
||||
#include "miscellaneous/iconfactory.h"
|
||||
#include "miscellaneous/settings.h"
|
||||
#include "miscellaneous/systemfactory.h"
|
||||
|
||||
@ -24,6 +25,10 @@ SettingsGeneral::~SettingsGeneral() {
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
QIcon SettingsGeneral::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("applications-system"), QSL("emblem-system"));
|
||||
}
|
||||
|
||||
void SettingsGeneral::loadSettings() {
|
||||
onBeginLoadSettings();
|
||||
m_ui->m_checkForUpdatesOnStart
|
||||
|
@ -8,12 +8,13 @@
|
||||
#include "ui_settingsgeneral.h"
|
||||
|
||||
class SettingsGeneral : public SettingsPanel {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsGeneral(Settings* settings, QWidget* parent = nullptr);
|
||||
virtual ~SettingsGeneral();
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -110,6 +110,10 @@ SettingsGui::~SettingsGui() {
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
QIcon SettingsGui::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("draw-freehand"), QSL("draw-star"));
|
||||
}
|
||||
|
||||
bool SettingsGui::eventFilter(QObject* obj, QEvent* e) {
|
||||
Q_UNUSED(obj)
|
||||
|
||||
|
@ -8,18 +8,18 @@
|
||||
#include "ui_settingsgui.h"
|
||||
|
||||
class SettingsGui : public SettingsPanel {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsGui(Settings* settings, QWidget* parent = nullptr);
|
||||
virtual ~SettingsGui();
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
||||
protected:
|
||||
|
||||
// Does check of controls before dialog can be submitted.
|
||||
bool eventFilter(QObject* obj, QEvent* e);
|
||||
|
||||
|
@ -40,6 +40,10 @@ SettingsLocalization::~SettingsLocalization() {
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
QIcon SettingsLocalization::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("text-x-gettext-translation"));
|
||||
}
|
||||
|
||||
void SettingsLocalization::loadSettings() {
|
||||
onBeginLoadSettings();
|
||||
|
||||
|
@ -8,12 +8,13 @@
|
||||
#include "ui_settingslocalization.h"
|
||||
|
||||
class SettingsLocalization : public SettingsPanel {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsLocalization(Settings* settings, QWidget* parent = nullptr);
|
||||
virtual ~SettingsLocalization();
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -3,9 +3,12 @@
|
||||
#include "gui/settings/settingsmediaplayer.h"
|
||||
|
||||
#include "miscellaneous/application.h"
|
||||
#include "miscellaneous/iconfactory.h"
|
||||
#include "miscellaneous/settings.h"
|
||||
|
||||
#if defined(ENABLE_MEDIAPLAYER_LIBMPV)
|
||||
#include "gui/mediaplayer/libmpv/libmpvbackend.h"
|
||||
|
||||
#include <mpv/client.h>
|
||||
#endif
|
||||
|
||||
@ -13,7 +16,14 @@ SettingsMediaPlayer::SettingsMediaPlayer(Settings* settings, QWidget* parent) :
|
||||
m_ui.setupUi(this);
|
||||
}
|
||||
|
||||
QIcon SettingsMediaPlayer::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("kmplayer"), QSL("smplayer"));
|
||||
}
|
||||
|
||||
void SettingsMediaPlayer::loadSettings() {
|
||||
connect(m_ui.m_gbMpvCustomConfigFolder, &QGroupBox::toggled, this, &SettingsMediaPlayer::dirtifySettings);
|
||||
connect(m_ui.m_txtMpvConfigFolder, &QLineEdit::textChanged, this, &SettingsMediaPlayer::dirtifySettings);
|
||||
|
||||
onBeginLoadSettings();
|
||||
|
||||
#if defined(ENABLE_MEDIAPLAYER_LIBMPV)
|
||||
@ -21,11 +31,18 @@ void SettingsMediaPlayer::loadSettings() {
|
||||
m_ui.m_helpInfo->setHelpText(tr("You use modern libmpv-based media player backend with API version %1.")
|
||||
.arg(mpv_client_api_version()),
|
||||
false);
|
||||
m_ui.m_stackedDetails->setCurrentWidget(m_ui.m_pageLibmpv);
|
||||
|
||||
m_ui.m_gbMpvCustomConfigFolder
|
||||
->setChecked(settings()->value(GROUP(VideoPlayer), SETTING(VideoPlayer::MpvUseCustomConfigFolder)).toBool());
|
||||
m_ui.m_txtMpvConfigFolder
|
||||
->setText(settings()->value(GROUP(VideoPlayer), SETTING(VideoPlayer::MpvCustomConfigFolder)).toString());
|
||||
#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 "
|
||||
"play, then you likely need to install some codecs."),
|
||||
false);
|
||||
m_ui.m_stackedDetails->setCurrentWidget(m_ui.m_pageQtMultimedia);
|
||||
#else
|
||||
m_ui.m_txtBackend->setText(tr("no backend installed"));
|
||||
m_ui.m_helpInfo->setHelpText(tr("You do not have any media player available. Media player is only supported on "
|
||||
@ -33,6 +50,7 @@ void SettingsMediaPlayer::loadSettings() {
|
||||
"%1 to be able to use media player.")
|
||||
.arg(QSL(APP_NAME)),
|
||||
true);
|
||||
m_ui.m_stackedDetails->setCurrentWidget(m_ui.m_pageNothing);
|
||||
#endif
|
||||
|
||||
onEndLoadSettings();
|
||||
@ -41,5 +59,18 @@ void SettingsMediaPlayer::loadSettings() {
|
||||
void SettingsMediaPlayer::saveSettings() {
|
||||
onBeginSaveSettings();
|
||||
|
||||
#if defined(ENABLE_MEDIAPLAYER_LIBMPV)
|
||||
settings()->setValue(GROUP(VideoPlayer),
|
||||
VideoPlayer::MpvUseCustomConfigFolder,
|
||||
m_ui.m_gbMpvCustomConfigFolder->isChecked());
|
||||
settings()->setValue(GROUP(VideoPlayer), VideoPlayer::MpvCustomConfigFolder, m_ui.m_txtMpvConfigFolder->text());
|
||||
|
||||
// LibMpvBackend::installCustomConfig()
|
||||
#elif defined(ENABLE_MEDIAPLAYER_QTMULTIMEDIA)
|
||||
|
||||
#else
|
||||
|
||||
#endif
|
||||
|
||||
onEndSaveSettings();
|
||||
}
|
||||
|
@ -13,6 +13,7 @@ class SettingsMediaPlayer : public SettingsPanel {
|
||||
public:
|
||||
explicit SettingsMediaPlayer(Settings* settings, QWidget* parent = nullptr);
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>360</width>
|
||||
<height>148</height>
|
||||
<width>512</width>
|
||||
<height>328</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QFormLayout" name="formLayout">
|
||||
@ -26,9 +26,47 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0" colspan="2">
|
||||
<widget class="QStackedWidget" name="stackedWidget">
|
||||
<widget class="QStackedWidget" name="m_stackedDetails">
|
||||
<widget class="QWidget" name="m_pageQtMultimedia"/>
|
||||
<widget class="QWidget" name="m_pageLibmpv"/>
|
||||
<widget class="QWidget" name="m_pageLibmpv">
|
||||
<layout class="QFormLayout" name="formLayout_2">
|
||||
<item row="0" column="0" colspan="2">
|
||||
<widget class="QGroupBox" name="m_gbMpvCustomConfigFolder">
|
||||
<property name="title">
|
||||
<string>Use custom MPV configuration folder</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QLineEdit" name="m_txtMpvConfigFolder"/>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="m_btnMpvConfigFolder">
|
||||
<property name="text">
|
||||
<string>Browse</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="m_pageNothing"/>
|
||||
</widget>
|
||||
</item>
|
||||
|
@ -5,6 +5,7 @@
|
||||
#include "definitions/definitions.h"
|
||||
#include "exceptions/applicationexception.h"
|
||||
#include "miscellaneous/application.h"
|
||||
#include "miscellaneous/iconfactory.h"
|
||||
#include "miscellaneous/nodejs.h"
|
||||
#include "network-web/webfactory.h"
|
||||
|
||||
@ -54,6 +55,10 @@ SettingsNodejs::SettingsNodejs(Settings* settings, QWidget* parent) : SettingsPa
|
||||
});
|
||||
}
|
||||
|
||||
QIcon SettingsNodejs::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("node-join"), QSL("node"));
|
||||
}
|
||||
|
||||
void SettingsNodejs::changeFileFolder(LineEditWithStatus* tb, bool directory_select, const QString& file_filter) {
|
||||
QFileDialog d(this);
|
||||
|
||||
|
@ -8,11 +8,12 @@
|
||||
#include "ui_settingsnodejs.h"
|
||||
|
||||
class SettingsNodejs : public SettingsPanel {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsNodejs(Settings* settings, QWidget* parent = nullptr);
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -4,6 +4,7 @@
|
||||
|
||||
#include "gui/notifications/notificationseditor.h"
|
||||
#include "miscellaneous/application.h"
|
||||
#include "miscellaneous/iconfactory.h"
|
||||
#include "miscellaneous/notificationfactory.h"
|
||||
#include "miscellaneous/settings.h"
|
||||
|
||||
@ -40,6 +41,10 @@ SettingsNotifications::SettingsNotifications(Settings* settings, QWidget* parent
|
||||
&SettingsNotifications::dirtifySettings);
|
||||
}
|
||||
|
||||
QIcon SettingsNotifications::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("notifications"), QSL("dialog-information"));
|
||||
}
|
||||
|
||||
void SettingsNotifications::loadSettings() {
|
||||
onBeginLoadSettings();
|
||||
|
||||
|
@ -15,6 +15,7 @@ class SettingsNotifications : public SettingsPanel {
|
||||
public:
|
||||
explicit SettingsNotifications(Settings* settings, QWidget* parent = nullptr);
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -8,12 +8,13 @@
|
||||
class Settings;
|
||||
|
||||
class SettingsPanel : public QWidget {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsPanel(Settings* settings, QWidget* parent = nullptr);
|
||||
|
||||
virtual QString title() const = 0;
|
||||
virtual QIcon icon() const = 0;
|
||||
virtual void loadSettings() = 0;
|
||||
virtual void saveSettings() = 0;
|
||||
|
||||
|
@ -4,6 +4,7 @@
|
||||
|
||||
#include "dynamic-shortcuts/dynamicshortcuts.h"
|
||||
#include "miscellaneous/application.h"
|
||||
#include "miscellaneous/iconfactory.h"
|
||||
|
||||
SettingsShortcuts::SettingsShortcuts(Settings* settings, QWidget* parent)
|
||||
: SettingsPanel(settings, parent), m_ui(new Ui::SettingsShortcuts) {
|
||||
@ -15,6 +16,10 @@ SettingsShortcuts::~SettingsShortcuts() {
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
QIcon SettingsShortcuts::icon() const {
|
||||
return qApp->icons()->fromTheme(QSL("configure-shortcuts"), QSL("keyboard"));
|
||||
}
|
||||
|
||||
void SettingsShortcuts::loadSettings() {
|
||||
onBeginLoadSettings();
|
||||
m_ui->m_shortcuts->populate(qApp->userActions());
|
||||
|
@ -8,12 +8,13 @@
|
||||
#include "ui_settingsshortcuts.h"
|
||||
|
||||
class SettingsShortcuts : public SettingsPanel {
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SettingsShortcuts(Settings* settings, QWidget* parent = nullptr);
|
||||
virtual ~SettingsShortcuts();
|
||||
|
||||
virtual QIcon icon() const;
|
||||
virtual QString title() const;
|
||||
virtual void loadSettings();
|
||||
virtual void saveSettings();
|
||||
|
@ -15,6 +15,15 @@
|
||||
DKEY WebEngineAttributes::ID = "web_engine_attributes";
|
||||
#endif
|
||||
|
||||
// Media player.
|
||||
KEY VideoPlayer::ID = "media_player";
|
||||
|
||||
DKEY VideoPlayer::MpvUseCustomConfigFolder = "mpv_use_custom_config_folder";
|
||||
DVALUE(bool) VideoPlayer::MpvUseCustomConfigFolderDef = true;
|
||||
|
||||
DKEY VideoPlayer::MpvCustomConfigFolder = "mpv_config_folder";
|
||||
DVALUE(QString) VideoPlayer::MpvCustomConfigFolderDef = "%data%/mpv";
|
||||
|
||||
// Node.js.
|
||||
DKEY Node::ID = "nodejs";
|
||||
|
||||
|
@ -52,6 +52,16 @@ namespace Node {
|
||||
VALUE(QString) PackageFolderDef;
|
||||
} // namespace Node
|
||||
|
||||
namespace VideoPlayer {
|
||||
KEY ID;
|
||||
|
||||
KEY MpvUseCustomConfigFolder;
|
||||
VALUE(bool) MpvUseCustomConfigFolderDef;
|
||||
|
||||
KEY MpvCustomConfigFolder;
|
||||
VALUE(QString) MpvCustomConfigFolderDef;
|
||||
} // namespace VideoPlayer
|
||||
|
||||
namespace AdBlock {
|
||||
KEY ID;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user