Browse Source

Projucer: Cleaned up templates and added options for header and cpp file creation

tags/2021-05-28
Noah Dayan 7 years ago
parent
commit
bed0f02e54
30 changed files with 1352 additions and 325 deletions
  1. +15
    -1
      extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj
  2. +7
    -0
      extras/Projucer/Builds/VisualStudio2013/Projucer_App.vcxproj
  3. +21
    -0
      extras/Projucer/Builds/VisualStudio2013/Projucer_App.vcxproj.filters
  4. +7
    -0
      extras/Projucer/Builds/VisualStudio2015/Projucer_App.vcxproj
  5. +21
    -0
      extras/Projucer/Builds/VisualStudio2015/Projucer_App.vcxproj.filters
  6. +7
    -0
      extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj
  7. +21
    -0
      extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj.filters
  8. +506
    -99
      extras/Projucer/JuceLibraryCode/BinaryData.cpp
  9. +31
    -10
      extras/Projucer/JuceLibraryCode/BinaryData.h
  10. +14
    -0
      extras/Projucer/Projucer.jucer
  11. +64
    -0
      extras/Projucer/Source/BinaryData/Templates/jucer_AnimatedComponentSimpleTemplate.h
  12. +29
    -48
      extras/Projucer/Source/BinaryData/Templates/jucer_AnimatedComponentTemplate.cpp
  13. +38
    -0
      extras/Projucer/Source/BinaryData/Templates/jucer_AnimatedComponentTemplate.h
  14. +92
    -0
      extras/Projucer/Source/BinaryData/Templates/jucer_AudioComponentSimpleTemplate.h
  15. +49
    -68
      extras/Projucer/Source/BinaryData/Templates/jucer_AudioComponentTemplate.cpp
  16. +40
    -0
      extras/Projucer/Source/BinaryData/Templates/jucer_AudioComponentTemplate.h
  17. +6
    -2
      extras/Projucer/Source/BinaryData/Templates/jucer_AudioPluginFilterTemplate.cpp
  18. +2
    -2
      extras/Projucer/Source/BinaryData/Templates/jucer_ComponentTemplate.cpp
  19. +2
    -2
      extras/Projucer/Source/BinaryData/Templates/jucer_ComponentTemplate.h
  20. +56
    -0
      extras/Projucer/Source/BinaryData/Templates/jucer_ContentCompSimpleTemplate.h
  21. +1
    -1
      extras/Projucer/Source/BinaryData/Templates/jucer_ContentCompTemplate.cpp
  22. +4
    -1
      extras/Projucer/Source/BinaryData/Templates/jucer_ContentCompTemplate.h
  23. +1
    -3
      extras/Projucer/Source/BinaryData/Templates/jucer_MainTemplate_SimpleWindow.cpp
  24. +75
    -0
      extras/Projucer/Source/BinaryData/Templates/jucer_OpenGLComponentSimpleTemplate.h
  25. +38
    -52
      extras/Projucer/Source/BinaryData/Templates/jucer_OpenGLComponentTemplate.cpp
  26. +40
    -0
      extras/Projucer/Source/BinaryData/Templates/jucer_OpenGLComponentTemplate.h
  27. +46
    -6
      extras/Projucer/Source/Wizards/jucer_ProjectWizard_Animated.h
  28. +48
    -6
      extras/Projucer/Source/Wizards/jucer_ProjectWizard_AudioApp.h
  29. +25
    -18
      extras/Projucer/Source/Wizards/jucer_ProjectWizard_GUIApp.h
  30. +46
    -6
      extras/Projucer/Source/Wizards/jucer_ProjectWizard_openGL.h

+ 15
- 1
extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj View File

