mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-10 23:44:24 +00:00
Reduced the dependencies of the juce demo. Jucer development.
This commit is contained in:
parent
9c5651fb8e
commit
0d611ec065
22 changed files with 872 additions and 31 deletions
|
|
@ -45,6 +45,7 @@ endif
|
|||
OBJECTS := \
|
||||
$(OBJDIR)/jucer_ComponentTypeManager.o \
|
||||
$(OBJDIR)/jucer_ComponentDocument.o \
|
||||
$(OBJDIR)/jucer_CodeGenerator.o \
|
||||
$(OBJDIR)/jucer_Coordinate.o \
|
||||
$(OBJDIR)/jucer_DrawableDocument.o \
|
||||
$(OBJDIR)/jucer_NewFileWizard.o \
|
||||
|
|
@ -100,6 +101,11 @@ $(OBJDIR)/jucer_ComponentDocument.o: ../../Source/model/jucer_ComponentDocument.
|
|||
@echo $(notdir $<)
|
||||
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
|
||||
|
||||
$(OBJDIR)/jucer_CodeGenerator.o: ../../Source/model/jucer_CodeGenerator.cpp
|
||||
-@mkdir -p $(OBJDIR)
|
||||
@echo $(notdir $<)
|
||||
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
|
||||
|
||||
$(OBJDIR)/jucer_Coordinate.o: ../../Source/model/jucer_Coordinate.cpp
|
||||
-@mkdir -p $(OBJDIR)
|
||||
@echo $(notdir $<)
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@
|
|||
2E6836738CE7EB452FDC7E9A = { isa = PBXBuildFile; fileRef = D9FB1A5365FEEB854A0FF7BF; };
|
||||
52D75B8B0F52DD4F37A4B1C0 = { isa = PBXBuildFile; fileRef = 82A1EC47692975C7031B3973; };
|
||||
CD4226951C3F7FE19CF8A7CE = { isa = PBXBuildFile; fileRef = 2D6D6985B452EA0B67A18914; };
|
||||
8E859D542404B684D5E1545F = { isa = PBXBuildFile; fileRef = 42CEC4195577AE91AA6CBA7F; };
|
||||
1DF9688E29753A0459E6C32A = { isa = PBXBuildFile; fileRef = 45C80436FD5A8438D0E6BE17; };
|
||||
1174D3512AF8207950094C56 = { isa = PBXBuildFile; fileRef = FF625CB50FB5C3536BA40604; };
|
||||
087CCE9E7146F1EC4F241254 = { isa = PBXBuildFile; fileRef = DA142548FCADFAC50648ED3C; };
|
||||
|
|
@ -77,6 +78,8 @@
|
|||
03AD2BF6C80C6AF47BBDB7E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_Viewport.h; path = "../../Source/model/Component Types/jucer_Viewport.h"; sourceTree = SOURCE_ROOT; };
|
||||
2D6D6985B452EA0B67A18914 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_ComponentDocument.cpp; path = ../../Source/model/jucer_ComponentDocument.cpp; sourceTree = SOURCE_ROOT; };
|
||||
E6CC3A04349F6B227FDAB26F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_ComponentDocument.h; path = ../../Source/model/jucer_ComponentDocument.h; sourceTree = SOURCE_ROOT; };
|
||||
42CEC4195577AE91AA6CBA7F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_CodeGenerator.cpp; path = ../../Source/model/jucer_CodeGenerator.cpp; sourceTree = SOURCE_ROOT; };
|
||||
FE3EB6472027A398A978CBE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_CodeGenerator.h; path = ../../Source/model/jucer_CodeGenerator.h; sourceTree = SOURCE_ROOT; };
|
||||
45C80436FD5A8438D0E6BE17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_Coordinate.cpp; path = ../../Source/model/jucer_Coordinate.cpp; sourceTree = SOURCE_ROOT; };
|
||||
420E4189E7DE25E9D0D8E5B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_Coordinate.h; path = ../../Source/model/jucer_Coordinate.h; sourceTree = SOURCE_ROOT; };
|
||||
FF625CB50FB5C3536BA40604 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_DrawableDocument.cpp; path = ../../Source/model/jucer_DrawableDocument.cpp; sourceTree = SOURCE_ROOT; };
|
||||
|
|
@ -143,6 +146,8 @@
|
|||
1C52B91B15DF56E0A37F3EEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_AudioPluginEditorTemplate.h; path = ../../Source/templates/jucer_AudioPluginEditorTemplate.h; sourceTree = SOURCE_ROOT; };
|
||||
4D62A4E094921086FBB82248 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_AudioPluginFilterTemplate.cpp; path = ../../Source/templates/jucer_AudioPluginFilterTemplate.cpp; sourceTree = SOURCE_ROOT; };
|
||||
C2AE936214AC10DC4FABAC2F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_AudioPluginFilterTemplate.h; path = ../../Source/templates/jucer_AudioPluginFilterTemplate.h; sourceTree = SOURCE_ROOT; };
|
||||
AC0E488751C4C402D9D84B93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_ComponentTemplate.cpp; path = ../../Source/templates/jucer_ComponentTemplate.cpp; sourceTree = SOURCE_ROOT; };
|
||||
B2FB0FD53553DB371FD1C748 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucer_ComponentTemplate.h; path = ../../Source/templates/jucer_ComponentTemplate.h; sourceTree = SOURCE_ROOT; };
|
||||
061B86C84B0D279F1EABBBE2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_MainConsoleAppTemplate.cpp; path = ../../Source/templates/jucer_MainConsoleAppTemplate.cpp; sourceTree = SOURCE_ROOT; };
|
||||
1EC5B7483B37A4163CA19549 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_MainTemplate.cpp; path = ../../Source/templates/jucer_MainTemplate.cpp; sourceTree = SOURCE_ROOT; };
|
||||
4A80C6415DB1C1CB47DBE23F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = jucer_NewCppFileTemplate.cpp; path = ../../Source/templates/jucer_NewCppFileTemplate.cpp; sourceTree = SOURCE_ROOT; };
|
||||
|
|
@ -177,6 +182,8 @@
|
|||
D3D6EC2C17524688F2E803EB,
|
||||
2D6D6985B452EA0B67A18914,
|
||||
E6CC3A04349F6B227FDAB26F,
|
||||
42CEC4195577AE91AA6CBA7F,
|
||||
FE3EB6472027A398A978CBE4,
|
||||
45C80436FD5A8438D0E6BE17,
|
||||
420E4189E7DE25E9D0D8E5B8,
|
||||
FF625CB50FB5C3536BA40604,
|
||||
|
|
@ -251,6 +258,8 @@
|
|||
1C52B91B15DF56E0A37F3EEE,
|
||||
4D62A4E094921086FBB82248,
|
||||
C2AE936214AC10DC4FABAC2F,
|
||||
AC0E488751C4C402D9D84B93,
|
||||
B2FB0FD53553DB371FD1C748,
|
||||
061B86C84B0D279F1EABBBE2,
|
||||
1EC5B7483B37A4163CA19549,
|
||||
4A80C6415DB1C1CB47DBE23F,
|
||||
|
|
@ -359,6 +368,7 @@
|
|||
5362E03ADF975A126C1F2F7B = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = (
|
||||
52D75B8B0F52DD4F37A4B1C0,
|
||||
CD4226951C3F7FE19CF8A7CE,
|
||||
8E859D542404B684D5E1545F,
|
||||
1DF9688E29753A0459E6C32A,
|
||||
1174D3512AF8207950094C56,
|
||||
087CCE9E7146F1EC4F241254,
|
||||
|
|
|
|||
|
|
@ -151,6 +151,8 @@
|
|||
</Filter>
|
||||
<File RelativePath="..\..\Source\model\jucer_ComponentDocument.cpp"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_ComponentDocument.h"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_CodeGenerator.cpp"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_CodeGenerator.h"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_Coordinate.cpp"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_Coordinate.h"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_DrawableDocument.cpp"/>
|
||||
|
|
@ -274,6 +276,26 @@
|
|||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File RelativePath="..\..\Source\templates\jucer_ComponentTemplate.cpp">
|
||||
<FileConfiguration Name="Debug|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration Name="Release|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File RelativePath="..\..\Source\templates\jucer_ComponentTemplate.h">
|
||||
<FileConfiguration Name="Debug|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration Name="Release|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File RelativePath="..\..\Source\templates\jucer_MainConsoleAppTemplate.cpp">
|
||||
<FileConfiguration Name="Debug|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
|
|
|
|||
|
|
@ -151,6 +151,8 @@
|
|||
</Filter>
|
||||
<File RelativePath="..\..\Source\model\jucer_ComponentDocument.cpp"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_ComponentDocument.h"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_CodeGenerator.cpp"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_CodeGenerator.h"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_Coordinate.cpp"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_Coordinate.h"/>
|
||||
<File RelativePath="..\..\Source\model\jucer_DrawableDocument.cpp"/>
|
||||
|
|
@ -274,6 +276,26 @@
|
|||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File RelativePath="..\..\Source\templates\jucer_ComponentTemplate.cpp">
|
||||
<FileConfiguration Name="Debug|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration Name="Release|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File RelativePath="..\..\Source\templates\jucer_ComponentTemplate.h">
|
||||
<FileConfiguration Name="Debug|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration Name="Release|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
<Tool Name="VCCLCompilerTool"/>
|
||||
</FileConfiguration>
|
||||
</File>
|
||||
<File RelativePath="..\..\Source\templates\jucer_MainConsoleAppTemplate.cpp">
|
||||
<FileConfiguration Name="Debug|Win32"
|
||||
ExcludedFromBuild="true">
|
||||
|
|
|
|||
|
|
@ -22,6 +22,8 @@ const char* BinaryData::getNamedResource (const char* resourceNameUTF8, int& num
|
|||
case 0x4d0721bf: numBytes = BinaryData::jucer_AudioPluginEditorTemplate_hSize; return BinaryData::jucer_AudioPluginEditorTemplate_h;
|
||||
case 0x51b49ac5: numBytes = BinaryData::jucer_AudioPluginFilterTemplate_cppSize; return BinaryData::jucer_AudioPluginFilterTemplate_cpp;
|
||||
case 0x488afa0a: numBytes = BinaryData::jucer_AudioPluginFilterTemplate_hSize; return BinaryData::jucer_AudioPluginFilterTemplate_h;
|
||||
case 0xabad7041: numBytes = BinaryData::jucer_ComponentTemplate_cppSize; return BinaryData::jucer_ComponentTemplate_cpp;
|
||||
case 0xfc72fe86: numBytes = BinaryData::jucer_ComponentTemplate_hSize; return BinaryData::jucer_ComponentTemplate_h;
|
||||
case 0x8905395b: numBytes = BinaryData::jucer_MainConsoleAppTemplate_cppSize; return BinaryData::jucer_MainConsoleAppTemplate_cpp;
|
||||
case 0x7a0186b1: numBytes = BinaryData::jucer_MainTemplate_cppSize; return BinaryData::jucer_MainTemplate_cpp;
|
||||
case 0x02a2a077: numBytes = BinaryData::jucer_NewCppFileTemplate_cppSize; return BinaryData::jucer_NewCppFileTemplate_cpp;
|
||||
|
|
@ -416,6 +418,155 @@ static const unsigned char temp_a7c425dd[] =
|
|||
|
||||
const char* BinaryData::jucer_AudioPluginFilterTemplate_h = (const char*) temp_a7c425dd;
|
||||
|
||||
//================== jucer_ComponentTemplate.cpp ==================
|
||||
static const unsigned char temp_73015554[] =
|
||||
"/*\r\n"
|
||||
" ==============================================================================\r\n"
|
||||
"\r\n"
|
||||
" This is an automatically generated file created by the Jucer!\r\n"
|
||||
"\r\n"
|
||||
" Creation date: %%creationTime%%\r\n"
|
||||
"\r\n"
|
||||
" Be careful when adding custom code to these files, as only the code within\r\n"
|
||||
" the \"//[xyz]\" and \"//[/xyz]\" sections will be retained when the file is loaded\r\n"
|
||||
" and re-saved.\r\n"
|
||||
"\r\n"
|
||||
" Jucer version: 1.12\r\n"
|
||||
"\r\n"
|
||||
" ------------------------------------------------------------------------------\r\n"
|
||||
"\r\n"
|
||||
" The Jucer is part of the JUCE library - \"Jules' Utility Class Extensions\"\r\n"
|
||||
" Copyright 2004-6 by Raw Material Software ltd.\r\n"
|
||||
"\r\n"
|
||||
" ==============================================================================\r\n"
|
||||
"*/\r\n"
|
||||
"\r\n"
|
||||
"//[Headers] You can add your own extra header files here...\r\n"
|
||||
"//[/Headers]\r\n"
|
||||
"\r\n"
|
||||
"%%includeFilesCPP%%\r\n"
|
||||
"\r\n"
|
||||
"//[MiscUserDefs] You can add your own user definitions and misc code here...\r\n"
|
||||
"//[/MiscUserDefs]\r\n"
|
||||
"\r\n"
|
||||
"//==============================================================================\r\n"
|
||||
"%%className%%::%%className%% (%%constructorParams%%)\r\n"
|
||||
"%%initialisers%%{\r\n"
|
||||
" %%constructor%%\r\n"
|
||||
"\r\n"
|
||||
" //[Constructor] You can add your own custom stuff here..\r\n"
|
||||
" //[/Constructor]\r\n"
|
||||
"}\r\n"
|
||||
"\r\n"
|
||||
"%%className%%::~%%className%%()\r\n"
|
||||
"{\r\n"
|
||||
" //[Destructor_pre]. You can add your own custom destruction code here..\r\n"
|
||||
" //[/Destructor_pre]\r\n"
|
||||
"\r\n"
|
||||
" %%destructor%%\r\n"
|
||||
"\r\n"
|
||||
" //[Destructor]. You can add your own custom destruction code here..\r\n"
|
||||
" //[/Destructor]\r\n"
|
||||
"}\r\n"
|
||||
"\r\n"
|
||||
"//==============================================================================\r\n"
|
||||
"%%methodDefinitions%%\r\n"
|
||||
"\r\n"
|
||||
"//[MiscUserCode] You can add your own definitions of your custom methods or any other code here...\r\n"
|
||||
"//[/MiscUserCode]\r\n"
|
||||
"\r\n"
|
||||
"\r\n"
|
||||
"//==============================================================================\r\n"
|
||||
"#if 0\r\n"
|
||||
"/* -- Jucer information section --\r\n"
|
||||
"\r\n"
|
||||
" This is where the Jucer puts all of its metadata, so don't change anything in here!\r\n"
|
||||
"\r\n"
|
||||
"BEGIN_JUCER_METADATA\r\n"
|
||||
"\r\n"
|
||||
"%%metadata%%\r\n"
|
||||
"END_JUCER_METADATA\r\n"
|
||||
"*/\r\n"
|
||||
"#endif\r\n"
|
||||
"\r\n"
|
||||
"%%staticMemberDefinitions%%\r\n";
|
||||
|
||||
const char* BinaryData::jucer_ComponentTemplate_cpp = (const char*) temp_73015554;
|
||||
|
||||
//================== jucer_ComponentTemplate.h ==================
|
||||
static const unsigned char temp_b930c59[] =
|
||||
"/*\r\n"
|
||||
" ==============================================================================\r\n"
|
||||
"\r\n"
|
||||
" This is an automatically generated file created by the Jucer!\r\n"
|
||||
"\r\n"
|
||||
" Creation date: %%creationTime%%\r\n"
|
||||
"\r\n"
|
||||
" Be careful when adding custom code to these files, as only the code within\r\n"
|
||||
" the \"//[xyz]\" and \"//[/xyz]\" sections will be retained when the file is loaded\r\n"
|
||||
" and re-saved.\r\n"
|
||||
"\r\n"
|
||||
" Jucer version: 1.12\r\n"
|
||||
"\r\n"
|
||||
" ------------------------------------------------------------------------------\r\n"
|
||||
"\r\n"
|
||||
" The Jucer is part of the JUCE library - \"Jules' Utility Class Extensions\"\r\n"
|
||||
" Copyright 2004-6 by Raw Material Software ltd.\r\n"
|
||||
"\r\n"
|
||||
" ==============================================================================\r\n"
|
||||
"*/\r\n"
|
||||
"\r\n"
|
||||
"#ifndef %%headerGuard%%\r\n"
|
||||
"#define %%headerGuard%%\r\n"
|
||||
"\r\n"
|
||||
"//[Headers] -- You can add your own extra header files here --\r\n"
|
||||
"#include \"juce.h\"\r\n"
|
||||
"//[/Headers]\r\n"
|
||||
"\r\n"
|
||||
"%%includeFilesH%%\r\n"
|
||||
"\r\n"
|
||||
"//==============================================================================\r\n"
|
||||
"/**\r\n"
|
||||
" //[Comments]\r\n"
|
||||
" An auto-generated component, created by the Jucer.\r\n"
|
||||
"\r\n"
|
||||
" Describe your class and how it works here!\r\n"
|
||||
" //[/Comments]\r\n"
|
||||
"*/\r\n"
|
||||
"%%classDeclaration%%\r\n"
|
||||
"{\r\n"
|
||||
"public:\r\n"
|
||||
" //==============================================================================\r\n"
|
||||
" %%className%% (%%constructorParams%%);\r\n"
|
||||
" ~%%className%%();\r\n"
|
||||
"\r\n"
|
||||
" //==============================================================================\r\n"
|
||||
" //[UserMethods] -- You can add your own custom methods in this section.\r\n"
|
||||
" //[/UserMethods]\r\n"
|
||||
"\r\n"
|
||||
" %%publicMemberDeclarations%%\r\n"
|
||||
"\r\n"
|
||||
" //==============================================================================\r\n"
|
||||
" juce_UseDebuggingNewOperator\r\n"
|
||||
"\r\n"
|
||||
"private:\r\n"
|
||||
" //[UserVariables] -- You can add your own custom variables in this section.\r\n"
|
||||
" //[/UserVariables]\r\n"
|
||||
"\r\n"
|
||||
" //==============================================================================\r\n"
|
||||
" %%privateMemberDeclarations%%\r\n"
|
||||
"\r\n"
|
||||
" //==============================================================================\r\n"
|
||||
" // (prevent copy constructor and operator= being generated..)\r\n"
|
||||
" %%className%% (const %%className%%&);\r\n"
|
||||
" const %%className%%& operator= (const %%className%%&);\r\n"
|
||||
"};\r\n"
|
||||
"\r\n"
|
||||
"\r\n"
|
||||
"#endif // %%headerGuard%%\r\n";
|
||||
|
||||
const char* BinaryData::jucer_ComponentTemplate_h = (const char*) temp_b930c59;
|
||||
|
||||
//================== jucer_MainConsoleAppTemplate.cpp ==================
|
||||
static const unsigned char temp_a4c7812a[] =
|
||||
"/*\r\n"
|
||||
|
|
|
|||
|
|
@ -22,6 +22,12 @@ namespace BinaryData
|
|||
extern const char* jucer_AudioPluginFilterTemplate_h;
|
||||
const int jucer_AudioPluginFilterTemplate_hSize = 2353;
|
||||
|
||||
extern const char* jucer_ComponentTemplate_cpp;
|
||||
const int jucer_ComponentTemplate_cppSize = 1975;
|
||||
|
||||
extern const char* jucer_ComponentTemplate_h;
|
||||
const int jucer_ComponentTemplate_hSize = 2309;
|
||||
|
||||
extern const char* jucer_MainConsoleAppTemplate_cpp;
|
||||
const int jucer_MainConsoleAppTemplate_cppSize = 749;
|
||||
|
||||
|
|
|
|||
|
|
@ -61,6 +61,10 @@
|
|||
resource="0" file="Source/model/jucer_ComponentDocument.cpp"/>
|
||||
<FILE id="u5n6JTb4z" name="jucer_ComponentDocument.h" compile="0" resource="0"
|
||||
file="Source/model/jucer_ComponentDocument.h"/>
|
||||
<FILE id="YJF79TlHr" name="jucer_CodeGenerator.cpp" compile="1" resource="0"
|
||||
file="Source/model/jucer_CodeGenerator.cpp"/>
|
||||
<FILE id="Wr2TBw8wQ" name="jucer_CodeGenerator.h" compile="0" resource="0"
|
||||
file="Source/model/jucer_CodeGenerator.h"/>
|
||||
<FILE id="lxuyJGZcw" name="jucer_Coordinate.cpp" compile="1" resource="0"
|
||||
file="Source/model/jucer_Coordinate.cpp"/>
|
||||
<FILE id="CyKbwNlwe" name="jucer_Coordinate.h" compile="0" resource="0"
|
||||
|
|
@ -205,6 +209,10 @@
|
|||
resource="1" file="Source/templates/jucer_AudioPluginFilterTemplate.cpp"/>
|
||||
<FILE id="R0cR4dCe" name="jucer_AudioPluginFilterTemplate.h" compile="0"
|
||||
resource="1" file="Source/templates/jucer_AudioPluginFilterTemplate.h"/>
|
||||
<FILE id="KU4AroVSu" name="jucer_ComponentTemplate.cpp" compile="0"
|
||||
resource="1" file="Source/templates/jucer_ComponentTemplate.cpp"/>
|
||||
<FILE id="HiDPozmU" name="jucer_ComponentTemplate.h" compile="0" resource="1"
|
||||
file="Source/templates/jucer_ComponentTemplate.h"/>
|
||||
<FILE id="pMNQAeUWK" name="jucer_MainConsoleAppTemplate.cpp" compile="0"
|
||||
resource="1" file="Source/templates/jucer_MainConsoleAppTemplate.cpp"/>
|
||||
<FILE id="IB8HRkRP1" name="jucer_MainTemplate.cpp" compile="0" resource="1"
|
||||
|
|
|
|||
385
extras/Jucer (experimental)/Source/model/jucer_CodeGenerator.cpp
Normal file
385
extras/Jucer (experimental)/Source/model/jucer_CodeGenerator.cpp
Normal file
|
|
@ -0,0 +1,385 @@
|
|||
/*
|
||||
==============================================================================
|
||||
|
||||
This file is part of the JUCE library - "Jules' Utility Class Extensions"
|
||||
Copyright 2004-9 by Raw Material Software Ltd.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
JUCE can be redistributed and/or modified under the terms of the GNU General
|
||||
Public License (Version 2), as published by the Free Software Foundation.
|
||||
A copy of the license is included in the JUCE distribution, or can be found
|
||||
online at www.gnu.org/licenses.
|
||||
|
||||
JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
||||
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
To release a closed-source product which uses JUCE, commercial licenses are
|
||||
available: visit www.rawmaterialsoftware.com/juce for more information.
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
#include "jucer_CodeGenerator.h"
|
||||
|
||||
|
||||
//==============================================================================
|
||||
CodeGenerator::CodeGenerator()
|
||||
{
|
||||
}
|
||||
|
||||
CodeGenerator::~CodeGenerator()
|
||||
{
|
||||
}
|
||||
|
||||
int CodeGenerator::getUniqueSuffix()
|
||||
{
|
||||
return ++suffix;
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
String& CodeGenerator::getCallbackCode (const String& requiredParentClass,
|
||||
const String& returnType,
|
||||
const String& prototype,
|
||||
const bool hasPrePostUserSections)
|
||||
{
|
||||
String parentClass (requiredParentClass);
|
||||
if (parentClass.isNotEmpty()
|
||||
&& ! (parentClass.startsWith ("public ")
|
||||
|| parentClass.startsWith ("private ")
|
||||
|| parentClass.startsWith ("protected ")))
|
||||
{
|
||||
parentClass = "public " + parentClass;
|
||||
}
|
||||
|
||||
for (int i = callbacks.size(); --i >= 0;)
|
||||
{
|
||||
CallbackMethod* const cm = callbacks.getUnchecked(i);
|
||||
|
||||
if (cm->requiredParentClass == parentClass
|
||||
&& cm->returnType == returnType
|
||||
&& cm->prototype == prototype)
|
||||
return cm->content;
|
||||
}
|
||||
|
||||
CallbackMethod* const cm = new CallbackMethod();
|
||||
callbacks.add (cm);
|
||||
|
||||
cm->requiredParentClass = parentClass;
|
||||
cm->returnType = returnType;
|
||||
cm->prototype = prototype;
|
||||
cm->hasPrePostUserSections = hasPrePostUserSections;
|
||||
return cm->content;
|
||||
}
|
||||
|
||||
void CodeGenerator::removeCallback (const String& returnType, const String& prototype)
|
||||
{
|
||||
for (int i = callbacks.size(); --i >= 0;)
|
||||
{
|
||||
CallbackMethod* const cm = callbacks.getUnchecked(i);
|
||||
|
||||
if (cm->returnType == returnType && cm->prototype == prototype)
|
||||
callbacks.remove (i);
|
||||
}
|
||||
}
|
||||
|
||||
void CodeGenerator::addImageResourceLoader (const String& imageMemberName, const String& resourceName)
|
||||
{
|
||||
const String initialiser (imageMemberName + " (0)");
|
||||
|
||||
if (! memberInitialisers.contains (initialiser, false))
|
||||
{
|
||||
memberInitialisers.add (initialiser);
|
||||
|
||||
privateMemberDeclarations
|
||||
<< "Image* " << imageMemberName << ";" << newLine;
|
||||
|
||||
if (resourceName.isNotEmpty())
|
||||
{
|
||||
constructorCode
|
||||
<< imageMemberName << " = ImageCache::getFromMemory ("
|
||||
<< resourceName << ", " << resourceName << "Size);" << newLine;
|
||||
|
||||
destructorCode
|
||||
<< "ImageCache::release (" << imageMemberName << ");" << newLine;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const StringArray CodeGenerator::getExtraParentClasses() const
|
||||
{
|
||||
StringArray s;
|
||||
|
||||
for (int i = 0; i < callbacks.size(); ++i)
|
||||
{
|
||||
CallbackMethod* const cm = callbacks.getUnchecked(i);
|
||||
s.add (cm->requiredParentClass);
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
const String CodeGenerator::getCallbackDeclarations() const
|
||||
{
|
||||
String s;
|
||||
|
||||
for (int i = 0; i < callbacks.size(); ++i)
|
||||
{
|
||||
CallbackMethod* const cm = callbacks.getUnchecked(i);
|
||||
|
||||
s << cm->returnType << " " << cm->prototype << ";" << newLine;
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
const String CodeGenerator::getCallbackDefinitions() const
|
||||
{
|
||||
String s;
|
||||
|
||||
for (int i = 0; i < callbacks.size(); ++i)
|
||||
{
|
||||
CallbackMethod* const cm = callbacks.getUnchecked(i);
|
||||
|
||||
const String userCodeBlockName ("User" + makeValidCppIdentifier (cm->prototype.upToFirstOccurrenceOf ("(", false, false),
|
||||
true, true, false).trim());
|
||||
|
||||
if (userCodeBlockName.isNotEmpty() && cm->hasPrePostUserSections)
|
||||
{
|
||||
s << cm->returnType << " " << className << "::" << cm->prototype
|
||||
<< newLine
|
||||
<< "{" << newLine
|
||||
<< " //[" << userCodeBlockName << "_Pre]" << newLine
|
||||
<< " //[/" << userCodeBlockName
|
||||
<< "_Pre]" << newLine << newLine
|
||||
<< " " << indentCode (cm->content.trim(), 4) << newLine
|
||||
<< newLine
|
||||
<< " //[" << userCodeBlockName << "_Post]" << newLine
|
||||
<< " //[/" << userCodeBlockName << "_Post]" << newLine
|
||||
<< "}" << newLine
|
||||
<< newLine;
|
||||
}
|
||||
else
|
||||
{
|
||||
s << cm->returnType << " " << className << "::" << cm->prototype << newLine
|
||||
<< "{" << newLine
|
||||
<< " " << indentCode (cm->content.trim(), 4) << newLine
|
||||
<< "}" << newLine
|
||||
<< newLine;
|
||||
}
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
const String CodeGenerator::getClassDeclaration() const
|
||||
{
|
||||
StringArray parentClassLines;
|
||||
parentClassLines.addTokens (parentClasses, ",", String::empty);
|
||||
parentClassLines.addArray (getExtraParentClasses());
|
||||
|
||||
parentClassLines.trim();
|
||||
parentClassLines.removeEmptyStrings();
|
||||
parentClassLines.removeDuplicates (false);
|
||||
|
||||
if (parentClassLines.contains ("public Button", false))
|
||||
parentClassLines.removeString ("public Component", false);
|
||||
|
||||
String r ("class ");
|
||||
r << className << " : ";
|
||||
|
||||
r += parentClassLines.joinIntoString ("," + String (newLine) + String::repeatedString (" ", r.length()));
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
const String CodeGenerator::getInitialiserList() const
|
||||
{
|
||||
StringArray inits (memberInitialisers);
|
||||
|
||||
if (parentClassInitialiser.isNotEmpty())
|
||||
inits.insert (0, parentClassInitialiser);
|
||||
|
||||
inits.trim();
|
||||
inits.removeEmptyStrings();
|
||||
inits.removeDuplicates (false);
|
||||
|
||||
String s;
|
||||
|
||||
if (inits.size() == 0)
|
||||
return s;
|
||||
|
||||
s << " : ";
|
||||
|
||||
for (int i = 0; i < inits.size(); ++i)
|
||||
{
|
||||
String init (inits[i]);
|
||||
|
||||
while (init.endsWithChar (','))
|
||||
init = init.dropLastCharacters (1);
|
||||
|
||||
s << init;
|
||||
|
||||
if (i < inits.size() - 1)
|
||||
s << "," << newLine << " ";
|
||||
else
|
||||
s << newLine;
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
static const String getIncludeFileCode (StringArray files)
|
||||
{
|
||||
files.trim();
|
||||
files.removeEmptyStrings();
|
||||
files.removeDuplicates (false);
|
||||
|
||||
String s;
|
||||
|
||||
for (int i = 0; i < files.size(); ++i)
|
||||
s << "#include \"" << files[i] << "\"" << newLine;
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
static bool getUserSection (const StringArray& lines, const String& tag, StringArray& resultLines)
|
||||
{
|
||||
const int start = indexOfLineStartingWith (lines, "//[" + tag + "]", 0);
|
||||
|
||||
if (start < 0)
|
||||
return false;
|
||||
|
||||
const int end = indexOfLineStartingWith (lines, "//[/" + tag + "]", start + 1);
|
||||
|
||||
for (int i = start + 1; i < end; ++i)
|
||||
resultLines.add (lines [i]);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
static void copyAcrossUserSections (String& dest, const String& src)
|
||||
{
|
||||
StringArray srcLines, dstLines;
|
||||
srcLines.addLines (src);
|
||||
dstLines.addLines (dest);
|
||||
|
||||
for (int i = 0; i < dstLines.size(); ++i)
|
||||
{
|
||||
if (dstLines[i].trimStart().startsWith ("//["))
|
||||
{
|
||||
String tag (dstLines[i].trimStart().substring (3));
|
||||
tag = tag.upToFirstOccurrenceOf ("]", false, false);
|
||||
|
||||
jassert (! tag.startsWithChar ('/'));
|
||||
|
||||
if (! tag.startsWithChar ('/'))
|
||||
{
|
||||
const int endLine = indexOfLineStartingWith (dstLines,
|
||||
"//[/" + tag + "]",
|
||||
i + 1);
|
||||
|
||||
if (endLine > i)
|
||||
{
|
||||
StringArray sourceLines;
|
||||
|
||||
if (getUserSection (srcLines, tag, sourceLines))
|
||||
{
|
||||
int j;
|
||||
for (j = endLine - i; --j > 0;)
|
||||
dstLines.remove (i + 1);
|
||||
|
||||
for (j = 0; j < sourceLines.size(); ++j)
|
||||
dstLines.insert (++i, sourceLines [j].trimEnd());
|
||||
|
||||
++i;
|
||||
}
|
||||
else
|
||||
{
|
||||
i = endLine;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dstLines.set (i, dstLines[i].trimEnd());
|
||||
}
|
||||
|
||||
dest = dstLines.joinIntoString (newLine) + newLine;
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
static void replaceTemplate (String& text, const String& itemName, const String& value)
|
||||
{
|
||||
for (;;)
|
||||
{
|
||||
const int index = text.indexOf ("%%" + itemName + "%%");
|
||||
|
||||
if (index < 0)
|
||||
break;
|
||||
|
||||
int indentLevel = 0;
|
||||
|
||||
for (int i = index; --i >= 0;)
|
||||
{
|
||||
if (text[i] == '\n')
|
||||
break;
|
||||
|
||||
++indentLevel;
|
||||
}
|
||||
|
||||
text = text.replaceSection (index, itemName.length() + 4,
|
||||
indentCode (value, indentLevel));
|
||||
}
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
void CodeGenerator::applyToCode (String& code,
|
||||
const String& fileNameRoot,
|
||||
const bool isForPreview,
|
||||
const String& oldFileWithUserData) const
|
||||
{
|
||||
// header guard..
|
||||
String headerGuard ("__JUCER_HEADER_");
|
||||
headerGuard << className.toUpperCase().retainCharacters ("ABCDEFGHIJKLMNOPQRSTUVWXYZ")
|
||||
<< "_" << fileNameRoot.toUpperCase().retainCharacters ("ABCDEFGHIJKLMNOPQRSTUVWXYZ")
|
||||
<< "_" << String::toHexString (Random::getSystemRandom().nextInt()).toUpperCase() << "__";
|
||||
|
||||
replaceTemplate (code, "headerGuard", headerGuard);
|
||||
|
||||
replaceTemplate (code, "creationTime", Time::getCurrentTime().toString (true, true, true));
|
||||
|
||||
replaceTemplate (code, "className", className);
|
||||
replaceTemplate (code, "constructorParams", constructorParams);
|
||||
replaceTemplate (code, "initialisers", getInitialiserList());
|
||||
|
||||
replaceTemplate (code, "classDeclaration", getClassDeclaration());
|
||||
replaceTemplate (code, "privateMemberDeclarations", privateMemberDeclarations);
|
||||
replaceTemplate (code, "publicMemberDeclarations", getCallbackDeclarations() + newLine + publicMemberDeclarations);
|
||||
|
||||
replaceTemplate (code, "methodDefinitions", getCallbackDefinitions());
|
||||
|
||||
replaceTemplate (code, "includeFilesH", getIncludeFileCode (includeFilesH));
|
||||
replaceTemplate (code, "includeFilesCPP", getIncludeFileCode (includeFilesCPP));
|
||||
|
||||
replaceTemplate (code, "constructor", constructorCode);
|
||||
replaceTemplate (code, "destructor", destructorCode);
|
||||
|
||||
if (! isForPreview)
|
||||
{
|
||||
replaceTemplate (code, "metadata", jucerMetadata);
|
||||
replaceTemplate (code, "staticMemberDefinitions", staticMemberDefinitions);
|
||||
}
|
||||
else
|
||||
{
|
||||
replaceTemplate (code, "metadata", " << Metadata isn't shown in the code preview >>" + String (newLine));
|
||||
replaceTemplate (code, "staticMemberDefinitions", "// Static member declarations and resources would go here... (these aren't shown in the code preview)");
|
||||
}
|
||||
|
||||
copyAcrossUserSections (code, oldFileWithUserData);
|
||||
}
|
||||
|
|
@ -0,0 +1,94 @@
|
|||
/*
|
||||
==============================================================================
|
||||
|
||||
This file is part of the JUCE library - "Jules' Utility Class Extensions"
|
||||
Copyright 2004-9 by Raw Material Software Ltd.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
JUCE can be redistributed and/or modified under the terms of the GNU General
|
||||
Public License (Version 2), as published by the Free Software Foundation.
|
||||
A copy of the license is included in the JUCE distribution, or can be found
|
||||
online at www.gnu.org/licenses.
|
||||
|
||||
JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
||||
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
To release a closed-source product which uses JUCE, commercial licenses are
|
||||
available: visit www.rawmaterialsoftware.com/juce for more information.
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
#ifndef __JUCER_CODEGENERATOR_H_F79AEF58__
|
||||
#define __JUCER_CODEGENERATOR_H_F79AEF58__
|
||||
|
||||
#include "../jucer_Headers.h"
|
||||
|
||||
|
||||
//==============================================================================
|
||||
class CodeGenerator
|
||||
{
|
||||
public:
|
||||
//==============================================================================
|
||||
CodeGenerator();
|
||||
~CodeGenerator();
|
||||
|
||||
//==============================================================================
|
||||
void applyToCode (String& codeTemplate,
|
||||
const String& fileNameRoot,
|
||||
const bool isForPreview,
|
||||
const String& oldFileContents) const;
|
||||
|
||||
int getUniqueSuffix();
|
||||
|
||||
//==============================================================================
|
||||
String className;
|
||||
String componentName;
|
||||
String parentClassInitialiser; // optional parent class initialiser to go before the items in the initialisers list
|
||||
StringArray memberInitialisers;
|
||||
String parentClasses;
|
||||
String constructorParams;
|
||||
String privateMemberDeclarations;
|
||||
String publicMemberDeclarations;
|
||||
StringArray includeFilesH, includeFilesCPP;
|
||||
String constructorCode;
|
||||
String destructorCode;
|
||||
String staticMemberDefinitions;
|
||||
String jucerMetadata;
|
||||
|
||||
struct CallbackMethod
|
||||
{
|
||||
String requiredParentClass, returnType, prototype, content;
|
||||
bool hasPrePostUserSections;
|
||||
};
|
||||
|
||||
OwnedArray<CallbackMethod> callbacks;
|
||||
|
||||
String& getCallbackCode (const String& requiredParentClass,
|
||||
const String& returnType,
|
||||
const String& prototype,
|
||||
const bool hasPrePostUserSections);
|
||||
|
||||
void removeCallback (const String& returnType, const String& prototype);
|
||||
|
||||
void addImageResourceLoader (const String& imageMemberName, const String& resourceName);
|
||||
|
||||
const String getCallbackDeclarations() const;
|
||||
const String getCallbackDefinitions() const;
|
||||
const StringArray getExtraParentClasses() const;
|
||||
|
||||
private:
|
||||
const String getClassDeclaration() const;
|
||||
const String getInitialiserList() const;
|
||||
int suffix;
|
||||
|
||||
CodeGenerator (const CodeGenerator&);
|
||||
CodeGenerator& operator= (const CodeGenerator&);
|
||||
};
|
||||
|
||||
|
||||
#endif // __JUCER_CODEGENERATOR_H_F79AEF58__
|
||||
|
|
@ -525,10 +525,7 @@ private:
|
|||
|
||||
if (iPhone)
|
||||
{
|
||||
s.addTokens ("UIKit Foundation CoreGraphics AudioToolbox", false);
|
||||
|
||||
if ((int) project.getJuceConfigFlag ("JUCE_OPENGL").getValue() == 1)
|
||||
s.addTokens ("QuartzCore OpenGLES", false);
|
||||
s.addTokens ("UIKit Foundation CoreGraphics AudioToolbox QuartzCore OpenGLES", false);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -0,0 +1,70 @@
|
|||
/*
|
||||
==============================================================================
|
||||
|
||||
This is an automatically generated file created by the Jucer!
|
||||
|
||||
Creation date: %%creationTime%%
|
||||
|
||||
Be careful when adding custom code to these files, as only the code within
|
||||
the "//[xyz]" and "//[/xyz]" sections will be retained when the file is loaded
|
||||
and re-saved.
|
||||
|
||||
Jucer version: 1.12
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
The Jucer is part of the JUCE library - "Jules' Utility Class Extensions"
|
||||
Copyright 2004-6 by Raw Material Software ltd.
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
//[Headers] You can add your own extra header files here...
|
||||
//[/Headers]
|
||||
|
||||
%%includeFilesCPP%%
|
||||
|
||||
//[MiscUserDefs] You can add your own user definitions and misc code here...
|
||||
//[/MiscUserDefs]
|
||||
|
||||
//==============================================================================
|
||||
%%className%%::%%className%% (%%constructorParams%%)
|
||||
%%initialisers%%{
|
||||
%%constructor%%
|
||||
|
||||
//[Constructor] You can add your own custom stuff here..
|
||||
//[/Constructor]
|
||||
}
|
||||
|
||||
%%className%%::~%%className%%()
|
||||
{
|
||||
//[Destructor_pre]. You can add your own custom destruction code here..
|
||||
//[/Destructor_pre]
|
||||
|
||||
%%destructor%%
|
||||
|
||||
//[Destructor]. You can add your own custom destruction code here..
|
||||
//[/Destructor]
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
%%methodDefinitions%%
|
||||
|
||||
//[MiscUserCode] You can add your own definitions of your custom methods or any other code here...
|
||||
//[/MiscUserCode]
|
||||
|
||||
|
||||
//==============================================================================
|
||||
#if 0
|
||||
/* -- Jucer information section --
|
||||
|
||||
This is where the Jucer puts all of its metadata, so don't change anything in here!
|
||||
|
||||
BEGIN_JUCER_METADATA
|
||||
|
||||
%%metadata%%
|
||||
END_JUCER_METADATA
|
||||
*/
|
||||
#endif
|
||||
|
||||
%%staticMemberDefinitions%%
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
/*
|
||||
==============================================================================
|
||||
|
||||
This is an automatically generated file created by the Jucer!
|
||||
|
||||
Creation date: %%creationTime%%
|
||||
|
||||
Be careful when adding custom code to these files, as only the code within
|
||||
the "//[xyz]" and "//[/xyz]" sections will be retained when the file is loaded
|
||||
and re-saved.
|
||||
|
||||
Jucer version: 1.12
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
The Jucer is part of the JUCE library - "Jules' Utility Class Extensions"
|
||||
Copyright 2004-6 by Raw Material Software ltd.
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
#ifndef %%headerGuard%%
|
||||
#define %%headerGuard%%
|
||||
|
||||
//[Headers] -- You can add your own extra header files here --
|
||||
#include "juce.h"
|
||||
//[/Headers]
|
||||
|
||||
%%includeFilesH%%
|
||||
|
||||
//==============================================================================
|
||||
/**
|
||||
//[Comments]
|
||||
An auto-generated component, created by the Jucer.
|
||||
|
||||
Describe your class and how it works here!
|
||||
//[/Comments]
|
||||
*/
|
||||
%%classDeclaration%%
|
||||
{
|
||||
public:
|
||||
//==============================================================================
|
||||
%%className%% (%%constructorParams%%);
|
||||
~%%className%%();
|
||||
|
||||
//==============================================================================
|
||||
//[UserMethods] -- You can add your own custom methods in this section.
|
||||
//[/UserMethods]
|
||||
|
||||
%%publicMemberDeclarations%%
|
||||
|
||||
//==============================================================================
|
||||
juce_UseDebuggingNewOperator
|
||||
|
||||
private:
|
||||
//[UserVariables] -- You can add your own custom variables in this section.
|
||||
//[/UserVariables]
|
||||
|
||||
//==============================================================================
|
||||
%%privateMemberDeclarations%%
|
||||
|
||||
//==============================================================================
|
||||
// (prevent copy constructor and operator= being generated..)
|
||||
%%className%% (const %%className%%&);
|
||||
const %%className%%& operator= (const %%className%%&);
|
||||
};
|
||||
|
||||
|
||||
#endif // %%headerGuard%%
|
||||
|
|
@ -83,6 +83,9 @@ public:
|
|||
|
||||
if (exp != 0)
|
||||
exp->createPropertyEditors (props);
|
||||
|
||||
for (int i = props.size(); --i >= 0;)
|
||||
props.getUnchecked(i)->setPreferredHeight (22);
|
||||
}
|
||||
|
||||
getPanel()->addProperties (props);
|
||||
|
|
|
|||
|
|
@ -486,7 +486,7 @@ const String indentCode (const String& code, const int numSpaces)
|
|||
lines.set (i, s);
|
||||
}
|
||||
|
||||
return lines.joinIntoString ("\n");
|
||||
return lines.joinIntoString (newLine);
|
||||
}
|
||||
|
||||
int indexOfLineStartingWith (const StringArray& lines, const String& text, int startIndex)
|
||||
|
|
|
|||
|
|
@ -10,6 +10,8 @@
|
|||
D8DBAED4AB03622A655367C6 = { isa = PBXBuildFile; fileRef = 3DE047A554FB376BE3DA4C65; };
|
||||
1622BC343C98F98AC2AC0459 = { isa = PBXBuildFile; fileRef = AA21728A979A53287A0DEFED; };
|
||||
D397D8CEF8663F449B4439C0 = { isa = PBXBuildFile; fileRef = 18665A7A93EDBA956B64774E; };
|
||||
9EA4F1C0E2356AB5C07CE95E = { isa = PBXBuildFile; fileRef = E6809DE026C8BEAB082B3DEB; };
|
||||
C37934E8A18A3A82637C1445 = { isa = PBXBuildFile; fileRef = 541D7BED72093B09E01E3FD1; };
|
||||
C67B5243DBC7218FEC5DBCC0 = { isa = PBXBuildFile; fileRef = E7507E799D8BDA92BDB78915; };
|
||||
9B11A7532637EC12F1DC4B2E = { isa = PBXBuildFile; fileRef = 0DB195C2B3538434D7D20B51; };
|
||||
CFFBB821ECB7D85603624533 = { isa = PBXBuildFile; fileRef = 57FFE120531343D50B7D2D28; };
|
||||
|
|
@ -20,6 +22,8 @@
|
|||
3DE047A554FB376BE3DA4C65 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||
AA21728A979A53287A0DEFED = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
|
||||
18665A7A93EDBA956B64774E = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
|
||||
E6809DE026C8BEAB082B3DEB = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
|
||||
541D7BED72093B09E01E3FD1 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
|
||||
D5A29444C637255D66ACB7AE = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = HelloWorld.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
B786F246076E6F5D363A6A2C = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = SOURCE_ROOT; };
|
||||
E7507E799D8BDA92BDB78915 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = ../../Source/Main.cpp; sourceTree = SOURCE_ROOT; };
|
||||
|
|
@ -48,7 +52,9 @@
|
|||
6B236CD90C0803738D7B5235,
|
||||
3DE047A554FB376BE3DA4C65,
|
||||
AA21728A979A53287A0DEFED,
|
||||
18665A7A93EDBA956B64774E ); name = Frameworks; sourceTree = "<group>"; };
|
||||
18665A7A93EDBA956B64774E,
|
||||
E6809DE026C8BEAB082B3DEB,
|
||||
541D7BED72093B09E01E3FD1 ); name = Frameworks; sourceTree = "<group>"; };
|
||||
DC3A70675753A61E8C7CD36B = { isa = PBXGroup; children = (
|
||||
D5A29444C637255D66ACB7AE ); name = Products; sourceTree = "<group>"; };
|
||||
4297D3C9A6348BA224516847 = { isa = PBXGroup; children = (
|
||||
|
|
@ -131,7 +137,9 @@
|
|||
BAEB975FAD8A99FA884DC593,
|
||||
D8DBAED4AB03622A655367C6,
|
||||
1622BC343C98F98AC2AC0459,
|
||||
D397D8CEF8663F449B4439C0 ); runOnlyForDeploymentPostprocessing = 0; };
|
||||
D397D8CEF8663F449B4439C0,
|
||||
9EA4F1C0E2356AB5C07CE95E,
|
||||
C37934E8A18A3A82637C1445 ); runOnlyForDeploymentPostprocessing = 0; };
|
||||
9F559EB2CC99871D47887B82 = { isa = PBXNativeTarget; buildConfigurationList = 6F5E160F06E7FAD8B5C96752; buildPhases = (
|
||||
4B8D17F77F2E2E7A2419CB17,
|
||||
172414663F1A38D78D2B00C3,
|
||||
|
|
|
|||
|
|
@ -100,13 +100,13 @@
|
|||
</GROUP>
|
||||
</MAINGROUP>
|
||||
<JUCEOPTIONS JUCE_FORCE_DEBUG="default" JUCE_LOG_ASSERTIONS="default" JUCE_ASIO="default"
|
||||
JUCE_WASAPI="enabled" JUCE_DIRECTSOUND="default" JUCE_ALSA="default"
|
||||
JUCE_QUICKTIME="enabled" JUCE_OPENGL="enabled" JUCE_USE_FLAC="default"
|
||||
JUCE_WASAPI="default" JUCE_DIRECTSOUND="default" JUCE_ALSA="default"
|
||||
JUCE_QUICKTIME="default" JUCE_OPENGL="default" JUCE_USE_FLAC="default"
|
||||
JUCE_USE_OGGVORBIS="default" JUCE_USE_CDBURNER="default" JUCE_USE_CDREADER="default"
|
||||
JUCE_USE_CAMERA="enabled" JUCE_ENABLE_REPAINT_DEBUGGING="default"
|
||||
JUCE_USE_CAMERA="default" JUCE_ENABLE_REPAINT_DEBUGGING="default"
|
||||
JUCE_USE_XINERAMA="default" JUCE_USE_XSHM="default" JUCE_PLUGINHOST_VST="disabled"
|
||||
JUCE_PLUGINHOST_AU="disabled" JUCE_ONLY_BUILD_CORE_LIBRARY="default"
|
||||
JUCE_WEB_BROWSER="enabled" JUCE_SUPPORT_CARBON="default" JUCE_CHECK_MEMORY_LEAKS="default"
|
||||
JUCE_WEB_BROWSER="default" JUCE_SUPPORT_CARBON="default" JUCE_CHECK_MEMORY_LEAKS="default"
|
||||
JUCE_CATCH_UNHANDLED_EXCEPTIONS="default" JUCE_STRINGS_ARE_UNICODE="default"
|
||||
JUCE_USE_XRENDER="default" JUCE_USE_XCURSOR="default"/>
|
||||
</JUCERPROJECT>
|
||||
|
|
|
|||
|
|
@ -14,16 +14,16 @@
|
|||
//#define JUCE_FORCE_DEBUG
|
||||
//#define JUCE_LOG_ASSERTIONS
|
||||
//#define JUCE_ASIO
|
||||
#define JUCE_WASAPI 1
|
||||
//#define JUCE_WASAPI
|
||||
//#define JUCE_DIRECTSOUND
|
||||
//#define JUCE_ALSA
|
||||
#define JUCE_QUICKTIME 1
|
||||
#define JUCE_OPENGL 1
|
||||
//#define JUCE_QUICKTIME
|
||||
//#define JUCE_OPENGL
|
||||
//#define JUCE_USE_FLAC
|
||||
//#define JUCE_USE_OGGVORBIS
|
||||
//#define JUCE_USE_CDBURNER
|
||||
//#define JUCE_USE_CDREADER
|
||||
#define JUCE_USE_CAMERA 1
|
||||
//#define JUCE_USE_CAMERA
|
||||
//#define JUCE_ENABLE_REPAINT_DEBUGGING
|
||||
//#define JUCE_USE_XINERAMA
|
||||
//#define JUCE_USE_XSHM
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
#define JUCE_PLUGINHOST_VST 0
|
||||
#define JUCE_PLUGINHOST_AU 0
|
||||
//#define JUCE_ONLY_BUILD_CORE_LIBRARY
|
||||
#define JUCE_WEB_BROWSER 1
|
||||
//#define JUCE_WEB_BROWSER
|
||||
//#define JUCE_SUPPORT_CARBON
|
||||
//#define JUCE_CHECK_MEMORY_LEAKS
|
||||
//#define JUCE_CATCH_UNHANDLED_EXCEPTIONS
|
||||
|
|
|
|||
|
|
@ -227,7 +227,7 @@
|
|||
If you're not using any embedded web-pages, turning this off may reduce your code size.
|
||||
*/
|
||||
#ifndef JUCE_WEB_BROWSER
|
||||
#define JUCE_WEB_BROWSER 0
|
||||
#define JUCE_WEB_BROWSER 1
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -260,7 +260,7 @@
|
|||
#endif
|
||||
|
||||
#ifndef JUCE_WEB_BROWSER
|
||||
#define JUCE_WEB_BROWSER 0
|
||||
#define JUCE_WEB_BROWSER 1
|
||||
#endif
|
||||
|
||||
#ifndef JUCE_SUPPORT_CARBON
|
||||
|
|
@ -226869,7 +226869,7 @@ private:
|
|||
|
||||
if (pinName == 0 || String (pinName).equalsIgnoreCase (String (info.achName)))
|
||||
{
|
||||
pin.p->AddRef();
|
||||
pin->AddRef();
|
||||
*result = pin;
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -281,7 +281,7 @@
|
|||
#endif
|
||||
|
||||
#ifndef JUCE_WEB_BROWSER
|
||||
#define JUCE_WEB_BROWSER 0
|
||||
#define JUCE_WEB_BROWSER 1
|
||||
#endif
|
||||
|
||||
#ifndef JUCE_SUPPORT_CARBON
|
||||
|
|
@ -5900,11 +5900,6 @@ public:
|
|||
|
||||
simplify();
|
||||
}
|
||||
|
||||
String s;
|
||||
for (int i = 0; i < values.size(); ++i)
|
||||
s << values[i] << " ";
|
||||
DBG (s);
|
||||
}
|
||||
|
||||
void removeRange (const Range<Type>& rangeToRemove)
|
||||
|
|
|
|||
|
|
@ -180,11 +180,6 @@ public:
|
|||
|
||||
simplify();
|
||||
}
|
||||
|
||||
String s;
|
||||
for (int i = 0; i < values.size(); ++i)
|
||||
s << values[i] << " ";
|
||||
DBG (s);
|
||||
}
|
||||
|
||||
/** Removes a range of values from the set.
|
||||
|
|
|
|||
|
|
@ -569,7 +569,7 @@ private:
|
|||
|
||||
if (pinName == 0 || String (pinName).equalsIgnoreCase (String (info.achName)))
|
||||
{
|
||||
pin.p->AddRef();
|
||||
pin->AddRef();
|
||||
*result = pin;
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue