@@ -488,14 +488,21 @@ private: | |||||
StringArray s; | StringArray s; | ||||
if (iPhone) | if (iPhone) | ||||
{ | |||||
s.addTokens (T("UIKit Foundation CoreGraphics AudioToolbox"), false); | s.addTokens (T("UIKit Foundation CoreGraphics AudioToolbox"), false); | ||||
if ((int) project.getJuceConfigFlag ("JUCE_OPENGL").getValue() == 1) | |||||
s.addTokens (T("QuartzCore OpenGLES"), false); | |||||
} | |||||
else | else | ||||
{ | |||||
s.addTokens (T("Cocoa Carbon IOKit CoreAudio CoreMIDI WebKit DiscRecording OpenGL QuartzCore QTKit QuickTime"), false); | s.addTokens (T("Cocoa Carbon IOKit CoreAudio CoreMIDI WebKit DiscRecording OpenGL QuartzCore QTKit QuickTime"), false); | ||||
if (isAU()) | |||||
s.addTokens (T("AudioUnit CoreAudioKit AudioToolbox"), false); | |||||
else if ((int) project.getJuceConfigFlag ("JUCE_PLUGINHOST_AU").getValue() == 1) | |||||
s.addTokens (T("AudioUnit CoreAudioKit"), false); | |||||
if (isAU()) | |||||
s.addTokens (T("AudioUnit CoreAudioKit AudioToolbox"), false); | |||||
else if ((int) project.getJuceConfigFlag ("JUCE_PLUGINHOST_AU").getValue() == 1) | |||||
s.addTokens (T("AudioUnit CoreAudioKit"), false); | |||||
} | |||||
for (int i = 0; i < s.size(); ++i) | for (int i = 0; i < s.size(); ++i) | ||||
addFramework (s[i]); | addFramework (s[i]); | ||||
@@ -6,171 +6,171 @@ | |||||
objectVersion = 44; | objectVersion = 44; | ||||
objects = { | objects = { | ||||
20915FFEC378C0A1E6C96EAC = { isa = PBXBuildFile; fileRef = 057B163F44EC0485FCA05081; }; | |||||
2CF185F6E9B8343940C21F92 = { isa = PBXBuildFile; fileRef = 2659C9B8310B8CD4ABA47820; }; | |||||
1B7FEDB2A01E18F33947B5CB = { isa = PBXBuildFile; fileRef = 38F80F061AE618AD08407BCA; }; | |||||
ECD42C38F1E71FE93C1BCE6E = { isa = PBXBuildFile; fileRef = 4080F849C1FE3013DB59DF12; }; | |||||
04D3F31A4C84BDA3B5F366CE = { isa = PBXBuildFile; fileRef = 21165FCC9F052172E7256B5C; }; | |||||
0428E26BE29AF1EA23210F83 = { isa = PBXBuildFile; fileRef = 56B5D2D3FB2B77560EF3E45E; }; | |||||
8124C59C2A41584D44D2952B = { isa = PBXBuildFile; fileRef = 843199DEE877339C6C9CF7FF; }; | |||||
3F0A163C30A5301DE2E578A9 = { isa = PBXBuildFile; fileRef = 792420D99BC9FBE3B74A7374; }; | |||||
6C00A25BA650290D8D48D8E6 = { isa = PBXBuildFile; fileRef = 4DF805B42961EC29F46CEDD1; }; | |||||
12E2DFFC0A4FF36F4288E4C2 = { isa = PBXBuildFile; fileRef = D56085DC9D0D09AF0DAEEA3F; }; | |||||
45F5DAF3E6E26132D920043D = { isa = PBXBuildFile; fileRef = DA42E80E8EBD70415618B8FC; }; | |||||
A9D4CEB8BF6B35872821ECCD = { isa = PBXBuildFile; fileRef = 8CAAF50C584E234C08D5F4B6; }; | |||||
07A544BF39B1B076D6A41228 = { isa = PBXBuildFile; fileRef = C08E0D90EDF5F3C1DC7960D9; }; | |||||
73F16F1F0146CEEA5DBCCA0E = { isa = PBXBuildFile; fileRef = F7AFA888A6F33AA6A41DBBF1; }; | |||||
83D2B03EB08B6BC6E0A385E1 = { isa = PBXBuildFile; fileRef = 4768B9E0E7E47689D2152273; }; | |||||
0C722E5F96990CA1B5F27046 = { isa = PBXBuildFile; fileRef = C142C47C1CCB975D7ED69A76; }; | |||||
F6BAACC4178B6483EF2089B9 = { isa = PBXBuildFile; fileRef = 12E008A030CFA73B8A2C5F8D; }; | |||||
133B5F3401B8B97010441CA8 = { isa = PBXBuildFile; fileRef = A679D77333FEDBBFDD3996CE; }; | |||||
BD4BACF416D7989BAB96272F = { isa = PBXBuildFile; fileRef = 90405E5EB08DAA8AEF278373; }; | |||||
FC7D30005FAF2F55AD31E1F7 = { isa = PBXBuildFile; fileRef = 53CDACB61E480F6CD0DA0227; }; | |||||
1F90CA68AED3A84286873E2D = { isa = PBXBuildFile; fileRef = 25F200D7C24E7D65E6180A96; }; | |||||
46770F1D01A9249360CAC4F1 = { isa = PBXBuildFile; fileRef = 7C337F848FFCE6B474C24F8F; }; | |||||
5F598B0DF13D01DB78462450 = { isa = PBXBuildFile; fileRef = CA67B495395BF40180861DBB; }; | |||||
443769AEA489DBFE4A6904B0 = { isa = PBXBuildFile; fileRef = 9BCDD95754B3483A5AA5CBA3; }; | |||||
F511BC8A5F0B5C9BC19F8FB7 = { isa = PBXBuildFile; fileRef = 10CD526C87D2AE14485D9E02; }; | |||||
C02D29C17C874EEB8B811264 = { isa = PBXBuildFile; fileRef = D77329750883321F2B19C175; }; | |||||
A586096D3A6BAF493634A393 = { isa = PBXBuildFile; fileRef = 685ED451763D1ECDF37C069A; }; | |||||
3F3DECC996DAADBDCD7D276C = { isa = PBXBuildFile; fileRef = B51FED2131FBE1356A01B300; }; | |||||
948DB156D3ADAC90034428A9 = { isa = PBXBuildFile; fileRef = B19EC95562A9E9EDC3E9B1A9; }; | |||||
554C5D64E0396AF57640E861 = { isa = PBXBuildFile; fileRef = E4275128DD1C668E42E12F93; }; | |||||
3D4C6B63961E3A0212142B8C = { isa = PBXBuildFile; fileRef = 14C92BB589AB3736AE0D2993; }; | |||||
D451763D1ECDF37C069A3770 = { isa = PBXBuildFile; fileRef = C5445AF598689D6BF0F83CBE; }; | |||||
EA6A2F2B7DE0322ED19BFD55 = { isa = PBXBuildFile; fileRef = B532F2C386E75E0E34783044; }; | |||||
F97659F31912D12C91E95549 = { isa = PBXBuildFile; fileRef = D027981BD4F6CC3DB5103192; }; | |||||
56752EC63E4979FD534D2009 = { isa = PBXBuildFile; fileRef = 78A1366D8680F8706D29BA89; }; | |||||
C383E3A9627121BF26A2EACA = { isa = PBXBuildFile; fileRef = 212AD4AE482A14B305233281; }; | |||||
2082A87B96A8C980E806A59A = { isa = PBXBuildFile; fileRef = DA9462FFFAC440E6BE3DBA78; }; | |||||
057B163F44EC0485FCA05081 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; | |||||
2659C9B8310B8CD4ABA47820 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; | |||||
38F80F061AE618AD08407BCA = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; | |||||
4080F849C1FE3013DB59DF12 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; | |||||
21165FCC9F052172E7256B5C = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; | |||||
56B5D2D3FB2B77560EF3E45E = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; | |||||
843199DEE877339C6C9CF7FF = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = System/Library/Frameworks/DiscRecording.framework; sourceTree = SDKROOT; }; | |||||
792420D99BC9FBE3B74A7374 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; | |||||
4DF805B42961EC29F46CEDD1 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; | |||||
D56085DC9D0D09AF0DAEEA3F = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QTKit.framework; path = System/Library/Frameworks/QTKit.framework; sourceTree = SDKROOT; }; | |||||
DA42E80E8EBD70415618B8FC = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = System/Library/Frameworks/QuickTime.framework; sourceTree = SDKROOT; }; | |||||
56BC57F08A02495F85DB8DC8 = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = JuceDemo.app; sourceTree = BUILT_PRODUCTS_DIR; }; | |||||
6B2414965418FDE8B71BF091 = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = SOURCE_ROOT; }; | |||||
8CAAF50C584E234C08D5F4B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ApplicationStartup.cpp; path = ../../Source/ApplicationStartup.cpp; sourceTree = SOURCE_ROOT; }; | |||||
C08E0D90EDF5F3C1DC7960D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MainDemoWindow.cpp; path = ../../Source/MainDemoWindow.cpp; sourceTree = SOURCE_ROOT; }; | |||||
FB1ADFC973C66571E2962637 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MainDemoWindow.h; path = ../../Source/MainDemoWindow.h; sourceTree = SOURCE_ROOT; }; | |||||
4BE34F808E4597871BE6E83D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucedemo_headers.h; path = ../../Source/jucedemo_headers.h; sourceTree = SOURCE_ROOT; }; | |||||
F7AFA888A6F33AA6A41DBBF1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoLatencyPage.cpp; path = ../../Source/demos/AudioDemoLatencyPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
C8FECA3890075D8C8124F71C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoLatencyPage.h; path = ../../Source/demos/AudioDemoLatencyPage.h; sourceTree = SOURCE_ROOT; }; | |||||
4768B9E0E7E47689D2152273 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoPlaybackPage.cpp; path = ../../Source/demos/AudioDemoPlaybackPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
8182FA9F3E05EA434B048C8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoPlaybackPage.h; path = ../../Source/demos/AudioDemoPlaybackPage.h; sourceTree = SOURCE_ROOT; }; | |||||
C142C47C1CCB975D7ED69A76 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoRecordPage.cpp; path = ../../Source/demos/AudioDemoRecordPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
123BE3D4AE300D6A8901D25C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoRecordPage.h; path = ../../Source/demos/AudioDemoRecordPage.h; sourceTree = SOURCE_ROOT; }; | |||||
12E008A030CFA73B8A2C5F8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSetupPage.cpp; path = ../../Source/demos/AudioDemoSetupPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
F3FBE7B3648DC27B2FD6B696 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSetupPage.h; path = ../../Source/demos/AudioDemoSetupPage.h; sourceTree = SOURCE_ROOT; }; | |||||
A679D77333FEDBBFDD3996CE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSynthPage.cpp; path = ../../Source/demos/AudioDemoSynthPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
2C7A5ABF7F84DDB6CC69FE24 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSynthPage.h; path = ../../Source/demos/AudioDemoSynthPage.h; sourceTree = SOURCE_ROOT; }; | |||||
90405E5EB08DAA8AEF278373 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoTabComponent.cpp; path = ../../Source/demos/AudioDemoTabComponent.cpp; sourceTree = SOURCE_ROOT; }; | |||||
00090BE7B99A50D58854C369 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoTabComponent.h; path = ../../Source/demos/AudioDemoTabComponent.h; sourceTree = SOURCE_ROOT; }; | |||||
53CDACB61E480F6CD0DA0227 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CameraDemo.cpp; path = ../../Source/demos/CameraDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
25F200D7C24E7D65E6180A96 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CodeEditorDemo.cpp; path = ../../Source/demos/CodeEditorDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
7C337F848FFCE6B474C24F8F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DragAndDropDemo.cpp; path = ../../Source/demos/DragAndDropDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
CA67B495395BF40180861DBB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = FontsAndTextDemo.cpp; path = ../../Source/demos/FontsAndTextDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
9BCDD95754B3483A5AA5CBA3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InterprocessCommsDemo.cpp; path = ../../Source/demos/InterprocessCommsDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
10CD526C87D2AE14485D9E02 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OpenGLDemo.cpp; path = ../../Source/demos/OpenGLDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
D77329750883321F2B19C175 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = QuickTimeDemo.cpp; path = ../../Source/demos/QuickTimeDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
685ED451763D1ECDF37C069A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RenderingTestComponent.cpp; path = ../../Source/demos/RenderingTestComponent.cpp; sourceTree = SOURCE_ROOT; }; | |||||
811F98EC290C7A97FC44209A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RenderingTestComponent.h; path = ../../Source/demos/RenderingTestComponent.h; sourceTree = SOURCE_ROOT; }; | |||||
B51FED2131FBE1356A01B300 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TableDemo.cpp; path = ../../Source/demos/TableDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
B19EC95562A9E9EDC3E9B1A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ThreadingDemo.cpp; path = ../../Source/demos/ThreadingDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
E4275128DD1C668E42E12F93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TreeViewDemo.cpp; path = ../../Source/demos/TreeViewDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
14C92BB589AB3736AE0D2993 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WebBrowserDemo.cpp; path = ../../Source/demos/WebBrowserDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
C5445AF598689D6BF0F83CBE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WidgetsDemo.cpp; path = ../../Source/demos/WidgetsDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
E393B96DABAE67B4BF9CC8A0 = { isa = PBXFileReference; lastKnownFileType = file.wav; name = cello.wav; path = "../../Binary Data/cello.wav"; sourceTree = SOURCE_ROOT; }; | |||||
29C2F4E4B5B2D1809AE3F2E0 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = "demo table data.xml"; path = "../../Binary Data/demo table data.xml"; sourceTree = SOURCE_ROOT; }; | |||||
3161255EB1EA2EB48796EF3D = { isa = PBXFileReference; lastKnownFileType = file.zip; name = icons.zip; path = "../../Binary Data/icons.zip"; sourceTree = SOURCE_ROOT; }; | |||||
7CD420C22AF83DB31EE71EA6 = { isa = PBXFileReference; lastKnownFileType = image.png; name = juce.png; path = "../../Binary Data/juce.png"; sourceTree = SOURCE_ROOT; }; | |||||
A5B7CC1437DA58DFC19AA3C8 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = treedemo.xml; path = "../../Binary Data/treedemo.xml"; sourceTree = SOURCE_ROOT; }; | |||||
3B0725900B1EB76FCFF9725F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = SOURCE_ROOT; }; | |||||
CF077D3ED7B7B56F351AAF67 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = SOURCE_ROOT; }; | |||||
B532F2C386E75E0E34783044 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = SOURCE_ROOT; }; | |||||
16FA53FF896BC5EA2C681C1A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = SOURCE_ROOT; }; | |||||
D027981BD4F6CC3DB5103192 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode1.mm; path = ../../JuceLibraryCode/JuceLibraryCode1.mm; sourceTree = SOURCE_ROOT; }; | |||||
78A1366D8680F8706D29BA89 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode2.mm; path = ../../JuceLibraryCode/JuceLibraryCode2.mm; sourceTree = SOURCE_ROOT; }; | |||||
212AD4AE482A14B305233281 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode3.mm; path = ../../JuceLibraryCode/JuceLibraryCode3.mm; sourceTree = SOURCE_ROOT; }; | |||||
DA9462FFFAC440E6BE3DBA78 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode4.mm; path = ../../JuceLibraryCode/JuceLibraryCode4.mm; sourceTree = SOURCE_ROOT; }; | |||||
FD1552CA3E06EF6E4FC85A8A = { isa = PBXGroup; children = ( | |||||
F7AFA888A6F33AA6A41DBBF1, | |||||
C8FECA3890075D8C8124F71C, | |||||
4768B9E0E7E47689D2152273, | |||||
8182FA9F3E05EA434B048C8B, | |||||
C142C47C1CCB975D7ED69A76, | |||||
123BE3D4AE300D6A8901D25C, | |||||
12E008A030CFA73B8A2C5F8D, | |||||
F3FBE7B3648DC27B2FD6B696, | |||||
A679D77333FEDBBFDD3996CE, | |||||
2C7A5ABF7F84DDB6CC69FE24, | |||||
90405E5EB08DAA8AEF278373, | |||||
00090BE7B99A50D58854C369, | |||||
53CDACB61E480F6CD0DA0227, | |||||
25F200D7C24E7D65E6180A96, | |||||
7C337F848FFCE6B474C24F8F, | |||||
CA67B495395BF40180861DBB, | |||||
9BCDD95754B3483A5AA5CBA3, | |||||
10CD526C87D2AE14485D9E02, | |||||
D77329750883321F2B19C175, | |||||
685ED451763D1ECDF37C069A, | |||||
811F98EC290C7A97FC44209A, | |||||
B51FED2131FBE1356A01B300, | |||||
B19EC95562A9E9EDC3E9B1A9, | |||||
E4275128DD1C668E42E12F93, | |||||
14C92BB589AB3736AE0D2993, | |||||
C5445AF598689D6BF0F83CBE ); name = Demos; sourceTree = "<group>"; }; | |||||
C9C1EC6EEE457C21A26B0EC3 = { isa = PBXGroup; children = ( | |||||
E393B96DABAE67B4BF9CC8A0, | |||||
29C2F4E4B5B2D1809AE3F2E0, | |||||
3161255EB1EA2EB48796EF3D, | |||||
7CD420C22AF83DB31EE71EA6, | |||||
A5B7CC1437DA58DFC19AA3C8 ); name = "Binary Data"; sourceTree = "<group>"; }; | |||||
2EA528914EC159A58C97A873 = { isa = PBXGroup; children = ( | |||||
8CAAF50C584E234C08D5F4B6, | |||||
C08E0D90EDF5F3C1DC7960D9, | |||||
FB1ADFC973C66571E2962637, | |||||
4BE34F808E4597871BE6E83D, | |||||
FD1552CA3E06EF6E4FC85A8A, | |||||
C9C1EC6EEE457C21A26B0EC3 ); name = Source; sourceTree = "<group>"; }; | |||||
3B5437A20FCADA50EBD06731 = { isa = PBXGroup; children = ( | |||||
3B0725900B1EB76FCFF9725F, | |||||
CF077D3ED7B7B56F351AAF67, | |||||
B532F2C386E75E0E34783044, | |||||
16FA53FF896BC5EA2C681C1A, | |||||
D027981BD4F6CC3DB5103192, | |||||
78A1366D8680F8706D29BA89, | |||||
212AD4AE482A14B305233281, | |||||
DA9462FFFAC440E6BE3DBA78 ); name = "Juce Library Code"; sourceTree = "<group>"; }; | |||||
F473AC9C072A0F6CF3B5410F = { isa = PBXGroup; children = ( | |||||
6B2414965418FDE8B71BF091 ); name = Resources; sourceTree = "<group>"; }; | |||||
6030FE912A851A2507B3BF34 = { isa = PBXGroup; children = ( | |||||
057B163F44EC0485FCA05081, | |||||
2659C9B8310B8CD4ABA47820, | |||||
38F80F061AE618AD08407BCA, | |||||
4080F849C1FE3013DB59DF12, | |||||
21165FCC9F052172E7256B5C, | |||||
56B5D2D3FB2B77560EF3E45E, | |||||
843199DEE877339C6C9CF7FF, | |||||
792420D99BC9FBE3B74A7374, | |||||
4DF805B42961EC29F46CEDD1, | |||||
D56085DC9D0D09AF0DAEEA3F, | |||||
DA42E80E8EBD70415618B8FC ); name = Frameworks; sourceTree = "<group>"; }; | |||||
29CBBCDCEE131C353F0715E1 = { isa = PBXGroup; children = ( | |||||
56BC57F08A02495F85DB8DC8 ); name = Products; sourceTree = "<group>"; }; | |||||
24AF20CBAA4DC5F17CFE8606 = { isa = PBXGroup; children = ( | |||||
2EA528914EC159A58C97A873, | |||||
3B5437A20FCADA50EBD06731, | |||||
F473AC9C072A0F6CF3B5410F, | |||||
6030FE912A851A2507B3BF34, | |||||
29CBBCDCEE131C353F0715E1 ); name = Source; sourceTree = "<group>"; }; | |||||
52C29F86E3DBE91F252B8C0D = { isa = XCBuildConfiguration; buildSettings = { | |||||
92A7143821252FB13891CC53 = { isa = PBXBuildFile; fileRef = 2B37CDCFCBC0AC0AEAA9A479; }; | |||||
DEDBEF9AC48F8AD1502B6DC2 = { isa = PBXBuildFile; fileRef = 6A7D4DC561F2DD95ABD76F0D; }; | |||||
29F75103FFB220F2E10CF9A9 = { isa = PBXBuildFile; fileRef = 3CE85049C3E91E38E71FF149; }; | |||||
687BFA1946EAD55C5C39907C = { isa = PBXBuildFile; fileRef = DA3360514D221A36446DC6DE; }; | |||||
ED283D0ABEC2EC312E40C6B4 = { isa = PBXBuildFile; fileRef = 010E9F48D32EA5C5451D8086; }; | |||||
0CFE603DE523940AF3352227 = { isa = PBXBuildFile; fileRef = 9BE978B2BDA9B7DA3BE403B4; }; | |||||
420A9C88B711F5E4997FAAD0 = { isa = PBXBuildFile; fileRef = CB7CDD93EE1469B969AF844E; }; | |||||
C1437C4A64EB72D2A86729D3 = { isa = PBXBuildFile; fileRef = 85E860BFDA9D53EF77C08873; }; | |||||
F1BAE9DCD179C8784FF28F8D = { isa = PBXBuildFile; fileRef = 4A96850C150C1C6D87A0D21A; }; | |||||
B9911F3AC6CADFB47D1EA8D7 = { isa = PBXBuildFile; fileRef = 4D3E0D18D24F78B6BDE0E5DA; }; | |||||
452052BBDBAF17DCC06EF521 = { isa = PBXBuildFile; fileRef = E0C3359BB4B5260CEB917D46; }; | |||||
78A66C2F9A9E2E6D011D8E5E = { isa = PBXBuildFile; fileRef = 885A20D277AD743C21C822B5; }; | |||||
CE5C46E66485B7D77B5ADB4E = { isa = PBXBuildFile; fileRef = 42291DB48BF81754D90FE200; }; | |||||
2E2DB52D03DD6A56FAC937A4 = { isa = PBXBuildFile; fileRef = 0704E2D6B0D1B38FBBBC6B85; }; | |||||
8E0E3B718F35E9E1DC3D89C5 = { isa = PBXBuildFile; fileRef = D856109CF311BB94D8EE8826; }; | |||||
C4C49D2D5D27730E55B27BCB = { isa = PBXBuildFile; fileRef = 411D5D0920812790F4F78462; }; | |||||
2CD67851BCF3F24E0B5F82CF = { isa = PBXBuildFile; fileRef = 67F817AAB55ED2BE16B376BF; }; | |||||
29C9F0E2824F63B105234C0A = { isa = PBXBuildFile; fileRef = FBCE524D94BF5BE0160142D4; }; | |||||
7EFB4E7D738BFFF90F49E0C0 = { isa = PBXBuildFile; fileRef = 048CEE4CC06227D8A57E47F2; }; | |||||
B69F5957B1729915BFB18735 = { isa = PBXBuildFile; fileRef = 7D65727C8F72F2BCC9A17D34; }; | |||||
F920A5AB6D0FF01022575079 = { isa = PBXBuildFile; fileRef = 268D7AFE2F3822C2C8E9A612; }; | |||||
A3AF0F559DD97F1B908AC1CA = { isa = PBXBuildFile; fileRef = F23738E4EFD2323063F82F1C; }; | |||||
2C0AB902CB01E38D87A2A6A5 = { isa = PBXBuildFile; fileRef = B7F4DAFA5F8F1FC976C8B55D; }; | |||||
ACD2210FDE1137548F995F85 = { isa = PBXBuildFile; fileRef = F7620D8D567CCE463ADDE0A6; }; | |||||
2F6BFF7DD839160223057CF7 = { isa = PBXBuildFile; fileRef = DA3BCFCC5BF07FC689DB5C34; }; | |||||
1552CF5A0A932C5EB88EC56C = { isa = PBXBuildFile; fileRef = D6EF70641473A3E7C0DC5168; }; | |||||
969C49FA8B55C700ED848494 = { isa = PBXBuildFile; fileRef = 3BC17D4051063C1BF66548C6; }; | |||||
AE1CB65D73BFB3FA707B59FF = { isa = PBXBuildFile; fileRef = 08B45C29F5EEC874E014D122; }; | |||||
99D9F5D6FC8A015C603B32C3 = { isa = PBXBuildFile; fileRef = D5F519861915C136BAA8D87A; }; | |||||
563DEC7941B88163A50E0945 = { isa = PBXBuildFile; fileRef = 402768B1A52E32348D505F18; }; | |||||
F5691895ACDC7B12DE88EFF4 = { isa = PBXBuildFile; fileRef = F2EB42A070E349D77ACF77C9; }; | |||||
4D5C0ED42C87FBE02A9C7BE6 = { isa = PBXBuildFile; fileRef = CF7FFEAFF4F386ED4DAED523; }; | |||||
80926D2B83ACF680958111EC = { isa = PBXBuildFile; fileRef = E6EF5CE04768BA5B10050D51; }; | |||||
2201A04DDCFC361882F8EA62 = { isa = PBXBuildFile; fileRef = BA05C84C3258A1978AF3D357; }; | |||||
2E98B1DEA8B7FC20ACCD2E6D = { isa = PBXBuildFile; fileRef = F42C91375F3314CA6EE65697; }; | |||||
3A2EC17F8472C338D6A26278 = { isa = PBXBuildFile; fileRef = 4D526A336B2E97ED42CADAD7; }; | |||||
36B5D100604D9A300187B773 = { isa = PBXBuildFile; fileRef = 8679333E781A0A0116AE5D26; }; | |||||
2B37CDCFCBC0AC0AEAA9A479 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; | |||||
6A7D4DC561F2DD95ABD76F0D = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; | |||||
3CE85049C3E91E38E71FF149 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; | |||||
DA3360514D221A36446DC6DE = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; | |||||
010E9F48D32EA5C5451D8086 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; | |||||
9BE978B2BDA9B7DA3BE403B4 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; | |||||
CB7CDD93EE1469B969AF844E = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = System/Library/Frameworks/DiscRecording.framework; sourceTree = SDKROOT; }; | |||||
85E860BFDA9D53EF77C08873 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; | |||||
4A96850C150C1C6D87A0D21A = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; | |||||
4D3E0D18D24F78B6BDE0E5DA = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QTKit.framework; path = System/Library/Frameworks/QTKit.framework; sourceTree = SDKROOT; }; | |||||
E0C3359BB4B5260CEB917D46 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = System/Library/Frameworks/QuickTime.framework; sourceTree = SDKROOT; }; | |||||
39B98C60B57B831FE5215CDD = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = JuceDemo.app; sourceTree = BUILT_PRODUCTS_DIR; }; | |||||
1A9DEA62F6A3CD1FB5CF105B = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = SOURCE_ROOT; }; | |||||
885A20D277AD743C21C822B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ApplicationStartup.cpp; path = ../../Source/ApplicationStartup.cpp; sourceTree = SOURCE_ROOT; }; | |||||
42291DB48BF81754D90FE200 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MainDemoWindow.cpp; path = ../../Source/MainDemoWindow.cpp; sourceTree = SOURCE_ROOT; }; | |||||
49138F5652E637AA67CD4B70 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MainDemoWindow.h; path = ../../Source/MainDemoWindow.h; sourceTree = SOURCE_ROOT; }; | |||||
18BDC68F9701862603871A7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucedemo_headers.h; path = ../../Source/jucedemo_headers.h; sourceTree = SOURCE_ROOT; }; | |||||
0704E2D6B0D1B38FBBBC6B85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoLatencyPage.cpp; path = ../../Source/demos/AudioDemoLatencyPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
D793BFCCD11E218E5CED3320 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoLatencyPage.h; path = ../../Source/demos/AudioDemoLatencyPage.h; sourceTree = SOURCE_ROOT; }; | |||||
D856109CF311BB94D8EE8826 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoPlaybackPage.cpp; path = ../../Source/demos/AudioDemoPlaybackPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
FC989E104DDB02E8A99B6564 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoPlaybackPage.h; path = ../../Source/demos/AudioDemoPlaybackPage.h; sourceTree = SOURCE_ROOT; }; | |||||
411D5D0920812790F4F78462 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoRecordPage.cpp; path = ../../Source/demos/AudioDemoRecordPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
570DE12AFA65E0EF97A76118 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoRecordPage.h; path = ../../Source/demos/AudioDemoRecordPage.h; sourceTree = SOURCE_ROOT; }; | |||||
67F817AAB55ED2BE16B376BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSetupPage.cpp; path = ../../Source/demos/AudioDemoSetupPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
91ACA90EFCAD4614B3ECC0C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSetupPage.h; path = ../../Source/demos/AudioDemoSetupPage.h; sourceTree = SOURCE_ROOT; }; | |||||
FBCE524D94BF5BE0160142D4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSynthPage.cpp; path = ../../Source/demos/AudioDemoSynthPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
865617D983052FBE0ADDDEDF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSynthPage.h; path = ../../Source/demos/AudioDemoSynthPage.h; sourceTree = SOURCE_ROOT; }; | |||||
048CEE4CC06227D8A57E47F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoTabComponent.cpp; path = ../../Source/demos/AudioDemoTabComponent.cpp; sourceTree = SOURCE_ROOT; }; | |||||
8BEA0B754661F3038DBAF558 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoTabComponent.h; path = ../../Source/demos/AudioDemoTabComponent.h; sourceTree = SOURCE_ROOT; }; | |||||
7D65727C8F72F2BCC9A17D34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CameraDemo.cpp; path = ../../Source/demos/CameraDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
268D7AFE2F3822C2C8E9A612 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CodeEditorDemo.cpp; path = ../../Source/demos/CodeEditorDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
F23738E4EFD2323063F82F1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DragAndDropDemo.cpp; path = ../../Source/demos/DragAndDropDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
B7F4DAFA5F8F1FC976C8B55D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = FontsAndTextDemo.cpp; path = ../../Source/demos/FontsAndTextDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
F7620D8D567CCE463ADDE0A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InterprocessCommsDemo.cpp; path = ../../Source/demos/InterprocessCommsDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
DA3BCFCC5BF07FC689DB5C34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OpenGLDemo.cpp; path = ../../Source/demos/OpenGLDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
D6EF70641473A3E7C0DC5168 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = QuickTimeDemo.cpp; path = ../../Source/demos/QuickTimeDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
3BC17D4051063C1BF66548C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RenderingTestComponent.cpp; path = ../../Source/demos/RenderingTestComponent.cpp; sourceTree = SOURCE_ROOT; }; | |||||
A6FB61B33BDDB0880203370C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RenderingTestComponent.h; path = ../../Source/demos/RenderingTestComponent.h; sourceTree = SOURCE_ROOT; }; | |||||
08B45C29F5EEC874E014D122 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TableDemo.cpp; path = ../../Source/demos/TableDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
D5F519861915C136BAA8D87A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ThreadingDemo.cpp; path = ../../Source/demos/ThreadingDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
402768B1A52E32348D505F18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TreeViewDemo.cpp; path = ../../Source/demos/TreeViewDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
F2EB42A070E349D77ACF77C9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WebBrowserDemo.cpp; path = ../../Source/demos/WebBrowserDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
CF7FFEAFF4F386ED4DAED523 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WidgetsDemo.cpp; path = ../../Source/demos/WidgetsDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
ACFD7F6AAFC09C234D15501D = { isa = PBXFileReference; lastKnownFileType = file.wav; name = cello.wav; path = "../../Binary Data/cello.wav"; sourceTree = SOURCE_ROOT; }; | |||||
A869663CA0E96FE15BB42A97 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = "demo table data.xml"; path = "../../Binary Data/demo table data.xml"; sourceTree = SOURCE_ROOT; }; | |||||
A76B69386F1F19647804510D = { isa = PBXFileReference; lastKnownFileType = file.zip; name = icons.zip; path = "../../Binary Data/icons.zip"; sourceTree = SOURCE_ROOT; }; | |||||
013E12213AD7B4BEB28A31BE = { isa = PBXFileReference; lastKnownFileType = image.png; name = juce.png; path = "../../Binary Data/juce.png"; sourceTree = SOURCE_ROOT; }; | |||||
C7327AD5191A22C1FBD4F5F9 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = treedemo.xml; path = "../../Binary Data/treedemo.xml"; sourceTree = SOURCE_ROOT; }; | |||||
EE37A0ECE471A928C6170F9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = SOURCE_ROOT; }; | |||||
A6B37799E63CCE882A3383FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = SOURCE_ROOT; }; | |||||
E6EF5CE04768BA5B10050D51 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = SOURCE_ROOT; }; | |||||
CC7EB9777A4DE3408705625C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = SOURCE_ROOT; }; | |||||
BA05C84C3258A1978AF3D357 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode1.mm; path = ../../JuceLibraryCode/JuceLibraryCode1.mm; sourceTree = SOURCE_ROOT; }; | |||||
F42C91375F3314CA6EE65697 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode2.mm; path = ../../JuceLibraryCode/JuceLibraryCode2.mm; sourceTree = SOURCE_ROOT; }; | |||||
4D526A336B2E97ED42CADAD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode3.mm; path = ../../JuceLibraryCode/JuceLibraryCode3.mm; sourceTree = SOURCE_ROOT; }; | |||||
8679333E781A0A0116AE5D26 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode4.mm; path = ../../JuceLibraryCode/JuceLibraryCode4.mm; sourceTree = SOURCE_ROOT; }; | |||||
1045A435754FDEACC6D7259C = { isa = PBXGroup; children = ( | |||||
0704E2D6B0D1B38FBBBC6B85, | |||||
D793BFCCD11E218E5CED3320, | |||||
D856109CF311BB94D8EE8826, | |||||
FC989E104DDB02E8A99B6564, | |||||
411D5D0920812790F4F78462, | |||||
570DE12AFA65E0EF97A76118, | |||||
67F817AAB55ED2BE16B376BF, | |||||
91ACA90EFCAD4614B3ECC0C5, | |||||
FBCE524D94BF5BE0160142D4, | |||||
865617D983052FBE0ADDDEDF, | |||||
048CEE4CC06227D8A57E47F2, | |||||
8BEA0B754661F3038DBAF558, | |||||
7D65727C8F72F2BCC9A17D34, | |||||
268D7AFE2F3822C2C8E9A612, | |||||
F23738E4EFD2323063F82F1C, | |||||
B7F4DAFA5F8F1FC976C8B55D, | |||||
F7620D8D567CCE463ADDE0A6, | |||||
DA3BCFCC5BF07FC689DB5C34, | |||||
D6EF70641473A3E7C0DC5168, | |||||
3BC17D4051063C1BF66548C6, | |||||
A6FB61B33BDDB0880203370C, | |||||
08B45C29F5EEC874E014D122, | |||||
D5F519861915C136BAA8D87A, | |||||
402768B1A52E32348D505F18, | |||||
F2EB42A070E349D77ACF77C9, | |||||
CF7FFEAFF4F386ED4DAED523 ); name = Demos; sourceTree = "<group>"; }; | |||||
7B2518B268DCBBF7B74F2B1D = { isa = PBXGroup; children = ( | |||||
ACFD7F6AAFC09C234D15501D, | |||||
A869663CA0E96FE15BB42A97, | |||||
A76B69386F1F19647804510D, | |||||
013E12213AD7B4BEB28A31BE, | |||||
C7327AD5191A22C1FBD4F5F9 ); name = "Binary Data"; sourceTree = "<group>"; }; | |||||
A10CCE1B2A215D5AE12386E3 = { isa = PBXGroup; children = ( | |||||
885A20D277AD743C21C822B5, | |||||
42291DB48BF81754D90FE200, | |||||
49138F5652E637AA67CD4B70, | |||||
18BDC68F9701862603871A7A, | |||||
1045A435754FDEACC6D7259C, | |||||
7B2518B268DCBBF7B74F2B1D ); name = Source; sourceTree = "<group>"; }; | |||||
4C2E644EAC72C263D09C74BB = { isa = PBXGroup; children = ( | |||||
EE37A0ECE471A928C6170F9B, | |||||
A6B37799E63CCE882A3383FB, | |||||
E6EF5CE04768BA5B10050D51, | |||||
CC7EB9777A4DE3408705625C, | |||||
BA05C84C3258A1978AF3D357, | |||||
F42C91375F3314CA6EE65697, | |||||
4D526A336B2E97ED42CADAD7, | |||||
8679333E781A0A0116AE5D26 ); name = "Juce Library Code"; sourceTree = "<group>"; }; | |||||
019CD423F1EFF7A1A0A079DD = { isa = PBXGroup; children = ( | |||||
1A9DEA62F6A3CD1FB5CF105B ); name = Resources; sourceTree = "<group>"; }; | |||||
244B9AF7D858999910FD243E = { isa = PBXGroup; children = ( | |||||
2B37CDCFCBC0AC0AEAA9A479, | |||||
6A7D4DC561F2DD95ABD76F0D, | |||||
3CE85049C3E91E38E71FF149, | |||||
DA3360514D221A36446DC6DE, | |||||
010E9F48D32EA5C5451D8086, | |||||
9BE978B2BDA9B7DA3BE403B4, | |||||
CB7CDD93EE1469B969AF844E, | |||||
85E860BFDA9D53EF77C08873, | |||||
4A96850C150C1C6D87A0D21A, | |||||
4D3E0D18D24F78B6BDE0E5DA, | |||||
E0C3359BB4B5260CEB917D46 ); name = Frameworks; sourceTree = "<group>"; }; | |||||
3F406773369804D0FBF2789A = { isa = PBXGroup; children = ( | |||||
39B98C60B57B831FE5215CDD ); name = Products; sourceTree = "<group>"; }; | |||||
D6A4B94A747BFCF299B17932 = { isa = PBXGroup; children = ( | |||||
A10CCE1B2A215D5AE12386E3, | |||||
4C2E644EAC72C263D09C74BB, | |||||
019CD423F1EFF7A1A0A079DD, | |||||
244B9AF7D858999910FD243E, | |||||
3F406773369804D0FBF2789A ); name = Source; sourceTree = "<group>"; }; | |||||
F46B3E8DBAFA746E04F4F62C = { isa = XCBuildConfiguration; buildSettings = { | |||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)"; | ARCHS = "$(ARCHS_STANDARD_32_BIT)"; | ||||
PREBINDING = NO; | PREBINDING = NO; | ||||
HEADER_SEARCH_PATHS = " $(inherited)"; | HEADER_SEARCH_PATHS = " $(inherited)"; | ||||
@@ -185,7 +185,7 @@ | |||||
GCC_PREPROCESSOR_DEFINITIONS = ( | GCC_PREPROCESSOR_DEFINITIONS = ( | ||||
"_DEBUG=1", | "_DEBUG=1", | ||||
"DEBUG=1 "); }; name = Debug; }; | "DEBUG=1 "); }; name = Debug; }; | ||||
7DBDB93B1B9DF79BA4819F7F = { isa = XCBuildConfiguration; buildSettings = { | |||||
8EF7C7FFD55219581A5075F3 = { isa = XCBuildConfiguration; buildSettings = { | |||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)"; | ARCHS = "$(ARCHS_STANDARD_32_BIT)"; | ||||
PREBINDING = NO; | PREBINDING = NO; | ||||
HEADER_SEARCH_PATHS = " $(inherited)"; | HEADER_SEARCH_PATHS = " $(inherited)"; | ||||
@@ -198,7 +198,7 @@ | |||||
GCC_PREPROCESSOR_DEFINITIONS = ( | GCC_PREPROCESSOR_DEFINITIONS = ( | ||||
"_NDEBUG=1", | "_NDEBUG=1", | ||||
"NDEBUG=1 "); }; name = Release; }; | "NDEBUG=1 "); }; name = Release; }; | ||||
B612DCB6B9D782F3D3744B79 = { isa = XCBuildConfiguration; buildSettings = { | |||||
7FA986B99AFC795723E00AB0 = { isa = XCBuildConfiguration; buildSettings = { | |||||
ALWAYS_SEARCH_USER_PATHS = NO; | ALWAYS_SEARCH_USER_PATHS = NO; | ||||
GCC_C_LANGUAGE_STANDARD = c99; | GCC_C_LANGUAGE_STANDARD = c99; | ||||
GCC_WARN_ABOUT_RETURN_TYPE = YES; | GCC_WARN_ABOUT_RETURN_TYPE = YES; | ||||
@@ -212,7 +212,7 @@ | |||||
ZERO_LINK = NO; | ZERO_LINK = NO; | ||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||||
PRODUCT_NAME = "JuceDemo"; }; name = Debug; }; | PRODUCT_NAME = "JuceDemo"; }; name = Debug; }; | ||||
ABFBF014E4913E0475A16742 = { isa = XCBuildConfiguration; buildSettings = { | |||||
623F392572A48BDD48CE1CC4 = { isa = XCBuildConfiguration; buildSettings = { | |||||
ALWAYS_SEARCH_USER_PATHS = NO; | ALWAYS_SEARCH_USER_PATHS = NO; | ||||
GCC_C_LANGUAGE_STANDARD = c99; | GCC_C_LANGUAGE_STANDARD = c99; | ||||
GCC_WARN_ABOUT_RETURN_TYPE = YES; | GCC_WARN_ABOUT_RETURN_TYPE = YES; | ||||
@@ -226,57 +226,57 @@ | |||||
ZERO_LINK = NO; | ZERO_LINK = NO; | ||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||||
PRODUCT_NAME = "JuceDemo"; }; name = Release; }; | PRODUCT_NAME = "JuceDemo"; }; name = Release; }; | ||||
B89AA9A9D76AFB9FD94E91F1 = { isa = XCConfigurationList; buildConfigurations = ( | |||||
B612DCB6B9D782F3D3744B79, | |||||
ABFBF014E4913E0475A16742 ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; | |||||
29330EA5DC9F3CCDAD719B7B = { isa = XCConfigurationList; buildConfigurations = ( | |||||
52C29F86E3DBE91F252B8C0D, | |||||
7DBDB93B1B9DF79BA4819F7F ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; | |||||
EEA25E5ECDB75868B1875A36 = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
B2757B8179BE66929127AD2D = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( | |||||
A9D4CEB8BF6B35872821ECCD, | |||||
07A544BF39B1B076D6A41228, | |||||
73F16F1F0146CEEA5DBCCA0E, | |||||
83D2B03EB08B6BC6E0A385E1, | |||||
0C722E5F96990CA1B5F27046, | |||||
F6BAACC4178B6483EF2089B9, | |||||
133B5F3401B8B97010441CA8, | |||||
BD4BACF416D7989BAB96272F, | |||||
FC7D30005FAF2F55AD31E1F7, | |||||
1F90CA68AED3A84286873E2D, | |||||
46770F1D01A9249360CAC4F1, | |||||
5F598B0DF13D01DB78462450, | |||||
443769AEA489DBFE4A6904B0, | |||||
F511BC8A5F0B5C9BC19F8FB7, | |||||
C02D29C17C874EEB8B811264, | |||||
A586096D3A6BAF493634A393, | |||||
3F3DECC996DAADBDCD7D276C, | |||||
948DB156D3ADAC90034428A9, | |||||
554C5D64E0396AF57640E861, | |||||
3D4C6B63961E3A0212142B8C, | |||||
D451763D1ECDF37C069A3770, | |||||
EA6A2F2B7DE0322ED19BFD55, | |||||
F97659F31912D12C91E95549, | |||||
56752EC63E4979FD534D2009, | |||||
C383E3A9627121BF26A2EACA, | |||||
2082A87B96A8C980E806A59A ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
6C1906E1104429D10063FE75 = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( | |||||
20915FFEC378C0A1E6C96EAC, | |||||
2CF185F6E9B8343940C21F92, | |||||
1B7FEDB2A01E18F33947B5CB, | |||||
ECD42C38F1E71FE93C1BCE6E, | |||||
04D3F31A4C84BDA3B5F366CE, | |||||
0428E26BE29AF1EA23210F83, | |||||
8124C59C2A41584D44D2952B, | |||||
3F0A163C30A5301DE2E578A9, | |||||
6C00A25BA650290D8D48D8E6, | |||||
12E2DFFC0A4FF36F4288E4C2, | |||||
45F5DAF3E6E26132D920043D ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
44C47F7E6BD5B8AB41466286 = { isa = PBXNativeTarget; buildConfigurationList = 29330EA5DC9F3CCDAD719B7B; buildPhases = ( | |||||
EEA25E5ECDB75868B1875A36, | |||||
B2757B8179BE66929127AD2D, | |||||
6C1906E1104429D10063FE75 ); buildRules = ( ); dependencies = ( ); name = "Juce Demo"; productName = "Juce Demo"; productReference = 56BC57F08A02495F85DB8DC8; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; | |||||
CBEE715C52BD1D65BBB7F342 = { isa = PBXProject; buildConfigurationList = B89AA9A9D76AFB9FD94E91F1; compatibilityVersion = "Xcode 3.0"; hasScannedForEncodings = 0; mainGroup = 24AF20CBAA4DC5F17CFE8606; projectDirPath = ""; projectRoot = ""; targets = ( 44C47F7E6BD5B8AB41466286 ); }; | |||||
2B22E1D006C8AF43954EE79D = { isa = XCConfigurationList; buildConfigurations = ( | |||||
7FA986B99AFC795723E00AB0, | |||||
623F392572A48BDD48CE1CC4 ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; | |||||
C264FE1BF62B589B345E0C81 = { isa = XCConfigurationList; buildConfigurations = ( | |||||
F46B3E8DBAFA746E04F4F62C, | |||||
8EF7C7FFD55219581A5075F3 ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; | |||||
AE930F136F638C3C939F7146 = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
7A3A0C722E5F96990CA1B5F2 = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( | |||||
78A66C2F9A9E2E6D011D8E5E, | |||||
CE5C46E66485B7D77B5ADB4E, | |||||
2E2DB52D03DD6A56FAC937A4, | |||||
8E0E3B718F35E9E1DC3D89C5, | |||||
C4C49D2D5D27730E55B27BCB, | |||||
2CD67851BCF3F24E0B5F82CF, | |||||
29C9F0E2824F63B105234C0A, | |||||
7EFB4E7D738BFFF90F49E0C0, | |||||
B69F5957B1729915BFB18735, | |||||
F920A5AB6D0FF01022575079, | |||||
A3AF0F559DD97F1B908AC1CA, | |||||
2C0AB902CB01E38D87A2A6A5, | |||||
ACD2210FDE1137548F995F85, | |||||
2F6BFF7DD839160223057CF7, | |||||
1552CF5A0A932C5EB88EC56C, | |||||
969C49FA8B55C700ED848494, | |||||
AE1CB65D73BFB3FA707B59FF, | |||||
99D9F5D6FC8A015C603B32C3, | |||||
563DEC7941B88163A50E0945, | |||||
F5691895ACDC7B12DE88EFF4, | |||||
4D5C0ED42C87FBE02A9C7BE6, | |||||
80926D2B83ACF680958111EC, | |||||
2201A04DDCFC361882F8EA62, | |||||
2E98B1DEA8B7FC20ACCD2E6D, | |||||
3A2EC17F8472C338D6A26278, | |||||
36B5D100604D9A300187B773 ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
2E5F3CCB074AC0B18683A4F3 = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( | |||||
92A7143821252FB13891CC53, | |||||
DEDBEF9AC48F8AD1502B6DC2, | |||||
29F75103FFB220F2E10CF9A9, | |||||
687BFA1946EAD55C5C39907C, | |||||
ED283D0ABEC2EC312E40C6B4, | |||||
0CFE603DE523940AF3352227, | |||||
420A9C88B711F5E4997FAAD0, | |||||
C1437C4A64EB72D2A86729D3, | |||||
F1BAE9DCD179C8784FF28F8D, | |||||
B9911F3AC6CADFB47D1EA8D7, | |||||
452052BBDBAF17DCC06EF521 ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
F26B86DEACDEE5DFB60E10B1 = { isa = PBXNativeTarget; buildConfigurationList = C264FE1BF62B589B345E0C81; buildPhases = ( | |||||
AE930F136F638C3C939F7146, | |||||
7A3A0C722E5F96990CA1B5F2, | |||||
2E5F3CCB074AC0B18683A4F3 ); buildRules = ( ); dependencies = ( ); name = "Juce Demo"; productName = "Juce Demo"; productReference = 39B98C60B57B831FE5215CDD; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; | |||||
FD051827ADE403C022034508 = { isa = PBXProject; buildConfigurationList = 2B22E1D006C8AF43954EE79D; compatibilityVersion = "Xcode 3.0"; hasScannedForEncodings = 0; mainGroup = D6A4B94A747BFCF299B17932; projectDirPath = ""; projectRoot = ""; targets = ( F26B86DEACDEE5DFB60E10B1 ); }; | |||||
}; | }; | ||||
rootObject = CBEE715C52BD1D65BBB7F342; | |||||
rootObject = FD051827ADE403C022034508; | |||||
} | } |
@@ -1,7 +1,7 @@ | |||||
Microsoft Visual Studio Solution File, Format Version 8.00 | Microsoft Visual Studio Solution File, Format Version 8.00 | ||||
# Visual C++ Express 2005 | # Visual C++ Express 2005 | ||||
Project("{3B1DD41A-AF04-DA23-7081-0A1575DE7532}") = "Juce Demo", "Juce Demo.vcproj", "{49CD629B-E99C-F915-A29E-7BE8278496F2}" | |||||
Project("{7A947A64-CDD8-D41D-F886-5E65A8ABDF81}") = "Juce Demo", "Juce Demo.vcproj", "{36211E76-A802-50EE-3B95-0202F4EB67ED}" | |||||
EndProject | EndProject | ||||
Global | Global | ||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution | GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||||
@@ -9,10 +9,10 @@ Global | |||||
Release|Win32 = Release|Win32 | Release|Win32 = Release|Win32 | ||||
EndGlobalSection | EndGlobalSection | ||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution | GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||||
{49CD629B-E99C-F915-A29E-7BE8278496F2}.Debug|Win32.ActiveCfg = Debug|Win32 | |||||
{49CD629B-E99C-F915-A29E-7BE8278496F2}.Debug|Win32.Build.0 = Debug|Win32 | |||||
{49CD629B-E99C-F915-A29E-7BE8278496F2}.Release|Win32.ActiveCfg = Release|Win32 | |||||
{49CD629B-E99C-F915-A29E-7BE8278496F2}.Release|Win32.Build.0 = Release|Win32 | |||||
{36211E76-A802-50EE-3B95-0202F4EB67ED}.Debug|Win32.ActiveCfg = Debug|Win32 | |||||
{36211E76-A802-50EE-3B95-0202F4EB67ED}.Debug|Win32.Build.0 = Debug|Win32 | |||||
{36211E76-A802-50EE-3B95-0202F4EB67ED}.Release|Win32.ActiveCfg = Release|Win32 | |||||
{36211E76-A802-50EE-3B95-0202F4EB67ED}.Release|Win32.Build.0 = Release|Win32 | |||||
EndGlobalSection | EndGlobalSection | ||||
GlobalSection(SolutionProperties) = preSolution | GlobalSection(SolutionProperties) = preSolution | ||||
HideSolutionNode = FALSE | HideSolutionNode = FALSE | ||||
@@ -3,7 +3,7 @@ | |||||
<VisualStudioProject ProjectType="Visual C++" | <VisualStudioProject ProjectType="Visual C++" | ||||
Version="8.00" | Version="8.00" | ||||
Name="Juce Demo" | Name="Juce Demo" | ||||
ProjectGUID="{49CD629B-E99C-F915-A29E-7BE8278496F2}" | |||||
ProjectGUID="{36211E76-A802-50EE-3B95-0202F4EB67ED}" | |||||
TargetFrameworkVersion="131072"> | TargetFrameworkVersion="131072"> | ||||
<Platforms> | <Platforms> | ||||
<Platform Name="Win32"/> | <Platform Name="Win32"/> | ||||
@@ -1,7 +1,7 @@ | |||||
Microsoft Visual Studio Solution File, Format Version 10.00 | Microsoft Visual Studio Solution File, Format Version 10.00 | ||||
# Visual C++ Express 2008 | # Visual C++ Express 2008 | ||||
Project("{3B1DD41A-AF04-DA23-7081-0A1575DE7532}") = "Juce Demo", "Juce Demo.vcproj", "{49CD629B-E99C-F915-A29E-7BE8278496F2}" | |||||
Project("{7A947A64-CDD8-D41D-F886-5E65A8ABDF81}") = "Juce Demo", "Juce Demo.vcproj", "{36211E76-A802-50EE-3B95-0202F4EB67ED}" | |||||
EndProject | EndProject | ||||
Global | Global | ||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution | GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||||
@@ -9,10 +9,10 @@ Global | |||||
Release|Win32 = Release|Win32 | Release|Win32 = Release|Win32 | ||||
EndGlobalSection | EndGlobalSection | ||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution | GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||||
{49CD629B-E99C-F915-A29E-7BE8278496F2}.Debug|Win32.ActiveCfg = Debug|Win32 | |||||
{49CD629B-E99C-F915-A29E-7BE8278496F2}.Debug|Win32.Build.0 = Debug|Win32 | |||||
{49CD629B-E99C-F915-A29E-7BE8278496F2}.Release|Win32.ActiveCfg = Release|Win32 | |||||
{49CD629B-E99C-F915-A29E-7BE8278496F2}.Release|Win32.Build.0 = Release|Win32 | |||||
{36211E76-A802-50EE-3B95-0202F4EB67ED}.Debug|Win32.ActiveCfg = Debug|Win32 | |||||
{36211E76-A802-50EE-3B95-0202F4EB67ED}.Debug|Win32.Build.0 = Debug|Win32 | |||||
{36211E76-A802-50EE-3B95-0202F4EB67ED}.Release|Win32.ActiveCfg = Release|Win32 | |||||
{36211E76-A802-50EE-3B95-0202F4EB67ED}.Release|Win32.Build.0 = Release|Win32 | |||||
EndGlobalSection | EndGlobalSection | ||||
GlobalSection(SolutionProperties) = preSolution | GlobalSection(SolutionProperties) = preSolution | ||||
HideSolutionNode = FALSE | HideSolutionNode = FALSE | ||||
@@ -3,7 +3,7 @@ | |||||
<VisualStudioProject ProjectType="Visual C++" | <VisualStudioProject ProjectType="Visual C++" | ||||
Version="9.00" | Version="9.00" | ||||
Name="Juce Demo" | Name="Juce Demo" | ||||
ProjectGUID="{49CD629B-E99C-F915-A29E-7BE8278496F2}" | |||||
ProjectGUID="{36211E76-A802-50EE-3B95-0202F4EB67ED}" | |||||
TargetFrameworkVersion="131072"> | TargetFrameworkVersion="131072"> | ||||
<Platforms> | <Platforms> | ||||
<Platform Name="Win32"/> | <Platform Name="Win32"/> | ||||
@@ -6,150 +6,156 @@ | |||||
objectVersion = 44; | objectVersion = 44; | ||||
objects = { | objects = { | ||||
A82540492797AA2A111F534F = { isa = PBXBuildFile; fileRef = FE73A99FC442611763B78962; }; | |||||
D351446B8D35F4C9EADDF0F8 = { isa = PBXBuildFile; fileRef = 6FB2992756D842FF2A71CBDF; }; | |||||
DDE2D54D9AF8DEDFC66E75D4 = { isa = PBXBuildFile; fileRef = A4EE39790FFF23240CB7BFB6; }; | |||||
2C6ED8CEE9C15855321CDEE6 = { isa = PBXBuildFile; fileRef = 80AFA57E396DBF8EB3483F66; }; | |||||
A9D4CEB8BF6B35872821ECCD = { isa = PBXBuildFile; fileRef = 8CAAF50C584E234C08D5F4B6; }; | |||||
07A544BF39B1B076D6A41228 = { isa = PBXBuildFile; fileRef = C08E0D90EDF5F3C1DC7960D9; }; | |||||
73F16F1F0146CEEA5DBCCA0E = { isa = PBXBuildFile; fileRef = F7AFA888A6F33AA6A41DBBF1; }; | |||||
83D2B03EB08B6BC6E0A385E1 = { isa = PBXBuildFile; fileRef = 4768B9E0E7E47689D2152273; }; | |||||
0C722E5F96990CA1B5F27046 = { isa = PBXBuildFile; fileRef = C142C47C1CCB975D7ED69A76; }; | |||||
F6BAACC4178B6483EF2089B9 = { isa = PBXBuildFile; fileRef = 12E008A030CFA73B8A2C5F8D; }; | |||||
133B5F3401B8B97010441CA8 = { isa = PBXBuildFile; fileRef = A679D77333FEDBBFDD3996CE; }; | |||||
BD4BACF416D7989BAB96272F = { isa = PBXBuildFile; fileRef = 90405E5EB08DAA8AEF278373; }; | |||||
FC7D30005FAF2F55AD31E1F7 = { isa = PBXBuildFile; fileRef = 53CDACB61E480F6CD0DA0227; }; | |||||
1F90CA68AED3A84286873E2D = { isa = PBXBuildFile; fileRef = 25F200D7C24E7D65E6180A96; }; | |||||
46770F1D01A9249360CAC4F1 = { isa = PBXBuildFile; fileRef = 7C337F848FFCE6B474C24F8F; }; | |||||
5F598B0DF13D01DB78462450 = { isa = PBXBuildFile; fileRef = CA67B495395BF40180861DBB; }; | |||||
443769AEA489DBFE4A6904B0 = { isa = PBXBuildFile; fileRef = 9BCDD95754B3483A5AA5CBA3; }; | |||||
F511BC8A5F0B5C9BC19F8FB7 = { isa = PBXBuildFile; fileRef = 10CD526C87D2AE14485D9E02; }; | |||||
C02D29C17C874EEB8B811264 = { isa = PBXBuildFile; fileRef = D77329750883321F2B19C175; }; | |||||
A586096D3A6BAF493634A393 = { isa = PBXBuildFile; fileRef = 685ED451763D1ECDF37C069A; }; | |||||
3F3DECC996DAADBDCD7D276C = { isa = PBXBuildFile; fileRef = B51FED2131FBE1356A01B300; }; | |||||
948DB156D3ADAC90034428A9 = { isa = PBXBuildFile; fileRef = B19EC95562A9E9EDC3E9B1A9; }; | |||||
554C5D64E0396AF57640E861 = { isa = PBXBuildFile; fileRef = E4275128DD1C668E42E12F93; }; | |||||
3D4C6B63961E3A0212142B8C = { isa = PBXBuildFile; fileRef = 14C92BB589AB3736AE0D2993; }; | |||||
D451763D1ECDF37C069A3770 = { isa = PBXBuildFile; fileRef = C5445AF598689D6BF0F83CBE; }; | |||||
EA6A2F2B7DE0322ED19BFD55 = { isa = PBXBuildFile; fileRef = B532F2C386E75E0E34783044; }; | |||||
F97659F31912D12C91E95549 = { isa = PBXBuildFile; fileRef = D027981BD4F6CC3DB5103192; }; | |||||
56752EC63E4979FD534D2009 = { isa = PBXBuildFile; fileRef = 78A1366D8680F8706D29BA89; }; | |||||
C383E3A9627121BF26A2EACA = { isa = PBXBuildFile; fileRef = 212AD4AE482A14B305233281; }; | |||||
2082A87B96A8C980E806A59A = { isa = PBXBuildFile; fileRef = DA9462FFFAC440E6BE3DBA78; }; | |||||
FE73A99FC442611763B78962 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; | |||||
6FB2992756D842FF2A71CBDF = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; | |||||
A4EE39790FFF23240CB7BFB6 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; | |||||
80AFA57E396DBF8EB3483F66 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; | |||||
56BC57F08A02495F85DB8DC8 = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = JuceDemo.app; sourceTree = BUILT_PRODUCTS_DIR; }; | |||||
6B2414965418FDE8B71BF091 = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = SOURCE_ROOT; }; | |||||
8CAAF50C584E234C08D5F4B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ApplicationStartup.cpp; path = ../../Source/ApplicationStartup.cpp; sourceTree = SOURCE_ROOT; }; | |||||
C08E0D90EDF5F3C1DC7960D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MainDemoWindow.cpp; path = ../../Source/MainDemoWindow.cpp; sourceTree = SOURCE_ROOT; }; | |||||
FB1ADFC973C66571E2962637 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MainDemoWindow.h; path = ../../Source/MainDemoWindow.h; sourceTree = SOURCE_ROOT; }; | |||||
4BE34F808E4597871BE6E83D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucedemo_headers.h; path = ../../Source/jucedemo_headers.h; sourceTree = SOURCE_ROOT; }; | |||||
F7AFA888A6F33AA6A41DBBF1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoLatencyPage.cpp; path = ../../Source/demos/AudioDemoLatencyPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
C8FECA3890075D8C8124F71C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoLatencyPage.h; path = ../../Source/demos/AudioDemoLatencyPage.h; sourceTree = SOURCE_ROOT; }; | |||||
4768B9E0E7E47689D2152273 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoPlaybackPage.cpp; path = ../../Source/demos/AudioDemoPlaybackPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
8182FA9F3E05EA434B048C8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoPlaybackPage.h; path = ../../Source/demos/AudioDemoPlaybackPage.h; sourceTree = SOURCE_ROOT; }; | |||||
C142C47C1CCB975D7ED69A76 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoRecordPage.cpp; path = ../../Source/demos/AudioDemoRecordPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
123BE3D4AE300D6A8901D25C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoRecordPage.h; path = ../../Source/demos/AudioDemoRecordPage.h; sourceTree = SOURCE_ROOT; }; | |||||
12E008A030CFA73B8A2C5F8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSetupPage.cpp; path = ../../Source/demos/AudioDemoSetupPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
F3FBE7B3648DC27B2FD6B696 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSetupPage.h; path = ../../Source/demos/AudioDemoSetupPage.h; sourceTree = SOURCE_ROOT; }; | |||||
A679D77333FEDBBFDD3996CE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSynthPage.cpp; path = ../../Source/demos/AudioDemoSynthPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
2C7A5ABF7F84DDB6CC69FE24 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSynthPage.h; path = ../../Source/demos/AudioDemoSynthPage.h; sourceTree = SOURCE_ROOT; }; | |||||
90405E5EB08DAA8AEF278373 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoTabComponent.cpp; path = ../../Source/demos/AudioDemoTabComponent.cpp; sourceTree = SOURCE_ROOT; }; | |||||
00090BE7B99A50D58854C369 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoTabComponent.h; path = ../../Source/demos/AudioDemoTabComponent.h; sourceTree = SOURCE_ROOT; }; | |||||
53CDACB61E480F6CD0DA0227 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CameraDemo.cpp; path = ../../Source/demos/CameraDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
25F200D7C24E7D65E6180A96 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CodeEditorDemo.cpp; path = ../../Source/demos/CodeEditorDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
7C337F848FFCE6B474C24F8F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DragAndDropDemo.cpp; path = ../../Source/demos/DragAndDropDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
CA67B495395BF40180861DBB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = FontsAndTextDemo.cpp; path = ../../Source/demos/FontsAndTextDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
9BCDD95754B3483A5AA5CBA3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InterprocessCommsDemo.cpp; path = ../../Source/demos/InterprocessCommsDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
10CD526C87D2AE14485D9E02 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OpenGLDemo.cpp; path = ../../Source/demos/OpenGLDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
D77329750883321F2B19C175 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = QuickTimeDemo.cpp; path = ../../Source/demos/QuickTimeDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
685ED451763D1ECDF37C069A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RenderingTestComponent.cpp; path = ../../Source/demos/RenderingTestComponent.cpp; sourceTree = SOURCE_ROOT; }; | |||||
811F98EC290C7A97FC44209A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RenderingTestComponent.h; path = ../../Source/demos/RenderingTestComponent.h; sourceTree = SOURCE_ROOT; }; | |||||
B51FED2131FBE1356A01B300 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TableDemo.cpp; path = ../../Source/demos/TableDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
B19EC95562A9E9EDC3E9B1A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ThreadingDemo.cpp; path = ../../Source/demos/ThreadingDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
E4275128DD1C668E42E12F93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TreeViewDemo.cpp; path = ../../Source/demos/TreeViewDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
14C92BB589AB3736AE0D2993 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WebBrowserDemo.cpp; path = ../../Source/demos/WebBrowserDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
C5445AF598689D6BF0F83CBE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WidgetsDemo.cpp; path = ../../Source/demos/WidgetsDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
E393B96DABAE67B4BF9CC8A0 = { isa = PBXFileReference; lastKnownFileType = file.wav; name = cello.wav; path = "../../Binary Data/cello.wav"; sourceTree = SOURCE_ROOT; }; | |||||
29C2F4E4B5B2D1809AE3F2E0 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = "demo table data.xml"; path = "../../Binary Data/demo table data.xml"; sourceTree = SOURCE_ROOT; }; | |||||
3161255EB1EA2EB48796EF3D = { isa = PBXFileReference; lastKnownFileType = file.zip; name = icons.zip; path = "../../Binary Data/icons.zip"; sourceTree = SOURCE_ROOT; }; | |||||
7CD420C22AF83DB31EE71EA6 = { isa = PBXFileReference; lastKnownFileType = image.png; name = juce.png; path = "../../Binary Data/juce.png"; sourceTree = SOURCE_ROOT; }; | |||||
A5B7CC1437DA58DFC19AA3C8 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = treedemo.xml; path = "../../Binary Data/treedemo.xml"; sourceTree = SOURCE_ROOT; }; | |||||
3B0725900B1EB76FCFF9725F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = SOURCE_ROOT; }; | |||||
CF077D3ED7B7B56F351AAF67 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = SOURCE_ROOT; }; | |||||
B532F2C386E75E0E34783044 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = SOURCE_ROOT; }; | |||||
16FA53FF896BC5EA2C681C1A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = SOURCE_ROOT; }; | |||||
D027981BD4F6CC3DB5103192 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode1.mm; path = ../../JuceLibraryCode/JuceLibraryCode1.mm; sourceTree = SOURCE_ROOT; }; | |||||
78A1366D8680F8706D29BA89 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode2.mm; path = ../../JuceLibraryCode/JuceLibraryCode2.mm; sourceTree = SOURCE_ROOT; }; | |||||
212AD4AE482A14B305233281 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode3.mm; path = ../../JuceLibraryCode/JuceLibraryCode3.mm; sourceTree = SOURCE_ROOT; }; | |||||
DA9462FFFAC440E6BE3DBA78 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode4.mm; path = ../../JuceLibraryCode/JuceLibraryCode4.mm; sourceTree = SOURCE_ROOT; }; | |||||
FD1552CA3E06EF6E4FC85A8A = { isa = PBXGroup; children = ( | |||||
F7AFA888A6F33AA6A41DBBF1, | |||||
C8FECA3890075D8C8124F71C, | |||||
4768B9E0E7E47689D2152273, | |||||
8182FA9F3E05EA434B048C8B, | |||||
C142C47C1CCB975D7ED69A76, | |||||
123BE3D4AE300D6A8901D25C, | |||||
12E008A030CFA73B8A2C5F8D, | |||||
F3FBE7B3648DC27B2FD6B696, | |||||
A679D77333FEDBBFDD3996CE, | |||||
2C7A5ABF7F84DDB6CC69FE24, | |||||
90405E5EB08DAA8AEF278373, | |||||
00090BE7B99A50D58854C369, | |||||
53CDACB61E480F6CD0DA0227, | |||||
25F200D7C24E7D65E6180A96, | |||||
7C337F848FFCE6B474C24F8F, | |||||
CA67B495395BF40180861DBB, | |||||
9BCDD95754B3483A5AA5CBA3, | |||||
10CD526C87D2AE14485D9E02, | |||||
D77329750883321F2B19C175, | |||||
685ED451763D1ECDF37C069A, | |||||
811F98EC290C7A97FC44209A, | |||||
B51FED2131FBE1356A01B300, | |||||
B19EC95562A9E9EDC3E9B1A9, | |||||
E4275128DD1C668E42E12F93, | |||||
14C92BB589AB3736AE0D2993, | |||||
C5445AF598689D6BF0F83CBE ); name = Demos; sourceTree = "<group>"; }; | |||||
C9C1EC6EEE457C21A26B0EC3 = { isa = PBXGroup; children = ( | |||||
E393B96DABAE67B4BF9CC8A0, | |||||
29C2F4E4B5B2D1809AE3F2E0, | |||||
3161255EB1EA2EB48796EF3D, | |||||
7CD420C22AF83DB31EE71EA6, | |||||
A5B7CC1437DA58DFC19AA3C8 ); name = "Binary Data"; sourceTree = "<group>"; }; | |||||
2EA528914EC159A58C97A873 = { isa = PBXGroup; children = ( | |||||
8CAAF50C584E234C08D5F4B6, | |||||
C08E0D90EDF5F3C1DC7960D9, | |||||
FB1ADFC973C66571E2962637, | |||||
4BE34F808E4597871BE6E83D, | |||||
FD1552CA3E06EF6E4FC85A8A, | |||||
C9C1EC6EEE457C21A26B0EC3 ); name = Source; sourceTree = "<group>"; }; | |||||
3B5437A20FCADA50EBD06731 = { isa = PBXGroup; children = ( | |||||
3B0725900B1EB76FCFF9725F, | |||||
CF077D3ED7B7B56F351AAF67, | |||||
B532F2C386E75E0E34783044, | |||||
16FA53FF896BC5EA2C681C1A, | |||||
D027981BD4F6CC3DB5103192, | |||||
78A1366D8680F8706D29BA89, | |||||
212AD4AE482A14B305233281, | |||||
DA9462FFFAC440E6BE3DBA78 ); name = "Juce Library Code"; sourceTree = "<group>"; }; | |||||
F473AC9C072A0F6CF3B5410F = { isa = PBXGroup; children = ( | |||||
6B2414965418FDE8B71BF091 ); name = Resources; sourceTree = "<group>"; }; | |||||
6030FE912A851A2507B3BF34 = { isa = PBXGroup; children = ( | |||||
FE73A99FC442611763B78962, | |||||
6FB2992756D842FF2A71CBDF, | |||||
A4EE39790FFF23240CB7BFB6, | |||||
80AFA57E396DBF8EB3483F66 ); name = Frameworks; sourceTree = "<group>"; }; | |||||
29CBBCDCEE131C353F0715E1 = { isa = PBXGroup; children = ( | |||||
56BC57F08A02495F85DB8DC8 ); name = Products; sourceTree = "<group>"; }; | |||||
24AF20CBAA4DC5F17CFE8606 = { isa = PBXGroup; children = ( | |||||
2EA528914EC159A58C97A873, | |||||
3B5437A20FCADA50EBD06731, | |||||
F473AC9C072A0F6CF3B5410F, | |||||
6030FE912A851A2507B3BF34, | |||||
29CBBCDCEE131C353F0715E1 ); name = Source; sourceTree = "<group>"; }; | |||||
52C29F86E3DBE91F252B8C0D = { isa = XCBuildConfiguration; buildSettings = { | |||||
1DF18F6B9CCFF7BD07C36AC2 = { isa = PBXBuildFile; fileRef = CE3A43E4FB4D61350C000764; }; | |||||
3BE296F09A47C0ECE4D91CF5 = { isa = PBXBuildFile; fileRef = 90E63FC1333F952D526FF194; }; | |||||
7938A4501BDD574C4121B988 = { isa = PBXBuildFile; fileRef = 0D376A9686DFA1EAF983841C; }; | |||||
36AEC0EAE7AB9D061AD9EFEF = { isa = PBXBuildFile; fileRef = 7B6D428682221857EAEA1C7D; }; | |||||
F1BAE9DCD179C8784FF28F8D = { isa = PBXBuildFile; fileRef = 4A96850C150C1C6D87A0D21A; }; | |||||
268F2BF480CF9844E2F2B974 = { isa = PBXBuildFile; fileRef = B72353F9624D99DB6F93E400; }; | |||||
78A66C2F9A9E2E6D011D8E5E = { isa = PBXBuildFile; fileRef = 885A20D277AD743C21C822B5; }; | |||||
CE5C46E66485B7D77B5ADB4E = { isa = PBXBuildFile; fileRef = 42291DB48BF81754D90FE200; }; | |||||
2E2DB52D03DD6A56FAC937A4 = { isa = PBXBuildFile; fileRef = 0704E2D6B0D1B38FBBBC6B85; }; | |||||
8E0E3B718F35E9E1DC3D89C5 = { isa = PBXBuildFile; fileRef = D856109CF311BB94D8EE8826; }; | |||||
C4C49D2D5D27730E55B27BCB = { isa = PBXBuildFile; fileRef = 411D5D0920812790F4F78462; }; | |||||
2CD67851BCF3F24E0B5F82CF = { isa = PBXBuildFile; fileRef = 67F817AAB55ED2BE16B376BF; }; | |||||
29C9F0E2824F63B105234C0A = { isa = PBXBuildFile; fileRef = FBCE524D94BF5BE0160142D4; }; | |||||
7EFB4E7D738BFFF90F49E0C0 = { isa = PBXBuildFile; fileRef = 048CEE4CC06227D8A57E47F2; }; | |||||
B69F5957B1729915BFB18735 = { isa = PBXBuildFile; fileRef = 7D65727C8F72F2BCC9A17D34; }; | |||||
F920A5AB6D0FF01022575079 = { isa = PBXBuildFile; fileRef = 268D7AFE2F3822C2C8E9A612; }; | |||||
A3AF0F559DD97F1B908AC1CA = { isa = PBXBuildFile; fileRef = F23738E4EFD2323063F82F1C; }; | |||||
2C0AB902CB01E38D87A2A6A5 = { isa = PBXBuildFile; fileRef = B7F4DAFA5F8F1FC976C8B55D; }; | |||||
ACD2210FDE1137548F995F85 = { isa = PBXBuildFile; fileRef = F7620D8D567CCE463ADDE0A6; }; | |||||
2F6BFF7DD839160223057CF7 = { isa = PBXBuildFile; fileRef = DA3BCFCC5BF07FC689DB5C34; }; | |||||
1552CF5A0A932C5EB88EC56C = { isa = PBXBuildFile; fileRef = D6EF70641473A3E7C0DC5168; }; | |||||
969C49FA8B55C700ED848494 = { isa = PBXBuildFile; fileRef = 3BC17D4051063C1BF66548C6; }; | |||||
AE1CB65D73BFB3FA707B59FF = { isa = PBXBuildFile; fileRef = 08B45C29F5EEC874E014D122; }; | |||||
99D9F5D6FC8A015C603B32C3 = { isa = PBXBuildFile; fileRef = D5F519861915C136BAA8D87A; }; | |||||
563DEC7941B88163A50E0945 = { isa = PBXBuildFile; fileRef = 402768B1A52E32348D505F18; }; | |||||
F5691895ACDC7B12DE88EFF4 = { isa = PBXBuildFile; fileRef = F2EB42A070E349D77ACF77C9; }; | |||||
4D5C0ED42C87FBE02A9C7BE6 = { isa = PBXBuildFile; fileRef = CF7FFEAFF4F386ED4DAED523; }; | |||||
80926D2B83ACF680958111EC = { isa = PBXBuildFile; fileRef = E6EF5CE04768BA5B10050D51; }; | |||||
2201A04DDCFC361882F8EA62 = { isa = PBXBuildFile; fileRef = BA05C84C3258A1978AF3D357; }; | |||||
2E98B1DEA8B7FC20ACCD2E6D = { isa = PBXBuildFile; fileRef = F42C91375F3314CA6EE65697; }; | |||||
3A2EC17F8472C338D6A26278 = { isa = PBXBuildFile; fileRef = 4D526A336B2E97ED42CADAD7; }; | |||||
36B5D100604D9A300187B773 = { isa = PBXBuildFile; fileRef = 8679333E781A0A0116AE5D26; }; | |||||
CE3A43E4FB4D61350C000764 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; | |||||
90E63FC1333F952D526FF194 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; | |||||
0D376A9686DFA1EAF983841C = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; | |||||
7B6D428682221857EAEA1C7D = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; | |||||
4A96850C150C1C6D87A0D21A = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; | |||||
B72353F9624D99DB6F93E400 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; | |||||
39B98C60B57B831FE5215CDD = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = JuceDemo.app; sourceTree = BUILT_PRODUCTS_DIR; }; | |||||
1A9DEA62F6A3CD1FB5CF105B = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = SOURCE_ROOT; }; | |||||
885A20D277AD743C21C822B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ApplicationStartup.cpp; path = ../../Source/ApplicationStartup.cpp; sourceTree = SOURCE_ROOT; }; | |||||
42291DB48BF81754D90FE200 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MainDemoWindow.cpp; path = ../../Source/MainDemoWindow.cpp; sourceTree = SOURCE_ROOT; }; | |||||
49138F5652E637AA67CD4B70 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MainDemoWindow.h; path = ../../Source/MainDemoWindow.h; sourceTree = SOURCE_ROOT; }; | |||||
18BDC68F9701862603871A7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = jucedemo_headers.h; path = ../../Source/jucedemo_headers.h; sourceTree = SOURCE_ROOT; }; | |||||
0704E2D6B0D1B38FBBBC6B85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoLatencyPage.cpp; path = ../../Source/demos/AudioDemoLatencyPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
D793BFCCD11E218E5CED3320 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoLatencyPage.h; path = ../../Source/demos/AudioDemoLatencyPage.h; sourceTree = SOURCE_ROOT; }; | |||||
D856109CF311BB94D8EE8826 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoPlaybackPage.cpp; path = ../../Source/demos/AudioDemoPlaybackPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
FC989E104DDB02E8A99B6564 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoPlaybackPage.h; path = ../../Source/demos/AudioDemoPlaybackPage.h; sourceTree = SOURCE_ROOT; }; | |||||
411D5D0920812790F4F78462 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoRecordPage.cpp; path = ../../Source/demos/AudioDemoRecordPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
570DE12AFA65E0EF97A76118 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoRecordPage.h; path = ../../Source/demos/AudioDemoRecordPage.h; sourceTree = SOURCE_ROOT; }; | |||||
67F817AAB55ED2BE16B376BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSetupPage.cpp; path = ../../Source/demos/AudioDemoSetupPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
91ACA90EFCAD4614B3ECC0C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSetupPage.h; path = ../../Source/demos/AudioDemoSetupPage.h; sourceTree = SOURCE_ROOT; }; | |||||
FBCE524D94BF5BE0160142D4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSynthPage.cpp; path = ../../Source/demos/AudioDemoSynthPage.cpp; sourceTree = SOURCE_ROOT; }; | |||||
865617D983052FBE0ADDDEDF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSynthPage.h; path = ../../Source/demos/AudioDemoSynthPage.h; sourceTree = SOURCE_ROOT; }; | |||||
048CEE4CC06227D8A57E47F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoTabComponent.cpp; path = ../../Source/demos/AudioDemoTabComponent.cpp; sourceTree = SOURCE_ROOT; }; | |||||
8BEA0B754661F3038DBAF558 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoTabComponent.h; path = ../../Source/demos/AudioDemoTabComponent.h; sourceTree = SOURCE_ROOT; }; | |||||
7D65727C8F72F2BCC9A17D34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CameraDemo.cpp; path = ../../Source/demos/CameraDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
268D7AFE2F3822C2C8E9A612 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CodeEditorDemo.cpp; path = ../../Source/demos/CodeEditorDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
F23738E4EFD2323063F82F1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DragAndDropDemo.cpp; path = ../../Source/demos/DragAndDropDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
B7F4DAFA5F8F1FC976C8B55D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = FontsAndTextDemo.cpp; path = ../../Source/demos/FontsAndTextDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
F7620D8D567CCE463ADDE0A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InterprocessCommsDemo.cpp; path = ../../Source/demos/InterprocessCommsDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
DA3BCFCC5BF07FC689DB5C34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OpenGLDemo.cpp; path = ../../Source/demos/OpenGLDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
D6EF70641473A3E7C0DC5168 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = QuickTimeDemo.cpp; path = ../../Source/demos/QuickTimeDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
3BC17D4051063C1BF66548C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RenderingTestComponent.cpp; path = ../../Source/demos/RenderingTestComponent.cpp; sourceTree = SOURCE_ROOT; }; | |||||
A6FB61B33BDDB0880203370C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RenderingTestComponent.h; path = ../../Source/demos/RenderingTestComponent.h; sourceTree = SOURCE_ROOT; }; | |||||
08B45C29F5EEC874E014D122 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TableDemo.cpp; path = ../../Source/demos/TableDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
D5F519861915C136BAA8D87A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ThreadingDemo.cpp; path = ../../Source/demos/ThreadingDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
402768B1A52E32348D505F18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TreeViewDemo.cpp; path = ../../Source/demos/TreeViewDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
F2EB42A070E349D77ACF77C9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WebBrowserDemo.cpp; path = ../../Source/demos/WebBrowserDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
CF7FFEAFF4F386ED4DAED523 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WidgetsDemo.cpp; path = ../../Source/demos/WidgetsDemo.cpp; sourceTree = SOURCE_ROOT; }; | |||||
ACFD7F6AAFC09C234D15501D = { isa = PBXFileReference; lastKnownFileType = file.wav; name = cello.wav; path = "../../Binary Data/cello.wav"; sourceTree = SOURCE_ROOT; }; | |||||
A869663CA0E96FE15BB42A97 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = "demo table data.xml"; path = "../../Binary Data/demo table data.xml"; sourceTree = SOURCE_ROOT; }; | |||||
A76B69386F1F19647804510D = { isa = PBXFileReference; lastKnownFileType = file.zip; name = icons.zip; path = "../../Binary Data/icons.zip"; sourceTree = SOURCE_ROOT; }; | |||||
013E12213AD7B4BEB28A31BE = { isa = PBXFileReference; lastKnownFileType = image.png; name = juce.png; path = "../../Binary Data/juce.png"; sourceTree = SOURCE_ROOT; }; | |||||
C7327AD5191A22C1FBD4F5F9 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = treedemo.xml; path = "../../Binary Data/treedemo.xml"; sourceTree = SOURCE_ROOT; }; | |||||
EE37A0ECE471A928C6170F9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = SOURCE_ROOT; }; | |||||
A6B37799E63CCE882A3383FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = SOURCE_ROOT; }; | |||||
E6EF5CE04768BA5B10050D51 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = SOURCE_ROOT; }; | |||||
CC7EB9777A4DE3408705625C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = SOURCE_ROOT; }; | |||||
BA05C84C3258A1978AF3D357 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode1.mm; path = ../../JuceLibraryCode/JuceLibraryCode1.mm; sourceTree = SOURCE_ROOT; }; | |||||
F42C91375F3314CA6EE65697 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode2.mm; path = ../../JuceLibraryCode/JuceLibraryCode2.mm; sourceTree = SOURCE_ROOT; }; | |||||
4D526A336B2E97ED42CADAD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode3.mm; path = ../../JuceLibraryCode/JuceLibraryCode3.mm; sourceTree = SOURCE_ROOT; }; | |||||
8679333E781A0A0116AE5D26 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode4.mm; path = ../../JuceLibraryCode/JuceLibraryCode4.mm; sourceTree = SOURCE_ROOT; }; | |||||
1045A435754FDEACC6D7259C = { isa = PBXGroup; children = ( | |||||
0704E2D6B0D1B38FBBBC6B85, | |||||
D793BFCCD11E218E5CED3320, | |||||
D856109CF311BB94D8EE8826, | |||||
FC989E104DDB02E8A99B6564, | |||||
411D5D0920812790F4F78462, | |||||
570DE12AFA65E0EF97A76118, | |||||
67F817AAB55ED2BE16B376BF, | |||||
91ACA90EFCAD4614B3ECC0C5, | |||||
FBCE524D94BF5BE0160142D4, | |||||
865617D983052FBE0ADDDEDF, | |||||
048CEE4CC06227D8A57E47F2, | |||||
8BEA0B754661F3038DBAF558, | |||||
7D65727C8F72F2BCC9A17D34, | |||||
268D7AFE2F3822C2C8E9A612, | |||||
F23738E4EFD2323063F82F1C, | |||||
B7F4DAFA5F8F1FC976C8B55D, | |||||
F7620D8D567CCE463ADDE0A6, | |||||
DA3BCFCC5BF07FC689DB5C34, | |||||
D6EF70641473A3E7C0DC5168, | |||||
3BC17D4051063C1BF66548C6, | |||||
A6FB61B33BDDB0880203370C, | |||||
08B45C29F5EEC874E014D122, | |||||
D5F519861915C136BAA8D87A, | |||||
402768B1A52E32348D505F18, | |||||
F2EB42A070E349D77ACF77C9, | |||||
CF7FFEAFF4F386ED4DAED523 ); name = Demos; sourceTree = "<group>"; }; | |||||
7B2518B268DCBBF7B74F2B1D = { isa = PBXGroup; children = ( | |||||
ACFD7F6AAFC09C234D15501D, | |||||
A869663CA0E96FE15BB42A97, | |||||
A76B69386F1F19647804510D, | |||||
013E12213AD7B4BEB28A31BE, | |||||
C7327AD5191A22C1FBD4F5F9 ); name = "Binary Data"; sourceTree = "<group>"; }; | |||||
A10CCE1B2A215D5AE12386E3 = { isa = PBXGroup; children = ( | |||||
885A20D277AD743C21C822B5, | |||||
42291DB48BF81754D90FE200, | |||||
49138F5652E637AA67CD4B70, | |||||
18BDC68F9701862603871A7A, | |||||
1045A435754FDEACC6D7259C, | |||||
7B2518B268DCBBF7B74F2B1D ); name = Source; sourceTree = "<group>"; }; | |||||
4C2E644EAC72C263D09C74BB = { isa = PBXGroup; children = ( | |||||
EE37A0ECE471A928C6170F9B, | |||||
A6B37799E63CCE882A3383FB, | |||||
E6EF5CE04768BA5B10050D51, | |||||
CC7EB9777A4DE3408705625C, | |||||
BA05C84C3258A1978AF3D357, | |||||
F42C91375F3314CA6EE65697, | |||||
4D526A336B2E97ED42CADAD7, | |||||
8679333E781A0A0116AE5D26 ); name = "Juce Library Code"; sourceTree = "<group>"; }; | |||||
019CD423F1EFF7A1A0A079DD = { isa = PBXGroup; children = ( | |||||
1A9DEA62F6A3CD1FB5CF105B ); name = Resources; sourceTree = "<group>"; }; | |||||
244B9AF7D858999910FD243E = { isa = PBXGroup; children = ( | |||||
CE3A43E4FB4D61350C000764, | |||||
90E63FC1333F952D526FF194, | |||||
0D376A9686DFA1EAF983841C, | |||||
7B6D428682221857EAEA1C7D, | |||||
4A96850C150C1C6D87A0D21A, | |||||
B72353F9624D99DB6F93E400 ); name = Frameworks; sourceTree = "<group>"; }; | |||||
3F406773369804D0FBF2789A = { isa = PBXGroup; children = ( | |||||
39B98C60B57B831FE5215CDD ); name = Products; sourceTree = "<group>"; }; | |||||
D6A4B94A747BFCF299B17932 = { isa = PBXGroup; children = ( | |||||
A10CCE1B2A215D5AE12386E3, | |||||
4C2E644EAC72C263D09C74BB, | |||||
019CD423F1EFF7A1A0A079DD, | |||||
244B9AF7D858999910FD243E, | |||||
3F406773369804D0FBF2789A ); name = Source; sourceTree = "<group>"; }; | |||||
F46B3E8DBAFA746E04F4F62C = { isa = XCBuildConfiguration; buildSettings = { | |||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)"; | ARCHS = "$(ARCHS_STANDARD_32_BIT)"; | ||||
PREBINDING = NO; | PREBINDING = NO; | ||||
HEADER_SEARCH_PATHS = " $(inherited)"; | HEADER_SEARCH_PATHS = " $(inherited)"; | ||||
@@ -164,7 +170,7 @@ | |||||
GCC_PREPROCESSOR_DEFINITIONS = ( | GCC_PREPROCESSOR_DEFINITIONS = ( | ||||
"_DEBUG=1", | "_DEBUG=1", | ||||
"DEBUG=1 "); }; name = Debug; }; | "DEBUG=1 "); }; name = Debug; }; | ||||
7DBDB93B1B9DF79BA4819F7F = { isa = XCBuildConfiguration; buildSettings = { | |||||
8EF7C7FFD55219581A5075F3 = { isa = XCBuildConfiguration; buildSettings = { | |||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)"; | ARCHS = "$(ARCHS_STANDARD_32_BIT)"; | ||||
PREBINDING = NO; | PREBINDING = NO; | ||||
HEADER_SEARCH_PATHS = " $(inherited)"; | HEADER_SEARCH_PATHS = " $(inherited)"; | ||||
@@ -177,7 +183,7 @@ | |||||
GCC_PREPROCESSOR_DEFINITIONS = ( | GCC_PREPROCESSOR_DEFINITIONS = ( | ||||
"_NDEBUG=1", | "_NDEBUG=1", | ||||
"NDEBUG=1 "); }; name = Release; }; | "NDEBUG=1 "); }; name = Release; }; | ||||
B612DCB6B9D782F3D3744B79 = { isa = XCBuildConfiguration; buildSettings = { | |||||
7FA986B99AFC795723E00AB0 = { isa = XCBuildConfiguration; buildSettings = { | |||||
ALWAYS_SEARCH_USER_PATHS = NO; | ALWAYS_SEARCH_USER_PATHS = NO; | ||||
GCC_C_LANGUAGE_STANDARD = c99; | GCC_C_LANGUAGE_STANDARD = c99; | ||||
GCC_WARN_ABOUT_RETURN_TYPE = YES; | GCC_WARN_ABOUT_RETURN_TYPE = YES; | ||||
@@ -191,7 +197,7 @@ | |||||
ZERO_LINK = NO; | ZERO_LINK = NO; | ||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||||
PRODUCT_NAME = "JuceDemo"; }; name = Debug; }; | PRODUCT_NAME = "JuceDemo"; }; name = Debug; }; | ||||
ABFBF014E4913E0475A16742 = { isa = XCBuildConfiguration; buildSettings = { | |||||
623F392572A48BDD48CE1CC4 = { isa = XCBuildConfiguration; buildSettings = { | |||||
ALWAYS_SEARCH_USER_PATHS = NO; | ALWAYS_SEARCH_USER_PATHS = NO; | ||||
GCC_C_LANGUAGE_STANDARD = c99; | GCC_C_LANGUAGE_STANDARD = c99; | ||||
GCC_WARN_ABOUT_RETURN_TYPE = YES; | GCC_WARN_ABOUT_RETURN_TYPE = YES; | ||||
@@ -205,50 +211,52 @@ | |||||
ZERO_LINK = NO; | ZERO_LINK = NO; | ||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||||
PRODUCT_NAME = "JuceDemo"; }; name = Release; }; | PRODUCT_NAME = "JuceDemo"; }; name = Release; }; | ||||
B89AA9A9D76AFB9FD94E91F1 = { isa = XCConfigurationList; buildConfigurations = ( | |||||
B612DCB6B9D782F3D3744B79, | |||||
ABFBF014E4913E0475A16742 ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; | |||||
29330EA5DC9F3CCDAD719B7B = { isa = XCConfigurationList; buildConfigurations = ( | |||||
52C29F86E3DBE91F252B8C0D, | |||||
7DBDB93B1B9DF79BA4819F7F ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; | |||||
EEA25E5ECDB75868B1875A36 = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
B2757B8179BE66929127AD2D = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( | |||||
A9D4CEB8BF6B35872821ECCD, | |||||
07A544BF39B1B076D6A41228, | |||||
73F16F1F0146CEEA5DBCCA0E, | |||||
83D2B03EB08B6BC6E0A385E1, | |||||
0C722E5F96990CA1B5F27046, | |||||
F6BAACC4178B6483EF2089B9, | |||||
133B5F3401B8B97010441CA8, | |||||
BD4BACF416D7989BAB96272F, | |||||
FC7D30005FAF2F55AD31E1F7, | |||||
1F90CA68AED3A84286873E2D, | |||||
46770F1D01A9249360CAC4F1, | |||||
5F598B0DF13D01DB78462450, | |||||
443769AEA489DBFE4A6904B0, | |||||
F511BC8A5F0B5C9BC19F8FB7, | |||||
C02D29C17C874EEB8B811264, | |||||
A586096D3A6BAF493634A393, | |||||
3F3DECC996DAADBDCD7D276C, | |||||
948DB156D3ADAC90034428A9, | |||||
554C5D64E0396AF57640E861, | |||||
3D4C6B63961E3A0212142B8C, | |||||
D451763D1ECDF37C069A3770, | |||||
EA6A2F2B7DE0322ED19BFD55, | |||||
F97659F31912D12C91E95549, | |||||
56752EC63E4979FD534D2009, | |||||
C383E3A9627121BF26A2EACA, | |||||
2082A87B96A8C980E806A59A ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
6C1906E1104429D10063FE75 = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( | |||||
A82540492797AA2A111F534F, | |||||
D351446B8D35F4C9EADDF0F8, | |||||
DDE2D54D9AF8DEDFC66E75D4, | |||||
2C6ED8CEE9C15855321CDEE6 ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
44C47F7E6BD5B8AB41466286 = { isa = PBXNativeTarget; buildConfigurationList = 29330EA5DC9F3CCDAD719B7B; buildPhases = ( | |||||
EEA25E5ECDB75868B1875A36, | |||||
B2757B8179BE66929127AD2D, | |||||
6C1906E1104429D10063FE75 ); buildRules = ( ); dependencies = ( ); name = "Juce Demo"; productName = "Juce Demo"; productReference = 56BC57F08A02495F85DB8DC8; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; | |||||
CBEE715C52BD1D65BBB7F342 = { isa = PBXProject; buildConfigurationList = B89AA9A9D76AFB9FD94E91F1; compatibilityVersion = "Xcode 3.0"; hasScannedForEncodings = 0; mainGroup = 24AF20CBAA4DC5F17CFE8606; projectDirPath = ""; projectRoot = ""; targets = ( 44C47F7E6BD5B8AB41466286 ); }; | |||||
2B22E1D006C8AF43954EE79D = { isa = XCConfigurationList; buildConfigurations = ( | |||||
7FA986B99AFC795723E00AB0, | |||||
623F392572A48BDD48CE1CC4 ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; | |||||
C264FE1BF62B589B345E0C81 = { isa = XCConfigurationList; buildConfigurations = ( | |||||
F46B3E8DBAFA746E04F4F62C, | |||||
8EF7C7FFD55219581A5075F3 ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; | |||||
AE930F136F638C3C939F7146 = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
7A3A0C722E5F96990CA1B5F2 = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( | |||||
78A66C2F9A9E2E6D011D8E5E, | |||||
CE5C46E66485B7D77B5ADB4E, | |||||
2E2DB52D03DD6A56FAC937A4, | |||||
8E0E3B718F35E9E1DC3D89C5, | |||||
C4C49D2D5D27730E55B27BCB, | |||||
2CD67851BCF3F24E0B5F82CF, | |||||
29C9F0E2824F63B105234C0A, | |||||
7EFB4E7D738BFFF90F49E0C0, | |||||
B69F5957B1729915BFB18735, | |||||
F920A5AB6D0FF01022575079, | |||||
A3AF0F559DD97F1B908AC1CA, | |||||
2C0AB902CB01E38D87A2A6A5, | |||||
ACD2210FDE1137548F995F85, | |||||
2F6BFF7DD839160223057CF7, | |||||
1552CF5A0A932C5EB88EC56C, | |||||
969C49FA8B55C700ED848494, | |||||
AE1CB65D73BFB3FA707B59FF, | |||||
99D9F5D6FC8A015C603B32C3, | |||||
563DEC7941B88163A50E0945, | |||||
F5691895ACDC7B12DE88EFF4, | |||||
4D5C0ED42C87FBE02A9C7BE6, | |||||
80926D2B83ACF680958111EC, | |||||
2201A04DDCFC361882F8EA62, | |||||
2E98B1DEA8B7FC20ACCD2E6D, | |||||
3A2EC17F8472C338D6A26278, | |||||
36B5D100604D9A300187B773 ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
2E5F3CCB074AC0B18683A4F3 = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( | |||||
1DF18F6B9CCFF7BD07C36AC2, | |||||
3BE296F09A47C0ECE4D91CF5, | |||||
7938A4501BDD574C4121B988, | |||||
36AEC0EAE7AB9D061AD9EFEF, | |||||
F1BAE9DCD179C8784FF28F8D, | |||||
268F2BF480CF9844E2F2B974 ); runOnlyForDeploymentPostprocessing = 0; }; | |||||
F26B86DEACDEE5DFB60E10B1 = { isa = PBXNativeTarget; buildConfigurationList = C264FE1BF62B589B345E0C81; buildPhases = ( | |||||
AE930F136F638C3C939F7146, | |||||
7A3A0C722E5F96990CA1B5F2, | |||||
2E5F3CCB074AC0B18683A4F3 ); buildRules = ( ); dependencies = ( ); name = "Juce Demo"; productName = "Juce Demo"; productReference = 39B98C60B57B831FE5215CDD; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; | |||||
FD051827ADE403C022034508 = { isa = PBXProject; buildConfigurationList = 2B22E1D006C8AF43954EE79D; compatibilityVersion = "Xcode 3.0"; hasScannedForEncodings = 0; mainGroup = D6A4B94A747BFCF299B17932; projectDirPath = ""; projectRoot = ""; targets = ( F26B86DEACDEE5DFB60E10B1 ); }; | |||||
}; | }; | ||||
rootObject = CBEE715C52BD1D65BBB7F342; | |||||
rootObject = FD051827ADE403C022034508; | |||||
} | } |
@@ -101,11 +101,12 @@ | |||||
</MAINGROUP> | </MAINGROUP> | ||||
<JUCEOPTIONS JUCE_FORCE_DEBUG="default" JUCE_LOG_ASSERTIONS="default" JUCE_ASIO="default" | <JUCEOPTIONS JUCE_FORCE_DEBUG="default" JUCE_LOG_ASSERTIONS="default" JUCE_ASIO="default" | ||||
JUCE_WASAPI="enabled" JUCE_DIRECTSOUND="default" JUCE_ALSA="default" | JUCE_WASAPI="enabled" JUCE_DIRECTSOUND="default" JUCE_ALSA="default" | ||||
JUCE_QUICKTIME="default" JUCE_OPENGL="enabled" JUCE_USE_FLAC="default" | |||||
JUCE_QUICKTIME="enabled" JUCE_OPENGL="enabled" JUCE_USE_FLAC="default" | |||||
JUCE_USE_OGGVORBIS="default" JUCE_USE_CDBURNER="default" JUCE_USE_CDREADER="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="enabled" JUCE_ENABLE_REPAINT_DEBUGGING="default" | ||||
JUCE_USE_XINERAMA="default" JUCE_USE_XSHM="default" JUCE_PLUGINHOST_VST="disabled" | JUCE_USE_XINERAMA="default" JUCE_USE_XSHM="default" JUCE_PLUGINHOST_VST="disabled" | ||||
JUCE_PLUGINHOST_AU="disabled" JUCE_ONLY_BUILD_CORE_LIBRARY="default" | 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="enabled" JUCE_SUPPORT_CARBON="default" JUCE_CHECK_MEMORY_LEAKS="default" | ||||
JUCE_CATCH_UNHANDLED_EXCEPTIONS="default" JUCE_STRINGS_ARE_UNICODE="default"/> | |||||
JUCE_CATCH_UNHANDLED_EXCEPTIONS="default" JUCE_STRINGS_ARE_UNICODE="default" | |||||
JUCE_USE_XRENDER="default"/> | |||||
</JUCERPROJECT> | </JUCERPROJECT> |
@@ -17,7 +17,7 @@ | |||||
#define JUCE_WASAPI 1 | #define JUCE_WASAPI 1 | ||||
//#define JUCE_DIRECTSOUND | //#define JUCE_DIRECTSOUND | ||||
//#define JUCE_ALSA | //#define JUCE_ALSA | ||||
//#define JUCE_QUICKTIME | |||||
#define JUCE_QUICKTIME 1 | |||||
#define JUCE_OPENGL 1 | #define JUCE_OPENGL 1 | ||||
//#define JUCE_USE_FLAC | //#define JUCE_USE_FLAC | ||||
//#define JUCE_USE_OGGVORBIS | //#define JUCE_USE_OGGVORBIS | ||||
@@ -27,6 +27,7 @@ | |||||
//#define JUCE_ENABLE_REPAINT_DEBUGGING | //#define JUCE_ENABLE_REPAINT_DEBUGGING | ||||
//#define JUCE_USE_XINERAMA | //#define JUCE_USE_XINERAMA | ||||
//#define JUCE_USE_XSHM | //#define JUCE_USE_XSHM | ||||
//#define JUCE_USE_XRENDER | |||||
#define JUCE_PLUGINHOST_VST 0 | #define JUCE_PLUGINHOST_VST 0 | ||||
#define JUCE_PLUGINHOST_AU 0 | #define JUCE_PLUGINHOST_AU 0 | ||||
//#define JUCE_ONLY_BUILD_CORE_LIBRARY | //#define JUCE_ONLY_BUILD_CORE_LIBRARY | ||||
@@ -8,11 +8,12 @@ | |||||
#include "BinaryData.h" | #include "BinaryData.h" | ||||
const char* BinaryData::getNamedResource (const wchar_t* resourceName, int& numBytes) throw() | |||||
const char* BinaryData::getNamedResource (const char* resourceNameUTF8, int& numBytes) throw() | |||||
{ | { | ||||
int hash = 0; | int hash = 0; | ||||
while (*resourceName != 0) | |||||
hash = 31 * hash + *resourceName++; | |||||
if (resourceNameUTF8 != 0) | |||||
while (*resourceNameUTF8 != 0) | |||||
hash = 31 * hash + *resourceNameUTF8++; | |||||
switch (hash) | switch (hash) | ||||
{ | { | ||||
@@ -24,5 +24,5 @@ namespace BinaryData | |||||
// 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). | ||||
const char* getNamedResource (const wchar_t* resourceName, int& dataSizeInBytes) throw(); | |||||
const char* getNamedResource (const char* resourceNameUTF8, int& dataSizeInBytes) throw(); | |||||
} | } |
@@ -29,7 +29,7 @@ | |||||
#include "../jucedemo_headers.h" | #include "../jucedemo_headers.h" | ||||
#if JUCE_OPENGL && ! JUCE_IPHONE | |||||
#if JUCE_OPENGL | |||||
#if JUCE_WINDOWS | #if JUCE_WINDOWS | ||||
#include <gl/gl.h> | #include <gl/gl.h> | ||||
@@ -38,6 +38,9 @@ | |||||
#include <GL/gl.h> | #include <GL/gl.h> | ||||
#include <GL/glut.h> | #include <GL/glut.h> | ||||
#undef KeyPress | #undef KeyPress | ||||
#elif JUCE_IPHONE | |||||
#include <OpenGLES/ES1/gl.h> | |||||
#include <OpenGLES/ES1/glext.h> | |||||
#elif JUCE_MAC | #elif JUCE_MAC | ||||
#include <GLUT/glut.h> | #include <GLUT/glut.h> | ||||
#elif JUCE_IPHONE | #elif JUCE_IPHONE | ||||
@@ -58,6 +61,11 @@ class DemoOpenGLCanvas : public OpenGLComponent, | |||||
public: | public: | ||||
DemoOpenGLCanvas() | DemoOpenGLCanvas() | ||||
{ | { | ||||
#if JUCE_IPHONE | |||||
// (On the iPhone, choose a format without a depth buffer) | |||||
setPixelFormat (OpenGLPixelFormat (8, 8, 0, 0)); | |||||
#endif | |||||
rotation = 0.0f; | rotation = 0.0f; | ||||
delta = 1.0f; | delta = 1.0f; | ||||
@@ -106,6 +114,7 @@ public: | |||||
// we'll use the opportunity to create the textures needed. | // we'll use the opportunity to create the textures needed. | ||||
void newOpenGLContextCreated() | void newOpenGLContextCreated() | ||||
{ | { | ||||
#if ! JUCE_IPHONE | |||||
// (no need to call makeCurrentContextActive(), as that will have | // (no need to call makeCurrentContextActive(), as that will have | ||||
// been done for us before the method call). | // been done for us before the method call). | ||||
glClearColor (0.0f, 0.0f, 0.0f, 0.0f); | glClearColor (0.0f, 0.0f, 0.0f, 0.0f); | ||||
@@ -133,6 +142,7 @@ public: | |||||
glHint (GL_LINE_SMOOTH_HINT, GL_NICEST); | glHint (GL_LINE_SMOOTH_HINT, GL_NICEST); | ||||
glHint (GL_POINT_SMOOTH_HINT, GL_NICEST); | glHint (GL_POINT_SMOOTH_HINT, GL_NICEST); | ||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); | glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); | ||||
#endif | |||||
} | } | ||||
void mouseDrag (const MouseEvent& e) | void mouseDrag (const MouseEvent& e) | ||||
@@ -143,15 +153,32 @@ public: | |||||
void renderOpenGL() | void renderOpenGL() | ||||
{ | { | ||||
glClearColor (0.8f, 0.0f, 0.4f, 0.0f); | |||||
glClearColor (0.25f, 0.25f, 0.25f, 0.0f); | |||||
glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); | glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); | ||||
glMatrixMode(GL_PROJECTION); | |||||
glMatrixMode (GL_PROJECTION); | |||||
glLoadIdentity(); | glLoadIdentity(); | ||||
#if JUCE_IPHONE | |||||
const GLfloat vertices[] = { -0.5f, -0.5f, 0.5f, -0.5f, -0.5f, 0.5f, 0.5f, 0.5f }; | |||||
const GLubyte colours[] = { 255, 255, 0, 255, 0, 255, 255, 255, 0, 0, 0, 0, 255, 0, 255, 255 }; | |||||
glOrthof (-1.0f, 1.0f, -1.5f, 1.5f, -1.0f, 1.0f); | |||||
glMatrixMode (GL_MODELVIEW); | |||||
glRotatef (1.0f, 0.0f, 0.0f, 1.0f); | |||||
glVertexPointer (2, GL_FLOAT, 0, vertices); | |||||
glEnableClientState (GL_VERTEX_ARRAY); | |||||
glColorPointer (4, GL_UNSIGNED_BYTE, 0, colours); | |||||
glEnableClientState (GL_COLOR_ARRAY); | |||||
glDrawArrays (GL_TRIANGLE_STRIP, 0, 4); | |||||
#else | |||||
glOrtho (0.0, getWidth(), 0.0, getHeight(), 0, 1); | glOrtho (0.0, getWidth(), 0.0, getHeight(), 0, 1); | ||||
glColor4f (1.0f, 1.0f, 1.0f, fabsf (::sinf (rotation / 100.0f))); | glColor4f (1.0f, 1.0f, 1.0f, fabsf (::sinf (rotation / 100.0f))); | ||||
glBegin(GL_QUADS); | |||||
glBegin (GL_QUADS); | |||||
glTexCoord2i (0, 0); glVertex2f (50.0f, getHeight() - 50.0f); | glTexCoord2i (0, 0); glVertex2f (50.0f, getHeight() - 50.0f); | ||||
glTexCoord2i (1, 0); glVertex2f (getWidth() - 50.0f, getHeight() - 50.0f); | glTexCoord2i (1, 0); glVertex2f (getWidth() - 50.0f, getHeight() - 50.0f); | ||||
glTexCoord2i (1, 1); glVertex2f (getWidth() - 50.0f, 50.0f); | glTexCoord2i (1, 1); glVertex2f (getWidth() - 50.0f, 50.0f); | ||||
@@ -222,6 +249,7 @@ public: | |||||
glEnd(); | glEnd(); | ||||
glPopMatrix(); | glPopMatrix(); | ||||
#endif | |||||
} | } | ||||
void timerCallback() | void timerCallback() | ||||
@@ -29,12 +29,7 @@ | |||||
// include the JUCE headers.. | // include the JUCE headers.. | ||||
#include "../JuceLibraryCode/JuceHeader.h" | #include "../JuceLibraryCode/JuceHeader.h" | ||||
#if JUCE_IPHONE | |||||
#undef JUCE_USE_CAMERA | |||||
#undef JUCE_OPENGL | |||||
#endif | |||||
#if JUCE_LINUX | |||||
#if JUCE_IPHONE || JUCE_LINUX | |||||
#undef JUCE_USE_CAMERA | #undef JUCE_USE_CAMERA | ||||
#endif | #endif | ||||
@@ -105,6 +105,9 @@ | |||||
#define JUCE_QUICKTIME 0 | #define JUCE_QUICKTIME 0 | ||||
#endif | #endif | ||||
#if (JUCE_IPHONE || JUCE_LINUX) && JUCE_QUICKTIME | |||||
#undef JUCE_QUICKTIME | |||||
#endif | |||||
//============================================================================= | //============================================================================= | ||||
/** JUCE_OPENGL: Enables the OpenGLComponent class (available on all platforms). | /** JUCE_OPENGL: Enables the OpenGLComponent class (available on all platforms). | ||||
@@ -151,7 +154,7 @@ | |||||
//============================================================================= | //============================================================================= | ||||
/** JUCE_USE_CAMERA: Enables web-cam support using the CameraDevice class (Mac and Windows). | /** JUCE_USE_CAMERA: Enables web-cam support using the CameraDevice class (Mac and Windows). | ||||
*/ | */ | ||||
#if JUCE_QUICKTIME && ! defined (JUCE_USE_CAMERA) | |||||
#if (JUCE_QUICKTIME || JUCE_WINDOWS) && ! defined (JUCE_USE_CAMERA) | |||||
// #define JUCE_USE_CAMERA 1 | // #define JUCE_USE_CAMERA 1 | ||||
#endif | #endif | ||||
@@ -199,6 +199,10 @@ | |||||
#define JUCE_QUICKTIME 0 | #define JUCE_QUICKTIME 0 | ||||
#endif | #endif | ||||
#if (JUCE_IPHONE || JUCE_LINUX) && JUCE_QUICKTIME | |||||
#undef JUCE_QUICKTIME | |||||
#endif | |||||
#ifndef JUCE_OPENGL | #ifndef JUCE_OPENGL | ||||
#define JUCE_OPENGL 1 | #define JUCE_OPENGL 1 | ||||
#endif | #endif | ||||
@@ -219,7 +223,7 @@ | |||||
#define JUCE_USE_CDREADER 1 | #define JUCE_USE_CDREADER 1 | ||||
#endif | #endif | ||||
#if JUCE_QUICKTIME && ! defined (JUCE_USE_CAMERA) | |||||
#if (JUCE_QUICKTIME || JUCE_WINDOWS) && ! defined (JUCE_USE_CAMERA) | |||||
// #define JUCE_USE_CAMERA 1 | // #define JUCE_USE_CAMERA 1 | ||||
#endif | #endif | ||||
@@ -566,7 +570,12 @@ public: | |||||
#import <AVFoundation/AVFoundation.h> | #import <AVFoundation/AVFoundation.h> | ||||
#import <CoreData/CoreData.h> | #import <CoreData/CoreData.h> | ||||
#import <MobileCoreServices/MobileCoreServices.h> | #import <MobileCoreServices/MobileCoreServices.h> | ||||
#import <QuartzCore/QuartzCore.h> | |||||
#include <sys/fcntl.h> | #include <sys/fcntl.h> | ||||
#if JUCE_OPENGL | |||||
#include <OpenGLES/ES1/gl.h> | |||||
#include <OpenGLES/ES1/glext.h> | |||||
#endif | |||||
#else | #else | ||||
#import <Cocoa/Cocoa.h> | #import <Cocoa/Cocoa.h> | ||||
#import <CoreAudio/HostTime.h> | #import <CoreAudio/HostTime.h> | ||||
@@ -7135,10 +7144,6 @@ bool TemporaryFile::overwriteTargetFileWithTemporary() const | |||||
Thread::sleep (100); | Thread::sleep (100); | ||||
} | } | ||||
// Failed to overwrite the new file! Make sure you've not left any | |||||
// file streams hanging around when you call this method! | |||||
jassertfalse | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
@@ -17816,7 +17821,8 @@ PropertiesFile::PropertiesFile (const File& f, const int millisecondsBeforeSavin | |||||
PropertiesFile::~PropertiesFile() | PropertiesFile::~PropertiesFile() | ||||
{ | { | ||||
saveIfNeeded(); | |||||
if (! saveIfNeeded()) | |||||
jassertfalse; | |||||
} | } | ||||
bool PropertiesFile::saveIfNeeded() | bool PropertiesFile::saveIfNeeded() | ||||
@@ -74821,8 +74827,9 @@ private: | |||||
bool wasShowing; | bool wasShowing; | ||||
}; | }; | ||||
OpenGLComponent::OpenGLComponent() | |||||
: context (0), | |||||
OpenGLComponent::OpenGLComponent (const OpenGLType type_) | |||||
: type (type_), | |||||
context (0), | |||||
contextToShareListsWith (0), | contextToShareListsWith (0), | ||||
needToUpdateViewport (true) | needToUpdateViewport (true) | ||||
{ | { | ||||
@@ -74903,9 +74910,7 @@ bool OpenGLComponent::makeCurrentContextActive() | |||||
if (isShowing() && getTopLevelComponent()->getPeer() != 0) | if (isShowing() && getTopLevelComponent()->getPeer() != 0) | ||||
{ | { | ||||
context = OpenGLContext::createContextForWindow (this, | |||||
preferredPixelFormat, | |||||
contextToShareListsWith); | |||||
context = createContext(); | |||||
if (context != 0) | if (context != 0) | ||||
{ | { | ||||
@@ -219236,18 +219241,13 @@ private: | |||||
WindowedGLContext& operator= (const WindowedGLContext&); | WindowedGLContext& operator= (const WindowedGLContext&); | ||||
}; | }; | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | { | ||||
WindowedGLContext* c = new WindowedGLContext (component, | |||||
contextToShareWith != 0 ? (HGLRC) contextToShareWith->getRawContext() : 0, | |||||
pixelFormat); | |||||
ScopedPointer<WindowedGLContext> c (new WindowedGLContext (this, | |||||
contextToShareListsWith != 0 ? (HGLRC) contextToShareListsWith->getRawContext() : 0, | |||||
preferredPixelFormat)); | |||||
if (c->renderContext == 0) | |||||
deleteAndZero (c); | |||||
return c; | |||||
return (c->renderContext != 0) ? c.release() : 0; | |||||
} | } | ||||
void* OpenGLComponent::getNativeWindowHandle() const | void* OpenGLComponent::getNativeWindowHandle() const | ||||
@@ -234296,17 +234296,12 @@ private: | |||||
WindowedGLContext& operator= (const WindowedGLContext&); | WindowedGLContext& operator= (const WindowedGLContext&); | ||||
}; | }; | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | { | ||||
WindowedGLContext* c = new WindowedGLContext (component, pixelFormat, | |||||
contextToShareWith != 0 ? (GLXContext) contextToShareWith->getRawContext() : 0); | |||||
if (c->renderContext == 0) | |||||
deleteAndZero (c); | |||||
ScopedPointer<WindowedGLContext> c (new WindowedGLContext (this, preferredPixelFormat, | |||||
contextToShareListsWith != 0 ? (GLXContext) contextToShareListsWith->getRawContext() : 0)); | |||||
return c; | |||||
return (c->renderContext != 0) ? c.release() : 0; | |||||
} | } | ||||
void juce_glViewport (const int w, const int h) | void juce_glViewport (const int w, const int h) | ||||
@@ -240692,11 +240687,7 @@ UIViewComponentPeer::UIViewComponentPeer (Component* const component, | |||||
fullScreen (false), | fullScreen (false), | ||||
insideDrawRect (false) | insideDrawRect (false) | ||||
{ | { | ||||
CGRect r; | |||||
r.origin.x = 0; | |||||
r.origin.y = 0; | |||||
r.size.width = (float) component->getWidth(); | |||||
r.size.height = (float) component->getHeight(); | |||||
CGRect r = CGRectMake (0, 0, (float) component->getWidth(), (float) component->getHeight()); | |||||
view = [[JuceUIView alloc] initWithOwner: this withFrame: r]; | view = [[JuceUIView alloc] initWithOwner: this withFrame: r]; | ||||
@@ -241890,12 +241881,10 @@ private: | |||||
WindowedGLContext& operator= (const WindowedGLContext&); | WindowedGLContext& operator= (const WindowedGLContext&); | ||||
}; | }; | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | { | ||||
ScopedPointer <WindowedGLContext> c (new WindowedGLContext (component, pixelFormat, | |||||
contextToShareWith != 0 ? (NSOpenGLContext*) contextToShareWith->getRawContext() : 0)); | |||||
ScopedPointer<WindowedGLContext> c (new WindowedGLContext (this, preferredPixelFormat, | |||||
contextToShareListsWith != 0 ? (NSOpenGLContext*) contextToShareListsWith->getRawContext() : 0)); | |||||
return (c->renderContext != 0) ? c.release() : 0; | return (c->renderContext != 0) ? c.release() : 0; | ||||
} | } | ||||
@@ -241948,16 +241937,208 @@ void OpenGLPixelFormat::getAvailablePixelFormats (Component* /*component*/, | |||||
#else | #else | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
END_JUCE_NAMESPACE | |||||
@interface JuceGLView : UIView | |||||
{ | |||||
} | |||||
+ (Class) layerClass; | |||||
@end | |||||
@implementation JuceGLView | |||||
+ (Class) layerClass | |||||
{ | |||||
return [CAEAGLLayer class]; | |||||
} | |||||
@end | |||||
BEGIN_JUCE_NAMESPACE | |||||
class GLESContext : public OpenGLContext | |||||
{ | { | ||||
public: | |||||
GLESContext (UIViewComponentPeer* peer, | |||||
Component* const component_, | |||||
const OpenGLPixelFormat& pixelFormat_, | |||||
const GLESContext* const sharedContext, | |||||
NSUInteger apiType) | |||||
: component (component_), pixelFormat (pixelFormat_), glLayer (0), context (0), | |||||
useDepthBuffer (pixelFormat_.depthBufferBits > 0), frameBufferHandle (0), colorBufferHandle (0), | |||||
depthBufferHandle (0), lastWidth (0), lastHeight (0) | |||||
{ | |||||
view = [[JuceGLView alloc] initWithFrame: CGRectMake (0, 0, 64, 64)]; | |||||
view.opaque = YES; | |||||
view.hidden = NO; | |||||
view.backgroundColor = [UIColor redColor]; | |||||
glLayer = (CAEAGLLayer*) [view layer]; | |||||
[peer->view addSubview: view]; | |||||
if (sharedContext != 0) | |||||
context = [[EAGLContext alloc] initWithAPI: apiType | |||||
sharegroup: [sharedContext->context sharegroup]]; | |||||
else | |||||
context = [[EAGLContext alloc] initWithAPI: apiType]; | |||||
createGLBuffers(); | |||||
} | |||||
~GLESContext() | |||||
{ | |||||
makeInactive(); | |||||
[context release]; | |||||
[view removeFromSuperview]; | |||||
[view release]; | |||||
freeGLBuffers(); | |||||
} | |||||
bool makeActive() const throw() | |||||
{ | |||||
jassert (context != 0); | |||||
[EAGLContext setCurrentContext: context]; | |||||
glBindFramebufferOES (GL_FRAMEBUFFER_OES, frameBufferHandle); | |||||
return true; | |||||
} | |||||
void swapBuffers() | |||||
{ | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
[context presentRenderbuffer: GL_RENDERBUFFER_OES]; | |||||
} | |||||
bool makeInactive() const throw() | |||||
{ | |||||
return [EAGLContext setCurrentContext: nil]; | |||||
} | |||||
bool isActive() const throw() | |||||
{ | |||||
return [EAGLContext currentContext] == context; | |||||
} | |||||
const OpenGLPixelFormat getPixelFormat() const { return pixelFormat; } | |||||
void* getRawContext() const throw() { return (void*) glLayer; } | |||||
void updateWindowPosition (int x, int y, int w, int h, int outerWindowHeight) | |||||
{ | |||||
view.frame = CGRectMake ((CGFloat) x, (CGFloat) y, (CGFloat) w, (CGFloat) h); | |||||
if (lastWidth != w || lastHeight != h) | |||||
{ | |||||
lastWidth = w; | |||||
lastHeight = h; | |||||
freeGLBuffers(); | |||||
createGLBuffers(); | |||||
} | |||||
} | |||||
bool setSwapInterval (const int numFramesPerSwap) | |||||
{ | |||||
numFrames = numFramesPerSwap; | |||||
return true; | |||||
} | |||||
int getSwapInterval() const | |||||
{ | |||||
return numFrames; | |||||
} | |||||
void repaint() | |||||
{ | |||||
} | |||||
void createGLBuffers() | |||||
{ | |||||
makeActive(); | |||||
glGenFramebuffersOES (1, &frameBufferHandle); | |||||
glGenRenderbuffersOES (1, &colorBufferHandle); | |||||
glGenRenderbuffersOES (1, &depthBufferHandle); | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
[context renderbufferStorage: GL_RENDERBUFFER_OES fromDrawable: glLayer]; | |||||
GLint width, height; | |||||
glGetRenderbufferParameterivOES (GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &width); | |||||
glGetRenderbufferParameterivOES (GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &height); | |||||
if (useDepthBuffer) | |||||
{ | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, depthBufferHandle); | |||||
glRenderbufferStorageOES (GL_RENDERBUFFER_OES, GL_DEPTH_COMPONENT16_OES, width, height); | |||||
} | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
glBindFramebufferOES (GL_FRAMEBUFFER_OES, frameBufferHandle); | |||||
glFramebufferRenderbufferOES (GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
if (useDepthBuffer) | |||||
glFramebufferRenderbufferOES (GL_FRAMEBUFFER_OES, GL_DEPTH_ATTACHMENT_OES, GL_RENDERBUFFER_OES, depthBufferHandle); | |||||
jassert (glCheckFramebufferStatusOES (GL_FRAMEBUFFER_OES) == GL_FRAMEBUFFER_COMPLETE_OES); | |||||
} | |||||
void freeGLBuffers() | |||||
{ | |||||
if (frameBufferHandle != 0) | |||||
{ | |||||
glDeleteFramebuffersOES (1, &frameBufferHandle); | |||||
frameBufferHandle = 0; | |||||
} | |||||
if (colorBufferHandle != 0) | |||||
{ | |||||
glDeleteRenderbuffersOES (1, &colorBufferHandle); | |||||
colorBufferHandle = 0; | |||||
} | |||||
if (depthBufferHandle != 0) | |||||
{ | |||||
glDeleteRenderbuffersOES (1, &depthBufferHandle); | |||||
depthBufferHandle = 0; | |||||
} | |||||
} | |||||
juce_UseDebuggingNewOperator | |||||
private: | |||||
Component::SafePointer<Component> component; | |||||
OpenGLPixelFormat pixelFormat; | |||||
JuceGLView* view; | |||||
CAEAGLLayer* glLayer; | |||||
EAGLContext* context; | |||||
bool useDepthBuffer; | |||||
GLuint frameBufferHandle, colorBufferHandle, depthBufferHandle; | |||||
int numFrames; | |||||
int lastWidth, lastHeight; | |||||
GLESContext (const GLESContext&); | |||||
GLESContext& operator= (const GLESContext&); | |||||
}; | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | |||||
ScopedAutoReleasePool pool; | |||||
UIViewComponentPeer* peer = dynamic_cast <UIViewComponentPeer*> (getPeer()); | |||||
if (peer != 0) | |||||
return new GLESContext (peer, this, preferredPixelFormat, | |||||
dynamic_cast <const GLESContext*> (contextToShareListsWith), | |||||
type == openGLES2 ? kEAGLRenderingAPIOpenGLES2 : kEAGLRenderingAPIOpenGLES1); | |||||
return 0; | return 0; | ||||
} | } | ||||
void OpenGLPixelFormat::getAvailablePixelFormats (Component* /*component*/, | |||||
OwnedArray <OpenGLPixelFormat>& /*results*/) | |||||
{ | |||||
} | |||||
void juce_glViewport (const int w, const int h) | void juce_glViewport (const int w, const int h) | ||||
{ | { | ||||
//glViewport (0, 0, w, h); | |||||
glViewport (0, 0, w, h); | |||||
} | } | ||||
#endif | #endif | ||||
@@ -247252,12 +247433,10 @@ private: | |||||
WindowedGLContext& operator= (const WindowedGLContext&); | WindowedGLContext& operator= (const WindowedGLContext&); | ||||
}; | }; | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | { | ||||
ScopedPointer <WindowedGLContext> c (new WindowedGLContext (component, pixelFormat, | |||||
contextToShareWith != 0 ? (NSOpenGLContext*) contextToShareWith->getRawContext() : 0)); | |||||
ScopedPointer<WindowedGLContext> c (new WindowedGLContext (this, preferredPixelFormat, | |||||
contextToShareListsWith != 0 ? (NSOpenGLContext*) contextToShareListsWith->getRawContext() : 0)); | |||||
return (c->renderContext != 0) ? c.release() : 0; | return (c->renderContext != 0) ? c.release() : 0; | ||||
} | } | ||||
@@ -247310,16 +247489,208 @@ void OpenGLPixelFormat::getAvailablePixelFormats (Component* /*component*/, | |||||
#else | #else | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
END_JUCE_NAMESPACE | |||||
@interface JuceGLView : UIView | |||||
{ | |||||
} | |||||
+ (Class) layerClass; | |||||
@end | |||||
@implementation JuceGLView | |||||
+ (Class) layerClass | |||||
{ | |||||
return [CAEAGLLayer class]; | |||||
} | |||||
@end | |||||
BEGIN_JUCE_NAMESPACE | |||||
class GLESContext : public OpenGLContext | |||||
{ | { | ||||
public: | |||||
GLESContext (UIViewComponentPeer* peer, | |||||
Component* const component_, | |||||
const OpenGLPixelFormat& pixelFormat_, | |||||
const GLESContext* const sharedContext, | |||||
NSUInteger apiType) | |||||
: component (component_), pixelFormat (pixelFormat_), glLayer (0), context (0), | |||||
useDepthBuffer (pixelFormat_.depthBufferBits > 0), frameBufferHandle (0), colorBufferHandle (0), | |||||
depthBufferHandle (0), lastWidth (0), lastHeight (0) | |||||
{ | |||||
view = [[JuceGLView alloc] initWithFrame: CGRectMake (0, 0, 64, 64)]; | |||||
view.opaque = YES; | |||||
view.hidden = NO; | |||||
view.backgroundColor = [UIColor redColor]; | |||||
glLayer = (CAEAGLLayer*) [view layer]; | |||||
[peer->view addSubview: view]; | |||||
if (sharedContext != 0) | |||||
context = [[EAGLContext alloc] initWithAPI: apiType | |||||
sharegroup: [sharedContext->context sharegroup]]; | |||||
else | |||||
context = [[EAGLContext alloc] initWithAPI: apiType]; | |||||
createGLBuffers(); | |||||
} | |||||
~GLESContext() | |||||
{ | |||||
makeInactive(); | |||||
[context release]; | |||||
[view removeFromSuperview]; | |||||
[view release]; | |||||
freeGLBuffers(); | |||||
} | |||||
bool makeActive() const throw() | |||||
{ | |||||
jassert (context != 0); | |||||
[EAGLContext setCurrentContext: context]; | |||||
glBindFramebufferOES (GL_FRAMEBUFFER_OES, frameBufferHandle); | |||||
return true; | |||||
} | |||||
void swapBuffers() | |||||
{ | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
[context presentRenderbuffer: GL_RENDERBUFFER_OES]; | |||||
} | |||||
bool makeInactive() const throw() | |||||
{ | |||||
return [EAGLContext setCurrentContext: nil]; | |||||
} | |||||
bool isActive() const throw() | |||||
{ | |||||
return [EAGLContext currentContext] == context; | |||||
} | |||||
const OpenGLPixelFormat getPixelFormat() const { return pixelFormat; } | |||||
void* getRawContext() const throw() { return (void*) glLayer; } | |||||
void updateWindowPosition (int x, int y, int w, int h, int outerWindowHeight) | |||||
{ | |||||
view.frame = CGRectMake ((CGFloat) x, (CGFloat) y, (CGFloat) w, (CGFloat) h); | |||||
if (lastWidth != w || lastHeight != h) | |||||
{ | |||||
lastWidth = w; | |||||
lastHeight = h; | |||||
freeGLBuffers(); | |||||
createGLBuffers(); | |||||
} | |||||
} | |||||
bool setSwapInterval (const int numFramesPerSwap) | |||||
{ | |||||
numFrames = numFramesPerSwap; | |||||
return true; | |||||
} | |||||
int getSwapInterval() const | |||||
{ | |||||
return numFrames; | |||||
} | |||||
void repaint() | |||||
{ | |||||
} | |||||
void createGLBuffers() | |||||
{ | |||||
makeActive(); | |||||
glGenFramebuffersOES (1, &frameBufferHandle); | |||||
glGenRenderbuffersOES (1, &colorBufferHandle); | |||||
glGenRenderbuffersOES (1, &depthBufferHandle); | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
[context renderbufferStorage: GL_RENDERBUFFER_OES fromDrawable: glLayer]; | |||||
GLint width, height; | |||||
glGetRenderbufferParameterivOES (GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &width); | |||||
glGetRenderbufferParameterivOES (GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &height); | |||||
if (useDepthBuffer) | |||||
{ | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, depthBufferHandle); | |||||
glRenderbufferStorageOES (GL_RENDERBUFFER_OES, GL_DEPTH_COMPONENT16_OES, width, height); | |||||
} | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
glBindFramebufferOES (GL_FRAMEBUFFER_OES, frameBufferHandle); | |||||
glFramebufferRenderbufferOES (GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
if (useDepthBuffer) | |||||
glFramebufferRenderbufferOES (GL_FRAMEBUFFER_OES, GL_DEPTH_ATTACHMENT_OES, GL_RENDERBUFFER_OES, depthBufferHandle); | |||||
jassert (glCheckFramebufferStatusOES (GL_FRAMEBUFFER_OES) == GL_FRAMEBUFFER_COMPLETE_OES); | |||||
} | |||||
void freeGLBuffers() | |||||
{ | |||||
if (frameBufferHandle != 0) | |||||
{ | |||||
glDeleteFramebuffersOES (1, &frameBufferHandle); | |||||
frameBufferHandle = 0; | |||||
} | |||||
if (colorBufferHandle != 0) | |||||
{ | |||||
glDeleteRenderbuffersOES (1, &colorBufferHandle); | |||||
colorBufferHandle = 0; | |||||
} | |||||
if (depthBufferHandle != 0) | |||||
{ | |||||
glDeleteRenderbuffersOES (1, &depthBufferHandle); | |||||
depthBufferHandle = 0; | |||||
} | |||||
} | |||||
juce_UseDebuggingNewOperator | |||||
private: | |||||
Component::SafePointer<Component> component; | |||||
OpenGLPixelFormat pixelFormat; | |||||
JuceGLView* view; | |||||
CAEAGLLayer* glLayer; | |||||
EAGLContext* context; | |||||
bool useDepthBuffer; | |||||
GLuint frameBufferHandle, colorBufferHandle, depthBufferHandle; | |||||
int numFrames; | |||||
int lastWidth, lastHeight; | |||||
GLESContext (const GLESContext&); | |||||
GLESContext& operator= (const GLESContext&); | |||||
}; | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | |||||
ScopedAutoReleasePool pool; | |||||
UIViewComponentPeer* peer = dynamic_cast <UIViewComponentPeer*> (getPeer()); | |||||
if (peer != 0) | |||||
return new GLESContext (peer, this, preferredPixelFormat, | |||||
dynamic_cast <const GLESContext*> (contextToShareListsWith), | |||||
type == openGLES2 ? kEAGLRenderingAPIOpenGLES2 : kEAGLRenderingAPIOpenGLES1); | |||||
return 0; | return 0; | ||||
} | } | ||||
void OpenGLPixelFormat::getAvailablePixelFormats (Component* /*component*/, | |||||
OwnedArray <OpenGLPixelFormat>& /*results*/) | |||||
{ | |||||
} | |||||
void juce_glViewport (const int w, const int h) | void juce_glViewport (const int w, const int h) | ||||
{ | { | ||||
//glViewport (0, 0, w, h); | |||||
glViewport (0, 0, w, h); | |||||
} | } | ||||
#endif | #endif | ||||
@@ -251607,7 +251978,11 @@ MidiInput* MidiInput::openDevice (int index, MidiInputCallback* callback) | |||||
/*** Start of inlined file: juce_mac_CameraDevice.mm ***/ | /*** Start of inlined file: juce_mac_CameraDevice.mm ***/ | ||||
// (This file gets included by juce_mac_NativeCode.mm, rather than being | // (This file gets included by juce_mac_NativeCode.mm, rather than being | ||||
// compiled on its own). | // compiled on its own). | ||||
#if JUCE_INCLUDED_FILE && JUCE_QUICKTIME && JUCE_USE_CAMERA | |||||
#if JUCE_INCLUDED_FILE && JUCE_USE_CAMERA | |||||
#if ! JUCE_QUICKTIME | |||||
#error "On the Mac, cameras use Quicktime, so if you turn on JUCE_USE_CAMERA, you also need to enable JUCE_QUICKTIME" | |||||
#endif | |||||
#define QTCaptureCallbackDelegate MakeObjCClassName(QTCaptureCallbackDelegate) | #define QTCaptureCallbackDelegate MakeObjCClassName(QTCaptureCallbackDelegate) | ||||
@@ -43,7 +43,7 @@ | |||||
#define JUCE_MAJOR_VERSION 1 | #define JUCE_MAJOR_VERSION 1 | ||||
#define JUCE_MINOR_VERSION 51 | #define JUCE_MINOR_VERSION 51 | ||||
#define JUCE_BUILDNUMBER 11 | |||||
#define JUCE_BUILDNUMBER 12 | |||||
#define JUCE_VERSION ((JUCE_MAJOR_VERSION << 16) + (JUCE_MINOR_VERSION << 8) + JUCE_BUILDNUMBER) | #define JUCE_VERSION ((JUCE_MAJOR_VERSION << 16) + (JUCE_MINOR_VERSION << 8) + JUCE_BUILDNUMBER) | ||||
@@ -220,6 +220,10 @@ | |||||
#define JUCE_QUICKTIME 0 | #define JUCE_QUICKTIME 0 | ||||
#endif | #endif | ||||
#if (JUCE_IPHONE || JUCE_LINUX) && JUCE_QUICKTIME | |||||
#undef JUCE_QUICKTIME | |||||
#endif | |||||
#ifndef JUCE_OPENGL | #ifndef JUCE_OPENGL | ||||
#define JUCE_OPENGL 1 | #define JUCE_OPENGL 1 | ||||
#endif | #endif | ||||
@@ -240,7 +244,7 @@ | |||||
#define JUCE_USE_CDREADER 1 | #define JUCE_USE_CDREADER 1 | ||||
#endif | #endif | ||||
#if JUCE_QUICKTIME && ! defined (JUCE_USE_CAMERA) | |||||
#if (JUCE_QUICKTIME || JUCE_WINDOWS) && ! defined (JUCE_USE_CAMERA) | |||||
// #define JUCE_USE_CAMERA 1 | // #define JUCE_USE_CAMERA 1 | ||||
#endif | #endif | ||||
@@ -26746,10 +26750,6 @@ public: | |||||
virtual void* getRawContext() const throw() = 0; | virtual void* getRawContext() const throw() = 0; | ||||
static OpenGLContext* createContextForWindow (Component* componentToDrawTo, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith); | |||||
static OpenGLContext* getCurrentContext(); | static OpenGLContext* getCurrentContext(); | ||||
juce_UseDebuggingNewOperator | juce_UseDebuggingNewOperator | ||||
@@ -26762,7 +26762,17 @@ class JUCE_API OpenGLComponent : public Component | |||||
{ | { | ||||
public: | public: | ||||
OpenGLComponent(); | |||||
enum OpenGLType | |||||
{ | |||||
openGLDefault = 0, | |||||
#if JUCE_IPHONE | |||||
openGLES1, /**< On the iPhone, this selects openGL ES 1.0 */ | |||||
openGLES2 /**< On the iPhone, this selects openGL ES 2.0 */ | |||||
#endif | |||||
}; | |||||
OpenGLComponent (OpenGLType type = openGLDefault); | |||||
~OpenGLComponent(); | ~OpenGLComponent(); | ||||
@@ -26799,6 +26809,8 @@ public: | |||||
juce_UseDebuggingNewOperator | juce_UseDebuggingNewOperator | ||||
private: | private: | ||||
const OpenGLType type; | |||||
class OpenGLComponentWatcher; | class OpenGLComponentWatcher; | ||||
friend class OpenGLComponentWatcher; | friend class OpenGLComponentWatcher; | ||||
friend class ScopedPointer <OpenGLComponentWatcher>; | friend class ScopedPointer <OpenGLComponentWatcher>; | ||||
@@ -26811,6 +26823,7 @@ private: | |||||
OpenGLPixelFormat preferredPixelFormat; | OpenGLPixelFormat preferredPixelFormat; | ||||
bool needToUpdateViewport; | bool needToUpdateViewport; | ||||
OpenGLContext* createContext(); | |||||
void deleteContext(); | void deleteContext(); | ||||
void updateContextPosition(); | void updateContextPosition(); | ||||
void internalRepaint (int x, int y, int w, int h); | void internalRepaint (int x, int y, int w, int h); | ||||
@@ -33,7 +33,7 @@ | |||||
*/ | */ | ||||
#define JUCE_MAJOR_VERSION 1 | #define JUCE_MAJOR_VERSION 1 | ||||
#define JUCE_MINOR_VERSION 51 | #define JUCE_MINOR_VERSION 51 | ||||
#define JUCE_BUILDNUMBER 11 | |||||
#define JUCE_BUILDNUMBER 12 | |||||
/** Current Juce version number. | /** Current Juce version number. | ||||
@@ -177,8 +177,9 @@ private: | |||||
}; | }; | ||||
//============================================================================== | //============================================================================== | ||||
OpenGLComponent::OpenGLComponent() | |||||
: context (0), | |||||
OpenGLComponent::OpenGLComponent (const OpenGLType type_) | |||||
: type (type_), | |||||
context (0), | |||||
contextToShareListsWith (0), | contextToShareListsWith (0), | ||||
needToUpdateViewport (true) | needToUpdateViewport (true) | ||||
{ | { | ||||
@@ -259,9 +260,7 @@ bool OpenGLComponent::makeCurrentContextActive() | |||||
if (isShowing() && getTopLevelComponent()->getPeer() != 0) | if (isShowing() && getTopLevelComponent()->getPeer() != 0) | ||||
{ | { | ||||
context = OpenGLContext::createContextForWindow (this, | |||||
preferredPixelFormat, | |||||
contextToShareListsWith); | |||||
context = createContext(); | |||||
if (context != 0) | if (context != 0) | ||||
{ | { | ||||
@@ -146,18 +146,6 @@ public: | |||||
*/ | */ | ||||
virtual void* getRawContext() const throw() = 0; | virtual void* getRawContext() const throw() = 0; | ||||
//============================================================================== | |||||
/** This tries to create a context that can be used for drawing into the | |||||
area occupied by the specified component. | |||||
Note that you probably shouldn't use this method directly unless you know what | |||||
you're doing - the OpenGLComponent calls this and manages the context for you. | |||||
*/ | |||||
static OpenGLContext* createContextForWindow (Component* componentToDrawTo, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith); | |||||
//============================================================================== | //============================================================================== | ||||
/** Returns the context that's currently in active use by the calling thread. | /** Returns the context that's currently in active use by the calling thread. | ||||
@@ -185,9 +173,21 @@ class JUCE_API OpenGLComponent : public Component | |||||
{ | { | ||||
public: | public: | ||||
//============================================================================== | //============================================================================== | ||||
/** Creates an OpenGLComponent. | |||||
/** Used to select the type of openGL API to use, if more than one choice is available | |||||
on a particular platform. | |||||
*/ | */ | ||||
OpenGLComponent(); | |||||
enum OpenGLType | |||||
{ | |||||
openGLDefault = 0, | |||||
#if JUCE_IPHONE | |||||
openGLES1, /**< On the iPhone, this selects openGL ES 1.0 */ | |||||
openGLES2 /**< On the iPhone, this selects openGL ES 2.0 */ | |||||
#endif | |||||
}; | |||||
/** Creates an OpenGLComponent. */ | |||||
OpenGLComponent (OpenGLType type = openGLDefault); | |||||
/** Destructor. */ | /** Destructor. */ | ||||
~OpenGLComponent(); | ~OpenGLComponent(); | ||||
@@ -333,6 +333,8 @@ public: | |||||
juce_UseDebuggingNewOperator | juce_UseDebuggingNewOperator | ||||
private: | private: | ||||
const OpenGLType type; | |||||
class OpenGLComponentWatcher; | class OpenGLComponentWatcher; | ||||
friend class OpenGLComponentWatcher; | friend class OpenGLComponentWatcher; | ||||
friend class ScopedPointer <OpenGLComponentWatcher>; | friend class ScopedPointer <OpenGLComponentWatcher>; | ||||
@@ -345,6 +347,7 @@ private: | |||||
OpenGLPixelFormat preferredPixelFormat; | OpenGLPixelFormat preferredPixelFormat; | ||||
bool needToUpdateViewport; | bool needToUpdateViewport; | ||||
OpenGLContext* createContext(); | |||||
void deleteContext(); | void deleteContext(); | ||||
void updateContextPosition(); | void updateContextPosition(); | ||||
void internalRepaint (int x, int y, int w, int h); | void internalRepaint (int x, int y, int w, int h); | ||||
@@ -95,10 +95,6 @@ bool TemporaryFile::overwriteTargetFileWithTemporary() const | |||||
Thread::sleep (100); | Thread::sleep (100); | ||||
} | } | ||||
// Failed to overwrite the new file! Make sure you've not left any | |||||
// file streams hanging around when you call this method! | |||||
jassertfalse | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
@@ -3349,17 +3349,12 @@ private: | |||||
}; | }; | ||||
//============================================================================== | //============================================================================== | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | { | ||||
WindowedGLContext* c = new WindowedGLContext (component, pixelFormat, | |||||
contextToShareWith != 0 ? (GLXContext) contextToShareWith->getRawContext() : 0); | |||||
ScopedPointer<WindowedGLContext> c (new WindowedGLContext (this, preferredPixelFormat, | |||||
contextToShareListsWith != 0 ? (GLXContext) contextToShareListsWith->getRawContext() : 0)); | |||||
if (c->renderContext == 0) | |||||
deleteAndZero (c); | |||||
return c; | |||||
return (c->renderContext != 0) ? c.release() : 0; | |||||
} | } | ||||
void juce_glViewport (const int w, const int h) | void juce_glViewport (const int w, const int h) | ||||
@@ -283,11 +283,7 @@ UIViewComponentPeer::UIViewComponentPeer (Component* const component, | |||||
fullScreen (false), | fullScreen (false), | ||||
insideDrawRect (false) | insideDrawRect (false) | ||||
{ | { | ||||
CGRect r; | |||||
r.origin.x = 0; | |||||
r.origin.y = 0; | |||||
r.size.width = (float) component->getWidth(); | |||||
r.size.height = (float) component->getHeight(); | |||||
CGRect r = CGRectMake (0, 0, (float) component->getWidth(), (float) component->getHeight()); | |||||
view = [[JuceUIView alloc] initWithOwner: this withFrame: r]; | view = [[JuceUIView alloc] initWithOwner: this withFrame: r]; | ||||
@@ -25,7 +25,11 @@ | |||||
// (This file gets included by juce_mac_NativeCode.mm, rather than being | // (This file gets included by juce_mac_NativeCode.mm, rather than being | ||||
// compiled on its own). | // compiled on its own). | ||||
#if JUCE_INCLUDED_FILE && JUCE_QUICKTIME && JUCE_USE_CAMERA | |||||
#if JUCE_INCLUDED_FILE && JUCE_USE_CAMERA | |||||
#if ! JUCE_QUICKTIME | |||||
#error "On the Mac, cameras use Quicktime, so if you turn on JUCE_USE_CAMERA, you also need to enable JUCE_QUICKTIME" | |||||
#endif | |||||
//============================================================================== | //============================================================================== | ||||
#define QTCaptureCallbackDelegate MakeObjCClassName(QTCaptureCallbackDelegate) | #define QTCaptureCallbackDelegate MakeObjCClassName(QTCaptureCallbackDelegate) | ||||
@@ -44,7 +44,12 @@ | |||||
#import <AVFoundation/AVFoundation.h> | #import <AVFoundation/AVFoundation.h> | ||||
#import <CoreData/CoreData.h> | #import <CoreData/CoreData.h> | ||||
#import <MobileCoreServices/MobileCoreServices.h> | #import <MobileCoreServices/MobileCoreServices.h> | ||||
#import <QuartzCore/QuartzCore.h> | |||||
#include <sys/fcntl.h> | #include <sys/fcntl.h> | ||||
#if JUCE_OPENGL | |||||
#include <OpenGLES/ES1/gl.h> | |||||
#include <OpenGLES/ES1/glext.h> | |||||
#endif | |||||
#else | #else | ||||
#import <Cocoa/Cocoa.h> | #import <Cocoa/Cocoa.h> | ||||
#import <CoreAudio/HostTime.h> | #import <CoreAudio/HostTime.h> | ||||
@@ -258,12 +258,10 @@ private: | |||||
}; | }; | ||||
//============================================================================== | //============================================================================== | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | { | ||||
ScopedPointer <WindowedGLContext> c (new WindowedGLContext (component, pixelFormat, | |||||
contextToShareWith != 0 ? (NSOpenGLContext*) contextToShareWith->getRawContext() : 0)); | |||||
ScopedPointer<WindowedGLContext> c (new WindowedGLContext (this, preferredPixelFormat, | |||||
contextToShareListsWith != 0 ? (NSOpenGLContext*) contextToShareListsWith->getRawContext() : 0)); | |||||
return (c->renderContext != 0) ? c.release() : 0; | return (c->renderContext != 0) ? c.release() : 0; | ||||
} | } | ||||
@@ -317,16 +315,213 @@ void OpenGLPixelFormat::getAvailablePixelFormats (Component* /*component*/, | |||||
#else | #else | ||||
//============================================================================== | //============================================================================== | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
END_JUCE_NAMESPACE | |||||
@interface JuceGLView : UIView | |||||
{ | |||||
} | |||||
+ (Class) layerClass; | |||||
@end | |||||
@implementation JuceGLView | |||||
+ (Class) layerClass | |||||
{ | |||||
return [CAEAGLLayer class]; | |||||
} | |||||
@end | |||||
BEGIN_JUCE_NAMESPACE | |||||
//============================================================================== | |||||
class GLESContext : public OpenGLContext | |||||
{ | { | ||||
public: | |||||
GLESContext (UIViewComponentPeer* peer, | |||||
Component* const component_, | |||||
const OpenGLPixelFormat& pixelFormat_, | |||||
const GLESContext* const sharedContext, | |||||
NSUInteger apiType) | |||||
: component (component_), pixelFormat (pixelFormat_), glLayer (0), context (0), | |||||
useDepthBuffer (pixelFormat_.depthBufferBits > 0), frameBufferHandle (0), colorBufferHandle (0), | |||||
depthBufferHandle (0), lastWidth (0), lastHeight (0) | |||||
{ | |||||
view = [[JuceGLView alloc] initWithFrame: CGRectMake (0, 0, 64, 64)]; | |||||
view.opaque = YES; | |||||
view.hidden = NO; | |||||
view.backgroundColor = [UIColor redColor]; | |||||
glLayer = (CAEAGLLayer*) [view layer]; | |||||
[peer->view addSubview: view]; | |||||
if (sharedContext != 0) | |||||
context = [[EAGLContext alloc] initWithAPI: apiType | |||||
sharegroup: [sharedContext->context sharegroup]]; | |||||
else | |||||
context = [[EAGLContext alloc] initWithAPI: apiType]; | |||||
createGLBuffers(); | |||||
} | |||||
~GLESContext() | |||||
{ | |||||
makeInactive(); | |||||
[context release]; | |||||
[view removeFromSuperview]; | |||||
[view release]; | |||||
freeGLBuffers(); | |||||
} | |||||
bool makeActive() const throw() | |||||
{ | |||||
jassert (context != 0); | |||||
[EAGLContext setCurrentContext: context]; | |||||
glBindFramebufferOES (GL_FRAMEBUFFER_OES, frameBufferHandle); | |||||
return true; | |||||
} | |||||
void swapBuffers() | |||||
{ | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
[context presentRenderbuffer: GL_RENDERBUFFER_OES]; | |||||
} | |||||
bool makeInactive() const throw() | |||||
{ | |||||
return [EAGLContext setCurrentContext: nil]; | |||||
} | |||||
bool isActive() const throw() | |||||
{ | |||||
return [EAGLContext currentContext] == context; | |||||
} | |||||
const OpenGLPixelFormat getPixelFormat() const { return pixelFormat; } | |||||
void* getRawContext() const throw() { return (void*) glLayer; } | |||||
void updateWindowPosition (int x, int y, int w, int h, int outerWindowHeight) | |||||
{ | |||||
view.frame = CGRectMake ((CGFloat) x, (CGFloat) y, (CGFloat) w, (CGFloat) h); | |||||
if (lastWidth != w || lastHeight != h) | |||||
{ | |||||
lastWidth = w; | |||||
lastHeight = h; | |||||
freeGLBuffers(); | |||||
createGLBuffers(); | |||||
} | |||||
} | |||||
bool setSwapInterval (const int numFramesPerSwap) | |||||
{ | |||||
numFrames = numFramesPerSwap; | |||||
return true; | |||||
} | |||||
int getSwapInterval() const | |||||
{ | |||||
return numFrames; | |||||
} | |||||
void repaint() | |||||
{ | |||||
} | |||||
//============================================================================== | |||||
void createGLBuffers() | |||||
{ | |||||
makeActive(); | |||||
glGenFramebuffersOES (1, &frameBufferHandle); | |||||
glGenRenderbuffersOES (1, &colorBufferHandle); | |||||
glGenRenderbuffersOES (1, &depthBufferHandle); | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
[context renderbufferStorage: GL_RENDERBUFFER_OES fromDrawable: glLayer]; | |||||
GLint width, height; | |||||
glGetRenderbufferParameterivOES (GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &width); | |||||
glGetRenderbufferParameterivOES (GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &height); | |||||
if (useDepthBuffer) | |||||
{ | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, depthBufferHandle); | |||||
glRenderbufferStorageOES (GL_RENDERBUFFER_OES, GL_DEPTH_COMPONENT16_OES, width, height); | |||||
} | |||||
glBindRenderbufferOES (GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
glBindFramebufferOES (GL_FRAMEBUFFER_OES, frameBufferHandle); | |||||
glFramebufferRenderbufferOES (GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, colorBufferHandle); | |||||
if (useDepthBuffer) | |||||
glFramebufferRenderbufferOES (GL_FRAMEBUFFER_OES, GL_DEPTH_ATTACHMENT_OES, GL_RENDERBUFFER_OES, depthBufferHandle); | |||||
jassert (glCheckFramebufferStatusOES (GL_FRAMEBUFFER_OES) == GL_FRAMEBUFFER_COMPLETE_OES); | |||||
} | |||||
void freeGLBuffers() | |||||
{ | |||||
if (frameBufferHandle != 0) | |||||
{ | |||||
glDeleteFramebuffersOES (1, &frameBufferHandle); | |||||
frameBufferHandle = 0; | |||||
} | |||||
if (colorBufferHandle != 0) | |||||
{ | |||||
glDeleteRenderbuffersOES (1, &colorBufferHandle); | |||||
colorBufferHandle = 0; | |||||
} | |||||
if (depthBufferHandle != 0) | |||||
{ | |||||
glDeleteRenderbuffersOES (1, &depthBufferHandle); | |||||
depthBufferHandle = 0; | |||||
} | |||||
} | |||||
//============================================================================== | |||||
juce_UseDebuggingNewOperator | |||||
private: | |||||
Component::SafePointer<Component> component; | |||||
OpenGLPixelFormat pixelFormat; | |||||
JuceGLView* view; | |||||
CAEAGLLayer* glLayer; | |||||
EAGLContext* context; | |||||
bool useDepthBuffer; | |||||
GLuint frameBufferHandle, colorBufferHandle, depthBufferHandle; | |||||
int numFrames; | |||||
int lastWidth, lastHeight; | |||||
//============================================================================== | |||||
GLESContext (const GLESContext&); | |||||
GLESContext& operator= (const GLESContext&); | |||||
}; | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | |||||
ScopedAutoReleasePool pool; | |||||
UIViewComponentPeer* peer = dynamic_cast <UIViewComponentPeer*> (getPeer()); | |||||
if (peer != 0) | |||||
return new GLESContext (peer, this, preferredPixelFormat, | |||||
dynamic_cast <const GLESContext*> (contextToShareListsWith), | |||||
type == openGLES2 ? kEAGLRenderingAPIOpenGLES2 : kEAGLRenderingAPIOpenGLES1); | |||||
return 0; | return 0; | ||||
} | } | ||||
void OpenGLPixelFormat::getAvailablePixelFormats (Component* /*component*/, | |||||
OwnedArray <OpenGLPixelFormat>& /*results*/) | |||||
{ | |||||
} | |||||
void juce_glViewport (const int w, const int h) | void juce_glViewport (const int w, const int h) | ||||
{ | { | ||||
//glViewport (0, 0, w, h); | |||||
glViewport (0, 0, w, h); | |||||
} | } | ||||
#endif | #endif | ||||
@@ -498,18 +498,13 @@ private: | |||||
}; | }; | ||||
//============================================================================== | //============================================================================== | ||||
OpenGLContext* OpenGLContext::createContextForWindow (Component* const component, | |||||
const OpenGLPixelFormat& pixelFormat, | |||||
const OpenGLContext* const contextToShareWith) | |||||
OpenGLContext* OpenGLComponent::createContext() | |||||
{ | { | ||||
WindowedGLContext* c = new WindowedGLContext (component, | |||||
contextToShareWith != 0 ? (HGLRC) contextToShareWith->getRawContext() : 0, | |||||
pixelFormat); | |||||
ScopedPointer<WindowedGLContext> c (new WindowedGLContext (this, | |||||
contextToShareListsWith != 0 ? (HGLRC) contextToShareListsWith->getRawContext() : 0, | |||||
preferredPixelFormat)); | |||||
if (c->renderContext == 0) | |||||
deleteAndZero (c); | |||||
return c; | |||||
return (c->renderContext != 0) ? c.release() : 0; | |||||
} | } | ||||
void* OpenGLComponent::getNativeWindowHandle() const | void* OpenGLComponent::getNativeWindowHandle() const | ||||
@@ -139,7 +139,8 @@ PropertiesFile::PropertiesFile (const File& f, const int millisecondsBeforeSavin | |||||
PropertiesFile::~PropertiesFile() | PropertiesFile::~PropertiesFile() | ||||
{ | { | ||||
saveIfNeeded(); | |||||
if (! saveIfNeeded()) | |||||
jassertfalse; | |||||
} | } | ||||
bool PropertiesFile::saveIfNeeded() | bool PropertiesFile::saveIfNeeded() | ||||