@@ -152,6 +152,7 @@
3C95FA2AA91EBA19ADDD5C29 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectWizard_Animated.h"; path = "../../Source/Wizards/jucer_ProjectWizard_Animated.h"; sourceTree = "SOURCE_ROOT"; }; 3C95FA2AA91EBA19ADDD5C29 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectWizard_Animated.h"; path = "../../Source/Wizards/jucer_ProjectWizard_Animated.h"; sourceTree = "SOURCE_ROOT"; };
3D6FD9C0065BF16568EC0AB7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_SlidingPanelComponent.h"; path = "../../Source/Utility/UI/jucer_SlidingPanelComponent.h"; sourceTree = "SOURCE_ROOT"; }; 3D6FD9C0065BF16568EC0AB7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_SlidingPanelComponent.h"; path = "../../Source/Utility/UI/jucer_SlidingPanelComponent.h"; sourceTree = "SOURCE_ROOT"; };
3EA27F52A254912218F4DE94 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectBuildInfo.h"; path = "../../Source/LiveBuildEngine/jucer_ProjectBuildInfo.h"; sourceTree = "SOURCE_ROOT"; }; 3EA27F52A254912218F4DE94 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectBuildInfo.h"; path = "../../Source/LiveBuildEngine/jucer_ProjectBuildInfo.h"; sourceTree = "SOURCE_ROOT"; };
3F7C5B53347A487C7FBD2223 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_OpenGLComponentTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_OpenGLComponentTemplate.h"; sourceTree = "SOURCE_ROOT"; };
3F8EC008960DBEB2A5D3C3F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Headers.h"; path = "../../Source/Application/jucer_Headers.h"; sourceTree = "SOURCE_ROOT"; }; 3F8EC008960DBEB2A5D3C3F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Headers.h"; path = "../../Source/Application/jucer_Headers.h"; sourceTree = "SOURCE_ROOT"; };
3F9D4C7F6E5779D4E4AE655D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ComponentLayout.h"; path = "../../Source/ComponentEditor/jucer_ComponentLayout.h"; sourceTree = "SOURCE_ROOT"; }; 3F9D4C7F6E5779D4E4AE655D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ComponentLayout.h"; path = "../../Source/ComponentEditor/jucer_ComponentLayout.h"; sourceTree = "SOURCE_ROOT"; };
4073A12E196BDDADE211E19F = {isa = PBXFileReference; lastKnownFileType = text.txt; name = "projucer_EULA.txt"; path = "../../Source/BinaryData/projucer_EULA.txt"; sourceTree = "SOURCE_ROOT"; }; 4073A12E196BDDADE211E19F = {isa = PBXFileReference; lastKnownFileType = text.txt; name = "projucer_EULA.txt"; path = "../../Source/BinaryData/projucer_EULA.txt"; sourceTree = "SOURCE_ROOT"; };
@@ -193,6 +194,7 @@
59F8A47C0020D62C8836A1E7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_PropertyComponentsWithEnablement.h"; path = "../../Source/Utility/UI/PropertyComponents/jucer_PropertyComponentsWithEnablement.h"; sourceTree = "SOURCE_ROOT"; }; 59F8A47C0020D62C8836A1E7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_PropertyComponentsWithEnablement.h"; path = "../../Source/Utility/UI/PropertyComponents/jucer_PropertyComponentsWithEnablement.h"; sourceTree = "SOURCE_ROOT"; };
5A75806B34E4EA6598A6024A = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; 5A75806B34E4EA6598A6024A = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
5B3532C5F103DAC87B4A5675 = {isa = PBXFileReference; lastKnownFileType = file.svg; name = "wizard_GUI.svg"; path = "../../Source/BinaryData/Icons/wizard_GUI.svg"; sourceTree = "SOURCE_ROOT"; }; 5B3532C5F103DAC87B4A5675 = {isa = PBXFileReference; lastKnownFileType = file.svg; name = "wizard_GUI.svg"; path = "../../Source/BinaryData/Icons/wizard_GUI.svg"; sourceTree = "SOURCE_ROOT"; };
5BF0374EB908F0476BD8ED42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioComponentTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_AudioComponentTemplate.h"; sourceTree = "SOURCE_ROOT"; };
5E4EB84A7983AB31366A3490 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ModuleTreeItems.h"; path = "../../Source/Project/UI/Sidebar/jucer_ModuleTreeItems.h"; sourceTree = "SOURCE_ROOT"; }; 5E4EB84A7983AB31366A3490 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ModuleTreeItems.h"; path = "../../Source/Project/UI/Sidebar/jucer_ModuleTreeItems.h"; sourceTree = "SOURCE_ROOT"; };
5F6584B675E30761521A9F42 = {isa = PBXFileReference; lastKnownFileType = file.xml; name = "colourscheme_light.xml"; path = "../../Source/BinaryData/colourscheme_light.xml"; sourceTree = "SOURCE_ROOT"; }; 5F6584B675E30761521A9F42 = {isa = PBXFileReference; lastKnownFileType = file.xml; name = "colourscheme_light.xml"; path = "../../Source/BinaryData/colourscheme_light.xml"; sourceTree = "SOURCE_ROOT"; };
62922B3C0620368D1799A653 = {isa = PBXFileReference; lastKnownFileType = file.svg; name = "wizard_OpenGL.svg"; path = "../../Source/BinaryData/Icons/wizard_OpenGL.svg"; sourceTree = "SOURCE_ROOT"; }; 62922B3C0620368D1799A653 = {isa = PBXFileReference; lastKnownFileType = file.svg; name = "wizard_OpenGL.svg"; path = "../../Source/BinaryData/Icons/wizard_OpenGL.svg"; sourceTree = "SOURCE_ROOT"; };
@@ -266,9 +268,11 @@
9914F905BFCFBE5F76619670 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ColouredElement.h"; path = "../../Source/ComponentEditor/PaintElements/jucer_ColouredElement.h"; sourceTree = "SOURCE_ROOT"; }; 9914F905BFCFBE5F76619670 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ColouredElement.h"; path = "../../Source/ComponentEditor/PaintElements/jucer_ColouredElement.h"; sourceTree = "SOURCE_ROOT"; };
996E472B82A75531875A5E38 = {isa = PBXFileReference; lastKnownFileType = file; name = LICENSE; path = ../../Source/BinaryData/gradle/LICENSE; sourceTree = "SOURCE_ROOT"; }; 996E472B82A75531875A5E38 = {isa = PBXFileReference; lastKnownFileType = file; name = LICENSE; path = ../../Source/BinaryData/gradle/LICENSE; sourceTree = "SOURCE_ROOT"; };
9992E6950C64322A11E39ADF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectWizard_DLL.h"; path = "../../Source/Wizards/jucer_ProjectWizard_DLL.h"; sourceTree = "SOURCE_ROOT"; }; 9992E6950C64322A11E39ADF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectWizard_DLL.h"; path = "../../Source/Wizards/jucer_ProjectWizard_DLL.h"; sourceTree = "SOURCE_ROOT"; };
9A3B8BBDA8E144A3DF6B9349 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AnimatedComponentSimpleTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_AnimatedComponentSimpleTemplate.h"; sourceTree = "SOURCE_ROOT"; };
9B6FD3FEDB6D91AD0A80EF97 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ImageResourceProperty.h"; path = "../../Source/ComponentEditor/PaintElements/jucer_ImageResourceProperty.h"; sourceTree = "SOURCE_ROOT"; }; 9B6FD3FEDB6D91AD0A80EF97 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ImageResourceProperty.h"; path = "../../Source/ComponentEditor/PaintElements/jucer_ImageResourceProperty.h"; sourceTree = "SOURCE_ROOT"; };
9BDF2D6255C1CB2CFF376186 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ComponentOverlayComponent.h"; path = "../../Source/ComponentEditor/UI/jucer_ComponentOverlayComponent.h"; sourceTree = "SOURCE_ROOT"; }; 9BDF2D6255C1CB2CFF376186 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ComponentOverlayComponent.h"; path = "../../Source/ComponentEditor/UI/jucer_ComponentOverlayComponent.h"; sourceTree = "SOURCE_ROOT"; };
9D7689451732AF8333402B3A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ObjectTypes.cpp"; path = "../../Source/ComponentEditor/jucer_ObjectTypes.cpp"; sourceTree = "SOURCE_ROOT"; }; 9D7689451732AF8333402B3A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ObjectTypes.cpp"; path = "../../Source/ComponentEditor/jucer_ObjectTypes.cpp"; sourceTree = "SOURCE_ROOT"; };
9E0BA495286388EBF929D578 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ContentCompSimpleTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_ContentCompSimpleTemplate.h"; sourceTree = "SOURCE_ROOT"; };
9E2B1506AC3FDB7863766D59 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewInlineComponentTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_NewInlineComponentTemplate.h"; sourceTree = "SOURCE_ROOT"; }; 9E2B1506AC3FDB7863766D59 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewInlineComponentTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_NewInlineComponentTemplate.h"; sourceTree = "SOURCE_ROOT"; };
9E62EC342665C27BA01AFC1A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ComponentNameProperty.h"; path = "../../Source/ComponentEditor/Components/jucer_ComponentNameProperty.h"; sourceTree = "SOURCE_ROOT"; }; 9E62EC342665C27BA01AFC1A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ComponentNameProperty.h"; path = "../../Source/ComponentEditor/Components/jucer_ComponentNameProperty.h"; sourceTree = "SOURCE_ROOT"; };
9EB33734D0DBD0370AB1247B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ColourPropertyComponent.h"; path = "../../Source/Utility/UI/PropertyComponents/jucer_ColourPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; 9EB33734D0DBD0370AB1247B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ColourPropertyComponent.h"; path = "../../Source/Utility/UI/PropertyComponents/jucer_ColourPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; };
@@ -323,6 +327,7 @@
C3E04CD5A93A45154894E624 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Colours.h"; path = "../../Source/Utility/Helpers/jucer_Colours.h"; sourceTree = "SOURCE_ROOT"; }; C3E04CD5A93A45154894E624 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Colours.h"; path = "../../Source/Utility/Helpers/jucer_Colours.h"; sourceTree = "SOURCE_ROOT"; };
C402C21DFAC1F8BF121144F1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FillType.h"; path = "../../Source/ComponentEditor/PaintElements/jucer_FillType.h"; sourceTree = "SOURCE_ROOT"; }; C402C21DFAC1F8BF121144F1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FillType.h"; path = "../../Source/ComponentEditor/PaintElements/jucer_FillType.h"; sourceTree = "SOURCE_ROOT"; };
C59E624F099CC785F27429EB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Icons.h"; path = "../../Source/Utility/UI/jucer_Icons.h"; sourceTree = "SOURCE_ROOT"; }; C59E624F099CC785F27429EB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Icons.h"; path = "../../Source/Utility/UI/jucer_Icons.h"; sourceTree = "SOURCE_ROOT"; };
C607639897ED2538CBB860D0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_OpenGLComponentSimpleTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_OpenGLComponentSimpleTemplate.h"; sourceTree = "SOURCE_ROOT"; };
C7245390C6C44E89F7526CFC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewComponentTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_NewComponentTemplate.h"; sourceTree = "SOURCE_ROOT"; }; C7245390C6C44E89F7526CFC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewComponentTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_NewComponentTemplate.h"; sourceTree = "SOURCE_ROOT"; };
C736264708F3F68BA745BA29 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FloatingToolWindow.h"; path = "../../Source/Application/Windows/jucer_FloatingToolWindow.h"; sourceTree = "SOURCE_ROOT"; }; C736264708F3F68BA745BA29 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FloatingToolWindow.h"; path = "../../Source/Application/Windows/jucer_FloatingToolWindow.h"; sourceTree = "SOURCE_ROOT"; };
CC1C5F8E5DE34223FEC59673 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioPluginFilterTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_AudioPluginFilterTemplate.h"; sourceTree = "SOURCE_ROOT"; }; CC1C5F8E5DE34223FEC59673 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioPluginFilterTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_AudioPluginFilterTemplate.h"; sourceTree = "SOURCE_ROOT"; };
@@ -336,6 +341,8 @@
D1F9B0E9F5D54FE48BEB46EA = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; D1F9B0E9F5D54FE48BEB46EA = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
D251114072E67CA86D9913D6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ClassDatabase.h"; path = "../../Source/LiveBuildEngine/jucer_ClassDatabase.h"; sourceTree = "SOURCE_ROOT"; }; D251114072E67CA86D9913D6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ClassDatabase.h"; path = "../../Source/LiveBuildEngine/jucer_ClassDatabase.h"; sourceTree = "SOURCE_ROOT"; };
D2FE76E4CF003856278343CC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_CompileEngineServer.cpp"; path = "../../Source/LiveBuildEngine/jucer_CompileEngineServer.cpp"; sourceTree = "SOURCE_ROOT"; }; D2FE76E4CF003856278343CC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_CompileEngineServer.cpp"; path = "../../Source/LiveBuildEngine/jucer_CompileEngineServer.cpp"; sourceTree = "SOURCE_ROOT"; };
D4EB334E5186D1584EC63CA4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioComponentSimpleTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_AudioComponentSimpleTemplate.h"; sourceTree = "SOURCE_ROOT"; };
D5795F8CAC5876714DAB355F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AnimatedComponentTemplate.h"; path = "../../Source/BinaryData/Templates/jucer_AnimatedComponentTemplate.h"; sourceTree = "SOURCE_ROOT"; };
D588BA6A0C62DE1F18D5C2EA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_GlobalSearchPathsWindowComponent.h"; path = "../../Source/Application/Windows/jucer_GlobalSearchPathsWindowComponent.h"; sourceTree = "SOURCE_ROOT"; }; D588BA6A0C62DE1F18D5C2EA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_GlobalSearchPathsWindowComponent.h"; path = "../../Source/Application/Windows/jucer_GlobalSearchPathsWindowComponent.h"; sourceTree = "SOURCE_ROOT"; };
D5EF5961B1F0E3FAED32E30A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_CLion.h"; path = "../../Source/ProjectSaving/jucer_ProjectExport_CLion.h"; sourceTree = "SOURCE_ROOT"; }; D5EF5961B1F0E3FAED32E30A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_CLion.h"; path = "../../Source/ProjectSaving/jucer_ProjectExport_CLion.h"; sourceTree = "SOURCE_ROOT"; };
D6390A40B3279E0E626C78D3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ColouredElement.cpp"; path = "../../Source/ComponentEditor/PaintElements/jucer_ColouredElement.cpp"; sourceTree = "SOURCE_ROOT"; }; D6390A40B3279E0E626C78D3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ColouredElement.cpp"; path = "../../Source/ComponentEditor/PaintElements/jucer_ColouredElement.cpp"; sourceTree = "SOURCE_ROOT"; };
@@ -436,14 +443,19 @@
62922B3C0620368D1799A653, 62922B3C0620368D1799A653,
D1739728A79A2062418B8EF0, ); name = Icons; sourceTree = "<group>"; }; D1739728A79A2062418B8EF0, ); name = Icons; sourceTree = "<group>"; };
E59ABA0D11CBAAD77179E9C6 = {isa = PBXGroup; children = ( E59ABA0D11CBAAD77179E9C6 = {isa = PBXGroup; children = (
9A3B8BBDA8E144A3DF6B9349,
016A6C52B0B93DE29197FF64, 016A6C52B0B93DE29197FF64,
D5795F8CAC5876714DAB355F,
D4EB334E5186D1584EC63CA4,
203FA6AD7EDDF1F9C338CC2A, 203FA6AD7EDDF1F9C338CC2A,
5BF0374EB908F0476BD8ED42,
6574A50A8997799705B23465, 6574A50A8997799705B23465,
56177921580A4855917E0205, 56177921580A4855917E0205,
079802C6AEE7646010766FE8, 079802C6AEE7646010766FE8,
CC1C5F8E5DE34223FEC59673, CC1C5F8E5DE34223FEC59673,
FB80347407261BF6CCEFDE91, FB80347407261BF6CCEFDE91,
2BD9B4556479A8A41740BCAE, 2BD9B4556479A8A41740BCAE,
9E0BA495286388EBF929D578,
8D9A9A373E4621F7CBFCCCEF, 8D9A9A373E4621F7CBFCCCEF,
59203884BC48D3B7F8DEABA8, 59203884BC48D3B7F8DEABA8,
32C4B61AD995877956B7FA66, 32C4B61AD995877956B7FA66,
@@ -456,7 +468,9 @@
8F67F3C0492EAFEBDBBC12DB, 8F67F3C0492EAFEBDBBC12DB,
E111A336FE13C033EAA0A1D1, E111A336FE13C033EAA0A1D1,
9E2B1506AC3FDB7863766D59, 9E2B1506AC3FDB7863766D59,
023B92AC0340305762412E90, ); name = Templates; sourceTree = "<group>"; };
C607639897ED2538CBB860D0,
023B92AC0340305762412E90,
3F7C5B53347A487C7FBD2223, ); name = Templates; sourceTree = "<group>"; };
A9399733CAA07BDAB958242C = {isa = PBXGroup; children = ( A9399733CAA07BDAB958242C = {isa = PBXGroup; children = (
8CF70DA9AB4725126B9F55BE, 8CF70DA9AB4725126B9F55BE,
F0F189518721D46C0F94FD56, F0F189518721D46C0F94FD56,


+ 7
- 0
extras/Projucer/Builds/VisualStudio2013/Projucer_App.vcxproj View File

@@ -1435,14 +1435,21 @@
<ClInclude Include="..\..\Source\Application\jucer_CommonHeaders.h"/> <ClInclude Include="..\..\Source\Application\jucer_CommonHeaders.h"/>
<ClInclude Include="..\..\Source\Application\jucer_Headers.h"/> <ClInclude Include="..\..\Source\Application\jucer_Headers.h"/>
<ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"/> <ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginFilterTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginFilterTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_InlineComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_InlineComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewCppFileTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewCppFileTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentTemplate.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_ItemPreviewComponent.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_ItemPreviewComponent.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_LiveBuildCodeEditor.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_LiveBuildCodeEditor.h"/>


+ 21
- 0
extras/Projucer/Builds/VisualStudio2013/Projucer_App.vcxproj.filters View File

@@ -1812,6 +1812,18 @@
<ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"> <ClInclude Include="..\..\Source\Application\jucer_MainWindow.h">
<Filter>Projucer\Application</Filter> <Filter>Projucer\Application</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
@@ -1821,6 +1833,9 @@
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
@@ -1836,6 +1851,12 @@
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"> <ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h">
<Filter>Projucer\CodeEditor</Filter> <Filter>Projucer\CodeEditor</Filter>
</ClInclude> </ClInclude>


+ 7
- 0
extras/Projucer/Builds/VisualStudio2015/Projucer_App.vcxproj View File

@@ -1435,14 +1435,21 @@
<ClInclude Include="..\..\Source\Application\jucer_CommonHeaders.h"/> <ClInclude Include="..\..\Source\Application\jucer_CommonHeaders.h"/>
<ClInclude Include="..\..\Source\Application\jucer_Headers.h"/> <ClInclude Include="..\..\Source\Application\jucer_Headers.h"/>
<ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"/> <ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginFilterTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginFilterTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_InlineComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_InlineComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewCppFileTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewCppFileTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentTemplate.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_ItemPreviewComponent.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_ItemPreviewComponent.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_LiveBuildCodeEditor.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_LiveBuildCodeEditor.h"/>


+ 21
- 0
extras/Projucer/Builds/VisualStudio2015/Projucer_App.vcxproj.filters View File

@@ -1812,6 +1812,18 @@
<ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"> <ClInclude Include="..\..\Source\Application\jucer_MainWindow.h">
<Filter>Projucer\Application</Filter> <Filter>Projucer\Application</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
@@ -1821,6 +1833,9 @@
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
@@ -1836,6 +1851,12 @@
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"> <ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h">
<Filter>Projucer\CodeEditor</Filter> <Filter>Projucer\CodeEditor</Filter>
</ClInclude> </ClInclude>


+ 7
- 0
extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj View File

@@ -1435,14 +1435,21 @@
<ClInclude Include="..\..\Source\Application\jucer_CommonHeaders.h"/> <ClInclude Include="..\..\Source\Application\jucer_CommonHeaders.h"/>
<ClInclude Include="..\..\Source\Application\jucer_Headers.h"/> <ClInclude Include="..\..\Source\Application\jucer_Headers.h"/>
<ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"/> <ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginFilterTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginFilterTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_InlineComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_InlineComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewCppFileTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewCppFileTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"/> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentSimpleTemplate.h"/>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentTemplate.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_ItemPreviewComponent.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_ItemPreviewComponent.h"/>
<ClInclude Include="..\..\Source\CodeEditor\jucer_LiveBuildCodeEditor.h"/> <ClInclude Include="..\..\Source\CodeEditor\jucer_LiveBuildCodeEditor.h"/>


+ 21
- 0
extras/Projucer/Builds/VisualStudio2017/Projucer_App.vcxproj.filters View File

@@ -1812,6 +1812,18 @@
<ClInclude Include="..\..\Source\Application\jucer_MainWindow.h"> <ClInclude Include="..\..\Source\Application\jucer_MainWindow.h">
<Filter>Projucer\Application</Filter> <Filter>Projucer\Application</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AnimatedComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_AudioPluginEditorTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
@@ -1821,6 +1833,9 @@
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_ContentCompTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
@@ -1836,6 +1851,12 @@
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h"> <ClInclude Include="..\..\Source\BinaryData\Templates\jucer_NewInlineComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter> <Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentSimpleTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\BinaryData\Templates\jucer_OpenGLComponentTemplate.h">
<Filter>Projucer\BinaryData\Templates</Filter>
</ClInclude>
<ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h"> <ClInclude Include="..\..\Source\CodeEditor\jucer_DocumentEditorComponent.h">
<Filter>Projucer\CodeEditor</Filter> <Filter>Projucer\CodeEditor</Filter>
</ClInclude> </ClInclude>


+ 506
- 99
extras/Projucer/JuceLibraryCode/BinaryData.cpp
File diff suppressed because it is too large
View File


+ 31
- 10
extras/Projucer/JuceLibraryCode/BinaryData.h View File

@@ -80,11 +80,23 @@ namespace BinaryData
extern const char* wizard_StaticLibrary_svg; extern const char* wizard_StaticLibrary_svg;
const int wizard_StaticLibrary_svgSize = 7488; const int wizard_StaticLibrary_svgSize = 7488;
extern const char* jucer_AnimatedComponentSimpleTemplate_h;
const int jucer_AnimatedComponentSimpleTemplate_hSize = 2037;
extern const char* jucer_AnimatedComponentTemplate_cpp; extern const char* jucer_AnimatedComponentTemplate_cpp;
const int jucer_AnimatedComponentTemplate_cppSize = 1887;
const int jucer_AnimatedComponentTemplate_cppSize = 1482;
extern const char* jucer_AnimatedComponentTemplate_h;
const int jucer_AnimatedComponentTemplate_hSize = 1153;
extern const char* jucer_AudioComponentSimpleTemplate_h;
const int jucer_AudioComponentSimpleTemplate_hSize = 3146;
extern const char* jucer_AudioComponentTemplate_cpp; extern const char* jucer_AudioComponentTemplate_cpp;
const int jucer_AudioComponentTemplate_cppSize = 3141;
const int jucer_AudioComponentTemplate_cppSize = 2532;
extern const char* jucer_AudioComponentTemplate_h;
const int jucer_AudioComponentTemplate_hSize = 1326;
extern const char* jucer_AudioPluginEditorTemplate_cpp; extern const char* jucer_AudioPluginEditorTemplate_cpp;
const int jucer_AudioPluginEditorTemplate_cppSize = 1310; const int jucer_AudioPluginEditorTemplate_cppSize = 1310;
@@ -93,22 +105,25 @@ namespace BinaryData
const int jucer_AudioPluginEditorTemplate_hSize = 938; const int jucer_AudioPluginEditorTemplate_hSize = 938;
extern const char* jucer_AudioPluginFilterTemplate_cpp; extern const char* jucer_AudioPluginFilterTemplate_cpp;
const int jucer_AudioPluginFilterTemplate_cppSize = 5638;
const int jucer_AudioPluginFilterTemplate_cppSize = 5889;
extern const char* jucer_AudioPluginFilterTemplate_h; extern const char* jucer_AudioPluginFilterTemplate_h;
const int jucer_AudioPluginFilterTemplate_hSize = 2245; const int jucer_AudioPluginFilterTemplate_hSize = 2245;
extern const char* jucer_ComponentTemplate_cpp; extern const char* jucer_ComponentTemplate_cpp;
const int jucer_ComponentTemplate_cppSize = 2151;
const int jucer_ComponentTemplate_cppSize = 2116;
extern const char* jucer_ComponentTemplate_h; extern const char* jucer_ComponentTemplate_h;
const int jucer_ComponentTemplate_hSize = 2064;
const int jucer_ComponentTemplate_hSize = 2029;
extern const char* jucer_ContentCompSimpleTemplate_h;
const int jucer_ContentCompSimpleTemplate_hSize = 1632;
extern const char* jucer_ContentCompTemplate_cpp; extern const char* jucer_ContentCompTemplate_cpp;
const int jucer_ContentCompTemplate_cppSize = 1029;
const int jucer_ContentCompTemplate_cppSize = 1109;
extern const char* jucer_ContentCompTemplate_h; extern const char* jucer_ContentCompTemplate_h;
const int jucer_ContentCompTemplate_hSize = 886;
const int jucer_ContentCompTemplate_hSize = 1023;
extern const char* jucer_InlineComponentTemplate_h; extern const char* jucer_InlineComponentTemplate_h;
const int jucer_InlineComponentTemplate_hSize = 1208; const int jucer_InlineComponentTemplate_hSize = 1208;
@@ -120,7 +135,7 @@ namespace BinaryData
const int jucer_MainTemplate_NoWindow_cppSize = 1992; const int jucer_MainTemplate_NoWindow_cppSize = 1992;
extern const char* jucer_MainTemplate_SimpleWindow_cpp; extern const char* jucer_MainTemplate_SimpleWindow_cpp;
const int jucer_MainTemplate_SimpleWindow_cppSize = 4001;
const int jucer_MainTemplate_SimpleWindow_cppSize = 3951;
extern const char* jucer_MainTemplate_Window_cpp; extern const char* jucer_MainTemplate_Window_cpp;
const int jucer_MainTemplate_Window_cppSize = 3913; const int jucer_MainTemplate_Window_cppSize = 3913;
@@ -140,8 +155,14 @@ namespace BinaryData
extern const char* jucer_NewInlineComponentTemplate_h; extern const char* jucer_NewInlineComponentTemplate_h;
const int jucer_NewInlineComponentTemplate_hSize = 1635; const int jucer_NewInlineComponentTemplate_hSize = 1635;
extern const char* jucer_OpenGLComponentSimpleTemplate_h;
const int jucer_OpenGLComponentSimpleTemplate_hSize = 2126;
extern const char* jucer_OpenGLComponentTemplate_cpp; extern const char* jucer_OpenGLComponentTemplate_cpp;
const int jucer_OpenGLComponentTemplate_cppSize = 1716;
const int jucer_OpenGLComponentTemplate_cppSize = 1555;
extern const char* jucer_OpenGLComponentTemplate_h;
const int jucer_OpenGLComponentTemplate_hSize = 1215;
extern const char* colourscheme_dark_xml; extern const char* colourscheme_dark_xml;
const int colourscheme_dark_xmlSize = 1050; const int colourscheme_dark_xmlSize = 1050;
@@ -162,7 +183,7 @@ namespace BinaryData
extern const char* namedResourceList[]; extern const char* namedResourceList[];
// Number of elements in the namedResourceList array. // Number of elements in the namedResourceList array.
const int namedResourceListSize = 50;
const int namedResourceListSize = 57;
// If you provide the name of one of the binary resource variables above, this function will // If you provide the name of one of the binary resource variables above, this function will
// return the corresponding data and its size (or a null pointer if the name isn't found). // return the corresponding data and its size (or a null pointer if the name isn't found).


+ 14
- 0
extras/Projucer/Projucer.jucer View File

@@ -190,10 +190,18 @@
file="Source/BinaryData/Icons/wizard_StaticLibrary.svg"/> file="Source/BinaryData/Icons/wizard_StaticLibrary.svg"/>
</GROUP> </GROUP>
<GROUP id="{D5514787-89A7-C727-422F-2BF9D9C6CF70}" name="Templates"> <GROUP id="{D5514787-89A7-C727-422F-2BF9D9C6CF70}" name="Templates">
<FILE id="thU560" name="jucer_AnimatedComponentSimpleTemplate.h" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_AnimatedComponentSimpleTemplate.h"/>
<FILE id="GCUpe7" name="jucer_AnimatedComponentTemplate.cpp" compile="0" <FILE id="GCUpe7" name="jucer_AnimatedComponentTemplate.cpp" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_AnimatedComponentTemplate.cpp"/> resource="1" file="Source/BinaryData/Templates/jucer_AnimatedComponentTemplate.cpp"/>
<FILE id="if7mRo" name="jucer_AnimatedComponentTemplate.h" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_AnimatedComponentTemplate.h"/>
<FILE id="o5WUW4" name="jucer_AudioComponentSimpleTemplate.h" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_AudioComponentSimpleTemplate.h"/>
<FILE id="xynUPZ" name="jucer_AudioComponentTemplate.cpp" compile="0" <FILE id="xynUPZ" name="jucer_AudioComponentTemplate.cpp" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_AudioComponentTemplate.cpp"/> resource="1" file="Source/BinaryData/Templates/jucer_AudioComponentTemplate.cpp"/>
<FILE id="zC555M" name="jucer_AudioComponentTemplate.h" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_AudioComponentTemplate.h"/>
<FILE id="A3dhSd" name="jucer_AudioPluginEditorTemplate.cpp" compile="0" <FILE id="A3dhSd" name="jucer_AudioPluginEditorTemplate.cpp" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_AudioPluginEditorTemplate.cpp"/> resource="1" file="Source/BinaryData/Templates/jucer_AudioPluginEditorTemplate.cpp"/>
<FILE id="TPGNqq" name="jucer_AudioPluginEditorTemplate.h" compile="0" <FILE id="TPGNqq" name="jucer_AudioPluginEditorTemplate.h" compile="0"
@@ -206,6 +214,8 @@
file="Source/BinaryData/Templates/jucer_ComponentTemplate.cpp"/> file="Source/BinaryData/Templates/jucer_ComponentTemplate.cpp"/>
<FILE id="LZik3e" name="jucer_ComponentTemplate.h" compile="0" resource="1" <FILE id="LZik3e" name="jucer_ComponentTemplate.h" compile="0" resource="1"
file="Source/BinaryData/Templates/jucer_ComponentTemplate.h"/> file="Source/BinaryData/Templates/jucer_ComponentTemplate.h"/>
<FILE id="cTnZ6j" name="jucer_ContentCompSimpleTemplate.h" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_ContentCompSimpleTemplate.h"/>
<FILE id="yYPIFT" name="jucer_ContentCompTemplate.cpp" compile="0" <FILE id="yYPIFT" name="jucer_ContentCompTemplate.cpp" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_ContentCompTemplate.cpp"/> resource="1" file="Source/BinaryData/Templates/jucer_ContentCompTemplate.cpp"/>
<FILE id="Ze6RvS" name="jucer_ContentCompTemplate.h" compile="0" resource="1" <FILE id="Ze6RvS" name="jucer_ContentCompTemplate.h" compile="0" resource="1"
@@ -230,8 +240,12 @@
file="Source/BinaryData/Templates/jucer_NewCppFileTemplate.h"/> file="Source/BinaryData/Templates/jucer_NewCppFileTemplate.h"/>
<FILE id="gqGzE1" name="jucer_NewInlineComponentTemplate.h" compile="0" <FILE id="gqGzE1" name="jucer_NewInlineComponentTemplate.h" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_NewInlineComponentTemplate.h"/> resource="1" file="Source/BinaryData/Templates/jucer_NewInlineComponentTemplate.h"/>
<FILE id="EfEiMx" name="jucer_OpenGLComponentSimpleTemplate.h" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_OpenGLComponentSimpleTemplate.h"/>
<FILE id="fSnbWk" name="jucer_OpenGLComponentTemplate.cpp" compile="0" <FILE id="fSnbWk" name="jucer_OpenGLComponentTemplate.cpp" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_OpenGLComponentTemplate.cpp"/> resource="1" file="Source/BinaryData/Templates/jucer_OpenGLComponentTemplate.cpp"/>
<FILE id="Edyh5d" name="jucer_OpenGLComponentTemplate.h" compile="0"
resource="1" file="Source/BinaryData/Templates/jucer_OpenGLComponentTemplate.h"/>
</GROUP> </GROUP>
<FILE id="oXM3fR" name="colourscheme_dark.xml" compile="0" resource="1" <FILE id="oXM3fR" name="colourscheme_dark.xml" compile="0" resource="1"
file="Source/BinaryData/colourscheme_dark.xml"/> file="Source/BinaryData/colourscheme_dark.xml"/>


+ 64
- 0
extras/Projucer/Source/BinaryData/Templates/jucer_AnimatedComponentSimpleTemplate.h View File

@@ -0,0 +1,64 @@
/*
==============================================================================
This file was auto-generated!
==============================================================================
*/
#pragma once
INCLUDE_JUCE
//==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class CONTENTCOMPCLASS : public AnimatedAppComponent
{
public:
//==============================================================================
CONTENTCOMPCLASS()
{
// Make sure you set the size of the component after
// you add any child components.
setSize (800, 600);
setFramesPerSecond (60); // This sets the frequency of the update calls.
}
~CONTENTCOMPCLASS()
{
}
//==============================================================================
void update() override
{
// This function is called at the frequency specified by the setFramesPerSecond() call
// in the constructor. You can use it to update counters, animate values, etc.
}
//==============================================================================
void paint (Graphics& g) override
{
// (Our component is opaque, so we must completely fill the background with a solid colour)
g.fillAll (getLookAndFeel().findColour (ResizableWindow::backgroundColourId));
// You can add your drawing code here!
}
void resized() override
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}
private:
//==============================================================================
// Your private member variables go here...
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS)
};

+ 29
- 48
extras/Projucer/Source/BinaryData/Templates/jucer_AnimatedComponentTemplate.cpp View File

@@ -6,59 +6,40 @@
============================================================================== ==============================================================================
*/ */
INCLUDE_JUCE
INCLUDE_CORRESPONDING_HEADER
//============================================================================== //==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class MainContentComponent : public AnimatedAppComponent
CONTENTCOMPCLASS::CONTENTCOMPCLASS()
{ {
public:
//==============================================================================
MainContentComponent()
{
setSize (800, 600);
setFramesPerSecond (60);
}
~MainContentComponent()
{
}
void update() override
{
// This function is called at the frequency specified by the setFramesPerSecond() call
// in the constructor. You can use it to update counters, animate values, etc.
}
void paint (Graphics& g) override
{
// (Our component is opaque, so we must completely fill the background with a solid colour)
g.fillAll (getLookAndFeel().findColour (ResizableWindow::backgroundColourId));
// You can add your drawing code here!
}
void resized() override
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}
private:
//==============================================================================
// Your private member variables go here...
// Make sure you set the size of the component after
// you add any child components.
setSize (800, 600);
setFramesPerSecond (60); // This sets the frequency of the update calls.
}
CONTENTCOMPCLASS::~CONTENTCOMPCLASS()
{
}
//==============================================================================
void CONTENTCOMPCLASS::update()
{
// This function is called at the frequency specified by the setFramesPerSecond() call
// in the constructor. You can use it to update counters, animate values, etc.
}
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MainContentComponent)
};
//==============================================================================
void CONTENTCOMPCLASS::paint (Graphics& g)
{
// (Our component is opaque, so we must completely fill the background with a solid colour)
g.fillAll (getLookAndFeel().findColour (ResizableWindow::backgroundColourId));
// You can add your drawing code here!
}
// (This function is called by the app startup code to create our main component)
Component* createMainContentComponent() { return new MainContentComponent(); }
void CONTENTCOMPCLASS::resized()
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}

