early-access version 3970

This commit is contained in:
pineappleEA
2023-11-10 18:46:19 +01:00
parent ec04d0c3ff
commit b1b49d9789
12 changed files with 406 additions and 220 deletions
+10 -2
View File
@@ -42,7 +42,7 @@ QPixmap CreateCirclePixmapFromColor(const QColor& color) {
return circle_pixmap;
}
bool SaveIconToFile(const std::string_view path, const QImage& image) {
bool SaveIconToFile(const std::filesystem::path& icon_path, const QImage& image) {
#if defined(WIN32)
#pragma pack(push, 2)
struct IconDir {
@@ -73,7 +73,7 @@ bool SaveIconToFile(const std::string_view path, const QImage& image) {
.id_count = static_cast<WORD>(scale_sizes.size()),
};
Common::FS::IOFile icon_file(path, Common::FS::FileAccessMode::Write,
Common::FS::IOFile icon_file(icon_path.string(), Common::FS::FileAccessMode::Write,
Common::FS::FileType::BinaryFile);
if (!icon_file.IsOpen()) {
return false;
@@ -134,6 +134,14 @@ bool SaveIconToFile(const std::string_view path, const QImage& image) {
}
icon_file.Close();
return true;
#elif defined(__linux__) || defined(__FreeBSD__)
// Convert and write the icon as a PNG
if (!image.save(QString::fromStdString(icon_path.string()))) {
LOG_ERROR(Frontend, "Could not write icon as PNG to file");
} else {
LOG_INFO(Frontend, "Wrote an icon to {}", icon_path.string());
}
return true;
#else
return false;
+2 -1
View File
@@ -3,6 +3,7 @@
#pragma once
#include <filesystem>
#include <QFont>
#include <QString>
@@ -25,4 +26,4 @@
* @param image The image to save
* @return bool If the operation succeeded
*/
[[nodiscard]] bool SaveIconToFile(const std::string_view path, const QImage& image);
[[nodiscard]] bool SaveIconToFile(const std::filesystem::path& icon_path, const QImage& image);