mirror of
https://github.com/Almamu/linux-wallpaperengine.git
synced 2025-09-14 05:46:48 +08:00
Added scaling setting
This commit is contained in:
parent
684aa47dbd
commit
754b3d3cd4
@ -5,7 +5,6 @@
|
||||
#include <QtConcurrent/qtconcurrentrun.h>
|
||||
#include <X11/X.h>
|
||||
#include <cstddef>
|
||||
#include <iostream>
|
||||
#include <nlohmann/json.hpp>
|
||||
#include <nlohmann/json_fwd.hpp>
|
||||
#include <qapplication.h>
|
||||
@ -31,11 +30,13 @@
|
||||
#include <QByteArray>
|
||||
#include <string>
|
||||
#include <strings.h>
|
||||
#include <unistd.h>
|
||||
#include <vector>
|
||||
#include <QToolButton>
|
||||
#include <QGroupBox>
|
||||
#include "Qt/WallpaperSettingsWidget.h"
|
||||
#include "WallpaperButton.h"
|
||||
#include "WallpaperEngine/Logging/CLog.h"
|
||||
|
||||
#define PICTURE_SIZE 128
|
||||
|
||||
@ -217,6 +218,7 @@ void UIWindow::startNewWallpaperEngine() {
|
||||
if (!wallpaperEngine->waitForFinished(3000)) {
|
||||
wallpaperEngine->kill();
|
||||
wallpaperEngine->waitForFinished();
|
||||
|
||||
}
|
||||
}
|
||||
// delete this->wallpaperEngine;
|
||||
|
@ -1,9 +1,10 @@
|
||||
#include "WallpaperSettingsWidget.h"
|
||||
#include "WallpaperEngine/Logging/CLog.h"
|
||||
#include <fstream>
|
||||
#include <memory>
|
||||
#include <nlohmann/json_fwd.hpp>
|
||||
#include <qchar.h>
|
||||
#include <qcheckbox.h>
|
||||
#include <qcombobox.h>
|
||||
#include <qformlayout.h>
|
||||
#include <qgroupbox.h>
|
||||
#include <qlineedit.h>
|
||||
@ -18,10 +19,8 @@
|
||||
#include <QCheckBox>
|
||||
#include <QLineEdit>
|
||||
#include <QComboBox>
|
||||
#include <QListView>
|
||||
#include <variant>
|
||||
#include <iostream>
|
||||
#include "WallpaperEngine/Assets/CCombinedContainer.h"
|
||||
#include "WallpaperEngine/Logging/CLog.h"
|
||||
|
||||
WallpaperSettingsWidget::WallpaperSettingsWidget(QWidget* parent)
|
||||
: QWidget(parent) {
|
||||
@ -121,14 +120,24 @@ void WallpaperSettingsWidget::updateSettings(const std::string& wallpaperPath, c
|
||||
}
|
||||
}
|
||||
*/
|
||||
auto * scalingBox = new QComboBox();
|
||||
scalingBox->addItems({"stretch", "fit", "fill", "default"});
|
||||
scalingBox->setView(new QListView());
|
||||
scalingBox->view()->setStyleSheet(
|
||||
"QListView { background-color:#2B2A33; selection-background-color:#4488FF; color:white; }"
|
||||
"QListView::item:hover { background-color:#4488FF; }"
|
||||
);
|
||||
|
||||
auto* clampingBox = new QComboBox();
|
||||
// clampingBox->addItems({"clamp", "border", "repeat"});
|
||||
|
||||
this->currentOptions.push_back({createStyledCheckBox(this->checkboxStyleSheet), "Mute Audio:", "mute_audio", "--silent", false, false});
|
||||
this->currentOptions.push_back({new QSlider(Qt::Horizontal), "Volume:", "volume", "--volume", true, 50});
|
||||
this->currentOptions.push_back({createStyledCheckBox(this->checkboxStyleSheet), "Disable Automute:", "disable_automute", "--noautomute", false, false});
|
||||
this->currentOptions.push_back({createStyledCheckBox(this->checkboxStyleSheet), "Disable Audio Reaction:", "disable_audio_reaction", "--no-audio-processing", false, false});
|
||||
this->currentOptions.push_back({new QLineEdit(), "FPS:", "fps", "--fps", true, 30});
|
||||
this->currentOptions.push_back({new QComboBox(), "Scaling:", "scaling", "--scaling", true});
|
||||
this->currentOptions.push_back({new QComboBox(), "Clamping:", "clamping", "--clamping", true});
|
||||
this->currentOptions.push_back({scalingBox, "Scaling:", "scaling", "--scaling", true, "default"});
|
||||
this->currentOptions.push_back({clampingBox, "Clamping:", "clamping", "--clamping", true, ""});
|
||||
this->currentOptions.push_back({createStyledCheckBox(this->checkboxStyleSheet), "Disable Mouse:", "diable_mouse", "--disable-mouse", false, false});
|
||||
this->currentOptions.push_back({createStyledCheckBox(this->checkboxStyleSheet), "Disable Parallax", "disable_parallax", "--disable-parallax", false, true});
|
||||
this->currentOptions.push_back({createStyledCheckBox(this->checkboxStyleSheet), "Disable Fullscreen Pause:", "disable_fullscreen_pause", "--no-fullscreen-pause", true, false});
|
||||
@ -154,6 +163,12 @@ void WallpaperSettingsWidget::updateSettings(const std::string& wallpaperPath, c
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (auto* comboBox = dynamic_cast<QComboBox*>(opt.widget)) {
|
||||
if (std::holds_alternative<QString>(opt.defaultValue)) {
|
||||
comboBox->setCurrentText(std::get<QString>(opt.defaultValue));
|
||||
}
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -196,6 +211,12 @@ void WallpaperSettingsWidget::apply() {
|
||||
if (opt.flagHasValue) flags.append(value + " ");
|
||||
continue;
|
||||
}
|
||||
if (auto* comboBox = dynamic_cast<QComboBox*>(opt.widget)) {
|
||||
QString value = comboBox->currentText();
|
||||
flags.append(opt.flag + " ");
|
||||
if (opt.flagHasValue) flags.append(value.toStdString() + " ");
|
||||
continue;
|
||||
}
|
||||
}
|
||||
emit applySettings(flags);
|
||||
}
|
||||
|
@ -16,7 +16,6 @@
|
||||
#include "WallpaperEngine/Application/CApplicationContext.h"
|
||||
#include "WallpaperEngine/Application/CWallpaperApplication.h"
|
||||
#include "WallpaperEngine/Logging/CLog.h"
|
||||
#include "WallpaperEngine/WebBrowser/CWebBrowserContext.h"
|
||||
|
||||
WallpaperEngine::Application::CWallpaperApplication* appPointer;
|
||||
QCoreApplication* globalApp = nullptr;
|
||||
|
Loading…
Reference in New Issue
Block a user