+ 38
- 0
extras/Projucer/Source/BinaryData/Templates/jucer_AnimatedComponentTemplate.h View File

@@ -0,0 +1,38 @@
/*
==============================================================================
This file was auto-generated!
==============================================================================
*/
#pragma once
INCLUDE_JUCE
//==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class CONTENTCOMPCLASS : public AnimatedAppComponent
{
public:
//==============================================================================
CONTENTCOMPCLASS();
~CONTENTCOMPCLASS();
//==============================================================================
void update() override;
//==============================================================================
void paint (Graphics& g) override;
void resized() override;
private:
//==============================================================================
// Your private member variables go here...
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS)
};

+ 92
- 0
extras/Projucer/Source/BinaryData/Templates/jucer_AudioComponentSimpleTemplate.h View File

@@ -0,0 +1,92 @@
/*
==============================================================================
This file was auto-generated!
==============================================================================
*/
#pragma once
INCLUDE_JUCE
//==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class CONTENTCOMPCLASS : public AudioAppComponent
{
public:
//==============================================================================
CONTENTCOMPCLASS()
{
// Make sure you set the size of the component after
// you add any child components.
setSize (800, 600);
// specify the number of input and output channels that we want to open
setAudioChannels (2, 2);
}
~CONTENTCOMPCLASS()
{
// This shuts down the audio device and clears the audio source.
shutdownAudio();
}
//==============================================================================
void prepareToPlay (int samplesPerBlockExpected, double sampleRate) override
{
// This function will be called when the audio device is started, or when
// its settings (i.e. sample rate, block size, etc) are changed.
// You can use this function to initialise any resources you might need,
// but be careful - it will be called on the audio thread, not the GUI thread.
// For more details, see the help for AudioProcessor::prepareToPlay()
}
void getNextAudioBlock (const AudioSourceChannelInfo& bufferToFill) override
{
// Your audio-processing code goes here!
// For more details, see the help for AudioProcessor::getNextAudioBlock()
// Right now we are not producing any data, in which case we need to clear the buffer
// (to prevent the output of random noise)
bufferToFill.clearActiveBufferRegion();
}
void releaseResources() override
{
// This will be called when the audio device stops, or when it is being
// restarted due to a setting change.
// For more details, see the help for AudioProcessor::releaseResources()
}
//==============================================================================
void paint (Graphics& g) override
{
// (Our component is opaque, so we must completely fill the background with a solid colour)
g.fillAll (getLookAndFeel().findColour (ResizableWindow::backgroundColourId));
// You can add your drawing code here!
}
void resized() override
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}
private:
//==============================================================================
// Your private member variables go here...
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS)
};

