From d252e8ced50db109ae1e9f2245b85fd1338a6692 Mon Sep 17 00:00:00 2001 From: attila Date: Mon, 15 Dec 2025 17:18:23 +0100 Subject: [PATCH] Add Icon Composer icons to the Projucer, DemoRunner and AudioPluginHost --- .../Builds/Android/app/CMakeLists.txt | 6 +++ .../DemoRunner.xcodeproj/project.pbxproj | 28 +++++++++++ .../VisualStudio2019/DemoRunner_App.vcxproj | 3 ++ .../DemoRunner_App.vcxproj.filters | 15 ++++++ .../VisualStudio2022/DemoRunner_App.vcxproj | 3 ++ .../DemoRunner_App.vcxproj.filters | 15 ++++++ .../VisualStudio2026/DemoRunner_App.vcxproj | 3 ++ .../DemoRunner_App.vcxproj.filters | 15 ++++++ .../iOS/DemoRunner.xcodeproj/project.pbxproj | 26 ++++++++++ examples/DemoRunner/CMakeLists.txt | 1 + examples/DemoRunner/DemoRunner.jucer | 13 ++++- .../AppIcon.icon/Assets/demorunnerbg.svg | 46 +++++++++++++++++ .../AppIcon.icon/Assets/demorunnerplay.svg | 14 ++++++ .../DemoRunner/Source/AppIcon.icon/icon.json | 50 +++++++++++++++++++ extras/AudioPluginHost/AudioPluginHost.jucer | 14 +++++- .../Builds/Android/app/CMakeLists.txt | 6 +++ .../AudioPluginHost.xcodeproj/project.pbxproj | 28 +++++++++++ .../AudioPluginHost_App.vcxproj | 3 ++ .../AudioPluginHost_App.vcxproj.filters | 15 ++++++ .../AudioPluginHost_App.vcxproj | 3 ++ .../AudioPluginHost_App.vcxproj.filters | 15 ++++++ .../AudioPluginHost_App.vcxproj | 3 ++ .../AudioPluginHost_App.vcxproj.filters | 15 ++++++ .../AudioPluginHost.xcodeproj/project.pbxproj | 26 ++++++++++ extras/AudioPluginHost/CMakeLists.txt | 1 + .../Source/AppIcon.icon/Assets/juceicon.svg | 46 +++++++++++++++++ .../AppIcon.icon/Assets/pluginhostfg.svg | 15 ++++++ .../Source/AppIcon.icon/icon.json | 47 +++++++++++++++++ .../MacOSX/Projucer.xcodeproj/project.pbxproj | 34 +++++++++++++ .../VisualStudio2019/Projucer_App.vcxproj | 2 + .../Projucer_App.vcxproj.filters | 15 ++++++ .../VisualStudio2022/Projucer_App.vcxproj | 2 + .../Projucer_App.vcxproj.filters | 15 ++++++ .../VisualStudio2026/Projucer_App.vcxproj | 2 + .../Projucer_App.vcxproj.filters | 15 ++++++ extras/Projucer/CMakeLists.txt | 1 + extras/Projucer/Projucer.jucer | 19 +++++-- .../Assets/AppIcon.icon/Assets/juceicon.svg | 46 +++++++++++++++++ .../Source/Assets/AppIcon.icon/icon.json | 27 ++++++++++ 39 files changed, 645 insertions(+), 8 deletions(-) create mode 100644 examples/DemoRunner/Source/AppIcon.icon/Assets/demorunnerbg.svg create mode 100644 examples/DemoRunner/Source/AppIcon.icon/Assets/demorunnerplay.svg create mode 100644 examples/DemoRunner/Source/AppIcon.icon/icon.json create mode 100644 extras/AudioPluginHost/Source/AppIcon.icon/Assets/juceicon.svg create mode 100644 extras/AudioPluginHost/Source/AppIcon.icon/Assets/pluginhostfg.svg create mode 100644 extras/AudioPluginHost/Source/AppIcon.icon/icon.json create mode 100644 extras/Projucer/Source/Assets/AppIcon.icon/Assets/juceicon.svg create mode 100644 extras/Projucer/Source/Assets/AppIcon.icon/icon.json diff --git a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt index fa9f742145..21280eb281 100644 --- a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt +++ b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt @@ -56,6 +56,9 @@ add_library( ${BINARY_NAME} "../../../Source/UI/MainComponent.h" "../../../Source/UI/SettingsContent.h" "../../../Source/Main.cpp" + "../../../Source/AppIcon.icon/Assets/demorunnerbg.svg" + "../../../Source/AppIcon.icon/Assets/demorunnerplay.svg" + "../../../Source/AppIcon.icon/icon.json" "../../../Source/JUCEAppIcon.png" "../../../../../modules/juce_analytics/analytics/juce_Analytics.cpp" "../../../../../modules/juce_analytics/analytics/juce_Analytics.h" @@ -2777,6 +2780,9 @@ set_source_files_properties( "../../../Source/UI/DemoContentComponent.h" "../../../Source/UI/MainComponent.h" "../../../Source/UI/SettingsContent.h" + "../../../Source/AppIcon.icon/Assets/demorunnerbg.svg" + "../../../Source/AppIcon.icon/Assets/demorunnerplay.svg" + "../../../Source/AppIcon.icon/icon.json" "../../../Source/JUCEAppIcon.png" "../../../../../modules/juce_analytics/analytics/juce_Analytics.cpp" "../../../../../modules/juce_analytics/analytics/juce_Analytics.h" diff --git a/examples/DemoRunner/Builds/MacOSX/DemoRunner.xcodeproj/project.pbxproj b/examples/DemoRunner/Builds/MacOSX/DemoRunner.xcodeproj/project.pbxproj index d9969e14a1..78e7ddfd3b 100644 --- a/examples/DemoRunner/Builds/MacOSX/DemoRunner.xcodeproj/project.pbxproj +++ b/examples/DemoRunner/Builds/MacOSX/DemoRunner.xcodeproj/project.pbxproj @@ -40,6 +40,7 @@ 6B5560283DEEBD6DD2D6C984 /* include_juce_dsp.mm */ = {isa = PBXBuildFile; fileRef = C1E93FAF6C68A40A664422CD; }; 712D81867EC698463252FA79 /* include_juce_audio_utils.mm */ = {isa = PBXBuildFile; fileRef = EDDA01B246C6128CAF7A2914; }; 71DF4F5EB4C8305688416725 /* DemoContentComponent.cpp */ = {isa = PBXBuildFile; fileRef = E5BFC17E682AB426D203B3E6; }; + 7648F1C856593D10FE42CF80 /* AppIcon.icon */ = {isa = PBXBuildFile; fileRef = FCF36E57A88C67133AFC06A4; }; 7B4163348896EB1B86B15160 /* AVFoundation.framework */ = {isa = PBXBuildFile; fileRef = DC192EFA899E6CBE6B5CD394; }; 8584640341100008744861A5 /* IOKit.framework */ = {isa = PBXBuildFile; fileRef = 71A91516AFD980FEE694C0E1; }; 89AD16514B1F4133FFEA1DF9 /* WebKit.framework */ = {isa = PBXBuildFile; fileRef = 96D99A08027CA35D6A4E5CFD; }; @@ -114,6 +115,7 @@ 61AE09C749B007B70A265D9B /* CoreMIDI.framework */ /* CoreMIDI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; 640B7C54D35F5DF408327886 /* include_juce_core_CompilationTime.cpp */ /* include_juce_core_CompilationTime.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_core_CompilationTime.cpp; path = ../../JuceLibraryCode/include_juce_core_CompilationTime.cpp; sourceTree = SOURCE_ROOT; }; 651ECE3C7BA845DDCFEE48F3 /* juce_osc */ /* juce_osc */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_osc; path = ../../../../modules/juce_osc; sourceTree = SOURCE_ROOT; }; + 6710661E16D6BD412524EB52 /* demorunnerbg.svg */ /* demorunnerbg.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = demorunnerbg.svg; path = ../../Source/AppIcon.icon/Assets/demorunnerbg.svg; sourceTree = SOURCE_ROOT; }; 6847A9B2C5E3C2ED56D8D4E7 /* juce_audio_basics */ /* juce_audio_basics */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_audio_basics; path = ../../../../modules/juce_audio_basics; sourceTree = SOURCE_ROOT; }; 685A261BE78585293F3EAD36 /* Assets */ /* Assets */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Assets; path = ../../../Assets; sourceTree = ""; }; 68A0F49281B13E51489A6874 /* AppIcon.icns */ /* AppIcon.icns */ = {isa = PBXFileReference; lastKnownFileType = file.icns; name = AppIcon.icns; path = AppIcon.icns; sourceTree = SOURCE_ROOT; }; @@ -123,6 +125,7 @@ 71A91516AFD980FEE694C0E1 /* IOKit.framework */ /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; 7A5AAE9EE573FC6105CC4AAC /* SettingsContent.h */ /* SettingsContent.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SettingsContent.h; path = ../../Source/UI/SettingsContent.h; sourceTree = SOURCE_ROOT; }; 7B3243C92248D379A0489AA4 /* Utilities */ /* Utilities */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Utilities; path = ../../../Utilities; sourceTree = ""; }; + 7D51C1884CE8FB235D31921B /* icon.json */ /* icon.json */ = {isa = PBXFileReference; lastKnownFileType = file.json; name = icon.json; path = ../../Source/AppIcon.icon/icon.json; sourceTree = SOURCE_ROOT; }; 8447FC9882D85E6DAF0A4852 /* juce_animation */ /* juce_animation */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_animation; path = ../../../../modules/juce_animation; sourceTree = SOURCE_ROOT; }; 877340409339CA0F561FB566 /* include_juce_audio_processors_headless_lv2_libs.cpp */ /* include_juce_audio_processors_headless_lv2_libs.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_audio_processors_headless_lv2_libs.cpp; path = ../../JuceLibraryCode/include_juce_audio_processors_headless_lv2_libs.cpp; sourceTree = SOURCE_ROOT; }; 87D5F938A115568F9CF3BE5A /* Security.framework */ /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; }; @@ -148,6 +151,7 @@ C64CA4082EC267CDD63E6623 /* juce_javascript */ /* juce_javascript */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_javascript; path = ../../../../modules/juce_javascript; sourceTree = SOURCE_ROOT; }; CB4C64BACC1CA4AAD6D69565 /* include_juce_animation.cpp */ /* include_juce_animation.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_animation.cpp; path = ../../JuceLibraryCode/include_juce_animation.cpp; sourceTree = SOURCE_ROOT; }; CCC8AEBCE55002F970222BAD /* include_juce_graphics_Sheenbidi.c */ /* include_juce_graphics_Sheenbidi.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = include_juce_graphics_Sheenbidi.c; path = ../../JuceLibraryCode/include_juce_graphics_Sheenbidi.c; sourceTree = SOURCE_ROOT; }; + CDFBB9C6A2AE67CE9EE00949 /* demorunnerplay.svg */ /* demorunnerplay.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = demorunnerplay.svg; path = ../../Source/AppIcon.icon/Assets/demorunnerplay.svg; sourceTree = SOURCE_ROOT; }; CE38E6469D98462A2C22C915 /* include_juce_osc.cpp */ /* include_juce_osc.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_osc.cpp; path = ../../JuceLibraryCode/include_juce_osc.cpp; sourceTree = SOURCE_ROOT; }; CFF2BBEB242CC8B3B904B5F9 /* App */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DemoRunner.app; sourceTree = BUILT_PRODUCTS_DIR; }; DC192EFA899E6CBE6B5CD394 /* AVFoundation.framework */ /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; @@ -162,6 +166,7 @@ F5F2EA2238973488632FC322 /* include_juce_data_structures.mm */ /* include_juce_data_structures.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_data_structures.mm; path = ../../JuceLibraryCode/include_juce_data_structures.mm; sourceTree = SOURCE_ROOT; }; FB1FC613CE260140F1CFD21B /* juce_events */ /* juce_events */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_events; path = ../../../../modules/juce_events; sourceTree = SOURCE_ROOT; }; FCD0D758C5767944BEC29730 /* include_juce_events.mm */ /* include_juce_events.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_events.mm; path = ../../JuceLibraryCode/include_juce_events.mm; sourceTree = SOURCE_ROOT; }; + FCF36E57A88C67133AFC06A4 /* AppIcon.icon */ /* AppIcon.icon */ = {isa = PBXFileReference; lastKnownFileType = file.icon; name = AppIcon.icon; path = ../../Source/AppIcon.icon; sourceTree = SOURCE_ROOT; }; FDC3CA8D1403C169659F7D8C /* juce_data_structures */ /* juce_data_structures */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_data_structures; path = ../../../../modules/juce_data_structures; sourceTree = SOURCE_ROOT; }; /* End PBXFileReference section */ @@ -195,6 +200,15 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 2BAD3DB7D8D886E59B412094 /* Assets */ = { + isa = PBXGroup; + children = ( + 6710661E16D6BD412524EB52, + CDFBB9C6A2AE67CE9EE00949, + ); + name = Assets; + sourceTree = ""; + }; 4452EAA652B65A9AE648288C /* Frameworks */ = { isa = PBXGroup; children = ( @@ -293,6 +307,7 @@ CD575607FAA297480EE95F13, BB12537403CC24C02622582C, 260481E972425474BB8155B0, + B88D35BF4F1EAC840B967834, ECE79F1433E92BB6213C86F5, ); name = Source; @@ -319,6 +334,15 @@ name = DemoRunner; sourceTree = ""; }; + B88D35BF4F1EAC840B967834 /* AppIcon.icon */ = { + isa = PBXGroup; + children = ( + 2BAD3DB7D8D886E59B412094, + 7D51C1884CE8FB235D31921B, + ); + name = AppIcon.icon; + sourceTree = ""; + }; BB12537403CC24C02622582C /* UI */ = { isa = PBXGroup; children = ( @@ -362,6 +386,7 @@ 4EC2782DE1779A130835B64D, 9672FCE6167ADB567A9EB2F8, 68A0F49281B13E51489A6874, + FCF36E57A88C67133AFC06A4, ); name = Resources; sourceTree = ""; @@ -448,6 +473,7 @@ E33E8FE2E7F8EC8EB4279F1B, 91CD2BCE4CA07E18229EB436, 675BFB499A7E0AAD2614F529, + 7648F1C856593D10FE42CF80, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -549,6 +575,7 @@ 69330F27DD2C71609336C7D2 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_LINK_OBJC_RUNTIME = NO; @@ -645,6 +672,7 @@ B18D059E5616FA729F764229 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_LINK_OBJC_RUNTIME = NO; diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj index f27228cc1e..d4be58b6e8 100644 --- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj +++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj @@ -4912,6 +4912,9 @@ + + + diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters index 3b266c1187..f2c0827ae7 100644 --- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters +++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters @@ -8,6 +8,12 @@ {67AC4BA4-ADB7-61F2-40EB-054BFA2565E9} + + {582D7890-88DE-64AF-4B99-546B272ADAC5} + + + {2E0E5C08-9649-C07C-383E-3497456B1834} + {8C2BA468-929C-4792-FBD2-3009E3068DD0} @@ -8939,6 +8945,15 @@ + + DemoRunner\Source\AppIcon.icon\Assets + + + DemoRunner\Source\AppIcon.icon\Assets + + + DemoRunner\Source\AppIcon.icon + DemoRunner\Source diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj index 781bd2acb8..d3978a8010 100644 --- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj +++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj @@ -4912,6 +4912,9 @@ + + + diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters index f2acec7386..632c4bec36 100644 --- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters +++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters @@ -8,6 +8,12 @@ {67AC4BA4-ADB7-61F2-40EB-054BFA2565E9} + + {582D7890-88DE-64AF-4B99-546B272ADAC5} + + + {2E0E5C08-9649-C07C-383E-3497456B1834} + {8C2BA468-929C-4792-FBD2-3009E3068DD0} @@ -8939,6 +8945,15 @@ + + DemoRunner\Source\AppIcon.icon\Assets + + + DemoRunner\Source\AppIcon.icon\Assets + + + DemoRunner\Source\AppIcon.icon + DemoRunner\Source diff --git a/examples/DemoRunner/Builds/VisualStudio2026/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2026/DemoRunner_App.vcxproj index f76d6d36af..8c5d429792 100644 --- a/examples/DemoRunner/Builds/VisualStudio2026/DemoRunner_App.vcxproj +++ b/examples/DemoRunner/Builds/VisualStudio2026/DemoRunner_App.vcxproj @@ -4912,6 +4912,9 @@ + + + diff --git a/examples/DemoRunner/Builds/VisualStudio2026/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2026/DemoRunner_App.vcxproj.filters index d62f830969..bb04854235 100644 --- a/examples/DemoRunner/Builds/VisualStudio2026/DemoRunner_App.vcxproj.filters +++ b/examples/DemoRunner/Builds/VisualStudio2026/DemoRunner_App.vcxproj.filters @@ -8,6 +8,12 @@ {67AC4BA4-ADB7-61F2-40EB-054BFA2565E9} + + {582D7890-88DE-64AF-4B99-546B272ADAC5} + + + {2E0E5C08-9649-C07C-383E-3497456B1834} + {8C2BA468-929C-4792-FBD2-3009E3068DD0} @@ -8939,6 +8945,15 @@ + + DemoRunner\Source\AppIcon.icon\Assets + + + DemoRunner\Source\AppIcon.icon\Assets + + + DemoRunner\Source\AppIcon.icon + DemoRunner\Source diff --git a/examples/DemoRunner/Builds/iOS/DemoRunner.xcodeproj/project.pbxproj b/examples/DemoRunner/Builds/iOS/DemoRunner.xcodeproj/project.pbxproj index 9622de1467..bf134a4629 100644 --- a/examples/DemoRunner/Builds/iOS/DemoRunner.xcodeproj/project.pbxproj +++ b/examples/DemoRunner/Builds/iOS/DemoRunner.xcodeproj/project.pbxproj @@ -40,6 +40,7 @@ 6B5560283DEEBD6DD2D6C984 /* include_juce_dsp.mm */ = {isa = PBXBuildFile; fileRef = C1E93FAF6C68A40A664422CD; }; 712D81867EC698463252FA79 /* include_juce_audio_utils.mm */ = {isa = PBXBuildFile; fileRef = EDDA01B246C6128CAF7A2914; }; 71DF4F5EB4C8305688416725 /* DemoContentComponent.cpp */ = {isa = PBXBuildFile; fileRef = E5BFC17E682AB426D203B3E6; }; + 7648F1C856593D10FE42CF80 /* AppIcon.icon */ = {isa = PBXBuildFile; fileRef = FCF36E57A88C67133AFC06A4; }; 7B4163348896EB1B86B15160 /* AVFoundation.framework */ = {isa = PBXBuildFile; fileRef = DC192EFA899E6CBE6B5CD394; }; 7F57DB52C3CEFDC26DDD38FC /* CoreImage.framework */ = {isa = PBXBuildFile; fileRef = B28EFB9D1DF0B6D6499A7DEF; }; 89AD16514B1F4133FFEA1DF9 /* WebKit.framework */ = {isa = PBXBuildFile; fileRef = 96D99A08027CA35D6A4E5CFD; }; @@ -111,6 +112,7 @@ 61AE09C749B007B70A265D9B /* CoreMIDI.framework */ /* CoreMIDI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; 640B7C54D35F5DF408327886 /* include_juce_core_CompilationTime.cpp */ /* include_juce_core_CompilationTime.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_core_CompilationTime.cpp; path = ../../JuceLibraryCode/include_juce_core_CompilationTime.cpp; sourceTree = SOURCE_ROOT; }; 651ECE3C7BA845DDCFEE48F3 /* juce_osc */ /* juce_osc */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_osc; path = ../../../../modules/juce_osc; sourceTree = SOURCE_ROOT; }; + 6710661E16D6BD412524EB52 /* demorunnerbg.svg */ /* demorunnerbg.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = demorunnerbg.svg; path = ../../Source/AppIcon.icon/Assets/demorunnerbg.svg; sourceTree = SOURCE_ROOT; }; 6847A9B2C5E3C2ED56D8D4E7 /* juce_audio_basics */ /* juce_audio_basics */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_audio_basics; path = ../../../../modules/juce_audio_basics; sourceTree = SOURCE_ROOT; }; 685A261BE78585293F3EAD36 /* Assets */ /* Assets */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Assets; path = ../../../Assets; sourceTree = ""; }; 68A0F49281B13E51489A6874 /* AppIcon.icns */ /* AppIcon.icns */ = {isa = PBXFileReference; lastKnownFileType = file.icns; name = AppIcon.icns; path = AppIcon.icns; sourceTree = SOURCE_ROOT; }; @@ -120,6 +122,7 @@ 76A157A111866670A4678F04 /* CoreGraphics.framework */ /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 7983C452610C1638B7E78F12 /* ImageIO.framework */ /* ImageIO.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ImageIO.framework; path = System/Library/Frameworks/ImageIO.framework; sourceTree = SDKROOT; }; 7A5AAE9EE573FC6105CC4AAC /* SettingsContent.h */ /* SettingsContent.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SettingsContent.h; path = ../../Source/UI/SettingsContent.h; sourceTree = SOURCE_ROOT; }; + 7D51C1884CE8FB235D31921B /* icon.json */ /* icon.json */ = {isa = PBXFileReference; lastKnownFileType = file.json; name = icon.json; path = ../../Source/AppIcon.icon/icon.json; sourceTree = SOURCE_ROOT; }; 7FBD555B32197FEACDFF5AFB /* LaunchScreen.storyboard */ /* LaunchScreen.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = LaunchScreen.storyboard; sourceTree = SOURCE_ROOT; }; 8135645508EEFDBDCDF2ADC6 /* Images.xcassets */ /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = DemoRunner/Images.xcassets; sourceTree = SOURCE_ROOT; }; 8447FC9882D85E6DAF0A4852 /* juce_animation */ /* juce_animation */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_animation; path = ../../../../modules/juce_animation; sourceTree = SOURCE_ROOT; }; @@ -147,6 +150,7 @@ C64CA4082EC267CDD63E6623 /* juce_javascript */ /* juce_javascript */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_javascript; path = ../../../../modules/juce_javascript; sourceTree = SOURCE_ROOT; }; CB4C64BACC1CA4AAD6D69565 /* include_juce_animation.cpp */ /* include_juce_animation.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_animation.cpp; path = ../../JuceLibraryCode/include_juce_animation.cpp; sourceTree = SOURCE_ROOT; }; CCC8AEBCE55002F970222BAD /* include_juce_graphics_Sheenbidi.c */ /* include_juce_graphics_Sheenbidi.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = include_juce_graphics_Sheenbidi.c; path = ../../JuceLibraryCode/include_juce_graphics_Sheenbidi.c; sourceTree = SOURCE_ROOT; }; + CDFBB9C6A2AE67CE9EE00949 /* demorunnerplay.svg */ /* demorunnerplay.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = demorunnerplay.svg; path = ../../Source/AppIcon.icon/Assets/demorunnerplay.svg; sourceTree = SOURCE_ROOT; }; CE38E6469D98462A2C22C915 /* include_juce_osc.cpp */ /* include_juce_osc.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_osc.cpp; path = ../../JuceLibraryCode/include_juce_osc.cpp; sourceTree = SOURCE_ROOT; }; CFF2BBEB242CC8B3B904B5F9 /* App */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DemoRunner.app; sourceTree = BUILT_PRODUCTS_DIR; }; DC192EFA899E6CBE6B5CD394 /* AVFoundation.framework */ /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; @@ -163,6 +167,7 @@ F90C8B0233A54F1445343F67 /* UIKit.framework */ /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; FB1FC613CE260140F1CFD21B /* juce_events */ /* juce_events */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_events; path = ../../../../modules/juce_events; sourceTree = SOURCE_ROOT; }; FCD0D758C5767944BEC29730 /* include_juce_events.mm */ /* include_juce_events.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_events.mm; path = ../../JuceLibraryCode/include_juce_events.mm; sourceTree = SOURCE_ROOT; }; + FCF36E57A88C67133AFC06A4 /* AppIcon.icon */ /* AppIcon.icon */ = {isa = PBXFileReference; lastKnownFileType = file.icon; name = AppIcon.icon; path = ../../Source/AppIcon.icon; sourceTree = SOURCE_ROOT; }; FDC3CA8D1403C169659F7D8C /* juce_data_structures */ /* juce_data_structures */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_data_structures; path = ../../../../modules/juce_data_structures; sourceTree = SOURCE_ROOT; }; /* End PBXFileReference section */ @@ -199,6 +204,15 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 2BAD3DB7D8D886E59B412094 /* Assets */ = { + isa = PBXGroup; + children = ( + 6710661E16D6BD412524EB52, + CDFBB9C6A2AE67CE9EE00949, + ); + name = Assets; + sourceTree = ""; + }; 4452EAA652B65A9AE648288C /* Frameworks */ = { isa = PBXGroup; children = ( @@ -300,6 +314,7 @@ CD575607FAA297480EE95F13, BB12537403CC24C02622582C, 260481E972425474BB8155B0, + B88D35BF4F1EAC840B967834, ECE79F1433E92BB6213C86F5, ); name = Source; @@ -326,6 +341,15 @@ name = DemoRunner; sourceTree = ""; }; + B88D35BF4F1EAC840B967834 /* AppIcon.icon */ = { + isa = PBXGroup; + children = ( + 2BAD3DB7D8D886E59B412094, + 7D51C1884CE8FB235D31921B, + ); + name = AppIcon.icon; + sourceTree = ""; + }; BB12537403CC24C02622582C /* UI */ = { isa = PBXGroup; children = ( @@ -366,6 +390,7 @@ 8135645508EEFDBDCDF2ADC6, 7FBD555B32197FEACDFF5AFB, 68A0F49281B13E51489A6874, + FCF36E57A88C67133AFC06A4, ); name = Resources; sourceTree = ""; @@ -452,6 +477,7 @@ 8E63755144E29269FD82C897, 1C9AA8660D0DE180064ACF7B, 675BFB499A7E0AAD2614F529, + 7648F1C856593D10FE42CF80, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/examples/DemoRunner/CMakeLists.txt b/examples/DemoRunner/CMakeLists.txt index 7f5d77b85a..825b50c508 100644 --- a/examples/DemoRunner/CMakeLists.txt +++ b/examples/DemoRunner/CMakeLists.txt @@ -22,6 +22,7 @@ juce_add_gui_app(DemoRunner BUNDLE_ID com.juce.demorunner ICON_BIG ${CMAKE_CURRENT_SOURCE_DIR}/Source/JUCEAppIcon.png + ICON_COMPOSER_BUNDLE "${CMAKE_CURRENT_SOURCE_DIR}/Source/AppIcon.icon" NEEDS_CURL TRUE NEEDS_WEB_BROWSER TRUE MICROPHONE_PERMISSION_ENABLED TRUE diff --git a/examples/DemoRunner/DemoRunner.jucer b/examples/DemoRunner/DemoRunner.jucer index ca3b094cd5..852bcf2438 100644 --- a/examples/DemoRunner/DemoRunner.jucer +++ b/examples/DemoRunner/DemoRunner.jucer @@ -28,6 +28,15 @@ file="Source/UI/SettingsContent.h"/> + + + + + + + @@ -36,7 +45,7 @@ customXcodeResourceFolders="../Assets ../Audio ../DSP ../GUI ../Utilities" microphonePermissionNeeded="1" cameraPermissionNeeded="1" applicationCategory="public.app-category.developer-tools" iosBluetoothPermissionNeeded="1" extraDefs="JUCE_SILENCE_XCODE_15_LINKER_WARNING=1" - extraLinkerFlags="-Wl,-weak_reference_mismatches,weak"> + extraLinkerFlags="-Wl,-weak_reference_mismatches,weak" iconComposerIcon="a17hwW"> @@ -141,7 +150,7 @@ iosBluetoothPermissionNeeded="1" iosScreenOrientation="UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight,UIInterfaceOrientationPortrait,UIInterfaceOrientationPortraitUpsideDown" iPadScreenOrientation="UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight,UIInterfaceOrientationPortrait,UIInterfaceOrientationPortraitUpsideDown" UIRequiresFullScreen="0" extraDefs="JUCE_SILENCE_XCODE_15_LINKER_WARNING=1" - extraLinkerFlags="-Wl,-weak_reference_mismatches,weak"> + extraLinkerFlags="-Wl,-weak_reference_mismatches,weak" iconComposerIcon="a17hwW"> diff --git a/examples/DemoRunner/Source/AppIcon.icon/Assets/demorunnerbg.svg b/examples/DemoRunner/Source/AppIcon.icon/Assets/demorunnerbg.svg new file mode 100644 index 0000000000..7159d721a3 --- /dev/null +++ b/examples/DemoRunner/Source/AppIcon.icon/Assets/demorunnerbg.svg @@ -0,0 +1,46 @@ + + diff --git a/examples/DemoRunner/Source/AppIcon.icon/Assets/demorunnerplay.svg b/examples/DemoRunner/Source/AppIcon.icon/Assets/demorunnerplay.svg new file mode 100644 index 0000000000..c5c3bf4689 --- /dev/null +++ b/examples/DemoRunner/Source/AppIcon.icon/Assets/demorunnerplay.svg @@ -0,0 +1,14 @@ + + diff --git a/examples/DemoRunner/Source/AppIcon.icon/icon.json b/examples/DemoRunner/Source/AppIcon.icon/icon.json new file mode 100644 index 0000000000..71e2b35311 --- /dev/null +++ b/examples/DemoRunner/Source/AppIcon.icon/icon.json @@ -0,0 +1,50 @@ +{ + "fill" : "system-light", + "groups" : [ + { + "blur-material" : 0.5, + "hidden" : false, + "layers" : [ + { + "glass" : true, + "hidden" : false, + "image-name" : "demorunnerplay.svg", + "name" : "demorunnerplay", + "opacity" : 1 + } + ], + "opacity" : 1, + "shadow" : { + "kind" : "neutral", + "opacity" : 0.5 + }, + "specular" : true, + "translucency" : { + "enabled" : true, + "value" : 0.6 + } + }, + { + "blur-material" : null, + "layers" : [ + { + "hidden" : false, + "image-name" : "demorunnerbg.svg", + "name" : "demorunnerbg" + } + ], + "shadow" : { + "kind" : "neutral", + "opacity" : 0.5 + }, + "specular" : true, + "translucency" : { + "enabled" : false, + "value" : 0 + } + } + ], + "supported-platforms" : { + "squares" : "shared" + } +} \ No newline at end of file diff --git a/extras/AudioPluginHost/AudioPluginHost.jucer b/extras/AudioPluginHost/AudioPluginHost.jucer index dab54f9831..9f6d0c0aa4 100644 --- a/extras/AudioPluginHost/AudioPluginHost.jucer +++ b/extras/AudioPluginHost/AudioPluginHost.jucer @@ -9,7 +9,8 @@ microphonePermissionNeeded="1" sendAppleEventsPermissionNeeded="1" sendAppleEventsPermissionText="This is required for some third-party plug-ins to function correctly." customXcodeResourceFolders="../../examples/Assets" applicationCategory="public.app-category.developer-tools" - extraDefs="JUCE_SILENCE_XCODE_15_LINKER_WARNING=1" extraLinkerFlags="-Wl,-weak_reference_mismatches,weak"> + extraDefs="JUCE_SILENCE_XCODE_15_LINKER_WARNING=1" extraLinkerFlags="-Wl,-weak_reference_mismatches,weak" + iconComposerIcon="XbiViB"> + extraDefs="JUCE_SILENCE_XCODE_15_LINKER_WARNING=1" extraLinkerFlags="-Wl,-weak_reference_mismatches,weak" + iconComposerIcon="XbiViB"> @@ -213,6 +215,14 @@ + + + + + + + diff --git a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt index 23517e343d..0a2a52f6c0 100644 --- a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt +++ b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt @@ -64,6 +64,9 @@ add_library( ${BINARY_NAME} "../../../Source/UI/MainHostWindow.h" "../../../Source/UI/PluginWindow.h" "../../../Source/HostStartup.cpp" + "../../../Source/AppIcon.icon/Assets/juceicon.svg" + "../../../Source/AppIcon.icon/Assets/pluginhostfg.svg" + "../../../Source/AppIcon.icon/icon.json" "../../../Source/JUCEAppIcon.png" "../../../../../examples/Assets/cassette_recorder.wav" "../../../../../examples/Assets/cello.wav" @@ -2552,6 +2555,9 @@ set_source_files_properties( "../../../Source/UI/GraphEditorPanel.h" "../../../Source/UI/MainHostWindow.h" "../../../Source/UI/PluginWindow.h" + "../../../Source/AppIcon.icon/Assets/juceicon.svg" + "../../../Source/AppIcon.icon/Assets/pluginhostfg.svg" + "../../../Source/AppIcon.icon/icon.json" "../../../Source/JUCEAppIcon.png" "../../../../../examples/Assets/cassette_recorder.wav" "../../../../../examples/Assets/cello.wav" diff --git a/extras/AudioPluginHost/Builds/MacOSX/AudioPluginHost.xcodeproj/project.pbxproj b/extras/AudioPluginHost/Builds/MacOSX/AudioPluginHost.xcodeproj/project.pbxproj index b210f39789..3be5b19d5f 100644 --- a/extras/AudioPluginHost/Builds/MacOSX/AudioPluginHost.xcodeproj/project.pbxproj +++ b/extras/AudioPluginHost/Builds/MacOSX/AudioPluginHost.xcodeproj/project.pbxproj @@ -14,6 +14,7 @@ 09309BD494A05931864B6730 /* PluginGraph.cpp */ = {isa = PBXBuildFile; fileRef = 0B1CC8C80F6F99BDE7D6AEC9; }; 0F20A4AE04736634F097F5A6 /* include_juce_audio_utils.mm */ = {isa = PBXBuildFile; fileRef = B285CAB91AE928C476CA4F9C; }; 15CCE43D7DCFC649638919D4 /* include_juce_audio_basics.mm */ = {isa = PBXBuildFile; fileRef = 4C7D82F9274A4F9DBF11235C; }; + 17928C3B79A379E4C6029D3E /* AppIcon.icon */ = {isa = PBXBuildFile; fileRef = 8D0F99961E3A2FF09E7D2DEC; }; 19BE669F744C58C9B8742649 /* include_juce_graphics_Harfbuzz.cpp */ = {isa = PBXBuildFile; fileRef = E19F52E4D8928B850832C57F; }; 1AD3A3C7CD2D1F6DC4B65205 /* Metal.framework */ = {isa = PBXBuildFile; fileRef = 3E94492697BD64D0F185D60E; settings = { ATTRIBUTES = (Weak, ); }; }; 21D330A5B13178B12BEAFC3C /* AudioToolbox.framework */ = {isa = PBXBuildFile; fileRef = D4EBC17BDB7F88CCBC76730B; }; @@ -64,6 +65,7 @@ 0B1CC8C80F6F99BDE7D6AEC9 /* PluginGraph.cpp */ /* PluginGraph.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PluginGraph.cpp; path = ../../Source/Plugins/PluginGraph.cpp; sourceTree = SOURCE_ROOT; }; 118ABD8E91DF2E400358D8CD /* MetalKit.framework */ /* MetalKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MetalKit.framework; path = System/Library/Frameworks/MetalKit.framework; sourceTree = SDKROOT; }; 11E6340DB6A6F68F5040101B /* reverb_ir.wav */ /* reverb_ir.wav */ = {isa = PBXFileReference; lastKnownFileType = file.wav; name = reverb_ir.wav; path = ../../../../examples/Assets/reverb_ir.wav; sourceTree = SOURCE_ROOT; }; + 16F7FAF232A9DA67E656C776 /* juceicon.svg */ /* juceicon.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = juceicon.svg; path = ../../Source/AppIcon.icon/Assets/juceicon.svg; sourceTree = SOURCE_ROOT; }; 17A29FEB16D4439351511947 /* guitar_amp.wav */ /* guitar_amp.wav */ = {isa = PBXFileReference; lastKnownFileType = file.wav; name = guitar_amp.wav; path = ../../../../examples/Assets/guitar_amp.wav; sourceTree = SOURCE_ROOT; }; 1DADAD8E34AAF4AFF1C69DC4 /* BinaryData.h */ /* BinaryData.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = SOURCE_ROOT; }; 2BE6C2DFD6EBB9A89109AEB5 /* include_juce_gui_extra.mm */ /* include_juce_gui_extra.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_gui_extra.mm; path = ../../JuceLibraryCode/include_juce_gui_extra.mm; sourceTree = SOURCE_ROOT; }; @@ -93,6 +95,7 @@ 6A71B2BCAC4239072BC2BD7E /* juce_audio_basics */ /* juce_audio_basics */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_audio_basics; path = ../../../../modules/juce_audio_basics; sourceTree = SOURCE_ROOT; }; 6D107D7946DC5976B766345B /* BinaryData.cpp */ /* BinaryData.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = SOURCE_ROOT; }; 6FDEDC8A2EE1095C83DCAF09 /* AppIcon.icns */ /* AppIcon.icns */ = {isa = PBXFileReference; lastKnownFileType = file.icns; name = AppIcon.icns; path = AppIcon.icns; sourceTree = SOURCE_ROOT; }; + 7294E2139555BCA6E58BC4CB /* icon.json */ /* icon.json */ = {isa = PBXFileReference; lastKnownFileType = file.json; name = icon.json; path = ../../Source/AppIcon.icon/icon.json; sourceTree = SOURCE_ROOT; }; 7DA35787B5F6F7440D667CC8 /* RecentFilesMenuTemplate.nib */ /* RecentFilesMenuTemplate.nib */ = {isa = PBXFileReference; lastKnownFileType = file.nib; name = RecentFilesMenuTemplate.nib; path = RecentFilesMenuTemplate.nib; sourceTree = SOURCE_ROOT; }; 81C1A7770E082F56FE5A90A7 /* juce_opengl */ /* juce_opengl */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_opengl; path = ../../../../modules/juce_opengl; sourceTree = SOURCE_ROOT; }; 82800DBA287EF4BAB13B42FB /* include_juce_graphics.mm */ /* include_juce_graphics.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_graphics.mm; path = ../../JuceLibraryCode/include_juce_graphics.mm; sourceTree = SOURCE_ROOT; }; @@ -101,6 +104,7 @@ 87A7AAB053051C49EAF4EE88 /* InternalPlugins.cpp */ /* InternalPlugins.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InternalPlugins.cpp; path = ../../Source/Plugins/InternalPlugins.cpp; sourceTree = SOURCE_ROOT; }; 89309C0C5F3269BD06BE7F27 /* QuartzCore.framework */ /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; 8AE5B3D0B3DE53FC27B9E88F /* include_juce_audio_processors_headless_lv2_libs.cpp */ /* include_juce_audio_processors_headless_lv2_libs.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_audio_processors_headless_lv2_libs.cpp; path = ../../JuceLibraryCode/include_juce_audio_processors_headless_lv2_libs.cpp; sourceTree = SOURCE_ROOT; }; + 8D0F99961E3A2FF09E7D2DEC /* AppIcon.icon */ /* AppIcon.icon */ = {isa = PBXFileReference; lastKnownFileType = file.icon; name = AppIcon.icon; path = ../../Source/AppIcon.icon; sourceTree = SOURCE_ROOT; }; 8D8BBC353637DA442C5575DA /* App */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AudioPluginHost.app; sourceTree = BUILT_PRODUCTS_DIR; }; 8FE7B37CDE0818DB27BDDEBD /* include_juce_gui_basics.mm */ /* include_juce_gui_basics.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_gui_basics.mm; path = ../../JuceLibraryCode/include_juce_gui_basics.mm; sourceTree = SOURCE_ROOT; }; 9320A145F2A8ACD687D6608E /* juce_dsp */ /* juce_dsp */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_dsp; path = ../../../../modules/juce_dsp; sourceTree = SOURCE_ROOT; }; @@ -126,6 +130,7 @@ C1981AC950A91C9050CE8358 /* Security.framework */ /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; }; C37B2E77AAB6C9E13729BF99 /* IOConfigurationWindow.cpp */ /* IOConfigurationWindow.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IOConfigurationWindow.cpp; path = ../../Source/Plugins/IOConfigurationWindow.cpp; sourceTree = SOURCE_ROOT; }; CA726B9AA0EC87B58D005C8D /* ARAPlugin.h */ /* ARAPlugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ARAPlugin.h; path = ../../Source/Plugins/ARAPlugin.h; sourceTree = SOURCE_ROOT; }; + CBAE7E81038388E1B80BA819 /* pluginhostfg.svg */ /* pluginhostfg.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = pluginhostfg.svg; path = ../../Source/AppIcon.icon/Assets/pluginhostfg.svg; sourceTree = SOURCE_ROOT; }; D313CF37B25D7FD313C4F336 /* OpenGL.framework */ /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; D4EBC17BDB7F88CCBC76730B /* AudioToolbox.framework */ /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; DAB71FA843B80756B5521A4E /* include_juce_audio_processors_headless.mm */ /* include_juce_audio_processors_headless.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_audio_processors_headless.mm; path = ../../JuceLibraryCode/include_juce_audio_processors_headless.mm; sourceTree = SOURCE_ROOT; }; @@ -180,6 +185,15 @@ name = BinaryData; sourceTree = ""; }; + 59BB5CF70EC14DFD74F5ED85 /* AppIcon.icon */ = { + isa = PBXGroup; + children = ( + B91A28F8942AEAAD82FA11D7, + 7294E2139555BCA6E58BC4CB, + ); + name = AppIcon.icon; + sourceTree = ""; + }; 65BEFC705A89E5C8A9E35C97 /* Source */ = { isa = PBXGroup; children = ( @@ -276,6 +290,7 @@ 57DF618F1DE781556B7AFC32, 7DA35787B5F6F7440D667CC8, 6FDEDC8A2EE1095C83DCAF09, + 8D0F99961E3A2FF09E7D2DEC, ); name = Resources; sourceTree = ""; @@ -286,11 +301,21 @@ 9F51E92D8C77FA9DDD1F7B10, DE7B77306553B1204071B39A, A66EFAC64B1B67B536C73415, + 59BB5CF70EC14DFD74F5ED85, B2A1E626CC120982805754F6, ); name = Source; sourceTree = ""; }; + B91A28F8942AEAAD82FA11D7 /* Assets */ = { + isa = PBXGroup; + children = ( + 16F7FAF232A9DA67E656C776, + CBAE7E81038388E1B80BA819, + ); + name = Assets; + sourceTree = ""; + }; D1C4804CD275CB57A5C89A2D /* Frameworks */ = { isa = PBXGroup; children = ( @@ -412,6 +437,7 @@ FE22E1AF24FA9ED43E983B81, D92C7BF86C9CCF6B4D14F809, 937574F3E6597DC4573F370E, + 17928C3B79A379E4C6029D3E, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -459,6 +485,7 @@ 49453CC5AD9F08D2738464AC /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_LINK_OBJC_RUNTIME = NO; @@ -598,6 +625,7 @@ C8B793AC1BEFBE7A99BE8352 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_LINK_OBJC_RUNTIME = NO; diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj index 7d5dc5cccb..047d39395a 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj +++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj @@ -4486,6 +4486,9 @@ + + + diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters index eda89f1f30..4d0c262de7 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters +++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters @@ -8,6 +8,12 @@ {8C61EB30-11E6-7029-4CC8-56C52EB1F1C3} + + {94E5947C-3A5C-01B7-75B0-CA217E2F5AF8} + + + {DFD1926B-9FC8-19E6-7DE8-9B50A73FCEA8} + {57E59C1B-8971-243F-9A1A-8EABFD456232} @@ -8117,6 +8123,15 @@ + + AudioPluginHost\Source\AppIcon.icon\Assets + + + AudioPluginHost\Source\AppIcon.icon\Assets + + + AudioPluginHost\Source\AppIcon.icon + AudioPluginHost\Source diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj index 16e2d4e63e..d6f8546934 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj +++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj @@ -4486,6 +4486,9 @@ + + + diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters index 6f023e54eb..14661e95f0 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters +++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters @@ -8,6 +8,12 @@ {8C61EB30-11E6-7029-4CC8-56C52EB1F1C3} + + {94E5947C-3A5C-01B7-75B0-CA217E2F5AF8} + + + {DFD1926B-9FC8-19E6-7DE8-9B50A73FCEA8} + {57E59C1B-8971-243F-9A1A-8EABFD456232} @@ -8117,6 +8123,15 @@ + + AudioPluginHost\Source\AppIcon.icon\Assets + + + AudioPluginHost\Source\AppIcon.icon\Assets + + + AudioPluginHost\Source\AppIcon.icon + AudioPluginHost\Source diff --git a/extras/AudioPluginHost/Builds/VisualStudio2026/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2026/AudioPluginHost_App.vcxproj index b7af1a771d..359cdd8551 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2026/AudioPluginHost_App.vcxproj +++ b/extras/AudioPluginHost/Builds/VisualStudio2026/AudioPluginHost_App.vcxproj @@ -4486,6 +4486,9 @@ + + + diff --git a/extras/AudioPluginHost/Builds/VisualStudio2026/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2026/AudioPluginHost_App.vcxproj.filters index a361b6a759..9e428bea7f 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2026/AudioPluginHost_App.vcxproj.filters +++ b/extras/AudioPluginHost/Builds/VisualStudio2026/AudioPluginHost_App.vcxproj.filters @@ -8,6 +8,12 @@ {8C61EB30-11E6-7029-4CC8-56C52EB1F1C3} + + {94E5947C-3A5C-01B7-75B0-CA217E2F5AF8} + + + {DFD1926B-9FC8-19E6-7DE8-9B50A73FCEA8} + {57E59C1B-8971-243F-9A1A-8EABFD456232} @@ -8117,6 +8123,15 @@ + + AudioPluginHost\Source\AppIcon.icon\Assets + + + AudioPluginHost\Source\AppIcon.icon\Assets + + + AudioPluginHost\Source\AppIcon.icon + AudioPluginHost\Source diff --git a/extras/AudioPluginHost/Builds/iOS/AudioPluginHost.xcodeproj/project.pbxproj b/extras/AudioPluginHost/Builds/iOS/AudioPluginHost.xcodeproj/project.pbxproj index 69f96605ed..d71d9d3f80 100644 --- a/extras/AudioPluginHost/Builds/iOS/AudioPluginHost.xcodeproj/project.pbxproj +++ b/extras/AudioPluginHost/Builds/iOS/AudioPluginHost.xcodeproj/project.pbxproj @@ -16,6 +16,7 @@ 0F20A4AE04736634F097F5A6 /* include_juce_audio_utils.mm */ = {isa = PBXBuildFile; fileRef = B285CAB91AE928C476CA4F9C; }; 1570FCC5CDB7A44DF0077E39 /* CoreGraphics.framework */ = {isa = PBXBuildFile; fileRef = 2F7D965A1284CEF0B20EB657; }; 15CCE43D7DCFC649638919D4 /* include_juce_audio_basics.mm */ = {isa = PBXBuildFile; fileRef = 4C7D82F9274A4F9DBF11235C; }; + 17928C3B79A379E4C6029D3E /* AppIcon.icon */ = {isa = PBXBuildFile; fileRef = 8D0F99961E3A2FF09E7D2DEC; }; 19BE669F744C58C9B8742649 /* include_juce_graphics_Harfbuzz.cpp */ = {isa = PBXBuildFile; fileRef = E19F52E4D8928B850832C57F; }; 1AD3A3C7CD2D1F6DC4B65205 /* Metal.framework */ = {isa = PBXBuildFile; fileRef = 3E94492697BD64D0F185D60E; settings = { ATTRIBUTES = (Weak, ); }; }; 21D330A5B13178B12BEAFC3C /* AudioToolbox.framework */ = {isa = PBXBuildFile; fileRef = D4EBC17BDB7F88CCBC76730B; }; @@ -68,6 +69,7 @@ 0B1CC8C80F6F99BDE7D6AEC9 /* PluginGraph.cpp */ /* PluginGraph.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PluginGraph.cpp; path = ../../Source/Plugins/PluginGraph.cpp; sourceTree = SOURCE_ROOT; }; 118ABD8E91DF2E400358D8CD /* MetalKit.framework */ /* MetalKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MetalKit.framework; path = System/Library/Frameworks/MetalKit.framework; sourceTree = SDKROOT; }; 11E6340DB6A6F68F5040101B /* reverb_ir.wav */ /* reverb_ir.wav */ = {isa = PBXFileReference; lastKnownFileType = file.wav; name = reverb_ir.wav; path = ../../../../examples/Assets/reverb_ir.wav; sourceTree = SOURCE_ROOT; }; + 16F7FAF232A9DA67E656C776 /* juceicon.svg */ /* juceicon.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = juceicon.svg; path = ../../Source/AppIcon.icon/Assets/juceicon.svg; sourceTree = SOURCE_ROOT; }; 17A29FEB16D4439351511947 /* guitar_amp.wav */ /* guitar_amp.wav */ = {isa = PBXFileReference; lastKnownFileType = file.wav; name = guitar_amp.wav; path = ../../../../examples/Assets/guitar_amp.wav; sourceTree = SOURCE_ROOT; }; 1DADAD8E34AAF4AFF1C69DC4 /* BinaryData.h */ /* BinaryData.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = SOURCE_ROOT; }; 29E0972229FB44D969035B4E /* Images.xcassets */ /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = AudioPluginHost/Images.xcassets; sourceTree = SOURCE_ROOT; }; @@ -99,6 +101,7 @@ 6A71B2BCAC4239072BC2BD7E /* juce_audio_basics */ /* juce_audio_basics */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_audio_basics; path = ../../../../modules/juce_audio_basics; sourceTree = SOURCE_ROOT; }; 6D107D7946DC5976B766345B /* BinaryData.cpp */ /* BinaryData.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = SOURCE_ROOT; }; 6FDEDC8A2EE1095C83DCAF09 /* AppIcon.icns */ /* AppIcon.icns */ = {isa = PBXFileReference; lastKnownFileType = file.icns; name = AppIcon.icns; path = AppIcon.icns; sourceTree = SOURCE_ROOT; }; + 7294E2139555BCA6E58BC4CB /* icon.json */ /* icon.json */ = {isa = PBXFileReference; lastKnownFileType = file.json; name = icon.json; path = ../../Source/AppIcon.icon/icon.json; sourceTree = SOURCE_ROOT; }; 7D924E83DABA5B54205C52F4 /* CoreServices.framework */ /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = System/Library/Frameworks/CoreServices.framework; sourceTree = SDKROOT; }; 81C1A7770E082F56FE5A90A7 /* juce_opengl */ /* juce_opengl */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_opengl; path = ../../../../modules/juce_opengl; sourceTree = SOURCE_ROOT; }; 82800DBA287EF4BAB13B42FB /* include_juce_graphics.mm */ /* include_juce_graphics.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_graphics.mm; path = ../../JuceLibraryCode/include_juce_graphics.mm; sourceTree = SOURCE_ROOT; }; @@ -108,6 +111,7 @@ 89309C0C5F3269BD06BE7F27 /* QuartzCore.framework */ /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; 8AE5B3D0B3DE53FC27B9E88F /* include_juce_audio_processors_headless_lv2_libs.cpp */ /* include_juce_audio_processors_headless_lv2_libs.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = include_juce_audio_processors_headless_lv2_libs.cpp; path = ../../JuceLibraryCode/include_juce_audio_processors_headless_lv2_libs.cpp; sourceTree = SOURCE_ROOT; }; 8C6CD9119127C4AEBADABA25 /* UniformTypeIdentifiers.framework */ /* UniformTypeIdentifiers.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UniformTypeIdentifiers.framework; path = System/Library/Frameworks/UniformTypeIdentifiers.framework; sourceTree = SDKROOT; }; + 8D0F99961E3A2FF09E7D2DEC /* AppIcon.icon */ /* AppIcon.icon */ = {isa = PBXFileReference; lastKnownFileType = file.icon; name = AppIcon.icon; path = ../../Source/AppIcon.icon; sourceTree = SOURCE_ROOT; }; 8D8BBC353637DA442C5575DA /* App */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Plugin Host.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 8FE7B37CDE0818DB27BDDEBD /* include_juce_gui_basics.mm */ /* include_juce_gui_basics.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = include_juce_gui_basics.mm; path = ../../JuceLibraryCode/include_juce_gui_basics.mm; sourceTree = SOURCE_ROOT; }; 9320A145F2A8ACD687D6608E /* juce_dsp */ /* juce_dsp */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_dsp; path = ../../../../modules/juce_dsp; sourceTree = SOURCE_ROOT; }; @@ -132,6 +136,7 @@ B95B9D6774059DBB19F2B4E2 /* InternalPlugins.h */ /* InternalPlugins.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = InternalPlugins.h; path = ../../Source/Plugins/InternalPlugins.h; sourceTree = SOURCE_ROOT; }; C37B2E77AAB6C9E13729BF99 /* IOConfigurationWindow.cpp */ /* IOConfigurationWindow.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IOConfigurationWindow.cpp; path = ../../Source/Plugins/IOConfigurationWindow.cpp; sourceTree = SOURCE_ROOT; }; CA726B9AA0EC87B58D005C8D /* ARAPlugin.h */ /* ARAPlugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ARAPlugin.h; path = ../../Source/Plugins/ARAPlugin.h; sourceTree = SOURCE_ROOT; }; + CBAE7E81038388E1B80BA819 /* pluginhostfg.svg */ /* pluginhostfg.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = pluginhostfg.svg; path = ../../Source/AppIcon.icon/Assets/pluginhostfg.svg; sourceTree = SOURCE_ROOT; }; CFFA8E9A7820C5A27B4393C9 /* CoreImage.framework */ /* CoreImage.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreImage.framework; path = System/Library/Frameworks/CoreImage.framework; sourceTree = SDKROOT; }; D0026F0A29B486D87E92BB8B /* OpenGLES.framework */ /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; D4EBC17BDB7F88CCBC76730B /* AudioToolbox.framework */ /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; @@ -192,6 +197,15 @@ name = BinaryData; sourceTree = ""; }; + 59BB5CF70EC14DFD74F5ED85 /* AppIcon.icon */ = { + isa = PBXGroup; + children = ( + B91A28F8942AEAAD82FA11D7, + 7294E2139555BCA6E58BC4CB, + ); + name = AppIcon.icon; + sourceTree = ""; + }; 65BEFC705A89E5C8A9E35C97 /* Source */ = { isa = PBXGroup; children = ( @@ -289,6 +303,7 @@ 29E0972229FB44D969035B4E, F58EBA72DA53F75945B91321, 6FDEDC8A2EE1095C83DCAF09, + 8D0F99961E3A2FF09E7D2DEC, ); name = Resources; sourceTree = ""; @@ -299,11 +314,21 @@ 9F51E92D8C77FA9DDD1F7B10, DE7B77306553B1204071B39A, A66EFAC64B1B67B536C73415, + 59BB5CF70EC14DFD74F5ED85, B2A1E626CC120982805754F6, ); name = Source; sourceTree = ""; }; + B91A28F8942AEAAD82FA11D7 /* Assets */ = { + isa = PBXGroup; + children = ( + 16F7FAF232A9DA67E656C776, + CBAE7E81038388E1B80BA819, + ); + name = Assets; + sourceTree = ""; + }; D1C4804CD275CB57A5C89A2D /* Frameworks */ = { isa = PBXGroup; children = ( @@ -429,6 +454,7 @@ 59F4F23BFFDAB414B4801F85, E283262A07376A7EDFCEAF6F, 937574F3E6597DC4573F370E, + 17928C3B79A379E4C6029D3E, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/extras/AudioPluginHost/CMakeLists.txt b/extras/AudioPluginHost/CMakeLists.txt index 6f4144d463..fbf732a475 100644 --- a/extras/AudioPluginHost/CMakeLists.txt +++ b/extras/AudioPluginHost/CMakeLists.txt @@ -33,6 +33,7 @@ juce_add_gui_app(AudioPluginHost BUNDLE_ID com.juce.pluginhost ICON_BIG "${CMAKE_CURRENT_SOURCE_DIR}/Source/JUCEAppIcon.png" + ICON_COMPOSER_BUNDLE "${CMAKE_CURRENT_SOURCE_DIR}/Source/AppIcon.icon" MICROPHONE_PERMISSION_ENABLED TRUE PLUGINHOST_AU TRUE) diff --git a/extras/AudioPluginHost/Source/AppIcon.icon/Assets/juceicon.svg b/extras/AudioPluginHost/Source/AppIcon.icon/Assets/juceicon.svg new file mode 100644 index 0000000000..7159d721a3 --- /dev/null +++ b/extras/AudioPluginHost/Source/AppIcon.icon/Assets/juceicon.svg @@ -0,0 +1,46 @@ + + diff --git a/extras/AudioPluginHost/Source/AppIcon.icon/Assets/pluginhostfg.svg b/extras/AudioPluginHost/Source/AppIcon.icon/Assets/pluginhostfg.svg new file mode 100644 index 0000000000..40ed146e8b --- /dev/null +++ b/extras/AudioPluginHost/Source/AppIcon.icon/Assets/pluginhostfg.svg @@ -0,0 +1,15 @@ + + diff --git a/extras/AudioPluginHost/Source/AppIcon.icon/icon.json b/extras/AudioPluginHost/Source/AppIcon.icon/icon.json new file mode 100644 index 0000000000..419588f631 --- /dev/null +++ b/extras/AudioPluginHost/Source/AppIcon.icon/icon.json @@ -0,0 +1,47 @@ +{ + "fill" : "system-light", + "groups" : [ + { + "blur-material" : 0.5, + "hidden" : false, + "layers" : [ + { + "image-name" : "pluginhostfg.svg", + "name" : "pluginhostfg" + } + ], + "opacity" : 1, + "shadow" : { + "kind" : "neutral", + "opacity" : 0.5 + }, + "specular" : true, + "translucency" : { + "enabled" : true, + "value" : 0.6 + } + }, + { + "blur-material" : null, + "layers" : [ + { + "hidden" : false, + "image-name" : "juceicon.svg", + "name" : "juceicon" + } + ], + "shadow" : { + "kind" : "neutral", + "opacity" : 0.5 + }, + "specular" : true, + "translucency" : { + "enabled" : false, + "value" : 0 + } + } + ], + "supported-platforms" : { + "squares" : "shared" + } +} \ No newline at end of file diff --git a/extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj b/extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj index 516034efea..97bccc790c 100644 --- a/extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj +++ b/extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj @@ -38,6 +38,7 @@ 6DD9DA1677A6CF789CDAB478 /* jucer_AutoUpdater.cpp */ = {isa = PBXBuildFile; fileRef = 0D4D508C638BC74943B9976D; }; 6ECB2F11D2F593FACCCF99DB /* jucer_ProjucerLookAndFeel.cpp */ = {isa = PBXBuildFile; fileRef = 0F8C000E5FF4A2DAC1FEF8EB; }; 71713DE4716DCEDB45A206E2 /* jucer_OpenDocumentManager.cpp */ = {isa = PBXBuildFile; fileRef = F9111E150CFF155329D44853; }; + 7E43279B5881EA0FFDA49647 /* AppIcon.icon */ = {isa = PBXBuildFile; fileRef = E09429B88DD8ADA381D4BF61; }; 7F1928D425D075E93DC254A8 /* Metal.framework */ = {isa = PBXBuildFile; fileRef = E419F3AED6A220EDCB179A8C; settings = { ATTRIBUTES = (Weak, ); }; }; 8BE478303CDF061B72F219E2 /* jucer_CodeHelpers.cpp */ = {isa = PBXBuildFile; fileRef = F2E4998FB2C7221587A79F8B; }; 908B7D4FB180F53405DA8EF9 /* jucer_StartPageComponent.cpp */ = {isa = PBXBuildFile; fileRef = 82C18723A3D0E39BBD8F0F6E; }; @@ -150,6 +151,7 @@ 6FD8DBC0FF42C87D8BEE2452 /* jucer_TranslationHelpers.h */ /* jucer_TranslationHelpers.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_TranslationHelpers.h; path = ../../Source/Utility/Helpers/jucer_TranslationHelpers.h; sourceTree = SOURCE_ROOT; }; 70D3399C01D1EF2CD059B2A4 /* jucer_Sidebar.h */ /* jucer_Sidebar.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_Sidebar.h; path = ../../Source/Project/UI/Sidebar/jucer_Sidebar.h; sourceTree = SOURCE_ROOT; }; 7AB7640968FAAC73072FBD10 /* juce_gui_basics */ /* juce_gui_basics */ = {isa = PBXFileReference; lastKnownFileType = folder; name = juce_gui_basics; path = ../../../../modules/juce_gui_basics; sourceTree = SOURCE_ROOT; }; + 7C2F4A961A17B2E2ADD1B407 /* icon.json */ /* icon.json */ = {isa = PBXFileReference; lastKnownFileType = file.json; name = icon.json; path = ../../Source/Assets/AppIcon.icon/icon.json; sourceTree = SOURCE_ROOT; }; 7CA44FF0BA319517C6E39651 /* jucer_Application.cpp */ /* jucer_Application.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_Application.cpp; path = ../../Source/Application/jucer_Application.cpp; sourceTree = SOURCE_ROOT; }; 807049CA2D5B6DE18EA078F2 /* export_android.svg */ /* export_android.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = export_android.svg; path = ../../Source/BinaryData/Icons/export_android.svg; sourceTree = SOURCE_ROOT; }; 82C18723A3D0E39BBD8F0F6E /* jucer_StartPageComponent.cpp */ /* jucer_StartPageComponent.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_StartPageComponent.cpp; path = ../../Source/Application/StartPage/jucer_StartPageComponent.cpp; sourceTree = SOURCE_ROOT; }; @@ -223,6 +225,7 @@ DE4A987B2D5529990A6AA9D4 /* jucer_AboutWindowComponent.h */ /* jucer_AboutWindowComponent.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_AboutWindowComponent.h; path = ../../Source/Application/Windows/jucer_AboutWindowComponent.h; sourceTree = SOURCE_ROOT; }; DF40404150A5A3D6F5AAC856 /* MetalKit.framework */ /* MetalKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MetalKit.framework; path = System/Library/Frameworks/MetalKit.framework; sourceTree = SDKROOT; }; DFBEB8E086832AEB0FBEADF0 /* jucer_StoredSettings.h */ /* jucer_StoredSettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_StoredSettings.h; path = ../../Source/Settings/jucer_StoredSettings.h; sourceTree = SOURCE_ROOT; }; + E09429B88DD8ADA381D4BF61 /* AppIcon.icon */ /* AppIcon.icon */ = {isa = PBXFileReference; lastKnownFileType = file.icon; name = AppIcon.icon; path = ../../Source/Assets/AppIcon.icon; sourceTree = SOURCE_ROOT; }; E111A336FE13C033EAA0A1D1 /* jucer_NewCppFileTemplate.h */ /* jucer_NewCppFileTemplate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_NewCppFileTemplate.h; path = ../../Source/BinaryData/Templates/jucer_NewCppFileTemplate.h; sourceTree = SOURCE_ROOT; }; E13A54A6D3A1895EACE53E51 /* jucer_ResourceFile.cpp */ /* jucer_ResourceFile.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_ResourceFile.cpp; path = ../../Source/ProjectSaving/jucer_ResourceFile.cpp; sourceTree = SOURCE_ROOT; }; E186BC01A1B1529937A46485 /* jucer_FileHelpers.h */ /* jucer_FileHelpers.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_FileHelpers.h; path = ../../Source/Utility/Helpers/jucer_FileHelpers.h; sourceTree = SOURCE_ROOT; }; @@ -249,6 +252,7 @@ F58B23995765C9FDBE28F871 /* jucer_Modules.cpp */ /* jucer_Modules.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_Modules.cpp; path = ../../Source/Project/Modules/jucer_Modules.cpp; sourceTree = SOURCE_ROOT; }; F5DD97B45B8EA60C1ED0DD80 /* jucer_StoredSettings.cpp */ /* jucer_StoredSettings.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_StoredSettings.cpp; path = ../../Source/Settings/jucer_StoredSettings.cpp; sourceTree = SOURCE_ROOT; }; F63F46CA0A51C679867855A7 /* jucer_ProjectMessagesComponent.h */ /* jucer_ProjectMessagesComponent.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_ProjectMessagesComponent.h; path = ../../Source/Project/UI/jucer_ProjectMessagesComponent.h; sourceTree = SOURCE_ROOT; }; + F6410ADB98961EC4A6304A21 /* juceicon.svg */ /* juceicon.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = juceicon.svg; path = ../../Source/Assets/AppIcon.icon/Assets/juceicon.svg; sourceTree = SOURCE_ROOT; }; F7C74E934C954F6F1A3BE4F9 /* jucer_TranslationToolWindowComponent.h */ /* jucer_TranslationToolWindowComponent.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_TranslationToolWindowComponent.h; path = ../../Source/Application/Windows/jucer_TranslationToolWindowComponent.h; sourceTree = SOURCE_ROOT; }; F84D031B2A6BB1EE6A316C71 /* PIPConsole.cpp.in */ /* PIPConsole.cpp.in */ = {isa = PBXFileReference; lastKnownFileType = file.in; name = PIPConsole.cpp.in; path = ../../../Build/CMake/PIPConsole.cpp.in; sourceTree = SOURCE_ROOT; }; F8A38C0C7C45F2DB6A5FB812 /* wizard_Highlight.svg */ /* wizard_Highlight.svg */ = {isa = PBXFileReference; lastKnownFileType = file.svg; name = wizard_Highlight.svg; path = ../../Source/BinaryData/Icons/wizard_Highlight.svg; sourceTree = SOURCE_ROOT; }; @@ -365,6 +369,14 @@ name = Source; sourceTree = ""; }; + 4BCEED1C2E8D6C62E3DA4231 /* Assets */ = { + isa = PBXGroup; + children = ( + F6410ADB98961EC4A6304A21, + ); + name = Assets; + sourceTree = ""; + }; 4DCC5D64BBE8DE85360A3D57 /* ProjectSaving */ = { isa = PBXGroup; children = ( @@ -405,12 +417,21 @@ name = gradle; sourceTree = ""; }; + 7CEEEE4F800F5DB9728F9271 /* Assets */ = { + isa = PBXGroup; + children = ( + F05A70E37CDE3CF34503940F, + ); + name = Assets; + sourceTree = ""; + }; 8180B5894A78501084B8F133 /* Resources */ = { isa = PBXGroup; children = ( E266DE67FF319D56F63193A6, 6678E9B3EEACAD47F438B264, F3FE62637ACC2263A7594E8A, + E09429B88DD8ADA381D4BF61, ); name = Resources; sourceTree = ""; @@ -584,6 +605,7 @@ isa = PBXGroup; children = ( BC67FD952A6F210A11A1ECB8, + 7CEEEE4F800F5DB9728F9271, DC3A4B0AD79334BA8A7E0661, F1B44F007A02A0FAE4DC8D79, 89E9055A179B4C2019B4E1AE, @@ -676,6 +698,15 @@ name = Settings; sourceTree = ""; }; + F05A70E37CDE3CF34503940F /* AppIcon.icon */ = { + isa = PBXGroup; + children = ( + 4BCEED1C2E8D6C62E3DA4231, + 7C2F4A961A17B2E2ADD1B407, + ); + name = AppIcon.icon; + sourceTree = ""; + }; F1B44F007A02A0FAE4DC8D79 /* CodeEditor */ = { isa = PBXGroup; children = ( @@ -767,6 +798,7 @@ files = ( 2610F357881240ACBF612F48, DBE437EE41F174A6F27FC0E2, + 7E43279B5881EA0FFDA49647, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -825,6 +857,7 @@ 0BC15DC2E5FE5ECFFB398D49 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_LINK_OBJC_RUNTIME = NO; @@ -892,6 +925,7 @@ 0CC6C439D038EDA0D7F10DF0 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_LINK_OBJC_RUNTIME = NO; diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj index 5e81e10f3c..25a9c944f2 100644 --- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj +++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj @@ -2944,6 +2944,8 @@ + + diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters index eea8d5fd9c..20adcdb3e2 100644 --- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters +++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters @@ -11,6 +11,15 @@ {4F8BCD36-CE20-D951-FB82-2CCEDD0C5898} + + {B2D403C0-2D43-F167-C19F-47D66D35F066} + + + {64127AE2-0F4C-1DEE-6C29-626091A3A9CB} + + + {D247D8BA-48E6-6F87-156E-E999D3678EB6} + {661FA330-2192-FAA3-E7B2-FAF8EBB783C6} @@ -5243,6 +5252,12 @@ + + Projucer\Assets\AppIcon.icon\Assets + + + Projucer\Assets\AppIcon.icon + Projucer\BinaryData diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj index 4adc6f8d19..2768f19fed 100644 --- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj +++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj @@ -2944,6 +2944,8 @@ + + diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters index 2e78f840cc..3c9e71e383 100644 --- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters +++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters @@ -11,6 +11,15 @@ {4F8BCD36-CE20-D951-FB82-2CCEDD0C5898} + + {B2D403C0-2D43-F167-C19F-47D66D35F066} + + + {64127AE2-0F4C-1DEE-6C29-626091A3A9CB} + + + {D247D8BA-48E6-6F87-156E-E999D3678EB6} + {661FA330-2192-FAA3-E7B2-FAF8EBB783C6} @@ -5243,6 +5252,12 @@ + + Projucer\Assets\AppIcon.icon\Assets + + + Projucer\Assets\AppIcon.icon + Projucer\BinaryData diff --git a/extras/Projucer/Builds/VisualStudio2026/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2026/Projucer_App.vcxproj index e2e77e962b..f8d7276c6c 100644 --- a/extras/Projucer/Builds/VisualStudio2026/Projucer_App.vcxproj +++ b/extras/Projucer/Builds/VisualStudio2026/Projucer_App.vcxproj @@ -2944,6 +2944,8 @@ + + diff --git a/extras/Projucer/Builds/VisualStudio2026/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2026/Projucer_App.vcxproj.filters index bacc4cf870..a485541839 100644 --- a/extras/Projucer/Builds/VisualStudio2026/Projucer_App.vcxproj.filters +++ b/extras/Projucer/Builds/VisualStudio2026/Projucer_App.vcxproj.filters @@ -11,6 +11,15 @@ {4F8BCD36-CE20-D951-FB82-2CCEDD0C5898} + + {B2D403C0-2D43-F167-C19F-47D66D35F066} + + + {64127AE2-0F4C-1DEE-6C29-626091A3A9CB} + + + {D247D8BA-48E6-6F87-156E-E999D3678EB6} + {661FA330-2192-FAA3-E7B2-FAF8EBB783C6} @@ -5243,6 +5252,12 @@ + + Projucer\Assets\AppIcon.icon\Assets + + + Projucer\Assets\AppIcon.icon + Projucer\BinaryData diff --git a/extras/Projucer/CMakeLists.txt b/extras/Projucer/CMakeLists.txt index abef0e2308..395a7b8096 100644 --- a/extras/Projucer/CMakeLists.txt +++ b/extras/Projucer/CMakeLists.txt @@ -33,6 +33,7 @@ juce_add_gui_app(Projucer BUNDLE_ID com.juce.theprojucer ICON_BIG ${CMAKE_CURRENT_SOURCE_DIR}/Source/BinaryData/Icons/juce_icon.png + ICON_COMPOSER_BUNDLE "${CMAKE_CURRENT_SOURCE_DIR}/Source/Assets/AppIcon.icon" DOCUMENT_EXTENSIONS jucer NEEDS_CURL TRUE NEEDS_WEB_BROWSER TRUE) diff --git a/extras/Projucer/Projucer.jucer b/extras/Projucer/Projucer.jucer index 15dbfccb7e..499ef9a9f1 100644 --- a/extras/Projucer/Projucer.jucer +++ b/extras/Projucer/Projucer.jucer @@ -8,7 +8,7 @@ + extraDefs="JUCE_SILENCE_XCODE_15_LINKER_WARNING=1" iconComposerIcon="NzgaRC"> @@ -30,7 +30,8 @@ smallIcon="Zrx1Gl"> - + @@ -47,7 +48,8 @@ smallIcon="Zrx1Gl"> - + @@ -64,7 +66,8 @@ smallIcon="Zrx1Gl"> - + @@ -153,6 +156,14 @@ + + + + + + + + diff --git a/extras/Projucer/Source/Assets/AppIcon.icon/Assets/juceicon.svg b/extras/Projucer/Source/Assets/AppIcon.icon/Assets/juceicon.svg new file mode 100644 index 0000000000..7159d721a3 --- /dev/null +++ b/extras/Projucer/Source/Assets/AppIcon.icon/Assets/juceicon.svg @@ -0,0 +1,46 @@ + + diff --git a/extras/Projucer/Source/Assets/AppIcon.icon/icon.json b/extras/Projucer/Source/Assets/AppIcon.icon/icon.json new file mode 100644 index 0000000000..028a7e56f8 --- /dev/null +++ b/extras/Projucer/Source/Assets/AppIcon.icon/icon.json @@ -0,0 +1,27 @@ +{ + "fill" : "system-light", + "groups" : [ + { + "blur-material" : null, + "layers" : [ + { + "hidden" : false, + "image-name" : "juceicon.svg", + "name" : "juceicon" + } + ], + "shadow" : { + "kind" : "neutral", + "opacity" : 0.5 + }, + "specular" : true, + "translucency" : { + "enabled" : false, + "value" : 0 + } + } + ], + "supported-platforms" : { + "squares" : "shared" + } +} \ No newline at end of file