From 3f3c5ea247dcd4793e117238af3bed50614d4961 Mon Sep 17 00:00:00 2001 From: swirl Date: Fri, 31 Dec 2021 16:36:59 -0500 Subject: [PATCH] Rebranding logo add temporary Ouroboros logo, thanks Lenny for vectorizing change logo file names Desktop file now includes proper exec using the app binary name fix genicons for use with libicns --- CMakeLists.txt | 1 + launcher/Application.cpp | 2 +- launcher/main.cpp | 2 +- program_info/CMakeLists.txt | 8 +- program_info/Launcher.icns | Bin 304757 -> 0 bytes program_info/Launcher.ico | Bin 102134 -> 0 bytes program_info/README.md | 1 + program_info/genicons.sh | 25 +- program_info/logo.svg | 271 ------------------ .../{polymc.desktop => polymc.desktop.in} | 2 +- program_info/polymc.icns | Bin 0 -> 415743 bytes program_info/polymc.ico | Bin 0 -> 102134 bytes .../{Launcher.manifest => polymc.manifest} | 4 +- program_info/{logo.qrc => polymc.qrc} | 4 +- program_info/{launcher.rc => polymc.rc} | 8 +- program_info/polymc.svg | 17 ++ 16 files changed, 47 insertions(+), 298 deletions(-) delete mode 100644 program_info/Launcher.icns delete mode 100644 program_info/Launcher.ico delete mode 100644 program_info/logo.svg rename program_info/{polymc.desktop => polymc.desktop.in} (89%) create mode 100644 program_info/polymc.icns create mode 100644 program_info/polymc.ico rename program_info/{Launcher.manifest => polymc.manifest} (93%) rename program_info/{logo.qrc => polymc.qrc} (72%) rename program_info/{launcher.rc => polymc.rc} (73%) create mode 100644 program_info/polymc.svg diff --git a/CMakeLists.txt b/CMakeLists.txt index 5b89ff6be..dc11e5cdd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -24,6 +24,7 @@ endif() ##################################### Set CMake options ##################################### set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/") diff --git a/launcher/Application.cpp b/launcher/Application.cpp index cbfdcbe2d..2d0c0834e 100644 --- a/launcher/Application.cpp +++ b/launcher/Application.cpp @@ -1148,7 +1148,7 @@ void Application::setIconTheme(const QString& name) QIcon Application::getThemedIcon(const QString& name) { if(name == "logo") { - return QIcon(":/logo.svg"); + return QIcon(":/polymc.svg"); } return XdgIcon::fromTheme(name); } diff --git a/launcher/main.cpp b/launcher/main.cpp index aabb5a067..8b5727436 100644 --- a/launcher/main.cpp +++ b/launcher/main.cpp @@ -40,7 +40,7 @@ int main(int argc, char *argv[]) Q_INIT_RESOURCE(multimc); Q_INIT_RESOURCE(backgrounds); Q_INIT_RESOURCE(documents); - Q_INIT_RESOURCE(logo); + Q_INIT_RESOURCE(polymc); Q_INIT_RESOURCE(pe_dark); Q_INIT_RESOURCE(pe_light); diff --git a/program_info/CMakeLists.txt b/program_info/CMakeLists.txt index dd120ab30..840c3fa2c 100644 --- a/program_info/CMakeLists.txt +++ b/program_info/CMakeLists.txt @@ -9,6 +9,8 @@ set(Launcher_ConfigFile "polymc.cfg" PARENT_SCOPE) set(Launcher_Git "https://github.com/PolyMC/PolyMC" PARENT_SCOPE) set(Launcher_Desktop "program_info/polymc.desktop" PARENT_SCOPE) -set(Launcher_Branding_ICNS "program_info/Launcher.icns" PARENT_SCOPE) -set(Launcher_Branding_WindowsRC "program_info/launcher.rc" PARENT_SCOPE) -set(Launcher_Branding_LogoQRC "program_info/logo.qrc" PARENT_SCOPE) +set(Launcher_Branding_ICNS "program_info/polymc.icns" PARENT_SCOPE) +set(Launcher_Branding_WindowsRC "program_info/polymc.rc" PARENT_SCOPE) +set(Launcher_Branding_LogoQRC "program_info/polymc.qrc" PARENT_SCOPE) + +configure_file(polymc.desktop.in polymc.desktop) diff --git a/program_info/Launcher.icns b/program_info/Launcher.icns deleted file mode 100644 index 951b74fcfd739305eb91af5257bbb6dafeed80a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 304757 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

$K-*l>PFaPYePDy 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