+ 49
- 68
extras/Projucer/Source/BinaryData/Templates/jucer_AudioComponentTemplate.cpp View File

@@ -6,87 +6,68 @@
============================================================================== ==============================================================================
*/ */
INCLUDE_JUCE
INCLUDE_CORRESPONDING_HEADER
//============================================================================== //==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class MainContentComponent : public AudioAppComponent
CONTENTCOMPCLASS::CONTENTCOMPCLASS()
{ {
public:
//==============================================================================
MainContentComponent()
{
setSize (800, 600);
// specify the number of input and output channels that we want to open
setAudioChannels (2, 2);
}
~MainContentComponent()
{
shutdownAudio();
}
//==============================================================================
void prepareToPlay (int samplesPerBlockExpected, double sampleRate) override
{
// This function will be called when the audio device is started, or when
// its settings (i.e. sample rate, block size, etc) are changed.
// You can use this function to initialise any resources you might need,
// but be careful - it will be called on the audio thread, not the GUI thread.
// For more details, see the help for AudioProcessor::prepareToPlay()
}
void getNextAudioBlock (const AudioSourceChannelInfo& bufferToFill) override
{
// Your audio-processing code goes here!
// For more details, see the help for AudioProcessor::getNextAudioBlock()
// Make sure you set the size of the component after
// you add any child components.
setSize (800, 600);
// Right now we are not producing any data, in which case we need to clear the buffer
// (to prevent the output of random noise)
bufferToFill.clearActiveBufferRegion();
}
// specify the number of input and output channels that we want to open
setAudioChannels (2, 2);
}
void releaseResources() override
{
// This will be called when the audio device stops, or when it is being
// restarted due to a setting change.
CONTENTCOMPCLASS::~CONTENTCOMPCLASS()
{
// This shuts down the audio device and clears the audio source.
shutdownAudio();
}
// For more details, see the help for AudioProcessor::releaseResources()
}
//==============================================================================
void CONTENTCOMPCLASS::prepareToPlay (int samplesPerBlockExpected, double sampleRate)
{
// This function will be called when the audio device is started, or when
// its settings (i.e. sample rate, block size, etc) are changed.
//==============================================================================
void paint (Graphics& g) override
{
// (Our component is opaque, so we must completely fill the background with a solid colour)
g.fillAll (getLookAndFeel().findColour (ResizableWindow::backgroundColourId));
// You can use this function to initialise any resources you might need,
// but be careful - it will be called on the audio thread, not the GUI thread.
// You can add your drawing code here!
}
// For more details, see the help for AudioProcessor::prepareToPlay()
}
void resized() override
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}
void CONTENTCOMPCLASS::getNextAudioBlock (const AudioSourceChannelInfo& bufferToFill)
{
// Your audio-processing code goes here!
// For more details, see the help for AudioProcessor::getNextAudioBlock()
private:
//==============================================================================
// Right now we are not producing any data, in which case we need to clear the buffer
// (to prevent the output of random noise)
bufferToFill.clearActiveBufferRegion();
}
// Your private member variables go here...
void CONTENTCOMPCLASS::releaseResources()
{
// This will be called when the audio device stops, or when it is being
// restarted due to a setting change.
// For more details, see the help for AudioProcessor::releaseResources()
}
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MainContentComponent)
};
//==============================================================================
void CONTENTCOMPCLASS::paint (Graphics& g)
{
// (Our component is opaque, so we must completely fill the background with a solid colour)
g.fillAll (getLookAndFeel().findColour (ResizableWindow::backgroundColourId));
// You can add your drawing code here!
}
// (This function is called by the app startup code to create our main component)
Component* createMainContentComponent() { return new MainContentComponent(); }
void CONTENTCOMPCLASS::resized()
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}

+ 40
- 0
extras/Projucer/Source/BinaryData/Templates/jucer_AudioComponentTemplate.h View File

@@ -0,0 +1,40 @@
/*
==============================================================================
This file was auto-generated!
==============================================================================
*/
#pragma once
INCLUDE_JUCE
//==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class CONTENTCOMPCLASS : public AudioAppComponent
{
public:
//==============================================================================
CONTENTCOMPCLASS();
~CONTENTCOMPCLASS();
//==============================================================================
void prepareToPlay (int samplesPerBlockExpected, double sampleRate) override;
void getNextAudioBlock (const AudioSourceChannelInfo& bufferToFill) override;
void releaseResources() override;
//==============================================================================
void paint (Graphics& g) override;
void resized() override;
private:
//==============================================================================
// Your private member variables go here...
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS)
};

+ 6
- 2
extras/Projucer/Source/BinaryData/Templates/jucer_AudioPluginFilterTemplate.cpp View File

@@ -141,14 +141,18 @@ void FILTERCLASSNAME::processBlock (AudioBuffer<float>& buffer, MidiBuffer& midi
// This is here to avoid people getting screaming feedback // This is here to avoid people getting screaming feedback
// when they first compile a plugin, but obviously you don't need to keep // when they first compile a plugin, but obviously you don't need to keep
// this code if your algorithm always overwrites all the output channels. // this code if your algorithm always overwrites all the output channels.
for (int i = totalNumInputChannels; i < totalNumOutputChannels; ++i)
for (auto i = totalNumInputChannels; i < totalNumOutputChannels; ++i)
buffer.clear (i, 0, buffer.getNumSamples()); buffer.clear (i, 0, buffer.getNumSamples());
// This is the place where you'd normally do the guts of your plugin's // This is the place where you'd normally do the guts of your plugin's
// audio processing... // audio processing...
// Make sure to reset the state if your inner loop is processing
// the samples and the outer loop is handling the channels.
// Alternatively, you can process the samples with the channels
// interleaved by keeping the same state.
for (int channel = 0; channel < totalNumInputChannels; ++channel) for (int channel = 0; channel < totalNumInputChannels; ++channel)
{ {
float* channelData = buffer.getWritePointer (channel);
auto* channelData = buffer.getWritePointer (channel);
// ..do something to the data... // ..do something to the data...
} }


+ 2
- 2
extras/Projucer/Source/BinaryData/Templates/jucer_ComponentTemplate.cpp View File

@@ -11,8 +11,8 @@
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
The Projucer is part of the JUCE library - "Jules' Utility Class Extensions"
Copyright (c) 2015 - ROLI Ltd.
The Projucer is part of the JUCE library.
Copyright (c) 2017 - ROLI Ltd.
============================================================================== ==============================================================================
*/ */


+ 2
- 2
extras/Projucer/Source/BinaryData/Templates/jucer_ComponentTemplate.h View File

@@ -11,8 +11,8 @@
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
The Projucer is part of the JUCE library - "Jules' Utility Class Extensions"
Copyright (c) 2015 - ROLI Ltd.
The Projucer is part of the JUCE library.
Copyright (c) 2017 - ROLI Ltd.
============================================================================== ==============================================================================
*/ */


+ 56
- 0
extras/Projucer/Source/BinaryData/Templates/jucer_ContentCompSimpleTemplate.h View File

@@ -0,0 +1,56 @@
/*
==============================================================================
This file was auto-generated!
==============================================================================
*/
#pragma once
INCLUDE_JUCE
//==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class CONTENTCOMPCLASS : public Component
{
public:
//==============================================================================
CONTENTCOMPCLASS()
{
setSize (600, 400);
}
~CONTENTCOMPCLASS()
{
}
//==============================================================================
void paint (Graphics&) override
{
// (Our component is opaque, so we must completely fill the background with a solid colour)
g.fillAll (getLookAndFeel().findColour (ResizableWindow::backgroundColourId));
g.setFont (Font (16.0f));
g.setColour (Colours::white);
g.drawText ("Hello World!", getLocalBounds(), Justification::centred, true);
}
void resized() override
{
// This is called when the CONTENTCOMPCLASS is resized.
// If you add any child components, this is where you should
// update their positions.
}
private:
//==============================================================================
// Your private member variables go here...
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS)
};

+ 1
- 1
extras/Projucer/Source/BinaryData/Templates/jucer_ContentCompTemplate.cpp View File

@@ -8,7 +8,6 @@
INCLUDE_CORRESPONDING_HEADER INCLUDE_CORRESPONDING_HEADER
//============================================================================== //==============================================================================
CONTENTCOMPCLASS::CONTENTCOMPCLASS() CONTENTCOMPCLASS::CONTENTCOMPCLASS()
{ {
@@ -19,6 +18,7 @@ CONTENTCOMPCLASS::~CONTENTCOMPCLASS()
{ {
} }
//==============================================================================
void CONTENTCOMPCLASS::paint (Graphics& g) void CONTENTCOMPCLASS::paint (Graphics& g)
{ {
// (Our component is opaque, so we must completely fill the background with a solid colour) // (Our component is opaque, so we must completely fill the background with a solid colour)


+ 4
- 1
extras/Projucer/Source/BinaryData/Templates/jucer_ContentCompTemplate.h View File

@@ -10,7 +10,6 @@
INCLUDE_JUCE INCLUDE_JUCE
//============================================================================== //==============================================================================
/* /*
This component lives inside our window, and this is where you should put all This component lives inside our window, and this is where you should put all
@@ -23,10 +22,14 @@ public:
CONTENTCOMPCLASS(); CONTENTCOMPCLASS();
~CONTENTCOMPCLASS(); ~CONTENTCOMPCLASS();
//==============================================================================
void paint (Graphics&) override; void paint (Graphics&) override;
void resized() override; void resized() override;
private: private:
//============================================================================== //==============================================================================
// Your private member variables go here...
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS) JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS)
}; };

+ 1
- 3
extras/Projucer/Source/BinaryData/Templates/jucer_MainTemplate_SimpleWindow.cpp View File

@@ -10,8 +10,6 @@
APPHEADERS APPHEADERS
Component* createMainContentComponent();
//============================================================================== //==============================================================================
class APPCLASSNAME : public JUCEApplication class APPCLASSNAME : public JUCEApplication
{ {
@@ -67,7 +65,7 @@ public:
DocumentWindow::allButtons) DocumentWindow::allButtons)
{ {
setUsingNativeTitleBar (true); setUsingNativeTitleBar (true);
setContentOwned (createMainContentComponent(), true);
setContentOwned (new CONTENTCOMPCLASS(), true);
setResizable (true, true); setResizable (true, true);
centreWithSize (getWidth(), getHeight()); centreWithSize (getWidth(), getHeight());


+ 75
- 0
extras/Projucer/Source/BinaryData/Templates/jucer_OpenGLComponentSimpleTemplate.h View File

@@ -0,0 +1,75 @@
/*
==============================================================================
This file was auto-generated!
==============================================================================
*/
#pragma once
INCLUDE_JUCE
//==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class CONTENTCOMPCLASS : public OpenGLAppComponent
{
public:
//==============================================================================
CONTENTCOMPCLASS()
{
// Make sure you set the size of the component after
// you add any child components.
setSize (800, 600);
}
~CONTENTCOMPCLASS()
{
// This shuts down the GL system and stops the rendering calls.
shutdownOpenGL();
}
//==============================================================================
void initialise() override
{
// Initialise GL objects for rendering here.
}
void shutdown() override
{
// Free any GL objects created for rendering here.
}
void render() override
{
// This clears the context with a black background.
OpenGLHelpers::clear (Colours::black);
// Add your rendering code here...
}
//==============================================================================
void paint (Graphics& g) override
{
// You can add your component specific drawing code here!
// This will draw over the top of the openGL background.
}
void resized() override
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}
private:
//==============================================================================
// Your private member variables go here...
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS)
};

+ 38
- 52
extras/Projucer/Source/BinaryData/Templates/jucer_OpenGLComponentTemplate.cpp View File

@@ -6,65 +6,51 @@
============================================================================== ==============================================================================
*/ */
INCLUDE_JUCE
INCLUDE_CORRESPONDING_HEADER
//============================================================================== //==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class MainContentComponent : public OpenGLAppComponent
CONTENTCOMPCLASS::CONTENTCOMPCLASS()
{ {
public:
//==============================================================================
MainContentComponent()
{
setSize (800, 600);
}
~MainContentComponent()
{
shutdownOpenGL();
}
void initialise() override
{
}
void shutdown() override
{
}
void render() override
{
OpenGLHelpers::clear (Colours::black);
}
void paint (Graphics& g) override
{
// You can add your component specific drawing code here!
// This will draw over the top of the openGL background.
}
void resized() override
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}
// Make sure you set the size of the component after
// you add any child components.
setSize (800, 600);
}
CONTENTCOMPCLASS::~CONTENTCOMPCLASS()
{
// This shuts down the GL system and stops the rendering calls.
shutdownOpenGL();
}
private:
//==============================================================================
// private member variables
//==============================================================================
void CONTENTCOMPCLASS::initialise()
{
// Initialise GL objects for rendering here.
}
void CONTENTCOMPCLASS::shutdown()
{
// Free any GL objects created for rendering here.
}
void CONTENTCOMPCLASS::render()
{
// This clears the context with a black background.
OpenGLHelpers::clear (Colours::black);
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MainContentComponent)
};
// Add your rendering code here...
}
//==============================================================================
void CONTENTCOMPCLASS::paint (Graphics& g)
{
// You can add your component specific drawing code here!
// This will draw over the top of the openGL background.
}
// (This function is called by the app startup code to create our main component)
Component* createMainContentComponent() { return new MainContentComponent(); }
void CONTENTCOMPCLASS::resized()
{
// This is called when the MainContentComponent is resized.
// If you add any child components, this is where you should
// update their positions.
}

+ 40
- 0
extras/Projucer/Source/BinaryData/Templates/jucer_OpenGLComponentTemplate.h View File

@@ -0,0 +1,40 @@
/*
==============================================================================
This file was auto-generated!
==============================================================================
*/
#pragma once
INCLUDE_JUCE
//==============================================================================
/*
This component lives inside our window, and this is where you should put all
your controls and content.
*/
class CONTENTCOMPCLASS : public OpenGLAppComponent
{
public:
//==============================================================================
CONTENTCOMPCLASS();
~CONTENTCOMPCLASS();
//==============================================================================
void initialise() override;
void shutdown() override;
void render() override;
//==============================================================================
void paint (Graphics& g) override;
void resized() override;
private:
//==============================================================================
// Your private member variables go here...
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CONTENTCOMPCLASS)
};

+ 46
- 6
extras/Projucer/Source/Wizards/jucer_ProjectWizard_Animated.h View File

@@ -36,6 +36,26 @@ struct AnimatedAppWizard : public NewProjectWizard
String getDescription() const override { return TRANS("Creates an application which draws an animated graphical display."); } String getDescription() const override { return TRANS("Creates an application which draws an animated graphical display."); }
const char* getIcon() const override { return BinaryData::wizard_AnimatedApp_svg; } const char* getIcon() const override { return BinaryData::wizard_AnimatedApp_svg; }
StringArray getFileCreationOptions() override
{
return { "Create header and implementation files",
"Create header file only" };
}
Result processResultsFromSetupItems (WizardComp& setupComp) override
{
createCppFile = false;
switch (setupComp.getFileCreationComboID())
{
case 0: createCppFile = true; break;
case 1: break;
default: jassertfalse; break;
}
return Result::ok();
}
bool initialiseProject (Project& project) override bool initialiseProject (Project& project) override
{ {
createSourceFolder(); createSourceFolder();
@@ -43,7 +63,7 @@ struct AnimatedAppWizard : public NewProjectWizard
File mainCppFile = getSourceFilesFolder().getChildFile ("Main.cpp"); File mainCppFile = getSourceFilesFolder().getChildFile ("Main.cpp");
File contentCompCpp = getSourceFilesFolder().getChildFile ("MainComponent.cpp"); File contentCompCpp = getSourceFilesFolder().getChildFile ("MainComponent.cpp");
File contentCompH = contentCompCpp.withFileExtension (".h"); File contentCompH = contentCompCpp.withFileExtension (".h");
String contentCompName = "MainContentComponent";
String contentCompName = "MainComponent";
project.setProjectType (ProjectType_GUIApp::getTypeName()); project.setProjectType (ProjectType_GUIApp::getTypeName());
@@ -54,14 +74,31 @@ struct AnimatedAppWizard : public NewProjectWizard
String appHeaders (CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), mainCppFile)); String appHeaders (CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), mainCppFile));
// create main window // create main window
String windowCpp = project.getFileTemplate ("jucer_AnimatedComponentTemplate_cpp")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompCpp), false);
appHeaders << newLine << CodeHelpers::createIncludeStatement (contentCompH, mainCppFile);
String windowH = project.getFileTemplate (createCppFile ? "jucer_AnimatedComponentTemplate_h"
: "jucer_AnimatedComponentSimpleTemplate_h")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompH), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false)
.replace ("HEADERGUARD", CodeHelpers::makeHeaderGuardName (contentCompH), false);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompCpp, windowCpp))
failedFiles.add (contentCompCpp.getFullPathName());
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompH, windowH))
failedFiles.add (contentCompH.getFullPathName());
sourceGroup.addFileAtIndex (contentCompCpp, -1, true);
sourceGroup.addFileAtIndex (contentCompH, -1, false);
if (createCppFile)
{
String windowCpp = project.getFileTemplate ("jucer_AnimatedComponentTemplate_cpp")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompCpp), false)
.replace ("INCLUDE_CORRESPONDING_HEADER", CodeHelpers::createIncludeStatement (contentCompH, contentCompCpp), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompCpp, windowCpp))
failedFiles.add (contentCompCpp.getFullPathName());
sourceGroup.addFileAtIndex (contentCompCpp, -1, true);
}
// create main cpp // create main cpp
String mainCpp = project.getFileTemplate ("jucer_MainTemplate_SimpleWindow_cpp") String mainCpp = project.getFileTemplate ("jucer_MainTemplate_SimpleWindow_cpp")
@@ -79,5 +116,8 @@ struct AnimatedAppWizard : public NewProjectWizard
return true; return true;
} }
private:
bool createCppFile;
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AnimatedAppWizard) JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AnimatedAppWizard)
}; };

+ 48
- 6
extras/Projucer/Source/Wizards/jucer_ProjectWizard_AudioApp.h View File

@@ -36,6 +36,26 @@ struct AudioAppWizard : public NewProjectWizard
String getDescription() const override { return TRANS("Creates a JUCE application with a single window component and audio and MIDI in/out functions."); } String getDescription() const override { return TRANS("Creates a JUCE application with a single window component and audio and MIDI in/out functions."); }
const char* getIcon() const override { return BinaryData::wizard_AudioApp_svg; } const char* getIcon() const override { return BinaryData::wizard_AudioApp_svg; }
StringArray getFileCreationOptions() override
{
return { "Create header and implementation files",
"Create header file only" };
}
Result processResultsFromSetupItems (WizardComp& setupComp) override
{
createCppFile = false;
switch (setupComp.getFileCreationComboID())
{
case 0: createCppFile = true; break;
case 1: break;
default: jassertfalse; break;
}
return Result::ok();
}
bool initialiseProject (Project& project) override bool initialiseProject (Project& project) override
{ {
createSourceFolder(); createSourceFolder();
@@ -43,7 +63,7 @@ struct AudioAppWizard : public NewProjectWizard
File mainCppFile = getSourceFilesFolder().getChildFile ("Main.cpp"); File mainCppFile = getSourceFilesFolder().getChildFile ("Main.cpp");
File contentCompCpp = getSourceFilesFolder().getChildFile ("MainComponent.cpp"); File contentCompCpp = getSourceFilesFolder().getChildFile ("MainComponent.cpp");
File contentCompH = contentCompCpp.withFileExtension (".h"); File contentCompH = contentCompCpp.withFileExtension (".h");
String contentCompName = "MainContentComponent";
String contentCompName = "MainComponent";
project.setProjectType (ProjectType_GUIApp::getTypeName()); project.setProjectType (ProjectType_GUIApp::getTypeName());
@@ -54,15 +74,34 @@ struct AudioAppWizard : public NewProjectWizard
String appHeaders (CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), mainCppFile)); String appHeaders (CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), mainCppFile));
// create main window // create main window
String windowCpp = project.getFileTemplate ("jucer_AudioComponentTemplate_cpp")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompCpp), false);
appHeaders << newLine << CodeHelpers::createIncludeStatement (contentCompH, mainCppFile);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompCpp, windowCpp))
failedFiles.add (contentCompCpp.getFullPathName());
String windowH = project.getFileTemplate (createCppFile ? "jucer_AudioComponentTemplate_h"
: "jucer_AudioComponentSimpleTemplate_h")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompH), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false)
.replace ("HEADERGUARD", CodeHelpers::makeHeaderGuardName (contentCompH), false);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompH, windowH))
failedFiles.add (contentCompH.getFullPathName());
sourceGroup.addFileAtIndex (contentCompH, -1, false);
if (createCppFile)
{
String windowCpp = project.getFileTemplate ("jucer_AudioComponentTemplate_cpp")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompCpp), false)
.replace ("INCLUDE_CORRESPONDING_HEADER", CodeHelpers::createIncludeStatement (contentCompH, contentCompCpp), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false);
sourceGroup.addFileAtIndex (contentCompCpp, -1, true);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompCpp, windowCpp))
failedFiles.add (contentCompCpp.getFullPathName());
sourceGroup.addFileAtIndex (contentCompCpp, -1, true);
}
// create main cpp // create main cpp
String mainCpp = project.getFileTemplate ("jucer_MainTemplate_SimpleWindow_cpp") String mainCpp = project.getFileTemplate ("jucer_MainTemplate_SimpleWindow_cpp")
.replace ("APPHEADERS", appHeaders, false) .replace ("APPHEADERS", appHeaders, false)
@@ -86,5 +125,8 @@ struct AudioAppWizard : public NewProjectWizard
return s; return s;
} }
private:
bool createCppFile;
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioAppWizard) JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioAppWizard)
}; };

+ 25
- 18
extras/Projucer/Source/Wizards/jucer_ProjectWizard_GUIApp.h View File

@@ -38,20 +38,22 @@ struct GUIAppWizard : public NewProjectWizard
StringArray getFileCreationOptions() override StringArray getFileCreationOptions() override
{ {
return { "Create a Main.cpp file and a basic window",
"Create a Main.cpp file",
return { "Create a Main.cpp file with header and implementation files",
"Create a Main.cpp file with header file only",
"Create a Main.cpp file only",
"Don't create any files" }; "Don't create any files" };
} }
Result processResultsFromSetupItems (WizardComp& setupComp) override Result processResultsFromSetupItems (WizardComp& setupComp) override
{ {
createMainCpp = createWindow = false;
createMainCpp = createWindow = createCppFile = false;
switch (setupComp.getFileCreationComboID()) switch (setupComp.getFileCreationComboID())
{ {
case 0: createMainCpp = createWindow = true; break;
case 1: createMainCpp = true; break;
case 2: break;
case 0: createMainCpp = createWindow = createCppFile = true; break;
case 1: createMainCpp = createWindow = true; break;
case 2: createMainCpp = true; break;
case 3: break;
default: jassertfalse; break; default: jassertfalse; break;
} }
@@ -65,7 +67,7 @@ struct GUIAppWizard : public NewProjectWizard
File mainCppFile = getSourceFilesFolder().getChildFile ("Main.cpp"); File mainCppFile = getSourceFilesFolder().getChildFile ("Main.cpp");
File contentCompCpp = getSourceFilesFolder().getChildFile ("MainComponent.cpp"); File contentCompCpp = getSourceFilesFolder().getChildFile ("MainComponent.cpp");
File contentCompH = contentCompCpp.withFileExtension (".h"); File contentCompH = contentCompCpp.withFileExtension (".h");
String contentCompName = "MainContentComponent";
String contentCompName = "MainComponent";
project.setProjectType (ProjectType_GUIApp::getTypeName()); project.setProjectType (ProjectType_GUIApp::getTypeName());
@@ -79,24 +81,29 @@ struct GUIAppWizard : public NewProjectWizard
{ {
appHeaders << newLine << CodeHelpers::createIncludeStatement (contentCompH, mainCppFile); appHeaders << newLine << CodeHelpers::createIncludeStatement (contentCompH, mainCppFile);
String windowH = project.getFileTemplate ("jucer_ContentCompTemplate_h")
String windowH = project.getFileTemplate (createCppFile ? "jucer_ContentCompTemplate_h"
: "jucer_ContentCompSimpleTemplate_h")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompH), false) .replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompH), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false) .replace ("CONTENTCOMPCLASS", contentCompName, false)
.replace ("HEADERGUARD", CodeHelpers::makeHeaderGuardName (contentCompH), false); .replace ("HEADERGUARD", CodeHelpers::makeHeaderGuardName (contentCompH), false);
String windowCpp = project.getFileTemplate ("jucer_ContentCompTemplate_cpp")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompCpp), false)
.replace ("INCLUDE_CORRESPONDING_HEADER", CodeHelpers::createIncludeStatement (contentCompH, contentCompCpp), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompH, windowH)) if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompH, windowH))
failedFiles.add (contentCompH.getFullPathName()); failedFiles.add (contentCompH.getFullPathName());
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompCpp, windowCpp))
failedFiles.add (contentCompCpp.getFullPathName());
sourceGroup.addFileAtIndex (contentCompCpp, -1, true);
sourceGroup.addFileAtIndex (contentCompH, -1, false); sourceGroup.addFileAtIndex (contentCompH, -1, false);
if (createCppFile)
{
String windowCpp = project.getFileTemplate ("jucer_ContentCompTemplate_cpp")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompCpp), false)
.replace ("INCLUDE_CORRESPONDING_HEADER", CodeHelpers::createIncludeStatement (contentCompH, contentCompCpp), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompCpp, windowCpp))
failedFiles.add (contentCompCpp.getFullPathName());
sourceGroup.addFileAtIndex (contentCompCpp, -1, true);
}
} }
if (createMainCpp) if (createMainCpp)
@@ -119,7 +126,7 @@ struct GUIAppWizard : public NewProjectWizard
} }
private: private:
bool createMainCpp, createWindow;
bool createMainCpp, createWindow, createCppFile;
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (GUIAppWizard) JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (GUIAppWizard)
}; };

+ 46
- 6
extras/Projucer/Source/Wizards/jucer_ProjectWizard_openGL.h View File

@@ -36,6 +36,26 @@ struct OpenGLAppWizard : public NewProjectWizard
String getDescription() const override { return TRANS("Creates a blank JUCE application with a single window component. This component supports openGL drawing features including 3D model import and GLSL shaders."); } String getDescription() const override { return TRANS("Creates a blank JUCE application with a single window component. This component supports openGL drawing features including 3D model import and GLSL shaders."); }
const char* getIcon() const override { return BinaryData::wizard_OpenGL_svg; } const char* getIcon() const override { return BinaryData::wizard_OpenGL_svg; }
StringArray getFileCreationOptions() override
{
return { "Create header and implementation files",
"Create header file only" };
}
Result processResultsFromSetupItems (WizardComp& setupComp) override
{
createCppFile = false;
switch (setupComp.getFileCreationComboID())
{
case 0: createCppFile = true; break;
case 1: break;
default: jassertfalse; break;
}
return Result::ok();
}
bool initialiseProject (Project& project) override bool initialiseProject (Project& project) override
{ {
createSourceFolder(); createSourceFolder();
@@ -43,7 +63,7 @@ struct OpenGLAppWizard : public NewProjectWizard
File mainCppFile = getSourceFilesFolder().getChildFile ("Main.cpp"); File mainCppFile = getSourceFilesFolder().getChildFile ("Main.cpp");
File contentCompCpp = getSourceFilesFolder().getChildFile ("MainComponent.cpp"); File contentCompCpp = getSourceFilesFolder().getChildFile ("MainComponent.cpp");
File contentCompH = contentCompCpp.withFileExtension (".h"); File contentCompH = contentCompCpp.withFileExtension (".h");
String contentCompName = "MainContentComponent";
String contentCompName = "MainComponent";
project.setProjectType (ProjectType_GUIApp::getTypeName()); project.setProjectType (ProjectType_GUIApp::getTypeName());
@@ -54,14 +74,31 @@ struct OpenGLAppWizard : public NewProjectWizard
String appHeaders (CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), mainCppFile)); String appHeaders (CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), mainCppFile));
// create main window // create main window
String windowCpp = project.getFileTemplate ("jucer_OpenGLComponentTemplate_cpp")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompCpp), false);
appHeaders << newLine << CodeHelpers::createIncludeStatement (contentCompH, mainCppFile);
String windowH = project.getFileTemplate (createCppFile ? "jucer_OpenGLComponentTemplate_h"
: "jucer_OpenGLComponentSimpleTemplate_h")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompH), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false)
.replace ("HEADERGUARD", CodeHelpers::makeHeaderGuardName (contentCompH), false);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompCpp, windowCpp))
failedFiles.add (contentCompCpp.getFullPathName());
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompH, windowH))
failedFiles.add (contentCompH.getFullPathName());
sourceGroup.addFileAtIndex (contentCompCpp, -1, true);
sourceGroup.addFileAtIndex (contentCompH, -1, false);
if (createCppFile)
{
String windowCpp = project.getFileTemplate ("jucer_OpenGLComponentTemplate_cpp")
.replace ("INCLUDE_JUCE", CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), contentCompCpp), false)
.replace ("INCLUDE_CORRESPONDING_HEADER", CodeHelpers::createIncludeStatement (contentCompH, contentCompCpp), false)
.replace ("CONTENTCOMPCLASS", contentCompName, false);
if (! FileHelpers::overwriteFileWithNewDataIfDifferent (contentCompCpp, windowCpp))
failedFiles.add (contentCompCpp.getFullPathName());
sourceGroup.addFileAtIndex (contentCompCpp, -1, true);
}
// create main cpp // create main cpp
String mainCpp = project.getFileTemplate ("jucer_MainTemplate_SimpleWindow_cpp") String mainCpp = project.getFileTemplate ("jucer_MainTemplate_SimpleWindow_cpp")
@@ -79,5 +116,8 @@ struct OpenGLAppWizard : public NewProjectWizard
return true; return true;
} }
private:
bool createCppFile;
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (OpenGLAppWizard) JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (OpenGLAppWizard)
}; };

Loading…
Cancel
Save